索引文档

作者: Vekaco | 来源:发表于2020-03-19 13:59 被阅读0次
索引单个文档

集群启动运行之后,您就可以准备索引一些数据了。Elasticsearch有很多的选项, 但是归根结底他们做的都是一样的事情:把JSON文档放进Elasticsearch里面进行索引。

您可以直接通过一个简单的PUT请求,来指定你想要添加索引的文档, 请求体中包含一个唯一的文档ID,一个或多个的 “域”:"值"对。

//kibana
//http://localhost:5601/app/kibana#/dev_tools/console?_g=()
PUT /customer/_doc/1
{
  "name": "John Doe"
}

//curl
curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H 'Content-Type: application/json' -d'
{
  "name": "John Doe"
}
'

如果customer索引不存在,这个请求自动的就创建,随后添加一个ID为1,并包含一个name域的文档进行存储和索引。

因为这是一个新的文档, 所以返回的应答报文中显示这份文档的版本号是1。

{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 2,
    "failed" : 0
  },
  "_seq_no" : 15,
  "_primary_term" : 2
}

这个新的文档可以立刻从集群中的任何一个节点访问到,您可以通过指定文档ID的GET请求来获取该文档。

{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "_seq_no" : 14,
  "_primary_term" : 2,
  "found" : true,
  "_source" : {
    "name" : "John Doe"
  }
}
批量索引文档

倘若你有很多文档要建索引, 您可以通过bulk API在批处理脚本里提交。通过bulk来批处理文档比单个提交请求快的多的方式, 因为这样可以尽可能的减少网络往返响应的次数。

优化批处理大小主要有以下几个因素决定:文档的数量和复杂程度、建立索引和搜索的负载和集群可用资源。一个好的批处理其实域1000-5000个文件,总负载在5MB-15MB之间。在此,您可以通过尝试来找到最佳的平衡点。

导如一些数据导Elasticsearch,这样你就可以开始搜索和分析:

  1. 下载accounts.json样本数据集。这些文档是随机生成的数据集代表用户账户的以下信息:
{
    "account_number": 0,
    "balance": 16623,
    "firstname": "Bradshaw",
    "lastname": "Mckenzie",
    "age": 29,
    "gender": "F",
    "address": "244 Columbus Place",
    "employer": "Euron",
    "email": "bradshawmckenzie@euron.com",
    "city": "Hobucken",
    "state": "CO"
}
  1. 通过以下_bulk请求将account数据倒入bank索引分片中:
curl -H "Content-Type: application/json" -XPOST "localhost:9200/bank/_bulk?pretty&refresh" --data-binary "@accounts.json"
curl "localhost:9200/_cat/indices?v"

通过以下命令可以看到1000个文档已经索引成功。

curl "localhost:9200/_cat/indices?v"
yellow open   bank                            rZ4BxAhyQU63hKm3x42_kA   1   1       1000            0    414.2kb        414.2kb

相关文章

  • 2017 12-01 ELK的应用

    一.搜索引擎的介绍 (1)索引组件:获取数据-->建立文档-->文档分析-->文档索引(倒排索引)(2)搜索组件:...

  • 1-4 5.6.9ES的API操作

    索引操作 创建索引 查询索引信息 创建索引并建立映射 查看索引类型和映射 文档操作 向user中插入文档 修改文档...

  • ElasticSearch第6节 Kibana 的Dev Too

    http:// : /<索引>/<类型>/<文档ID>http:// : /<索引>/_doc/<文档ID> _d...

  • es概念

    文档地址:https://es.xiaoleilu.com/ 倒排索引 对比: 正排索引 文档id到文档内容和...

  • Elasticsearch(四)——Analyzer

    正排索引 目录页对应的正排索引文档Id到文档内容、单词的关联关系。 Inverted Index倒排索引 索引页对...

  • Elasticsearch基本概念

    数据组织: 1、逻辑设计:索引、类型、文档 索引名+类型名+文档ID,唯一确定一篇文档。可以搜索特定的类型、索引,...

  • 文档索引

    3.4 文档索引

  • Elasticsearch 增删改查

    1、索引的创建和查询 2、索引的mapping导入和查询 3、索引的删除 4、文档的插入 5、文档的查询 6、文档的删除

  • es基础概念

    集群和节点 索引含有相同属性的文档集合 类型索引可以定义一个或多个类型,文档必须属于一个类型 文档文档是可以被索引...

  • Elasticsearch 索引

    索引 ElasticSearch是文档型数据库,索引(Index)定义了文档的逻辑存储和字段类型,每个索引可以包含...

网友评论

    本文标题:索引文档

    本文链接:https://www.haomeiwen.com/subject/qiqnehtx.html