Hash Index 通常可以用来提升等值查询的定位效率,特别是对以单表精确查询为主的应用场景尤为适合。如电信业务中的并发话单查询等(特别是内存基本充足的场景)。
GBase 南大通用的8a数据库中,hash索引分为 Global Hash和分段 Hash,两者主要的区别是一个列上创建hash索引的范围不同。
Global hash索引是在整个列数据上创建一个索引,分段hash 索引是将整个列数据根据指定的dc数(key_DC_size)分为几段,每段上创建一个索引。分段hash索引主要是便于空间回收。在磁盘空间不充裕的情况下推荐分段hash索引。 现场中,使用Global Hash Index的场景较多。
分段hash索引语法举例如下:
CREATE INDEX idx_t_a ON t(a) key_DC_size = 1000 USING HASH GLOBAL;
建议:

本文介绍了GBase8a数据库中的HashIndex类型,包括GlobalHash和分段Hash的区别,以及如何在不同场景下合理使用。还提到了数据库的删除标记机制、shrinkspace语句对空间回收的影响,以及对实时数据加载的优化建议。最后强调了索引优化的局限性和注意事项。
最低0.47元/天 解锁文章
347

被折叠的 条评论
为什么被折叠?



