WiSer: A Highly Available HTAP DBMS for IoT Applications

08/06/2019
by   Ronald Barber, et al.
0

In a classic transactional distributed database management system (DBMS), write transactions invariably synchronize with a coordinator before final commitment. While enforcing serializability, this model has long been criticized for not satisfying the applications' availability requirements. When entering the era of Internet of Things (IoT), this problem has become more severe, as an increasing number of applications call for the capability of hybrid transactional and analytical processing (HTAP), where aggregation constraints need to be enforced as part of transactions. Current systems work around this by creating escrows, allowing occasional overshoots of constraints, which are handled via compensating application logic. The WiSer DBMS targets consistency with availability, by splitting the database commit into two steps. First, a PROMISE step that corresponds to what humans are used to as commitment, and runs without talking to a coordinator. Second, a SERIALIZE step, that fixes transactions' positions in the serializable order, via a consensus procedure. We achieve this split via a novel data representation that embeds read-sets into transaction deltas, and serialization sequence numbers into table rows. WiSer does no sharding (all nodes can run transactions that modify the entire database), and yet enforces aggregation constraints. Both readwrite conflicts and aggregation constraint violations are resolved lazily in the serialized data. WiSer also covers node joins and departures as database tables, thus simplifying correctness and failure handling. We present the design of WiSer as well as experiments suggesting this approach has promise.

READ FULL TEXT
research
05/22/2019

LazyLedger: A Distributed Data Availability Ledger With Client-Side Smart Contracts

We propose LazyLedger, a design for distributed ledgers where the blockc...
research
03/31/2019

LightChain: A DHT-based Blockchain for Resource Constrained Environments

As an append-only distributed database, blockchain is utilized in a vast...
research
04/14/2020

Witness-based Approach for Scaling Distributed Ledgers to Massive IoT Scenarios

Distributed Ledger Technologies (DLTs) are playing a major role in build...
research
05/10/2021

G-Tran: Making Distributed Graph Transactions Fast

Graph transaction processing raises many unique challenges such as rando...
research
11/28/2019

Lockless Transaction Isolation in Hyperledger Fabric

Hyperledger Fabric is a distributed operating system for permissioned bl...
research
10/23/2020

DBLog: A Watermark Based Change-Data-Capture Framework

It is a commonly observed pattern for applications to utilize multiple h...
research
03/09/2021

Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring

Serializability is a well-understood concurrency control mechanism that ...

Please sign up or login with your details

Forgot password? Click here to reset