Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DAT (double array trie) POC #130

Open
aion-jin opened this issue Mar 6, 2018 · 1 comment
Open

DAT (double array trie) POC #130

aion-jin opened this issue Mar 6, 2018 · 1 comment
Labels
enhancement New feature or request

Comments

@aion-jin
Copy link
Contributor

aion-jin commented Mar 6, 2018

DAT detail:

https://linux.thai.net/~thep/datrie/datrie.html

C :

https://github.com/omeid/libdatrie
Java:

https://github.com/digitalstain/DoubleArrayTrie
JS:

https://github.com/bramstein/datrie

compare with
BTC merkle tree:
https://bitcoin.org/en/developer-guide#term-merkle-tree

Eth patricia-tree:
https://github.com/ethereum/wiki/wiki/Patricia-Tree

benchmark:

Insert | update | fetch | construct

Thanks for Robert, we find 3rd candidate here
the hat-trie
http://crpit.com/confpapers/CRPITV62Askitis.pdf

@aion-jin aion-jin added the enhancement New feature or request label Mar 6, 2018
@aion-jin
Copy link
Contributor Author

I just post the benchmark from Robert and Sergiu here:

TrieImpl (default) implementation:

Insert duration: 9667ms
Update duration: 10050ms
Read duration: 761ms
Delete duration: 7612ms

DAT implementation:

Insert duration: 6111ms
Update duration: 1862ms
Read duration: 555ms
Delete duration: 1547ms*

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants