Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Discussion options

Hi, I created a time series database prototype using ZoneTree (it's not ready for publication yet, but I can provide the source codes using some private canal) and I have to say that it surprised me with its speed. Great job.

I have some ideas for adding an API that would be useful in implementing a database built on ZoneTree.

Range iterator

Description: Enable iteration in the range of entered keys from-to. This functionality is going to be implemented, but I have to save somewhere the correct comparator that ZoneTree has in the configuration, it would be more convenient to extend the API.
UseCase: Insertion by secondary index, or iteration in a range of values. I assume that this functionality would also be useful for people who do not implement a database.

Gets or estimate key count between two keys

Description: If it is possible to find out or estimate the number of keys between two specified keys in the time complexity $O(2.log(n))$, then an API that returned this data would be useful. I really don't know if such a functionality will be implemented, because I didn't find it even in similar databases (LevelDb, RoksDb, FoundationDb).
UseCase: When using secondary indexes, it is possible to decide which index to use based on the (also approximate) number of keys.

You must be logged in to vote

Replies: 3 comments

Comment options

Thank you for your suggestions. We can discuss this on discord channel:

You must be logged in to vote
0 replies
Comment options

You can access comparer, key and value serializers from IZoneTree interface now:
Expose comparer, key and value serializers on ZoneTree API

You can implement your own wrapper to iterate your desired boundary.

You must be logged in to vote
0 replies
Comment options

Here https://github.com/harrison314/YATsDb/tree/main/src/Src/YATsDb.Core is an implementation of the Time Series database I mentioned above.

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
💡
Ideas
Labels
None yet
2 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.