У меня около 2 миллионов текстовых файлов PDF с возможностью поиска. Мне нужно иметь возможность искать их по запросу пользователя и возвращать фрагмент и имя файла. Внешний интерфейс - это приложение Node.js React.
Прямо сейчас я могу использовать pdfjs-dist (https://github.com/mozilla/pdfjs-dist) для чтения содержимого PDF в базу данных MySQL. Затем использовать полнотекстовые запросы MATCH ... AGAINST для поиска по тексту. Однако это неудобно, и с 2 миллионами PDF-файлов это действительно медленно. Кроме того, новые файлы добавляются регулярно, поэтому чтение PDF-файлов в SQL также требует значительных ресурсов.
Есть ли лучшее решение? Elasticsearch - хорошее решение для этого?
Проект размещен в Google Cloud (App Engine и Cloud SQL). Есть ли инструмент Google, который может это сделать?