Изменение схемы Solr без потери данных и без использования динамических полей
Я хочу сделать все это:
- Я хочу добавить больше полей в ту же схему Солра для индекса моего нового документа.
- Я не хочу терять свои старые индексы, хранящиеся в тех же Осколках Солра.
Я не знаю решения для этого соблюдения следующих ограничений:
- Я не хочу использовать динамические поля, так как я не хочу, чтобы в индексированных документах были поля, о которых я не знаю (потому что индекс также может быть опубликован другими пользователями Solr, и я хочу ограничить, какие поля они могут добавлять).
Есть ли решение? Если да, то каково решение.
2 ответа
Да, ты можешь сделать это. Просто добавьте новые поля в схему (не обязательно динамические) и индексируйте новый документ в Solr. Как упомянула Андреа, в старых документах не будет вновь вставленных полей.
ПРИМЕЧАНИЕ. Не делайте вновь добавленные поля как "required = true", которые повредят существующий индекс.
Хотя это не обычно (потому что полный переиндекс более уместен в этих случаях)
- если вам не нужно изменять существующие атрибуты
- если вы хотите добавить новые атрибуты
Вы можете сделать это без переиндексации старого контента. Конечно, у существующих документов не будет этих новых полей. Если вы согласны с этим, вам не нужно переиндексировать.
Динамические поля не являются обязательными, поэтому вам не нужно использовать их, если они вам не нужны, но, возможно, я не получил "ограниченную" часть вопроса.