23,372 research outputs found
Speculative Concurrency Control for Real-Time Databases
In this paper, we propose a new class of Concurrency Control Algorithms that is especially suited for real-time database applications. Our approach relies on the use of (potentially) redundant computations to ensure that serializable schedules are found and executed as early as possible, thus, increasing the chances of a timely commitment of transactions with strict timing constraints. Due to its nature, we term our concurrency control algorithms Speculative. The aforementioned description encompasses many algorithms that we call collectively Speculative Concurrency Control (SCC) algorithms. SCC algorithms combine the advantages of both Pessimistic and Optimistic Concurrency Control (PCC and OCC) algorithms, while avoiding their disadvantages. On the one hand, SCC resembles PCC in that conflicts are detected as early as possible, thus making alternative schedules available in a timely fashion in case they are needed. On the other hand, SCC resembles OCC in that it allows conflicting transactions to proceed concurrently, thus avoiding unnecessary delays that may jeopardize their timely commitment
Research issues in real-time database systems
Cataloged from PDF version of article.Today's real-time systems are characterized by managing large volumes of data.
Efficient database management algorithms for accessing and manipulating data are
required to satisfy timing constraints of supported applications. Real-time database
systems involve a new research area investigating possible ways of applying database
systems technology to real-time systems. Management of real-time information through
a database system requires the integration of concepts from both real-time systems and
database systems. Some new criteria need to be developed to involve timing constraints
of real-time applications in many database systems design issues, such as
transaction/query processing, data buffering, CPU, and IO scheduling. In this paper, a
basic understanding of the issues in real-time database systems is provided and the
research efforts in this area are introduced. Different approaches to various problems of
real-time database systems are briefly described, and possible future research directions
are discussed
Front-running Attack in Sharded Blockchains and Fair Cross-shard Consensus
Sharding is a prominent technique for scaling blockchains. By dividing the
network into smaller components known as shards, a sharded blockchain can
process transactions in parallel without introducing inconsistencies through
the coordination of intra-shard and cross-shard consensus protocols. However,
we observe a critical security issue with sharded systems: transaction ordering
manipulations can occur when coordinating intra-shard and cross-shard consensus
protocols, leaving the system vulnerable to attack. Specifically, we identify a
novel security issue known as finalization fairness, which can be exploited
through a front-running attack. This attack allows an attacker to manipulate
the execution order of transactions, even if the victim's transaction has
already been processed and added to the blockchain by a fair intra-shard
consensus.
To address the issue, we offer Haechi, a novel cross-shard protocol that is
immune to front-running attacks. Haechi introduces an ordering phase between
transaction processing and execution, ensuring that the execution order of
transactions is the same as the processing order and achieving finalization
fairness. To accommodate different consensus speeds among shards, Haechi
incorporates a finalization fairness algorithm to achieve a globally fair order
with minimal performance loss. By providing a global order, Haechi ensures
strong consistency among shards, enabling better parallelism in handling
conflicting transactions across shards. These features make Haechi a promising
solution for supporting popular smart contracts in the real world. To evaluate
Haechi's performance, we implemented the protocol using Tendermint and
conducted extensive experiments on a geo-distributed AWS environment. Our
results demonstrate that Haechi achieves finalization fairness with little
performance sacrifice compared to existing cross-shard consensus protocols
Blockchain based Decentralized Applications: Technology Review and Development Guidelines
Blockchain or Distributed Ledger Technology is a disruptive technology that
provides the infrastructure for developing decentralized applications enabling
the implementation of novel business models even in traditionally centralized
domains. In the last years it has drawn high interest from the academic
community, technology developers and startups thus lots of solutions have been
developed to address blockchain technology limitations and the requirements of
applications software engineering. In this paper, we provide a comprehensive
overview of DLT solutions analyzing the addressed challenges, provided
solutions and their usage for developing decentralized applications. Our study
reviews over 100 blockchain papers and startup initiatives from which we
construct a 3-tier based architecture for decentralized applications and we use
it to systematically classify the technology solutions. Protocol and Network
Tier solutions address the digital assets registration, transactions, data
structure, and privacy and business rules implementation and the creation of
peer-to-peer networks, ledger replication, and consensus-based state
validation. Scaling Tier solutions address the scalability problems in terms of
storage size, transaction throughput, and computational capability. Finally,
Federated Tier aggregates integrative solutions across multiple blockchain
applications deployments. The paper closes with a discussion on challenges and
opportunities for developing decentralized applications by providing a
multi-step guideline for decentralizing the design of traditional systems and
implementing decentralized applications.Comment: 30 pages, 8 figures, 9 tables, 121 reference
- ā¦