ElasticSearch系列 - 文档基本操作

ElasticSearch系列 - 文档基本操作

运行EKL(ElasticSearch+Kibanan+Logstash)

进入Kibanna页面

[外链图片转存失败(img-GCokwl6b-1567216884874)(/Users/aaron/Library/Application Support/typora-user-images/image-20190829205433374.png)]

选择控制台Console,可以在线输入命令,方便学习

进入cerebro集群控制台

[外链图片转存失败(img-Urx66bLC-1567216884875)(/Users/aaron/Library/Application Support/typora-user-images/image-20190829205527616.png)]

查看当前集群情况,一共4个索引,前三个是Kibanna测试数据,后面movies是通过Logstash导入的

绿色加粗代表是主分片,虚线代表是副本分片。

此时我运行

POST users/_doc
{
  "user" : "wanxintao",
  "post_date" : "2019-08-29T14:12:12",
  "message" : "trying out Kibana"
}

[外链图片转存失败(img-xRRCaHl7-1567216884876)(/Users/aaron/Library/Application Support/typora-user-images/image-20190829205715786.png)]

集群立刻可以看出多了一个user索引。

在Kibanna上运行的好处是,Kibanna可以直接调整API文档查询

[外链图片转存失败(img-CcledGj8-1567216884876)(/Users/aaron/Library/Application Support/typora-user-images/image-20190829205839059.png)]

文档的操作类型
类型解释
index如果id不存在,创建新文档,否则先删除后新增,version增加
create如果id存在,创建文档会失败
read通过id查询
update更新文档,文档必须已经存在,更新只会对相应字段更新
delete删除

下面是简单文档操作命令

GET /movies



# 创建文档指定  自动生成id  create类型
POST users/_doc
{
	"user" : "wanxintao",
  "post_date" : "2019-08-29T14:12:12",
  "message" : "trying out Kibana"
}

# 删除指定id的文档
DELETE users/_doc/4qNT3WwBPchluLm0xxnx

# 创建文档,指定Id。如果id已经存在,报错
PUT users/_doc/1?op_type=create
{
    "user" : "Jack",
    "message" : "trying out Elasticsearch"
}

# 创建文档 指定 ID 如果已经存在,就报错
PUT users/_create/1
{
     "user" : "Jack",
    "message" : "trying out Elasticsearch"
}
# 查看文档  read类型
GET users/_doc/1

# 更新文档  index类型
PUT users/_doc/1
{
	"user" : "Mike",
  "content":"更新是先删除后插入"
}

GET users/_doc/1

# 在原文档上新增文档  update类型
# 和 PUT users/_doc/1区别在于_doc与_update的区别
POST users/_update/1/
{
    "doc":{
        "post_date" : "2019-05-15T14:12:12",
        "message" : "trying out Elasticsearch"
    }
}

### Bulk 操作
### 减少重复建立链接消耗,支持对一个索引不同操作,不同索引不同操作,可以create,index delete update四种操作 一条操作失败不阻塞后面操作,每一条操作都会返回值
  
POST _bulk
{ "index" : { "_index" : "test", "_id" : "1" } }
{ "field1" : "value1" }
{ "delete" : { "_index" : "test", "_id" : "2" } }
{ "create" : { "_index" : "test2", "_id" : "3" } }
{ "field1" : "value3" }
{ "update" : {"_id" : "1", "_index" : "test"} }
{ "doc" : {"field2" : "value2"} }


### mget 操作  批处理,减少重复建立链接消耗

PUT test/_doc/2
{
	"user" : "Mike",
  "content":"更新是先删除后插入"
}

GET /_mget
{
    "docs" : [
        {
            "_index" : "test",
            "_id" : "1"
        },
        {
            "_index" : "test",
            "_id" : "2"
        }
    ]
}

#URI中指定index
GET /test/_mget
{
    "docs" : [
        {

            "_id" : "1"
        },
        {

            "_id" : "2"
        }
    ]
}

GET /_mget
{
    "docs" : [
        {
            "_index" : "test",
            "_id" : "1",
            "_source" : false
        },
        {
            "_index" : "test",
            "_id" : "2",
            "_source" : ["field3", "field4"]
        },
        {
            "_index" : "test",
            "_id" : "3",
            "_source" : {
                "include": ["user"],
                "exclude": ["user.location"]
            }
        }
    ]
}


### msearch 操作 批量查询
POST kibana_sample_data_ecommerce/_msearch
{}
{"query" : {"match_all" : {}},"size":1}
{"index" : "kibana_sample_data_flights"}
{"query" : {"match_all" : {}},"size":2}

#清除数据 index
DELETE users
DELETE test
DELETE test2

Status分析

问题原因
无法连接网络故障/集群挂了
连接无法关闭网络故障或者节点出错
429集群太繁忙
4xx请求体格式有错
500集群内部错误
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: elasticsearch java api官方文档是官方提供的关于使用elasticsearch的Java API的指南和参考手册。它详细介绍了elasticsearch的各种功能、方法和参数,帮助开发人员理解和使用elasticsearch的Java API。 官方文档提供了详细的使用示例和代码片段,帮助开发人员快速上手。通过官方文档,开发人员可以了解如何建立elasticsearch客户端连接、创建索引、添加文档、进行搜索和查询等操作。此外,官方文档还介绍了如何使用各种过滤器、聚合操作和排序功能,以及如何进行全文搜索和地理位置搜索。 官方文档也提供了关于如何处理异常和错误的指导,帮助开发人员更好地进行故障排查和处理。此外,官方文档还包含了关于性能调优、集群管理和安全配置等方面的建议和最佳实践。 总之,elasticsearch java api官方文档是一个非常有价值的工具,它为使用Java开发elasticsearch应用程序的开发人员提供了必要的指导和支持。通过阅读官方文档,开发人员可以更好地理解和掌握elasticsearch的Java API,提高应用程序的性能和稳定性。 ### 回答2: elasticsearch java API官方文档elasticsearch官方提供的用于Java开发的API文档。它包含了elasticsearch中所有Java API的详细说明和使用指南,可以帮助开发人员在Java应用程序中使用elasticsearch进行索引、搜索和管理数据。 elasticsearch是一个开源的分布式搜索和分析引擎,它基于Lucene库构建,并提供了一个RESTful API用于与其进行交互。elasticsearch java API官方文档通过提供详细的类和方法的说明,以及示例代码和最佳实践,帮助开发人员快速上手elasticsearch并实现各种功能。 在elasticsearch java API官方文档中,开发人员可以了解到如何创建和配置elasticsearch客户端、连接到elasticsearch集群、执行不同类型的搜索、对结果进行排序和过滤、执行聚合操作、进行索引和文档的操作、处理分页和滚动搜索等等。 官方文档还提供了一系列的代码示例,帮助开发人员理解和学习elasticsearch java API的使用。这些示例覆盖了不同的应用场景,如基本搜索、复杂搜索、地理位置搜索、聚合查询等等,使得开发人员能够根据自己的需求,快速上手并进行开发。 总而言之,elasticsearch java API官方文档elasticsearch官方提供的非常有价值的资源,将帮助开发人员在Java应用程序中有效地使用elasticsearch进行搜索和管理数据。通过阅读官方文档,开发人员能够深入了解elasticsearch的工作原理和各种功能的使用方法,从而更好地构建出强大的搜索应用。 ### 回答3: Elasticsearch Java API官方文档是为了帮助Java开发者使用Elasticsearch搜索引擎而编写的一份指南。这个文档详细介绍了如何在Java应用程序中使用Elasticsearch的各种功能和特性。 该文档首先提供了关于Elasticsearch的简要介绍,包括其核心概念、工作原理和主要用途。然后,它详细描述了如何在Java应用程序中集成和配置Elasticsearch客户端,并提供了使用示例。 接下来,文档介绍了Elasticsearch的搜索功能,包括如何构建查询、执行过滤和排序操作以及如何使用聚合框架。它还解释了Elasticsearch中的分析器和分词器是如何工作的,并且给出了一些常见的搜索用例和示例代码。 此外,文档还介绍了Elasticsearch的索引管理和数据操作,包括如何创建索引、映射字段和执行文档的添加、更新和删除等操作。它还介绍了如何使用批量API执行批量操作以提高性能。 最后,文档提供了关于Elasticsearch的聚合和分析的详细信息,包括基本聚合、嵌套聚合和地理空间聚合等。它还解释了如何通过使用Elasticsearch的插件系统扩展其功能。 总体而言,Elasticsearch Java API官方文档提供了丰富的内容和严谨的示例代码,使Java开发者能够快速上手并有效地利用Elasticsearch的强大功能。无论是初学者还是有经验的开发者,都可以从这个文档中获得宝贵的指导和参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值