CometDB is an Erlang implementation of queue model over FoundationDB.
This project aims to provide you a set of simple interfaces so that you can use FoundationDB as a Distributed, High Concurrency and Low Latency Queue.
- You can insert data in batch.
- You can fetch data in batch.
- You can delete data in range.
- You can insert data of any size; we overcome the size limitation of FDB.
We need to setup the FDB environment first. You can find details in FoundationDB official website.
The usage is really simple. Here is an example:
P = comet:start().
comet:insert(P, <<"testq">>, <<"testvalue">>).
comet:batch_insert(P, <<"testq">>, [<<"testvalue_2">>, <<"testvalue_3">>, <<"testvalue_4">>]).
comet:fetch(P, <<"testq">>, 100).
comet:delete(P, <<"testq">>, 1).
- type checking
- stream
- cursors
- index
- priority queue
- connection management
- performance
- tests ...