百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

新版Elasticsearch 7.x 命令行快速入门

toyiye 2024-06-21 11:57 8 浏览 0 评论

关于Elasticsearch 的介绍,可以参考之前的文章:



一、_cat 命令

_cat命令是系统信息查询相关的,下面分成好几个子命令分类。

curl http://localhost:9200/_cat

/_cat/allocation

/_cat/shards

/_cat/shards/{index}

/_cat/master

/_cat/nodes

/_cat/tasks

/_cat/indices

/_cat/indices/{index}

/_cat/segments

/_cat/segments/{index}

/_cat/count

/_cat/count/{index}

/_cat/recovery

/_cat/recovery/{index}

/_cat/health

/_cat/pending_tasks

/_cat/aliases

/_cat/aliases/{alias}

/_cat/thread_pool

/_cat/thread_pool/{thread_pools}

/_cat/plugins

/_cat/fielddata

/_cat/fielddata/{fields}

/_cat/nodeattrs

/_cat/repositories

/_cat/snapshots/{repository}

/_cat/templates


curl http://localhost:9200/_cat/nodes?v

显示Elasticsearch 集群节点的详细信息,如下图所示。


二、索引相关操作

ES中一个索引就类似于数据库中一个数据库的概念。当然ES中的数据支持结构化、非结构化数据。

先查询ES集群中有哪些索引:

curl http://localhost:9200/_cat/indices?v


(1)创建新索引

创建一个新索引-demo,然后再次查询索引列表。这时,已经有新增的索引demo了。

curl -XPUT localhost:9200/demo


再看看ES的数据目录里是不是创建了相应的文件:

ls data\nodes\0\indices\

其中 data 是 ES 集群的数据所在目录,nodes 下是集群的节点列表,有多少个节点就有多少个子目录,这里演示系统只有一个名称为0的子目录,说明nodes 下只有一个节点,如果再增加一台服务器,就会有0和1两个子目录。


ikxY1EscQ0SgbFxrp-X-qw 是demo索引的uuid,里面有0-4 个子目录,代表了5个分片。ES 默认对每个索引分配5个分片(shard),每个分片里数据在进行分段(segment),数据会保存在分段里面。


segments_3 就是一个分段,数据会保存在分段里面。如果是集群配置,则每个分片会根据配置参数会存在多个副本(replica)。


当索引中的数据(也就是文档)量超过原定的分片容量时,无法保存新的数据,这时候ES要进行数据迁移,数据迁移一般是新建一个索引,给这个新索引分配足够的分片数,再将数据移到新索引中。新索引的创建是很消耗资源的,因此最好在创建一个索引前预先计算好容量需求。


(2)新建文档

在索引 demo 中,创建第一个文档。


(3)查询索引

查询整个索引的情况。

curl http://localhost:9200/demo?pretty

这个索引demo包含5个分片,副本数为1。



还可以用_search命令来查询索引里的具体文档,不带任何参数查询所有文档。

curl http://localhost:9200/demo/_search?pretty


根据主键查询文档:

curl http://localhost:9200/demo/_doc/1?pretty

_version=1说明这个主键的内容被更新了1次。


下面 found = false,表示没有找到该主键的文档。


(4)更新文档

更新文档之后,版本号 version 会加1。


(5)删除文档

curl -XDELETE localhost:9200/demo/_doc/1?pretty


删除文档之后,再查询主键=1的文档,发现已经找不到了。

curl localhost:9200/demo/_doc/1

{"_index":"demo","_type":"_doc","_id":"1","found":false}



三、查询条件

用_search子命令来查询文档,query参数可指定查询条件。

curl http://localhost:9200/demo/_search?pretty

不给参数,会输出所有文档。


其中,Hits是统计信息,给出文档总数:


查询字段名name中包含rickie的记录。


如果加上”_source”:false参数,则查询结果不显示文档内容,只显示文档序号。

指定某些字段,比如只需要返回”name”字段。



四、用_all查询所有索引

curl http://localhost:9200/_all?pretty

返回结果包括了索引中的类别列表。Setting里是索引的元数据信息,分配了5个分片。

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码