Я использую Mysql для индексирования данных в SOLR. Раньше данные были меньше, поэтому индексирование происходило быстро без какого-либо отставания. Теперь мои данные содержат почти 3 миллиона строк, и запрос mysql всегда истекает, и из-за этого SOLR не может индексировать данные соответствующим образом. Есть ли способ индексировать SOLR с помощью mysql или делать какие-либо настройки в SOLR? Пожалуйста помоги.Как оптимизировать индексирование solr с помощью mysql
0
A
ответ
1
Если вы не используете incremental/delta indexing, вы должны начать делать это вместо этого. Таким образом будут снова индексированы только те строки, которые изменились с момента последнего запуска индекса, что позволяет уменьшить влияние и количество строк из MySQL.
Кроме того, JDBCDataSource (который, как я полагаю, вы используете) supports the batchSize
parameter, который сообщает драйверу JDBC ограничить количество документов в каждом запросе и вместо этого выдает несколько запросов.
Вы также должны позаботиться о том, чтобы иметь полезные индексы для ваших данных, если вы выполняете какую-либо фильтрацию на содержимом SQL при его извлечении (например, для импорта дельта).
Смежные вопросы
- 1. Индексирование HTML с помощью solr
- 2. HTML-индексирование с помощью solr
- 3. индексирование документов с помощью Solr
- 4. индексирование MySQL в Apache Solr
- 5. Как выполнить индексирование данных с помощью solr?
- 6. Индексирование Solr -
- 7. Индексирование данных HDFS с помощью Solr
- 8. Индексирование wikipedia с solr
- 9. Индексирование файлов журнала с помощью Solr
- 10. Индексирование SVG-файлов с помощью SOLR
- 11. Индексирование файлов с помощью curl и SOLR
- 12. Как автоматизировать индексирование solr?
- 13. Индексирование данных SQLServer с помощью SOLR
- 14. Индексирование арабских PDF-файлов с помощью Solr
- 15. Индексирование PDF с помощью проблемы Sunspot Solr?
- 16. Медленное индексирование solr с PHP
- 17. SOLR 4,4 индексирование постепенно
- 18. Индексирование Solr с базовой аутентификацией
- 19. Solr оптимизировать состояние команды
- 20. Solr: индексирование fb2 файлов
- 21. Solr индексирование многозначных полей
- 22. Автоматическое индексирование в Solr
- 23. Solr индексирование, поиск stemming
- 24. Solr индексирование объектов HTML
- 25. Solr Индексирование времени документов
- 26. SOLR индексирование и поиск?
- 27. Индексирование PDF с номерами страниц с Solr
- 28. Solr BlockJoin Индексирование для Solr 4.10.1
- 29. Solr пятно PDF индексирование
- 30. Solr Индексирование дубликатов документов
Я также использую импортер дельты с отметкой last_update. Я извлекаю все данные, которые были изменены до 30 минут или что-то в этом роде. Но этот запрос также принимает тайм-аут. Это главным образом потому, что у меня есть 15 таблиц, которые делают левые соединения в запросе на импорт mysql delta. Так что я могу сделать это партиями ??? –
Существует по крайней мере два варианта. Используйте функцию объяснения MySQL, чтобы узнать, почему ваш запрос занимает много времени, и оптимизируйте его, чтобы как можно меньше возвращаться с минимальным количеством поисков. Если вы делаете дельта-импорт и видите три миллиона измененных строк для каждого импорта, делайте импорт чаще, если это проблема. Добавьте соответствующие индексы. Другим вариантом является использование нескольких уровней сущностей в конфигурации DIH, так что Solr может выполнять соединения в самом коде (и кэшировать каждый поиск по мере необходимости). Это может помочь, возможно, нет. Пытаться. – MatsLindh