Elasticsearch SQL用法详解

【Elasticsearch】SQL操作相关 本文主要介绍了SQL在ES上的应用,语法上基本没啥变化 阅读详情

 

原创 数据库开发技术 作者:小米运维 时间:2018-12-13 17:10:44  6260  0

本文详细介绍了不同版本中Elasticsearch SQL的使用方法,总结了实际中常用的方法和操作,并给出了几个具体例子。

上篇文章回顾:看示例学awk

一、5.x中ES-SQL用法

Elasticsearch 5.x版本中,SQL功能还没有集成到Elasticsearch源码中,需要下载第三方插件后才能使用,配置过程如下: 

1.安装ES-SQL依赖node npm 

ES-SQL 5.x版本以后,安装需要依赖node和npm,先安装node和npm,安装后在检查node及npm的安装,命令如下: 

1

2

3

yum -y install nodejs npm 

node -v  

npm -v

 

 

2.下载ES-SQL并安装 

然后切换到ES的根目录下,执行如下命令,下载并安ES-SQL插件: 

1

./bin/elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/5.6.30/.elasticsearch-sql-5.6.3.0.zip

离线包安装可以执行: 

./bin/elasticsearch-plugin install file:/elasticsearch-sql-5.6.3.0.zip

3.重启ES服务 

执行完上述三步,你就可以使用SQL探索数据了,以kibana中的使用为例:

二、6.4 Elasticsearch SQL用法

1    Elasticsearch SQL支持的数据类型

首先我们看下Elasticsearch SQL和标准SQL中数据类型的对应关系:

 

2    Elasticsearch SQL的使用方式

Elasticsearch SQL支持三种client: REST Interface, command-line,JDBC

2.1 REST Interface

建议先在kibana中测试(可以一次执行多个SQL),查询通过之后把查询copy到项目中进行测试。

6.3+ Elasticsearch SQL有个非常实用的功能,就是可以用translate api把SQL语句翻译成ES DSL语句,对于学习DSL感到头痛的同学有福啦。

2.2 command-line

命令行界面的进入方式:

./elasticsearch-sql-cli  IP:PORT(本机ip和es的端口)

进入后的界面如下:

命令行一般作为SQL测试时使用。

2.3 JDBC

该组件为X-Pack中的收费组件,感兴趣的同学可以参考官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-jdbc.html

3   常用SQL语句

注意:查询单个索引名一定要用""引上,否则会报错

*查看当前用户所有的索引:“SHOW TABLES;”

精准查询某个索引:“SHOW TABLES LIKE ‘indexname’;”

 

通配符查询某些索引:“SHOW TABLES LIKE ‘ ’;”

*查看某个索引结构:“DESCRIBE table;” 或者 “DESC table;”

上面两个命令都是“SHOW COLUMNS [ FROM | IN ] ? table”命令的别名

*查看函数:“SHOW FUNCTIONS [ LIKE? pattern? ]?” 

精准查询某个函数:

通配符查询某些函数:

查看所有函数:

常用的聚合函数: 

SELECT MIN(value_1) min, MAX(value_1) max, AVG(value_1) avg,SUM(value_1) sum,COUNT(*) count,COUNT(DISTINCT value_1) dictinct_count FROM "micloud_es_sink_zhouyongbo_test-2018.10.19”;

SELECT语句的语法排序如下:

1

2

3

4

5

6

7

SELECT select_expr [, ...]

[ FROM table_name ]  

[ WHERE condition ] 

[ GROUP BY grouping_element [, ...] ]

[ HAVING condition]

[ ORDER BY expression [ ASC | DESC ] [, ...] ]

[ LIMIT [ count ] ]

*限定返回数据的条数:“limit” 

SELECT * FROM "micloud_es_sink_zhouyongbo_test-2018.10.19” limit 10 ;

注意SQL中的limit比fetch_size中的优先级高,例如下面的例子返回的是5条 :

1

2

3

4

{ 

  "query": "SELECT * FROM "micloud_es_sink_zhouyongbo_test-2018.10.19” limit 5", 

  "fetch_size":10 

}

*排序:“order by + 字段名字 + asc/desc”

SELECT * FROM "micloud_es_sink_zhouyongbo_test-2018.10.19” ORDER BY value_1 asc/desc;

根据多个字段排序: 

select city c,value_1 + 1 vp from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by c,vp order by c desc,vp asc;

 

*WHERE根据条件查询:

WHERE后面跟ES复杂数据类型: 

SELECT first_name FROM index WHERE first_name.raw = ‘John’  ;

WHERE后面跟多个查询条件: 

SELECT * FROM micloud_es_sink_zhouyongbo_test* where city=‘北京' and value_1=8 ORDER BY value_1 desc ;

*group by分组查询: 

根据单个字段分组查询:

select city,count(city) as count_city,sum(value_1) as count_value_1 from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by city;

 

根据多个字段分组查询: 

select city,count(city) count_city,sum(value_1) count_value_1 from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by city,value_1;

 

对于比较长的字段,也可以对该字段声明别名,并对别名进行分组查询,声明字段别名的“as”可省略: 

select city c,count(city) count_city,sum(value_1) count_value_1 from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by c,value_1;

还可以对某字段进行计算,然后按照计算结果分组查询: 

select city c,value_1 + 1 vp from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by c,vp;

 

*HAVING过滤分组结果(ES-SQL引擎同样会在分组之后计算HAVING语句):

Select city c,count(*) count from "micloud_es_sink_zhouyongbo_test-2018.10.19" group by c having count > 53834;

 

*查询嵌套类型:

select * from zhouyongbo_test04 where love.kaishu=‘鲁公’;

*用通配符查询多个索引:

 

注意被查询索引必须有相同的mapping,否则会有如下报错:

 

常用的方法和操作汇总:

*比较操作: 

Equality (=) 

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 = 6 limit 5;

Inequality (<> or != or 

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 <> 6 limit 5;

Comparison (<, 

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 >= 6 limit 5;

BETWEEN

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 between 6 and 8 limit 5;

IS NULL/IS NOT NULL

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 is not NULL limit 5;

*逻辑操作:

AND

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 > 5 and value_1 < 7 limit 5;

OR

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where value_1 = 5 or value_1 = 7 limit 5;

NOT

select * from "micloud_es_sink_zhouyongbo_test-2018.10.19" where not value_1 > 5 limit 5;

*数学运算操作: 

Add (+)

select  1 + 1 as x;

Subtract (infix -) 

select  1 - 1 as x;

Negate (unary -) 

select  - 1 as x;

Multiply (*) 

select  6 * 6 as x;

Divide (/) 

select  30 / 5 as x;

Modulo or Reminder(%) 

select  30 % 7 as x;

*数学函数:(分为通用函数和三角函数两部分 ):

通用函数: 

ABS:求数字的绝对值 

select ABS(value_1) from "micloud_es_sink_zhouyongbo_test-2018.10.19" limit 5;

CBRT:求数字的立方根,返回double

select value_1 v,CBRT(value_1) cbrt from "micloud_es_sink_zhouyongbo_test-2018.10.19" limit 5;

CEIL:返回大于或者等于指定表达式最小整数(double)

select value_1 v,CEIL(value_1) from "micloud_es_sink_zhouyongbo_test-2018.10.19" limit 5;

CEILING:等同于CEIL

select value_1 v,CEILING(value_1) from "micloud_es_sink_zhouyongbo_test-2018.10.19" limit 5;

E:返回自然常数e(2.718281828459045)

select  value_1,E(value_1)  from  "micloud_es_sink_zhouyongbo_test-2018.10.19"  limit  5;

ROUND:四舍五入精确到个位

select ROUND(-3.14);

FLOOR:向下取整

select FLOOR(3.14);

LOG:计算以2为底的自然对数

select LOG(4);

LOG10:计算以10为底的自然对数

select LOG10(100);

SQRT:求一个非负实数的平方根

select  SQRT(9);

EXP:此函数返回e(自然对数的底)的X次方的值

select  EXP(3);

EXPM1:返回e x  -1

select  EXPM1(3);

三角函数:

DEGREES:返回X从弧度转换为度值

select DEGREES(x);

RADIANS:返回X从度转换成弧度的值

select RADIANS(x);

SIN:返回X的正弦

select SIN(x);

COS:返回X,X值是以弧度给出的余弦值

select COS(角度);

TAN:返回参数X,表示以弧度的切线值

select TAN(角度);

ASIN:返回X的反正弦,X的值必须在-1至1范围内,返回NULL

select ASIN(x);

ACOS:返回X的反正弦,X值必须-1到1之间范围否则将返回NULL

select ACOS(x);

ATAN:返回X的反正切

select ATAN(x);

SINH:返回X的双曲正弦值

select SINH(x);

COSH:返回X的双曲余弦值

select COSH(x);

*日期和时间处理相关方法:

YEAR:

SELECT YEAR(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS year;

MONTH_OF_YEAR() or MONTH():

SELECT MONTH(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS month;

WEEK_OF_YEAR() or WEEK():

SELECT WEEK(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS week;

DAY_OF_YEAR() or DOY(),效果等同于EXTRACT(

SELECT DOY(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS day;

DAY_OF_MONTH(), DOM(), or DAY():

SELECT DAY(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS day;

DAY_OF_WEEK() or DOW():

SELECT DOW(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS day;

HOUR_OF_DAY() or HOUR():

SELECT HOUR(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS hour;

MINUTE_OF_DAY():

SELECT MINUTE_OF_DAY(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS minute;

MINUTE_OF_HOUR() or MINUTE():

SELECT MINUTE(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS minute;

SECOND_OF_MINUTE() or SECOND():

SELECT SECOND(CAST('2018-10-23T16:59:27Z' AS TIMESTAMP)) AS second;

如上就是6.4 Elasticsearch SQL支持的主要用法了,如果在优化SQL语句之后还不满足查询需求,可以拿SQL和DSL混用,ES会先根据SQL进行查询,然后根据DSL语句对SQL的执行结果进行二次查询,下面是个小例子:

1

2

3

4

5

6

7

8

9

10

11

12

13

POST /_xpack/sql?format=txt 

{ 

    "query": "SELECT * FROM library ORDER BY page_count DESC", 

    "filter": { 

        "range": { 

            "page_count": { 

                "gte" : 100, 

                "lte" : 200 

            } 

        } 

    }, 

    "fetch_size": 5

}

这个查询就会先根据“query”后面的SQL进行查询,然后用执行“filter”和“fetch_size” DSL语法对查询结果进行过滤,进而返回最终结果。

参考文档: 

6.4.0 Elasticsearch SQL新特性简介:

https://www.elastic.co/cn/products/stack/elasticsearch-sql 

6.4.0 Elasticsearch SQL使用文档:

https://www.elastic.co/guide/en/elasticsearch/reference/current/xpack-sql.html

Elasticsearch(ES)基础查询语法的使用 在 Elasticsearch 中,**聚合(Aggregation)**是一个强大的功能,用于对查询结果进行分组、统计、度量等操作。聚合查询不仅可以按字段进行分组,还可以进行计算(如求和、平均值等),在数据分析和可视化中非常有用。在 Elasticsearch 中,聚合查询并不返回实际的文档,而是返回聚合结果,例如每个分组的文档数量、平均值、最大值等。聚合查询不仅可以进行单一聚合,还可以进行嵌套聚合,即在一个聚合的结果上进行进一步的聚合。的字段,你想按类别进行分组查询,统计每个类别的文档数量。 阅读详情

相关推荐

ES聚合,SQL查询

【代码】ES聚合,SQL查询。

weixin_39565641的博客 898

ES中SQL查询详解

本文主要介绍了Elasticsearch SQL的使用。如果你对DSL查询语句不熟悉,那么采用SQL查询索引数据将是一个非常简单,0门槛入门的好方法。 1、注意ES在6.3版本之后才原生支持SQL查询。 2、可以通过translate API将sql语句转为DSL语句。 3、ES的SQL查询提供对自查询的简单支持。 4、通过SHOW FUNCTIONS可以查看ES的SQL查询支持的函数。 5、ES的SQL查询可以通过游标cursor实现分页查询。

弹指天下 2万+

SOC Boot学习(二)——JTAG Debug介绍

JTAG(Joint Test Action Group ,联合测试行动小组 ) 是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试。JTAG 技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路 TAP ( Test Access Port ,测试访问口),通过专用的 JTAG 测试工具对内部节点进行测试。如今大多数比较复杂的器件都支持 JTAG 协议,如 ARM 、 DSP 、 FPGA 器件等。

yttt的博客 1610

Elasticsearch-SQL语法使用-菜鸟学习

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 本人在使用Elasticsearch-SQL过程中的使用情况,仅供参考。...

qq_29153321的博客 7852

hcaptcha-challenger:基于本地AI模型自动破解验证码的工程实践

验证码作为区分人类与机器的经典安全机制,其核心原理是通过图像识别、行为分析等交互式挑战来阻挡自动化程序。传统绕过方法依赖第三方打码平台或脚本,存在成本高、稳定性差的问题。随着多模态大语言模型和计算机视觉技术的发展,本地化AI求解成为新的技术方向,它通过集成YOLO、ResNet等模型,在本地完成图像语义理解,实现了高隐私、低成本、可进化的验证码自动化解决方案。这种范式尤其适用于需要大规模稳定处理网页交互的场景,如电商数据采集和社交媒体管理。hcaptcha-challenger项目正是这一理念的工程实践,它

weixin_42587866的博客 1028

Chromatix 7实战:从零开始调优ISP模块的完整流程(附常见报错解决方案)

本文提供了高通平台Camera调试工具Chromatix 7的完整实战指南。详细阐述了从环境准备、项目初始化、基础校正(如LSC、BPC)到核心ISP管线(Demosaic、CCM、HDR)及后处理(CAC、ANR)的调优全流程,并附带了常见报错(如“未初始化实例”)的解决方案,旨在帮助工程师建立系统性的调试方法论。

weixin_29290863的博客 623

Elasticsearch: ES使用sql语句进行查询

//format 定义返回的数据类型 适合php的推荐使用json ,除此之外还可以选择 txt,csv,yaml,cbor,smile等使用sql语句查询有一个弊端 就是开始定义某列数据的类型 后期存储时 存入了错误的数据类型 存储时成功的 但是使用sql语句查询会报错,所有最有效的ES查询方法还是使用原生的 当我们不确定有哪些SQL函数可以直接使用时 ,可以在 /_xpack/sql?format=json 接口使用query='show functions',会列举出支持的SQL函数; /*..

Daisy的博客 1万+

Cursor3.0新界面使用说明

本文摘要:Cursor 3.x版本更新后,提供了两套主界面:Editor(类似VSCode的代码编辑器)和AgentsWindow(以AI智能体为中心的新界面)。Editor适合日常编码,AgentsWindow则支持并行运行多个AI任务、云端协作和多仓库管理。通过Ctrl+E可快速切换布局。文章详细介绍了AI聊天面板的操作技巧、四种工作模式(Agent/Plan/Ask/Debug)的区别,以及AgentsWindow的多任务管理功能。同时提供了Windows快捷键速查、中文化设置方法,并对比了新旧版本的

2501_90421497的博客 727

SQL4ES - Elasticsearch 的 SQL 接口指南

SQL4ES - Elasticsearch 的 SQL 接口指南 项目介绍 SQL4ES 是一个用于 Elasticsearch 的开源项目,它提供了一个简单的桥梁,允许开发者通过 SQL 查询语言来操作 Elasticsearch 数据库。这个工具极大地简化了那些习惯于 SQL 语法的开发者在 Elasticsearch 上执行数据检索、分析任务的过程,无需深入了解 Elasticsearc...

gitblog_01130的博客 464

手把手教你配置SAP EWM HU类型及号段分配(含常见错误排查)

本文详细介绍了SAP EWM系统中HU类型及号段分配的配置方法,包括环境准备、包材主数据配置、存储类型关联及号段管理。通过实战案例和常见错误排查,帮助用户高效完成HU配置,提升仓储管理效率。重点讲解了EWM后台配置和号段配置的关键步骤与技巧。

weixin_33670786的博客 443

LeRobot 入门教程(二)强化学习训练及 SmolVLA 模型微调

本文介绍了LeRobot框架中基于人类在环的样本高效强化学习(HIL-SERL)工作流,包含真实机器人训练和模拟环境训练两大模块。在真实机器人部分,详细说明了从配置设置、工作空间边界确定、演示数据收集、奖励分类器训练到演员-学习者架构部署的全流程,并强调了人类干预的关键作用。同时介绍了适用于模拟训练的gym_hil环境及其配置使用方法。最后,文章提供了微调SmolVLA基础模型的指南,包括数据集收集、微调步骤和模型评估方法。该工作流实现了人机协作的高效强化学习,适用于各类机器人操作任务。

2506_90492529的博客 3900

SQL4ES:让Elasticsearch支持SQL查询的开源项目

SQL4ES:让Elasticsearch支持SQL查询的开源项目 sql4es 是一个开源项目,其主要目标是提供一个 JDBC 驱动程序,使得 Elasticsearch 能够支持 SQL 查询。该项目主要使用 Java 编程语言开发。 核心功能 sql4es 的核心功能是允许用户通过 SQL 语句来查询 Elasticsearch 中的数据。它实现了 JDBC 接口的大部分功能,包括 Conn...

gitblog_00536的博客 486

135、高通 ChromaTix 调优工具入门:参数含义、调优流程与效果对比

本文介绍了高通ChromaTix色彩调优工具的核心使用要点:1. ChromaTix是位于ISP管线中的色彩处理系统,核心任务是将原始色彩映射为符合人眼感知的"舒适"效果;2. 重点解析了饱和度、色调、亮度相关饱和度等关键参数的实际含义和调试陷阱;3. 分享了四步调优流程,强调需要基于多场景数据验证;4. 通过案例展示了参数调整带来的色彩改善效果;5. 总结了实用建议,包括保持单一变量调试、量化评估色差、关注极端场景表现等。文章指出ChromaTix调优是平衡不同场景需求的"妥协艺术",需要结合客观数据和主

sundong_81的博客 110

Java查询es用sql_Elasticsearch-sql 用SQL查询Elasticsearch

Elasticsearch的查询语言(DSL)真是不好写,偏偏查询的功能千奇百怪,filter/query/match/agg/geo各种各样,不管你是通过封装JSON还是通过python/java的api进行封装,都非常不方便。最近发现了一个插件,Elasticsearch-SQL可以用sql查询Elasticsearch,感觉这个轮子造的真是好。Elasticsearch-sql的项目地址:h...

weixin_28680865的博客 3025

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

使用SQL查询ES:SpringBoot+Jdbc+Mybatis+Elasticsearch整合方案

1. 前言 ES作为一个搜索工具,寄托于Lucene之上,提供了方便的数据存储和搜索服务,一般的用它来作为网页数据索引以及存储用户画像(即用户标签)数据,可以提供复具有复杂的查询条件的服务。例如在网页索引中,通过倒排的方式索引的方式,对文档进行分词存储,可以很快的定位关键字所在的文档,从而达到毫秒级的搜索效率;而在用户画像存储中,ES既可以作为标签宽表,提供类似HIVE宽表的特性,又可以达到传统关系型数据库或者HBase的实时查询的要求,所以在一般的用户画像存储中也是不二之选。 ES是一个搜索工具,它提供的

哈哈哈哈哈哈哈 7869

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【elasticsearch】es-sql中的一些查詢 sql 函数

ES-SQL 中可以写sql 进行数据查询 ,但是个别的查询sql 还是有一定的区别,以下记录一些实际用到的一些函数 1、模糊查询 非分词字段 类型为keyword 的字段 使用 like, 和mysql 数据库中的like 使用一样 例如 mobile like ’%keyword%‘ 分词字段 类型为text 的字段 使用 matchPhrase,对应es 中的 match_phrase 例如 name =matchPhrase(‘keyword’) 2、多值查询

qq_31286957的博客 3193

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

elasticsearch安装es-sql插件

说明:本示例是在CentOs Linux7.4上运行,安装的es版本为6.8.0,对应es-sql版本6.8.0,es-head版本5.0.0,需要安装JDK 下载es安装包 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.0.tar.gz 下载插件包 es-sql es-sql-site-standalone.zip此包提供web服务 es-head 安装es,前期系统级别准备 #新建用户 use

lixinkuan的博客 1394

伸缩自如的ElasticSearch——ElasticSearch-sql安装及使用

文章目录安装ElasticSearch-sql安装es-sql-site 安装ElasticSearch-sql 安装地址: ES-sql地址 注意安装版本要与ES版本一致(这里是6.7.1)。 安装完成后,解压。将解压后的文件夹放入ES的plugins文件夹下。 安装es-sql-site 安装地址: ES-sql-site地址 安装完成后,执行下面的命令: cd site-server np...

No_Game_No_Life_的博客 757

【Elasticsearch从入门到精通】第39篇:Elasticsearch SQL接口——用熟悉的SQL语法查询ES

摘要 Elasticsearch SQL是X-Pack提供的SQL接口,允许使用标准SQL语法查询ES数据,无需学习Query DSL。本文详细介绍了SQL REST API的使用方法,包括多种返回格式(JSON/CSV/TSV/TXT/YAML)的切换,以及query、fetch_size、filter等核心参数的配置。重点讲解了基于Cursor的高效分页机制,通过fetch_size控制每次返回行数,使用cursor参数实现结果集遍历。同时对比了ES SQL与标准SQL的差异,帮助开发者快速掌握这一轻量

xyghehehehe的专栏 225

推荐文章:探索数据新维度 —— 使用sql4es连接Elasticsearch的神奇之旅

推荐文章:探索数据新维度 —— 使用sql4es连接Elasticsearch的神奇之旅 项目介绍 在大数据时代,Elasticsearch作为一款强大的搜索和分析引擎,早已成为无数开发者的心头好。然而,对于熟悉SQL语言的数据分析师而言,直接利用SQL查询Elasticsearch数据库的愿望一直是一个痛点。于是,sql4es应运而生——一个专为Elasticsearch 6.3.2设计的JDB...

gitblog_00798的博客 565

Elasticsearch SQL查询工具——es-monitor的深度揭秘

Elasticsearch SQL查询工具——es-monitor的深度揭秘 1、项目介绍 es-monitor 是一个创新的开源项目,它提供了一种以SQL查询Elasticsearch数据的新方法。这个工具集不仅包含了命令行插件、控制台命令,还提供了Python库和HTTP API接口,使得对Elasticsearch的操作更加直观且高效。对于熟悉SQL语法的开发者来说,这是一个极其便利的工具,...

gitblog_00028的博客 608

告别复杂SQL!Elasticsearch SQL与JDBC实战,让你用最熟悉的方式查询ES

Elasticsearch SQL功能在持续快速演进中,本文基于Elasticsearch 8.x版本。记住:没有银弹,只有持续的学习和适应。在我过去十年的大厂经历中,见证了企业从传统数据库向Elasticsearch迁移的完整历程。它告诉我们,最先进的技术不一定是最好的技术,Elasticsearch SQL模块的核心是一个高度优化的查询转换引擎。它标志着Elasticsearch从"专家专用工具"向"企业级数据平台"的演进。Elasticsearch SQL正是用正确的方式,让正确的技术发挥最大价值。

持续输出Java相关知识 1009

【Elasticsearch系列廿一】ES7 SQL 新特性

Elasticsearch 7.x 版本在 SQL 支持方面进行了显著增强,使得用户能够更加方便地使用 SQL 语句来查询和操作 Elasticsearch 中的数据。更丰富的 SQL 支持:Elasticsearch 7.x 版本扩展了对标准 SQL 查询语句的支持,包括对 JOIN 操作的支持(尽管有限制,仅支持特定类型的 JOIN)。此外,可能还增强了对窗口函数(Window Functions)或分组后的分析函数(Analytic Functions)的支持。性能优化。

优快云站内信: https://i.youkuaiyun.com/#/msg/chat/qyj19920704 2万+
上一篇: k8s实践12:kubernetes对接nfs存储实现pvc动态按需创建分配绑定pv
下一篇: Kubernetes外挂配置管理—ConfigMap介绍
王树民
博客等级 码龄10年 912粉丝 560原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值