【发布时间】:2012-01-26 15:09:50
【问题描述】:
我想知道是否可以对包含可以解码的 JSON 字符串的数据进行索引,并且每个 JSON 值都可以使用单独的值进行索引。
我正在使用 DIH 连接到 MySQL 数据库并能够索引各个列。 结果如下所示:
<response name="response" numFound="1" start="0" maxScore="2.7143538">
...
<result name="response" numFound="1" start="0" maxScore="2.7143538">
<doc>
<float name="score">2.7143538</float>
<str name="id">82</str>
<str name="name">jorge</str>
<str name="otherinfo">{"day":15,"year":1989,"month":"January"}</str>
</doc>
</result>
</response>
问题是“otherinfo”是一个 JSON 字符串,我想对其进行解码并在我的索引中包含以下内容:
<response name="response" numFound="1" start="0" maxScore="2.7143538">
...
<result name="response" numFound="1" start="0" maxScore="2.7143538">
<doc>
<float name="score">2.7143538</float>
<str name="id">82</str>
<str name="name">jorge</str>
<str name="day">15</str>
<str name="year">1989</str>
<str name="month">January</str>
</doc>
</result>
</response>
这完全可以用 Solr 做吗?
提前致谢
【问题讨论】:
-
JSON 会有固定的结构吗?即,它是否总是有三个名为
day、year和month的键?顺序一样吗? -
不是一个答案,而是一个想法。您可能不想将数据以 JSON 格式存储在数据库中。不得不问这个问题只是为什么不问的一个例子。数据库不是您应该进行演示的地方,尤其是当您确实需要访问各个字段时。日期应存储在支持它的数据库字段类型中。你最好希望你永远不需要在这个日期之前排序或选择。您刚刚证明有人想要搜索它。
标签: search solr search-engine