我要求提取存储在文件夹中的所有文件的内容,格式为pdf,worddoc,txt,msg,ppt等。现在我需要将内容存储在elasticsearch中。解决方案需要是构建管道架构。我计划使用Apache TIKA提取内容,然后将其存储在弹性中。有没有更好的方法来实现这个解决方案?
答案 0 :(得分:1)
您应该调查捆绑Apache Tika的ingest attachment plugin并完全按照您的需要进行操作,即从PDF,DOC,PPT等中提取内容。
只需安装
即可bin/elasticsearch-plugin install ingest-attachment
然后你可以创建一个新的管道
PUT _ingest/pipeline/attachment
{
"description" : "Extract attachment information",
"processors" : [
{
"attachment" : {
"field" : "data"
}
}
]
}
最后,您可以将文档编入索引:
PUT my_index/my_type/my_id?pipeline=attachment
{
"data": "e1xydGYxXGFuc2kNCkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0DQpccGFyIH0="
}
您可以在https://www.elastic.co/guide/en/elasticsearch/plugins/5.3/using-ingest-attachment.html
找到更多使用信息