I'm not an InterSystems guy and can say only from my point of view, how it works.
Every global name has internal representation in some kind of binary format, I don't know how it can be converted to and back. But this string used to find a correct block. Like when you looking for ^C(9996,46, yellow), it first should read Map (Block 3), to find where Global ^C started (Block 44), then using this internal format for global, it can find the closest node in the first pointer block if it points to another pointer block, the same search repeats until it reached any Data block, which may also contain data for multiple nodes.
Not sure If I can better explain it, but most important is that B* tree helps to very quickly find the final block, and their neighbours.
- Log in to post comments