Загрузка вложенных объектов JSON в Solr

Я пытаюсь отправить свой встроенный файл JSON в свою базу данных Solr, но у меня возникла проблема с моими вложенными объектами.

У меня есть два вложенных объекта внутри моего объекта _source: media_gallery и stock. Раньше моя загрузка давала сбой, но мне удалось загрузить ее после нескольких исправлений, но мои media_gallery и stock добавляются как отдельные объекты, поэтому вместо исходных 1000 объектов я получаю 3000 объектов в моей БД Solr после моей загрузки.

В настоящее время я использую эту команду для загрузки файла JSON:

curl 'http://192.168.99.100:8983/solr/gettingstarted/update/json/docs?split=/_source/media_gallery|/_source/stock&commit=true' \
     --data-binary @catalog.json \
     -H 'Content-type:application/json'

В основном я загружаю файл catalog.json в http://192.168.99.100:8983/solr/gettingstarted.

Мои media_gallery и stock являются объектами внутри объекта с именем _source, и они разделяются как отдельные объекты.

Может ли кто-нибудь помочь мне с этим? Мне нужно, чтобы мои объекты media_gallery и stock загружались как объекты внутри моего исходного объекта, а не как несколько отдельных.

Спасибо.

Решение:

В основном не было необходимости разбивать вложенные объекты. Поскольку я загружаю все как один документ Solr, я могу использовать путь "/".

curl 'http://192.168.99.100:8983/solr/gettingstarted/update/json/docs?split=&commit=true' --data-binary @catalog.json -H 'Content-type:application/json'

person Marius    schedule 01.08.2018    source источник
comment
Итак, цель состоит в том, чтобы удалить _source часть иерархии? Если вы хотите проиндексировать весь JSON как единый документ, необходимо иметь / в качестве первого пути для разделения (если весь JSON составляет один документ solr, путь должен быть «/»).   -  person MatsLindh    schedule 01.08.2018
comment
Эй, Матс, я не хочу удалять свой _source. Я хочу, чтобы он стал единым документом с вложенными внутрь media_gallery и stock. Разве мой путь не правильный? он уже использует /   -  person Marius    schedule 01.08.2018


Ответы (1)


Вам следует изменить параметр разделения (удалить /_source/media_gallery и /_source/stock).

Если весь JSON составляет один документ Solr, путь должен быть «/» Руководство по Solr: параметры сопоставления json

person mrgrechkinn    schedule 01.08.2018
comment
Не могли бы вы уточнить и показать изменение в команде? Я попробовал несколько вариантов, и все они вышли с ошибками. - person Marius; 03.08.2018
comment
@Мариус Я рад, что это помогло тебе. - person mrgrechkinn; 03.08.2018