2016-09-12 3 views
2

В одиночном экземпляре Solr имеется несколько ядер (я). Никаких осколков, репликации и облачной концепции. Теперь как искать несколько ядер в этом сценарии?Как найти несколько ядер SOLR?

ответ

3

Чтобы выполнить поиск по всем ядрам, вам необходимо использовать осколки. Если схема для обоих ядер идентична, вы можете просто запросить одно ядро ​​и предоставить параметр осколков.

Если схема отличается, создайте отдельное ядро, которое имеет объединенную схему обеих целевых схем, затем запросите это ядро ​​с двумя отдельными ядрами как осколки. Обладая FieldA, FieldB в core0 и FieldB, FieldC в core1 потребует схему с FieldA, FieldB, FieldC, а затем параметр осколков, который указывает на core0 и core1.

Основная проблема с этим подходом заключается в том, что если документы отличаются друг от друга, подсчет между ними может быть немного странным, поскольку сравнение чего-либо с core0 с чем-то из core1 может быть странным.

Sharding также предполагает, что документы распределяются равномерно (поскольку оценки рассчитываются локально на каждом ядре).

+0

Просто хочу подтвердить одно: позвольте сказать, что я установил solr и создал одно простое ядро ​​(например, ядро ​​1), а затем передал данные в ядро ​​1 и затем создал другое ядро ​​(скажем, ядро ​​2), а затем передал данные на ядро ​​2 . И это очень просто означает, что не задействованы осколки и репликации, а также концепция solr cloud. Теперь, согласно вам, поиск core1 и core2 вообще невозможен. Правильно? (Я понял вашу последнюю строку, что здесь diff core означает разные данные, и это не имеет смысла, но все еще подтверждает его). – souro

+0

Если у них есть _identical_-схемы, поиск обоих можно сделать, сказав, что они разные осколки (поскольку ручной шортинг просто говорит Solr «Оба они принадлежат к одному набору документов, пожалуйста, извлеките информацию из обоих» - это не то, что вы необходимо включить или настроить в старой, ручной конфигурации). Если они имеют разные схемы, создавая супер-схему, а затем запрашивая оба других узла, как осколки достигают того же. – MatsLindh

+0

Я понял, но не полностью. «создание супер-схемы» - можете ли вы сделать эту вещь немного простой. например, у меня есть один осколок, а схема имеет поле A и поле B, а другой осколок имеет схему, которая содержит поле B и поле C. Поэтому в этом случае вы говорите, что нам нужно создать супер схему, которая будет содержать поле A и поле B и поле C. Если это неправильно, пожалуйста, исправьте меня. Но теперь у меня не было того, что вы сказали, «прося оба двух узла, когда осколки достигают того же»? Пожалуйста, помогите мне понять это в контексте приведенного выше примера, который я сказал. – souro

Смежные вопросы