我知道在最新版本的hive中已删除索引,但是我仍然想知道两者之间的区别。
答案 0 :(得分:1)
主要区别在于它们如何存储从值到出现值的行的映射,以便在查询时可以快速识别具有相关数据的块。
紧凑索引存储一对索引列的值及其块ID,而位图索引将索引列值和行列表的组合存储为位图。>
位图索引是索引几乎没有不同值的列的一种标准技术。
我建议阅读有关Hive Indexing的精彩博文。
其他信息
您可能还需要了解其他内容。
Hive 3.0已删除了索引,他们建议使用实例化视图来获得相似的结果,但是我想说像PARQUET
或ORC
这样的列存储,它们可以进行选择性扫描,甚至跳过整个文件/块。
ORC
的内置索引功能允许该格式在读取过程中跳过数据块,它们还支持Bloom过滤器索引。