在elasticsearch索引中,我有一些字段,这些字段正在引用主要类别的ID(例如sector_id,country_id等...)。
这些字段仅用于过滤(使用术语/术语过滤器)和用术语组合(除其他)创建存储桶。
当前每个都使用最小的合适数字数据类型(例如字节,短等。)
)这是用于重聚合的最佳数据类型吗?
或这些应该使用关键字数据类型?
事先感谢您的任何建议!
如果这些字段的值是数字的,则应选择数字类型,如果它们是字符串,请选择关键字类型。
要记住的一件事是,如果您想在某个时候在这些字段上运行range
查询和/或range
聚集。
例如:如果您具有诸如1、2、3,...,10、11、12,...,20的国家ID,...,它们被映射为关键字(即字符串),则您在使用from: 1, to: 3
上在它们上运行range
查询(或聚合),您还可以获得11、12、13等,因为在字符串世界中,11个词汇小于3。