对于不太复杂的数据,有时使用脚本更方便。它会让我们更快地将数据写入eLasticsearch。在今天的文章中,我将展示如何使用Shell脚本将一些数据写入Elasticsearch。
在今天的演示中,我将使用Elastic Stack 8.2进行显示。在Elasticsearch的安装中,我们将启动HTTPS访问和安全设置。如果您不知道如何安装Elasticsearch 8.x,请参阅我的先前文章“如何在Linux,MacOS和Windows上安装Elasticsearch。”
我们首先在目录中创建以下文件:
食谱
上面显示其文件格式。请请注意,最后一行是一个空行。
我们将创建以下sample-index.json文件。此文件用于定义索引的映射:
样本index.json
如果我们不定义此映射,则书面数据将由Elasticsearch自动识别,并根据第一个文档的数据猜测每个字段的类型。我们首先定义一个映射,以避免使用错误,并在同一中进行错误时间,我们还可以根据我们的意图进行绘制,以节省存储成本。
接下来,我们创建一个脚本如下:
load.sh
在这里,我们需要输入访问地址,用户名,密码和访问Elasticsearch所需的Elasticsearch。
通过这种方式,我们的文件在上面显示。接头,我们需要修改load.sh至可执行文件:
我们按照以下命令运行:
如上所示,我们已成功地将数据写入Elasticsearch。我们可以使用Kibana进行检查:
我们可以检查其映射:
在上面的方法中,我们可以看到每个文档前面都有这样的陈述:
在实际应用中,这种格式很少见,除非我们自己准备。
食谱1.json
请注意,最后一行是空行。那么我该如何更改?
我们需要使用脚本读取文档的每一行,并在其前面添加以下几行:
这意味着创建文档。
为了能够使用正确的映射和配置正确地制作索引数据,我们创建以下模板。JSON文件:
template.json
基于此设计,我们创建以下脚本:
load_json.sh
我们使用以下命令将上述脚本转换为可执行文件:
我们使用以下命令执行此脚本:
我们看到文件已成功编写。我们可以在Kibana中检查:
以上表明三个文件已成功编写。
我们可以查看其映射:
从上面,我们可以看到文档的映射是正确的。
原始:https://juejin.cn/post/7096398243487023135