我有一个索引多值字段。如果我添加一个并行多值字段,相同的顺序可靠吗?
考虑这个CSV和分隔符|
:
ID,Name,Number
988,Sixth|Second|Third,6|2|3
989,Fifth|Fourth|First,5|4|1
如果我通过id
(而不是搜索)获取记录,我能确保两个字段的数组总是按原始匹配顺序排列吗?
{
"doc":
{
"ID":988,
"Name":["Sixth",
"Second",
"Third"]},
"Number":[6,
2,
3]}}
1条答案
按热度按时间8fq7wneg1#
是的,顺序是确定和稳定的。您可以放心地假设多值字段的序列保持不变。邮件列表上详细说明这一点的帖子已经消失了。
无法保证字段的顺序,即“数字”可以位于“名称”之前,但在字段内部(多个部分),值将按索引顺序返回。
自2008年以来,我们一直在Solr上运行依赖于此行为的应用程序,这从来都不是问题。
如果有许多字段需要知道一个字段中的[0]对应于另一个字段的[0],等等,那么将结构的仅存储(而非索引等)JSON表示添加为字段,只索引其他字段(而不是存储它们),以简化应用程序级代码可能会更有用。