当前位置: 首页 > 知识库问答 >
问题:

将JSON文件导入/索引到Elasticsearch中

倪举
2023-03-14

我是Elasticsearch新手,在此之前一直在手动输入数据。例如,我做过这样的事情:

$ curl -XPUT 'http://localhost:9200/twitter/tweet/1' -d '{
    "user" : "kimchy",
    "post_date" : "2009-11-15T14:12:12",
    "message" : "trying out Elastic Search"
}'

我现在有一个。json文件,我想将其索引到Elasticsearch中。我也尝试过这样的事情,但没有成功:

curl -XPOST 'http://jfblouvmlxecs01:9200/test/test/1' -d lane.json

如何导入。json文件?我是否需要首先采取步骤来确保映射正确?

共有3个答案

邢勇
2023-03-14

我们为这种东西做了一个小工具https://github.com/taskrabbit/elasticsearch-dump

壤驷德寿
2023-03-14

根据当前文档,https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html:

如果要为curl提供文本文件输入,则必须使用--data二进制标志,而不是纯d。纯d不保留换行符。

例子:

$ curl -s -XPOST localhost:9200/_bulk --data-binary @requests
齐高寒
2023-03-14

如果您想使用带有curl的文件,正确的命令是:

curl -XPOST 'http://jfblouvmlxecs01:9200/test/_doc/1' -d @lane.json

Elasticsearch是无模式的,因此您不一定需要映射。如果您按原样发送json并使用默认映射,则每个字段都将使用标准分析器进行索引和分析

如果您想通过命令行与Elasticsearch交互,您可能想看看elasticshell,它应该比curl更方便一些。

2019-07-10:应注意,自定义映射类型已弃用,不应使用。我更新了上面url中的类型,以便更容易看到哪个是索引,哪个是类型,因为两者都命名为“test”很容易混淆。

 类似资料:
  • 问题内容: 我是Elasticsearch的新手,到目前为止一直在手动输入数据。例如,我做了这样的事情: 我现在有一个.json文件,我想将其索引到Elasticsearch中。我也尝试过类似的方法,但没有成功: 如何导入.json文件?我需要首先采取一些步骤来确保映射正确吗? 问题答案: 如果要使用带有curl的文件,则正确的命令是这样的: Elasticsearch是无模式的,因此您不一定需要

  • 我是python和弹性搜索的新手,我想将一个14GB的JSON文件导入Elasticsearch,如下所示: 我想用logstash导入这个文件,但是我现在有两个问题: 1) 我写了这个. conf文件来导入它: 但是它没有添加我想要的过滤器。我希望能够在Elasticsearch/Kibana中按和中的项目过滤它。我如何编写正确的. conf? 2) 此文件非常大,使用 logstash 导入需

  • 我目前正在通过webpack/babel在React应用程序中使用ES6。我使用索引文件收集模块的所有组件并将其导出。不幸的是,这看起来是这样的: 所以我可以很好地从其他地方导入它,比如: 显然,这不是一个很好的解决方案,所以我想知道,是否还有其他方法。我似乎无法直接导出导入的组件。

  • 问题内容: 我对Elastic完全陌生,所以我的知识仅来自Elasticsearch网站,我需要帮助。我的任务是将html格式的大行数据索引到elasticsearch中。我已经抓取了数据并将其存储在磁盘上(200 000个html文件)。我的问题是将所有HTML文件编入elasticsearch的最简单方法是什么?我应该为每个文件手动做出弹性请求吗?例如: 第二个问题是我是否必须解析HTML文档

  • 问题内容: 我是Elasticsearch的新手,正在寻找使用Java API的帮助。我有一些领域对象,例如 我已经创建了连接到节点的传输客户端 有没有简单的方法将我的对象直接插入elasticsearch? 我看到了 但是要做到这一点,我必须将每个对象都转换成json,这虽然不是我理想的情况。 如果我对它的工作方式(架构上)有误解,请告诉我,我在这里学习! 欢呼声,罗布 问题答案: 我认为您在正

  • 问题内容: 希望不使用Logstash将CSV文件索引到ElasticSearch。我正在使用高级库。 给定带有标题的CSV例如: 按字段索引所有数据的最佳方法是什么?最终我希望让每一行看起来像这样 问题答案: 使用较低级的库,这种任务比较容易: