Solr无法索引和查询具有键值对的对象的列表

时间:2018-08-29 10:17:20

标签: solr solrj

我正在尝试索引一组文档,其中包含具有键值对的对象列表。我能够索引文档bt,无法查询文档,因为solr不返回任何结果。

请帮助我。

我的样本数据源:

{
    "_id" : ObjectId("5b856d762aa4df47ec47d265"),
    "interestgroups" : [],
    "emailId" : "2015msunitedstates@gmail.com",
    "mkmdata" : [ 
        {
            "visitTime" : [ 
                ISODate("1899-12-31T18:30:00.000Z")
            ],
            "city" : ["a","b"],
            "source" : [ 
                "Direct-1",
                "Direct"
            ]
        }, 
        {
            "visitTime" : [ 
                ISODate("2017-07-12T08:36:11.000Z")
            ],
            "city" : [ 
                "Miami"
            ],
            "source" : [ 
                "Email"
            ]
        }
    ]
}

下面是我的schema.xml

<field name="mkmdata" type="text_general" indexed="true" stored="true" multiValued="true"/>
<field name="mkmdata.city" type="string" indexed="true" stored="true" />
<field name="mkmdata.source" type="string" indexed="true" stored="true" multiValued="true"/>

我的查询

q=emailId:2015msunitedstates@gmail.com&fq=mkmdata.source:Email

我的索引文档具有以下格式

[
      {
        "mkmdata": [
          "{ \"visitTime\" : [ { \"$date\" : \"1899-12-31T18:30:00.000Z\"}] , \"city\" : [ ] ,\"source\" : [ \"Direct-1\",\"Direct\"] }",
          "{ \"visitTime\" : [ { \"$date\" : \"2017-07-12T08:36:11.000Z\"}] , \"city\" : [ \"Miami\"] , \"source\" : [ \"Email\"] }"
        ],
        "emailId": "2015msunitedstates@gmail.com",
        "id": "5b856d762aa4df47ec47d265",
      }
    ]

0 个答案:

没有答案