|
|
2 lat temu | |
|---|---|---|
| .. | ||
| include | 74cb43f8b1 fix(ds): Add unique ID to the key | 2 lat temu |
| src | c22a3686ae fix(emqx_durable_storage): fix type specs | 2 lat temu |
| test | c1f2287b86 Merge remote-tracking branch 'origin/release-54' | 2 lat temu |
| BSL.txt | 8d6bcc1414 refactor(ds): emqx_replay -> emqx_durable_storage | 2 lat temu |
| IMPLEMENTATION.md | c91df2f5cd refactor(ds): Create a prototype of replication layer | 2 lat temu |
| README.md | e238602533 fix(ds): Update README | 2 lat temu |
| rebar.config | c030188eb7 chore(ds): Add rebar.config file to app/emqx_durable_storage | 2 lat temu |
emqx_ds is an application implementing durable storage for MQTT messages within EMQX.
Streams. Stream is an abstraction that encompasses topics, shards, different data layouts, etc. The client application must only aware of the streams.
Batching. All the API functions are batch-oriented.
Iterators. Iterators can be stored durably or transferred over network. They take relatively small space.
Support for various backends. Almost any DBMS that supports range
queries can serve as a emqx_durable_storage backend.
Builtin backend based on RocksDB.
TBD
Currently it's only used to implement persistent sessions.
In the future it can serve as a storage for retained messages or as a generic message buffering layer for the bridges.
emqx_durable_storage doesn't have any configurable parameters.
Instead, it relies on the upper-level business applications to create
a correct configuration and pass it to emqx_ds:open_db(DBName, Config)
function according to its needs.
None
TBD
Please see our contributing.md.