我在4个不同的列上创建了一个带有bloom过滤器的hive表,后来决定使用alter命令添加更多。
但我不知道如何在Hive上刷新/重新生成bloom过滤器。
在插入数据期间是否创建了bloom过滤器?
我们收集统计数据时是否创建了?列或表级?
或者我完全不理解布隆过滤器,它是在动态创建的吗?
我已阅读文档,但未找到有关此内容的更多信息。尝试通过代码没有运气并找到方法被触发的位置。
答案 0 :(得分:0)
是否在插入数据期间创建了布隆过滤器?
是的。当我们在表中插入行时,会逐条创建orm文件中的Bloom筛选器和索引数据。为了提高查询效率,建议在插入数据之前对对应的列进行排序。
它是在我们收集统计信息时创建的吗?列或表级别?
不。如果将新列添加到布隆过滤器列表中,则应重新插入表数据。
答案 1 :(得分:-1)
您可以使用 ANALYZE TABLE 命令更新STATISTICS来执行此Hive 0.10.0及更高版本。
即
ANALYZE TABLE Table1 COMPUTE STATISTICS FOR COLUMNS;