-
Notifications
You must be signed in to change notification settings - Fork 1
Features/Roadmap #1
Copy link
Copy link
Open
Description
Features/RoadMap
An issue describing short and long term features as well the roadmap
Short term goals
-
Property Values
- Primitive types List
-
I18N Strings(for this we need string indexing in order have sense, otherwise is just a property with and @ and the language at the end, so far theres no solutions for this on the erlang/elixir ecosystem, I don't know too much about the topic either, so futher discussions/PRs are welcome) - Enums
-
Dictionary(Use a node) - Datetime
- Time
- Date
-
Index
- Datetime
- Enum
- Time
- Date
- List
- String (Exact match)
- String (Hash match)
- String (Full text search)
- Integer
- Float
-
Dictionary(Use a node)
-
Node implementation
- Update
- Delete
- One to One relationships! (User <--> UserConfig)
- Set data
- Get data
- Index property edges
- Inverse Node support
(relation.uid, "edge_name", node.uid) = node_relation_edge.uid
-
Edge implementation
- Index property edges
- Update
- Delete
- Set data
- Get data
-
Query support
-
where- Datetime storage
{ year, month, day, seconds } -
>KeySelector.first_greater_than(key) -
<KeySelector.last_less_than(key) -
==get_by_function(property, value, function = Function.equal) -
>=KeySelector.first_greater_or_equal(key) -
<=KeySelector.last_less_or_equal(key) -
and -
or
- Datetime storage
-
pagination support (cursor based)
-
afterTransaction.get_range(after_cursor, end, limit) -
beforeTransaction.get_range(before_cursor, end, limit, reverse=True) -
limit -
firstTransaction.get_range(start, end, limit=first) -
count
-
-
sorting
-
order_ascindex query -
order_desindex query
-
-
reverse node
-
functions
-
minatomic -
maxatomic
-
-
-
Ztandart data compression
Compress long sized strings in order to save space, unnoticeable performance impact
Long term goals
-
Types check!
-
More tests
Maybe
-
Network Protocol implementation
- GraphQL (standard query, mutation language) [this uses the connection
features of GraphQL to make it easier to query graph data] - Opengraph (complex query for things like recommendation engines etc)
- GraphQL (standard query, mutation language) [this uses the connection
-
query optimization/planning, what most databases does.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels