2

我有一个以 ORC 格式存储的表,其中为 1 列定义了布隆过滤器。在创建表并填充数据后,是否可以为另一列添加过滤器(无需重新插入数据)?

4

1 回答 1

3

不,不重写数据是不可能的。Alter table不会更新文件,并且索引和布隆过滤器存储在数据文件中,而不是元存储中。如果您在不重写数据的情况下更改表,则将为新插入/更新的数据创建过滤器以供继续使用。因此,您需要重新插入数据并更好地按过滤器列排序,因此布隆过滤器会更有效。在此处阅读有关 ORC 索引的信息。

于 2018-09-13T17:29:39.737 回答