如何在ApacheSolr lucene中搜索json文档

如何在ApacheSolr lucene中搜索json文档,apache,solr,lucene,Apache,Solr,Lucene,下面是我导入到solr的json示例,其中id是唯一的,json_doc字段包含整个json {“id”:“cust_123”, “json\u doc”:“{”\first\u name\:\“xyz\”, \“姓氏”:“ABC”, \“地址\”:\“s3,美国纽约苹果专卖店\” }" } 现在我想在json文档中搜索,比如Apple store as query或New york as query或USA。。。。我应该拿到文件 需要帮助为此类请求定义schema.xml。 如果您使用空间标记

下面是我导入到solr的json示例,其中id是唯一的,json_doc字段包含整个json

{“id”:“cust_123”, “json\u doc”:“{”\first\u name\:\“xyz\”, \“姓氏”:“ABC”, \“地址\”:\“s3,美国纽约苹果专卖店\” }" }

现在我想在json文档中搜索,比如Apple store as query或New york as query或USA。。。。我应该拿到文件

需要帮助为此类请求定义schema.xml。

如果您使用空间标记器,那么它将在空间上标记化。。。因此,如果我搜索“苹果商店”,那么它将不匹配


请帮助我

以下是如何索引JSON文档:

下面是如何在JSON文档中获取搜索结果:


另一方面,如果您有一些奇怪的要求,需要将整个文档存储在单个字段中,请告诉……

您为什么要在单个字段中索引整个JSON?通常&自然&直观:您应该将JSON拆分为单独的字段。。我不想在架构中添加字段。。如果我有不同的json文档,如客户信息文档、地址信息文档、订单信息文档或愿望列表信息文档。。。。。明天我必须为用户添加页面查看历史记录文档…感谢您的回复。。。对我想将整个json文档存储在文件中。。。我对模式非常困惑…请在以下问题上提供帮助。。。仅对正确的模式感到困惑您无法使用“单个字段中的整个JSON”设置进行快速搜索。模式的全部要点是,您“告诉”Solr将搜索哪些字段,因此它可以使用这些字段的值构建快速访问数据结构。所以,我不认为有理由反对在模式中添加这些字段。特别是如果你能使用动态字段:谢谢你的回复。但这里我有两个问题1.是否有可能获得自定义标记器,该标记器将基于“(双引号)创建标记或者任何其他定界符?我知道我可以使用有效负载定界符或其他东西应用筛选器…任何建议/想法???2.我必须转储所有要用于搜索的字段。因此,这就像sql表定义列然后获取结果一样。但如果在sql表中有一个包含文本的blob字段,并且您想要搜索任何内容,那么您将忽略它我不需要定义这么多东西…我想要实现的目标相同..你只需转储你的文档并在该文档中搜索..对此类请求有任何输入吗?