Features
- Sintax inspired by SparQL and Crux's datalog.
- Entities are indexed by date(time).
- Schemaless.
- Deep Key-value storage, which means that you can have key values inside hashmap values.
- Hashing entity map keys content with
ENCRYPT
. - Unique entity maps keys content with
UNIQUE
for an entity tree. - Hashed values are filtered out of
SELECT
and can only be checked withCHECK
keyword. Ron
schemas for input and output.- JSON is supported via feature.
- EDN to be supported via feature.
- Entities are also indexed by
entity_name
(entity tree key) andUuid
(entity id). Entity map format is a HashMap where keys are strings and values are supportedTypes
. - Stores persistent data locally.
-
S3
as a backend is to be developed. -
DynamoDB
as a backend is to be developed.
-
- Able to handle very large numbers when using the
P
suffix.- Ex:
98347883122138743294728345738925783257325789353593473247832493483478935673.9347324783249348347893567393473247832493483478935673P
.
- Ex:
- Configuration is done via environment variables.
- CORS
- Authentication and Authorization via session token
- Users created and deleted by ADMIN user.
- Conditional Update
- File compression done with
zstd
. - Entity id history
-
Possible Relation Algebra
- Union by entity_id
- Intersection by entity_id
- Difference by entity_id
- Join
- Dedup
- Sort
- Aggregate
Naming conventions:
- Entity Tree is similar to SQL table, it is the data structure that contains all ids and entities map relations.
- Entity ID is the id of an entity inside Entity tree.
- Entity map is the content of and entity associated with the entity id.