222 research outputs found
Staring into the abyss: An evaluation of concurrency control with one thousand cores
Computer architectures are moving towards an era dominated by many-core machines with dozens or even hundreds of cores on a single chip. This unprecedented level of on-chip parallelism introduces a new dimension to scalability that current database management systems (DBMSs) were not designed for. In particular, as the number of cores increases, the problem of concurrency control becomes extremely challenging. With hundreds of threads running in parallel, the complexity of coordinating competing accesses to data will likely diminish the gains from increased core counts.
To better understand just how unprepared current DBMSs are for future CPU architectures, we performed an evaluation of concurrency control for on-line transaction processing (OLTP) workloads on many-core chips. We implemented seven concurrency control algorithms on a main-memory DBMS and using computer simulations scaled our system to 1024 cores. Our analysis shows that all algorithms fail to scale to this magnitude but for different reasons. In each case, we identify fundamental bottlenecks that are independent of the particular database implementation and argue that even state-of-the-art DBMSs suffer from these limitations. We conclude that rather than pursuing incremental solutions, many-core chips may require a completely redesigned DBMS architecture that is built from ground up and is tightly coupled with the hardware.Intel Corporation (Science and Technology Center for Big Data
Recommended from our members
Concurrency Control in Advanced Database Applications
Concurrency control has been thoroughly studied in the context of traditional database applications such as banking and airline reservations systems. There are relatively few studies, however, that address the concurrency control issues of advanced database applications such as CAD/CAM and software development environments. The concurrency control requirements in such applications are different from those in conventional database applications; in particular, there is a need to support non-serializable cooperation among users whose transactions are long-lived and interactive, and to integrate concurrency control mechanisms with version and configuration control. This paper outlines the characteristics of data and operations in some advanced database applications, discusses their concurrency control requirements, and surveys the mechanisms proposed to address these requirements
Recommended from our members
Concurrency Control in Advanced Database Applications
Concurrency control has been thoroughly studied in the context of traditional database applications such as banking and airline reservations systems. There are relatively few studies, however, that address the concurrency control issues of advanced database applications such as CAD/CAM and software development environments. The concurrency control requirements in such applications are different from those in conventional database applications; in particular, there is a need to support non-serializable cooperation among users whose transactions are long-lived and interactive, and to integrate concurrency control mechanisms with version and configuration control. This paper outlines the characteristics of data and operations in some advanced database applications, discusses their concurrency control requirements, and surveys the mechanisms proposed to address these requirements
Cooperating intelligent systems
Some of the issues connected to the development of a bureaucratic system are discussed. Emphasis is on a layer multiagent approach to distributed artificial intelligence (DAI). The division of labor in a bureaucracy is considered. The bureaucratic model seems to be a fertile model for further examination since it allows for the growth and change of system components and system protocols and rules. The first part of implementing the system would be the construction of a frame based reasoner and the appropriate B-agents and E-agents. The agents themselves should act as objects and the E-objects in particular should have the capability of taking on a different role. No effort was made to address the problems of automated failure recovery, problem decomposition, or implementation. Instead what has been achieved is a framework that can be developed in several distinct ways, and which provides a core set of metaphors and issues for further research
A comparative study of concurrency control algorithms for distributed databases
The declining cost of computer hardware and the increasing data processing needs of geographically dispersed organizations have led to substantial interest in distributed data management. These characteristics have led to reconsider the design of centralized databases. Distributed databases have appeared as a result of those considerations. A number of advantages result from having duplicate copies of data in a distributed databases. Some of these advantages are: increased data accesibility, more responsive data access, higher reliability, and load sharing. These and other benefits must be balanced against the additional cost and complexity introduced in doing so. This thesis considers the problem of concurrency control of multiple copy databases. Several synchronization techniques are mentioned and a few algorithms for concurrency control are evaluated and compared
Towards an Enhanced Protocol for Improving Transactional Support in Interoperable Service Oriented Application-Based (SOA-Based) Systems
When using a shared database for distributed transactions, it is often difficult to connect business processes and softwarecomponents running on disparate platforms into a single transaction. For instance, one platform may add or update data, and thenanother platform later access the changed or added data. This severely limits transactional capabilities across platforms. Thissituation becomes more acute when concurrent transactions with interleaving operations spans across different applications andresources. Addressing this problem in an open, dynamic and distributed environment of web services poses special challenges,and still remains an open issue. Following the broad adoption and use of the standard Web Services Transaction Protocols,requirements have grown for the addition of extended protocols to handle problems that exist within the context of interoperableservice-oriented applications. Most extensions to the current standard WS-Transaction Protocols still lack proper mechanisms forerror-handling, concurrency control, transaction recovery, consolidation of multiple transaction calls into a single call, and securereporting and tracing for suspicious activities. In this research, we will first extend the current standard WS-TransactionFramework, and then propose an enhanced protocol (that can be deployed within the extended framework) to improvetransactional and security support for asynchronous applications in a distributed environment. A hybrid methodology whichincorporates service-oriented engineering and rapid application development will be used to develop a procurement system(which represents an interoperable service-oriented application) that integrates our proposed protocol. We will empiricallyevaluate and compare the performance of the enhanced protocol with other conventional distributed protocols (such as 2PL) interms of QoS parameters (throughput, response time, and resource utilization), availability of the application, databaseconsistency, and effect of locking on latency, among other factors.Keywords: Database, interoperability, security, concurrent transaction, web services, protocol, service-oriente
Extensão de propriedades SQL a SGBD NoSQL através de call level interfaces
Mestrado em Engenharia de Computadores e TelemáticaOs arquitetos de software usam ferramentas, tais como Call Level Interfaces
(CLI), para guardar, atualizar e retirar dados de Sistemas de Gestão
de Bases de Dados (SGBD). Estas ferramentas estão desenhadas para efetuarem
a junção entre os paradigmas de Base de Dados Relacional e da
Programação Orientada a Objetos e fornecem funcionalidades padrão para
interagir com SGBD. No entanto, a emergência do paradigma NoSQL, e particularmente
de novos fornecedores de SGBD NoSQL, leva a situações onde
algumas das funcionalidades padrão fornecidas por CLI não são suportadas.
Isto deve-se normalmente à distância entre o modelo SQL e NoSQL, ou devido
a restrições de design. Assim, quando um arquiteto de sistema precisa de
evoluir, nomeadamente de um SGBD relacional para um SGBD NoSQL, tem
de ultrapassar as dificuldades que emergem por existirem funcionalidades não
suportadas pelo SGBD NoSQL. Não só isso, mas as CLI costumam ignorar
políticas de controlo de acesso estabelecidas e, portanto, programadores de
aplicações têm de dominar as ditas políticas de maneira a desenvolverem
software em concordância com elas. Escolher o SGBD NoSQL errado pode
levar a problemas de grandes dimensões quando as aplicações pedem funcionalidades
não suportadas ou a que não têm acesso.
Esta tese foca-se em implementar funcionalidades que não são comummente
suportadas por SGBD NoSQL, tais como Stored Procedures, Transações,
Save Points e interações com estruturas de memória local, através de uma
framework baseada numa CLI padrão. O modelo de implementação de funcionalidades
é definido por módulos da nossa framework, e permite a criação
de sistemas distribuídos e tolerantes a falhas, que simulam as funcionalidades
anteriormente referidas e abstraem as funcionalidades da base de dados
subjacente de clientes. Também temos como objetivo integrar a nossa
framework com trabalho anterior, a S-DRACA, uma arquitetura dinâmica e
segura de controlo de acesso para aplicações relacionais, onde as permissões
são definidas como sequências de expressões create, read, update e delete.
Com esta integração, conseguimos fornecer Role-Based Access Control e
outras funcionalidades de segurança a qualquer tipo de SGBD. Desenvolvemos
várias formas de utilizar cada componente (localmente ou distribuído)
e a framework está construída de forma modular, o que permite aos vários
componentes serem utilizados individualmente ou em grupo, assim como
permite o acrescento de funcionalidades ou SGBD adicionais por administradores
de sistema que queiram adaptar a framework às suas necessidades
particulares.To store, update and retrieve data from database management systems
(DBMS), software architects use tools, like call level interfaces (CLI), which
provide standard functionality to interact with DBMS. These tools are designed
to bring together the relational database and object-oriented programming
paradigms, but the emergence of the NoSQL paradigm, and particularly
new NoSQL DBMS providers, leads to situations where some of the standard
functionality provided by CLI are not supported, very often due to their
distance from the relational model or due to design constraints. As such,
when a system architect needs to evolve, namely from a relational DBMS to
a NoSQL DBMS, he must overcome the difficulties conveyed by the features
not provided by the NoSQL DBMS. Not only that, but CLI usually forsake
applied access control policies. As such, application developers must master
the established policies as a means to develop software that is conformant
with them. Choosing the wrong NoSQL DBMS risks major issues with applications
requesting non-supported features and with unauthorized accesses.
This thesis focuses on deploying features that are not so commonly supported
by NoSQL DBMS, such as Stored Procedures, Transactions, Save
Points and interactions with local memory structures, through a framework
based in a standard CLI. The feature implementation model is defined by
modules of our framework, and allows for distributed and fault-tolerant systems
to be deployed, which simulate the previously mentioned features and
abstract the underlying database features from clients. It is also our goal to
integrate our framework with previous work, S-DRACA, a dynamic secure
access control architecture for relational applications, where permissions are
defined as a sequence of create, read, update and delete expressions. With
the integration, we can provide dynamic Role-Based Access Control and
other security features to any kind of DBMS. We developed several ways
of using each component (locally or distributed) and the framework is built
in a modular fashion, which allows several components to be used individually
or together, as well as extra features or DBMS to be added by system
administrators that wish to adapt the framework to their particular needs
Transaction management on collaborative application services
Thesis (M.Eng.)--Massachusetts Institute of Technology, Dept. of Civil and Environmental Engineering, 2000.Includes bibliographical references (leaves 86-87).by Koon-Po Paul Wong.M.Eng
On Predictive Modeling for Optimizing Transaction Execution in Parallel OLTP Systems
A new emerging class of parallel database management systems (DBMS) is
designed to take advantage of the partitionable workloads of on-line
transaction processing (OLTP) applications. Transactions in these systems are
optimized to execute to completion on a single node in a shared-nothing cluster
without needing to coordinate with other nodes or use expensive concurrency
control measures. But some OLTP applications cannot be partitioned such that
all of their transactions execute within a single-partition in this manner.
These distributed transactions access data not stored within their local
partitions and subsequently require more heavy-weight concurrency control
protocols. Further difficulties arise when the transaction's execution
properties, such as the number of partitions it may need to access or whether
it will abort, are not known beforehand. The DBMS could mitigate these
performance issues if it is provided with additional information about
transactions. Thus, in this paper we present a Markov model-based approach for
automatically selecting which optimizations a DBMS could use, namely (1) more
efficient concurrency control schemes, (2) intelligent scheduling, (3) reduced
undo logging, and (4) speculative execution. To evaluate our techniques, we
implemented our models and integrated them into a parallel, main-memory OLTP
DBMS to show that we can improve the performance of applications with diverse
workloads.Comment: VLDB201
- …