我有大约200万个可文本搜索的PDF文件。我需要能够在它们中搜索用户的查询,并返回摘要和文件名。前端是一个Node.js React应用程序。
现在,我可以使用pdfjs-dist(https://github.com/mozilla/pdfjs-dist)将PDF内容读取到MySQL数据库中。然后使用全文MATCH ... AGAINST查询来搜索文本。但是,这很尴尬,拥有200万个PDF确实很慢。而且,会定期添加新文件,因此将PDF读入SQL也会占用大量资源。
有更好的解决方案吗? Elasticsearch是一个好的解决方案吗?
该项目托管在Google Cloud(App Engine和Cloud SQL)上。有Google工具可以做到这一点吗?
答案 0 :(得分:1)
是的,我想说Elasticsearch是索引PDF并在以后搜索它的好工具。
有一个ingest attachment processor plugin,可以从常见格式(PDF,TXT,DOC等)中提取数据并将其编入Elasticsearch,以便以后可以搜索。
Google Cloud具有Elasticsearch cluster plugin,可以简化集成。还有Elasticsearch service in the Google Cloud得到了广泛的支持。