Apache Solr-ID字段和字段前缀



我对Apache Solr有以下问题:

a) ID字段必须是唯一的。是否有任何格式限制?到目前为止,我只使用了MySQL数据库中的ID,我想用Solr进行搜索。

b) 我读过关于字段前缀的文章,例如表示整数值的I_fieldname。字段前缀会给我增加速度吗?它们是否值得使用?c) 如果ID是一个整数,我是否也应该在ID字段前面加前缀?

唯一字段只需要是唯一的。它可以是String、int、float(尽管我不建议这样做,因为浮点数相当不精确)或任何其他不同的值。使用数据库中的ID是一个很好的解决方案,因为它允许您轻松地将数据库中的行与Solr中的文档进行匹配。

从这个意义上说,字段前缀并不是真正的前缀,它们只是动态字段——这意味着在索引之前,您不需要在架构中定义字段结构,您只需要假设以i_开头的字段名索引的所有内容都是整数。如果你知道你要索引哪些字段,我会定义字段以及你想要的每个字段的行为。你也可以同时做这两件事,有一些通配符字段来捕获未定义的字段,尽管你可能会更好地为你试图解决的特定用例定义这些字段。

我不会为唯一字段使用动态字段,尽管如果你愿意,你可以这样做。但是,我更喜欢在架构中定义字段,这样你就可以进行分析,并按每个字段设置存储/索引。该模式还告诉其他开发人员/solr管理员更多关于solr核心的实际结构以及如何使用solr的信息。

最新更新