Я смотрю, как реализовать высокопроизводительное облако тегов в Solr.
У меня есть база данных Solr с 15 миллионами записей и добавляется каждый день.У меня есть поле, в которое несколько операторов копирования копируют данные.Может иметь значение от 1 до 6 значений.Эти значения обычно являются предложением или двумя (строковые данные).Я попытался создать пользовательский тип поля для оптимизации и токенизации поля для быстрой огранки, но у меня низкая производительность.
Вот пользовательское поле, которое я создал.
<fieldType name="KeywordCloud" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
Какие-либо предложения о том, как мне достичь хотя бы разумной производительности при работе с этой областью?Или есть совершенно другой подход, который я могу использовать?
Этот подход прекрасно работает, когда у меня есть индекс или миллион документов или около того, но 15 миллионов и выше вызывают проблемы.
Заранее спасибо!