Монго данные индекса на SolrCloud - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь использовать mongo-connector для индексации коллекции MongoDB в Solr для функции поиска, которую я хочу реализовать.Если моя коллекция в Mongo имеет очень вложенную структуру JSON, смогу ли я проиндексировать ее в Solr?Как будет выглядеть файл схемы в Solr, если мы хотим проиндексировать json, показанный ниже?

"profile": {
   "id": "1234"
   "lastName": "Smith"
   "firstname" : "Daniel"
   "emails": {   
      "work": {
           "emailAddress": "abc@gmail.com", 
           "type": "work",          

       },

       "personal": {  
            "emailAddress": "nml@gmail.com", 
            "type": "personal",          

       }
    },
   "phones": {   
       "home": {
            "phoneNumber": "212345",     
        },
       "work": {
               "phoneNumber": "567899",   
        },
         "cell": {
               "phoneNumber": "112456",    
        }      
    }
}

1 Ответ

0 голосов
/ 07 мая 2018

Соединитель mongo автоматически выравнивает документы , поэтому имена полей будут:

"emails.work.emailAddress": "abc@gmail.com"

.. и т. Д. Это позволяет сопоставлять имена с помощью определений динамических полей, где вы можете давать имена полей с подстановочными знаками, чтобы сопоставить несколько разных имен с одним и тем же определением поля:

<dynamicField name="emails.*" type="string" indexed="true"  stored="true"/>

.. будет индексировать каждое имя поля, которое начинается с emails. как строковое поле (которое допускает только точное совпадение).

...