Please use this identifier to cite or link to this item: http://hdl.handle.net/10316/17780
Title: Quality of experience in database systems
Other Titles: Qualidade de experiência em sistemas de base de dados
Authors: Costa, Rogério Luís de Carvalho 
Orientador: Furtado, Pedro Nuno San-Bento
Keywords: Sistemas de bases de dados
Issue Date: 2010
Citation: COSTA, Rogério Luís de Carvalho - Quality of experience in database systems = Qualidade de experiência em sistemas de base de dados. Coimbra : [s.n.], 2010
Abstract: This work aims at providing mechanisms to increase users' satisfaction when using database systems. We express users' satisfaction in terms of Quality of Experience (QoE). Therefore, our proposals aim to increase the degree of QoE a database system provides. Traditional database systems execute operations immediately upon submission and, since they do not allow users to express execution-related constraints, they do not evaluate whereas those constraints are covered, and they do not take corrective action when necessary. Our proposal for QoE makes the database system take into consideration users' expectations on deciding how or when to execute operations. This is based on a set of Data Access Requirements (DAR) that users can associate to database operations and the QoE-prepared system considers those when processing the operations. Since the objective of the QoE-oriented database system is to provide user satisfaction, the analysis of its performance must consider success rate measures on achieving the user specified constraints. We have defined Key Performance Indicators based on such measures and used those as part of our comparison of approaches. Our proposed Data Access Requirements (DARs) include execution deadlines, execution start and end times, data availability, data freshness, execution priority, disconnected execution and job repetition. Some of those, such as execution deadlines, are useful in any data processing architecture - centralized, parallel or distributed – whereas DARs such as availability are especially designed for parallel and distributed contexts. For the proposed approach to work on any of those architectures we needed to develop a set of features that includes runtime estimations, requirements-based task scheduling and future jobs monitor and scheduling. Besides that, we also developed some other features required for parallel and distributed QoE-oriented database systems. Those include an election-based global scheduler, capacity to evaluate data availability degree and capacity to decide on data replication. Another important aspect in parallel and distributed settings was the development of reputation strategies. These allow the system to constantly have updated quantitative information on the degree of QoE expectations fulfillment by nodes or sites and, based on these, to adapt in order to maintain high QoE capabilities. Requirements fulfillment rates and runtime estimations are the bases of proposed reputation algorithms, which support better scheduling decisions. We show experimentally, using benchmark scenarios, that the proposed QoEoriented database system is able to satisfy the user-defined execution-related constraints in both centralized, parallel and distributed cases. In order to do this we have created a prototype and tested the most important concepts proposed in this thesis. The approaches were compared with best effort (no QoE) counterparts and, when relevant, with scheduling approaches such as round-robin or on-demand.
Este trabalho visa fornecer mecanismos para aumentar a satisfação dos utilizadores quando utilizam sistemas de bases de dados. Consideramos satisfação dos usuários em termos de Qualidade de Experiência (QoE). Desta forma, as nossas propostas visam aumentar o nível de QoE fornecido por sistemas de bases de dados. Sistemas de bases de dados tradicionais executam as operações imediatamente após a submissão e, como eles não permitem que os utilizadores expressem restrições relacionadas com a execução de comandos, não podem avaliar se essas restrições são atendidas e não podem executar acções corretivas quando necessário. A nossa proposta de QoE faz com que os sistemas de bases de dados tenham em consideração as expectativas dos utilizadores ao decidir como ou quando executar os comandos que lhes são submetidos. Esta estratégia é baseada em Requisitos de Acesso a Dados (Data Access Requirements - DAR) que os utilizadores podem associar a operações de bases de dados e que os sistemas preparados para fornecer QoE tomam em consideração quando processam tais operações. Como o objetivo de sistemas de bases de dados orientados a QoE é prover satisfação aos utilizadores, a análise do seu desempenho deve considerar indicadores específicos sobre a satisfação de restrições definidas por estes. Nós definimos Indicadores Chave de Desempenho baseados nessas medidas e utilizamo-los como parte de comparação de abordagens. Os tipos de Requisitos de Acesso a Dados (DARs) propostos incluem prazos de execução, hora de início e término de execução de comandos, actualidade dos dados utilizados, prioridade de execução de comandos, execução desconectada e repetição de trabalhos. Alguns destes, como os prazos de execução, são úteis em quaisquer arquiteturas de bases de dados – centralizada, paralela ou distribuída – enquanto outros DARs, como o de disponibilidade dos dados, são especialmente preparados para os contextos paralelo e distribuído. Para que as abordagens funcionem em quaisquer destas arquiteturas, precisámos desenvolver um conjunto de funcionalidades que incluem estimativas de tempo de execução, escalonamento de tarefas baseado em requerimentos e monitoramento e escalonamento de trabalhos futuros. Além disso, também desenvolvemos algumas funcionalidades que são requeridas para sistemas paralelos e distribuídos de bases de dados orientados a QoE. Estas incluem um escalonador global baseado em eleições, capacidade de avaliar o nível de disponibilidade de dados e capacidade de decidir sobre replicação de dados. Outro aspecto importante nas configurações paralela e distribuída é o desenvolvimento de estratégias baseadas em reputação. Estas permitem que o sistema tenha informações quantitativas constantes sobre o nível de atendimento às expectativas de QoE por parte de nós ou sítios e, baseado nisso, execute acções para se adaptar no intuito de manter altos níveis de QoE. A taxa de atendimento de requisitos e as estimativas de tempo de execução são a base dos algoritmos de reputação, os quais suportam melhores decisões de escalonamento. Nós mostramos experimentalmente, utilizando cenários e “benchmarks”, que o sistema de bases de dados orientado à QoE é capaz de satisfazer as restrições definidas pelos utilizadores sobre a execução de comandos, tanto no caso centralizado, como nos casos paralelo e distribuído. Para isso, criámos um protótipo e testámos os conceitos mais importantes propostos nessa tese. As abordagens propostas foram comparadas com as correspondentes dos ambientes de “best effort” melhor esforço (sem QoE) e, quando relevante, com abordagens de escalonamento como a circular ou a sob demanda.
Description: Tese de doutoramento apresentada à Faculdade de Ciências e Tecnologia da Universidade de Coimbra
URI: http://hdl.handle.net/10316/17780
Rights: openAccess
Appears in Collections:FCTUC Eng.Informática - Teses de Doutoramento

Files in This Item:
File Description SizeFormat
TeseRogerioCosta.pdf9.5 MBAdobe PDFView/Open
Show full item record

Page view(s) 20

509
checked on Apr 6, 2020

Download(s)

123
checked on Apr 6, 2020

Google ScholarTM

Check


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.