我正在寻找围绕Elasticsearch建立一个带有图像和文件上传/下载的应用程序。因此,用户上传图像或文档(PDF,Word等),图像被存储,并由用户和管理员稍后检索。看起来Elastic可以从文件和图像中导入/摄取数据,但我不清楚是否可以上传和检索图像/文件本身。我只需要知道这是否可行。如果不是,我需要在我的应用程序中包含另一个系统。
答案 0 :(得分:2)
首先需要提取附件处理器,以便将任何媒体文件存储到elasticsearch中。
So first you need to install elasticsearch plugin.
sudo 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="
}
数据字段需要编码的Base64媒体文件字符串。
首先,您需要将媒体文件转换为字节数组为Base64编码的字符串。
答案 1 :(得分:0)
ES不是一个文件系统,它只是一个搜索引擎,你可以存储你的文件。