【ElasticSearch】Kibana中DevTools的使用

ElasticSearch:Kibana中DevTools的使用

DevTools

注:ElasticSearch里面有 indextype 的概念:index称为索引,type为文档类型,一个index下面有多个type,每个type的字段可以不一样。这类似于关系型数据库的 database 和 table 的概念。

实际使用中建议一个index里面仅有一个type,名称可以和index一致,或者使用固定的doc

节点操作
查看健康状态
GET /_cat/health?format=json

format=json 表示输出json格式,默认是文本格式。

健康状态有3种:

  • Green - 正常(集群功能齐全)
  • Yellow - 所有数据均可用,但尚未分配一些副本(群集功能齐全)
  • Red - 某些数据由于某种原因不可用(群集部分功能可用)

注意:当群集为红色时,它将继续提供来自可用分片的搜索请求,但您可能需要尽快修复它,因为存在未分配的分片。

查看节点
GET /_cat/nodes?format=json
索引
创建index
PUT /customer

注:实际项目里一般是不会直接这样创建 index 的,这里仅为演示。一般都是通过创建 mapping 手动定义 index 或者自动生成 index 。

删除index
DELETE /customer

注:删除索引会把数据一并删除。实际操作请谨慎。

查看所有index
GET /_cat/indices?format=json
增删改查

ES文档有一些缺省字段,称之为Meta-Fields,例如_index_type_id等,查询文档的时候会返回。

按ID新增数据

type为doc:

PUT /customer/_doc/1
{
   
  "name": "John Doe"
}
PUT /customer/_doc/2
{
   
  "name": "yujc",
  "age":22
}

如果索引index不存在,直接新增数据也会同时创建index。

按ID更新数据
PUT /customer/_doc/2
{
   
  "name": "yujc2"
}

POST /customer/_doc/1
{
   
  "name": "yujc2",
  "age":22
}

name字段会被修改,而且_version会被修改为2。该操作实际是覆盖数据。

按ID查询数据
GET /customer/_doc/1
直接新增数据

我们也可以不指定文档ID从而直接新增数据:

POST /customer/_doc
{
   
  "name": "yujc",
  "age":23
}

注意这里使用的动作是POSTPUT新增数据必须指定文档ID。

更新部分字段

如果只是想更新指定字段,必须使用POST加参数的形式:

POST /customer/_doc/1/_update
{
   
  "doc":{
   "name": "John"}
}

其中_update表示更新。Json里doc必须有,否则会报错。

增加字段

在已有的数据基础上增加一个year字段,不会覆盖已有数据

POST /customer/_doc/1/_update
{
   
  "doc":{
   "year": 2018}
}

也可以使用简单脚本执行更新。此示例使用脚本将年龄增加5:

POST /customer/doc/1/_update
{
   
  "script":"ctx._source.age+=5"
}
按ID删除数据
DELETE /customer/_doc/1
查询指定 Index 的 mapping
GET /customer/_mapping
批量操作
批量创建
POST /customer/_doc/_bulk
{
   "index":{
   "_id":"3"}}
{
   "name": "John Doe3" }
{
   "index":{
   "_id":"4"}}
{
   "name": "Jane Doe4" }

该操作会新增2条记录,其中文档第1行和第3行提供的是要操作的文档id,第2行和第4行是相应的源文档,即数据内容。这里对文档的操作是index,也可以是create,二者都是创建文档,只是如果文档已存在,index会覆盖,create会失败。

批量更新、删除
POST /customer/_doc/_bulk
{
   "update":{
   "_id":"1"}}
{
   "doc": {
    "name": "John Doe becomes Jane Doe" } }
{
   "delete":{
   "_id":"2"}}

该操作会更新ID为1的文档,删除ID为2的文档。对于删除操作,之后没有相应的源文档,因为删除只需要删除文档的ID。

注意:批量操作如果某条失败了,并不影响下一条继续执行。

按条件更新
curl -X POST 
http://127.0.0.1:9200/test/_doc/_update_by_query 
-H "Content-Type: application/json" 
-d '{"script":{"source":"ctx._source[\"is_pub\"]=1"},"query":{"match_all":{}}}'

这个示例的含义是将文档test/_doc的所有文档的is_pub字段设置为1。

按条件删除
curl -X POST 
http://127.0.0.1:9200/test/doc/_delete_by_query 
-H "Content-Type: application/json" 
-d '{"query":{"bool":{"filter":{"range":{"id
  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然可以!下面是一个简单的 ElasticsearchKibana 可视化使用教程: 1. 安装 ElasticsearchKibana:首先,你需要安装 ElasticsearchKibana。你可以从 Elasticsearch 官方网站(https://www.elastic.co/downloads/elasticsearch)下载 Elasticsearch,并从 Kibana 官方网站(https://www.elastic.co/downloads/kibana)下载 Kibana。根据你的操作系统,按照指南进行安装。 2. 启动 ElasticsearchKibana:安装完成后,启动 ElasticsearchKibana 服务。你可以按照官方文档提供的方法来启动服务。 3. 连接 ElasticsearchKibana:打开浏览器,访问 Kibana 的默认地址 http://localhost:5601,进入 Kibana 的管理界面。在管理界面,点击左侧导航栏的 "Stack Management"。 4. 创建索引模式:在 "Stack Management" ,点击 "Index Patterns",然后点击 "Create index pattern"。输入你想要可视化的 Elasticsearch 索引的名称,并按照提示设置索引模式的配置。 5. 探索数据:在 Kibana 的导航栏,点击 "Discover"。选择你创建的索引模式,并开始探索数据。你可以使用查询语句和过滤器来筛选数据。 6. 创建可视化图表:在 Kibana 的导航栏,点击 "Visualize"。选择你想要创建的图表类型,如柱状图、折线图等。根据你的需求,配置图表的设置和参数。 7. 保存和共享可视化:在创建完成的图表,点击 "Save" 按钮保存可视化。你可以选择将可视化图表保存为一个仪表盘,以便于在 Kibana 共享和展示。 这只是一个简单的教程,帮助你入门 ElasticsearchKibana 的可视化功能。你可以进一步探索更多高级的可视化技巧和功能,以满足你的需求。祝你使用愉快!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值