TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Masstree: A cache-friendly mashup of tries and B-trees

165 pointsby HenryRover 6 years ago

7 comments

koverstreetover 6 years ago
I&#x27;ve been staring to write a paper on bcache&#x2F;bcachefs&#x27;s b-tree design, which is also a sort of combination b-tree&#x2F;trie (it uses binary trees in eytzinger layout). Pretty cool to see the same idea coming up in multiple places.<p>Running index-microbenchmarks now to see which is faster :)
评论 #18206327 未加载
评论 #18206512 未加载
espeedover 6 years ago
Masstree is one of the DBs Berkeley used when comparing the performance of Anna [1] (now Fluent [2]):<p>[1] <a href="https:&#x2F;&#x2F;rise.cs.berkeley.edu&#x2F;blog&#x2F;anna-kvs&#x2F;" rel="nofollow">https:&#x2F;&#x2F;rise.cs.berkeley.edu&#x2F;blog&#x2F;anna-kvs&#x2F;</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;fluent-project&#x2F;fluent" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;fluent-project&#x2F;fluent</a>
评论 #18203245 未加载
评论 #18201948 未加载
tonygover 6 years ago
Related: qp-tries and critbit tries: <a href="https:&#x2F;&#x2F;dotat.at&#x2F;prog&#x2F;qp&#x2F;README.html" rel="nofollow">https:&#x2F;&#x2F;dotat.at&#x2F;prog&#x2F;qp&#x2F;README.html</a>, <a href="https:&#x2F;&#x2F;cr.yp.to&#x2F;critbit.html" rel="nofollow">https:&#x2F;&#x2F;cr.yp.to&#x2F;critbit.html</a>
leiroighover 6 years ago
So what are the advantages over adaptive radix trees or good old judy-dict&#x2F;array?<p>Apart from judy being too damn complicated, and too old to be optimized for vector-compare instructions (I think the fancy hand-coded x86 vector-comparisons are the main reason for ART being competitive with judy, considering that it misses at least key compression and the clever allocator, and that ART is not as optimized for using every byte out of every fetched cache-line).
评论 #18202633 未加载
HenryRover 6 years ago
Author here - if you like this you might also like another paper summary of mine in the same vein:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18132730" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18132730</a>
评论 #18203083 未加载
danielhlockardover 6 years ago
Why do I get a gross yellow block covering the image when I mouse over it?<p>edit: oh, it&#x27;s because it&#x27;s a link and they have some background coloring or something on links.
评论 #18205111 未加载
评论 #18206188 未加载
vectorEQover 6 years ago
can&#x27;t you better hash the keys and match hashes? They arent variable length, and will be unique per unique string regardless of the length.
评论 #18201045 未加载
评论 #18201062 未加载