1,723 research outputs found
A Concurrency Control Method Based on Commitment Ordering in Mobile Databases
Disconnection of mobile clients from server, in an unclear time and for an
unknown duration, due to mobility of mobile clients, is the most important
challenges for concurrency control in mobile database with client-server model.
Applying pessimistic common classic methods of concurrency control (like 2pl)
in mobile database leads to long duration blocking and increasing waiting time
of transactions. Because of high rate of aborting transactions, optimistic
methods aren`t appropriate in mobile database. In this article, OPCOT
concurrency control algorithm is introduced based on optimistic concurrency
control method. Reducing communications between mobile client and server,
decreasing blocking rate and deadlock of transactions, and increasing
concurrency degree are the most important motivation of using optimistic method
as the basis method of OPCOT algorithm. To reduce abortion rate of
transactions, in execution time of transactions` operators a timestamp is
assigned to them. In other to checking commitment ordering property of
scheduler, the assigned timestamp is used in server on time of commitment. In
this article, serializability of OPCOT algorithm scheduler has been proved by
using serializability graph. Results of evaluating simulation show that OPCOT
algorithm decreases abortion rate and waiting time of transactions in compare
to 2pl and optimistic algorithms.Comment: 15 pages, 13 figures, Journal: International Journal of Database
Management Systems (IJDMS
A model and framework for reliable build systems
Reliable and fast builds are essential for rapid turnaround during
development and testing. Popular existing build systems rely on correct manual
specification of build dependencies, which can lead to invalid build outputs
and nondeterminism. We outline the challenges of developing reliable build
systems and explore the design space for their implementation, with a focus on
non-distributed, incremental, parallel build systems. We define a general model
for resources accessed by build tasks and show its correspondence to the
implementation technique of minimum information libraries, APIs that return no
information that the application doesn't plan to use. We also summarize
preliminary experimental results from several prototype build managers
The End of a Myth: Distributed Transactions Can Scale
The common wisdom is that distributed transactions do not scale. But what if
distributed transactions could be made scalable using the next generation of
networks and a redesign of distributed databases? There would be no need for
developers anymore to worry about co-partitioning schemes to achieve decent
performance. Application development would become easier as data placement
would no longer determine how scalable an application is. Hardware provisioning
would be simplified as the system administrator can expect a linear scale-out
when adding more machines rather than some complex sub-linear function, which
is highly application specific.
In this paper, we present the design of our novel scalable database system
NAM-DB and show that distributed transactions with the very common Snapshot
Isolation guarantee can indeed scale using the next generation of RDMA-enabled
network technology without any inherent bottlenecks. Our experiments with the
TPC-C benchmark show that our system scales linearly to over 6.5 million
new-order (14.5 million total) distributed transactions per second on 56
machines.Comment: 12 page
A unified concurrency control algorithm for distributed database systems
We present a unified concurrency-control algorithm for distributed database systems in which each transaction may choose its own concurrency control protocol. Specifically, they integrate two-phase locking, timestamp ordering, and precedence agreement into one unified concurrency-control scheme. They show the correctness of the scheme and study the problem of selecting the best protocol for each transaction to optimize system performance.published_or_final_versio
- …