Hello
While reading the documentation for the architecture of TDB store, we came
across the usage of B-Trees in node tables. As far as we understand, the
architecture uses B-Trees over the MD5 hashes of a node to map Node to
NodeId.
We wanted to ask, why is a B-Tree used in place of a HashMap here. This
kind of problem of mapping a key to a value is generally easily solvable
using hash-maps.
It would be very helpful if you could throw some light upon why you chose
to use B-Trees over hash-maps for this kind of mapping.
One of the reasons we think you might have used B-trees is since it allows
you to have a 128-bit MD5 hash which is very secure, because the
probability of collision is now 2^-128. Instead if you used hash-maps, the
output of the hash-function used internally could not have been 128 bits
large (because of space constraints) and thus increasing the chance of
collisions.
We would be grateful if you could also comment upon this above conjecture.
Thank you in advance


-- 
Nandika Jain
CSE Junior Undergrad | IIIT-Delhi

Reply via email to