Skip to content

In-memory ledger database with Amazon QLDB compatibility

License

Notifications You must be signed in to change notification settings

cimbul/FaqueLDB

Repository files navigation

FaqueLDB

The Fake Ledger Database

FaqueLDB is a testing-oriented in-memory database that aims to be a drop-in replacement for Amazon Quantum Ledger Database (QLDB). To this end, it supports PartiQL queries and serializes data using the Amazon Ion format.

Support

FaqueLDB currently supports:

  • Transactions
  • SELECT Queries:
  • Functions:
    • Aggregations (COUNT, MAX, etc.)
    • Casts (CAST, TO_STRING, etc.)
    • Null handling (COALESCE, etc.)
    • Date/time (UTCNOW, etc.)
    • String utilities (TRIM, UPPER, etc.)
  • DDL:
  • DML:
    • INSERT for single and multiple values

These features of QLDB are not currently supported, but are on the roadmap:

These features of QLDB are not supported and are low priority:

  • The control plane and all its features, including ledger management, exports, streams, and tags

Usage

Run

Start Server (Docker)

docker run --rm -p 8000:8000 cimbul/faqueldb

Start Server (Local)

$ ./gradlew run

Run Queries

Using the QLDB Shell:

$ qldb -s http://localhost:8000 -l test
qldbshell > create table foo
qldbshell > insert into foo << {'x': 1}, {'x': 2} >>
qldbshell > select * from foo

Test

$ ./gradlew test

About

In-memory ledger database with Amazon QLDB compatibility

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published