pub fn tile_prefix(
schema: &ArraySchema,
tile_indices: &[u64],
) -> ArrayResult<u64>Expand description
The space-filling-curve key of the tile at tile_indices.
The memtable, the segment index, the transaction overlay and retention
group cells by this key. A cluster routes a tile by the top bits of
fmix64(key) (nodedb_types::array_route::prefix_bucket), not by the
key’s own top bits. Every cell inside a group stays addressed by its
full coordinate: a lookup matches the coordinate within the group
(TileBuffer::get_cell_bytes, extract_cell_bytes), and a tile’s MBR
is built from the cells it holds. Two tiles that share a key therefore
share one group and one route, and lose no cell.
A dimension whose tile count fits its share of the key bits scales each
index over that count to the full bit width. Its tiles keep distinct,
ordered keys. A dimension with more tiles than its bits can number, such
as one with the default full-range domain, keeps the low bits of the
index instead. Nearby tiles then keep distinct keys, and tiles 2^bits
apart share one. Such keys can share their top bits, and the routing mix
still spreads them over buckets.