Elasticsearch DSL

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: Elasticsearch 支持 JSON 格式的操作数据,它就是 DSL (Domain Specific Language),通过将查询的 DSL 看待成 AST (Abstract Syntax Tree),其中包括叶子查询子句(单一逻辑)及复合查询子句(组合逻辑)。

> Elasticsearch 支持 JSON 格式的操作数据,它就是 DSL (Domain Specific Language),通过将查询的 DSL 看待成 AST (Abstract Syntax Tree),其中包括叶子查询子句(单一逻辑)及复合查询子句(组合逻辑)。


以下操作都在 Kibana Dev Tools 中进行实践。

image.jpeg


索引(Index)

创建索引

PUTmateriel{
"settings" : {
"number_of_shards" : 3,
"number_of_replicas": 1  },
"mappings" : {
"properties" : {
"materiel" : { "type" : "text" },
"description" : { "type" : "text" }
    }
  }
}

查看索引

GETmateriel


更新索引

# 修改索引 Setting 中的 副本数量为 2PUTmateriel{
"settings" : {
"number_of_replicas": 2  }
}


删除索引

DELETEmateriel


文档(Document)

创建文档

# 创建索引并手动指定ID,不指定时为随机生成文档IDPOSTmateriel/_doc/1{
"materiel" : "10010001",
"description" : "橙汁"}
# 创建索引并手动指定ID,不指定ID时会报错PUTmateriel/_doc/2{
"materiel" : "10010002",
"description" : "葡萄汁"}

查看文档

# 指定ID获取数据materiel/_doc/1
# 获取索引全部数据GETmateriel/_search{
"query": {
"match_all": {}
  }
}
# 同时 POST 方法也适用用于获取全部数据POSTmateriel/_search{
"query": {
"match_all": {}
  }
}

更新文档

# POST 已存在的 ID 则为更新数据,否则为创建文档POSTmateriel/_doc/1{
"materiel" : "10010001",
"description" : "西瓜汁"}
# PUT 已存在的 ID 则为更新数据,否则为提示失败PUTmateriel/_doc/2{
"materiel" : "10010002",
"description" : "青瓜汁"}

删除文档

# 根据 ID 删除对应的文档DELETEmateriel/_doc/1
相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
Web App开发 自然语言处理 API
巧记Elasticsearch常用DSL语法
记知识先记轮廓,关于DSL语法的轮廓,记住以下3句话即可:1.索引、文档和查询。2.Match、Term和Bool。3.还有翻页和聚合
巧记Elasticsearch常用DSL语法
|
8月前
|
数据采集 JSON 数据挖掘
Elasticsearch 的DSL查询,聚合查询与多维度数据统计
Elasticsearch的DSL查询与聚合查询提供了强大的数据检索和统计分析能力。通过合理构建DSL查询,用户可以高效地搜索数据,并使用聚合查询对数据进行多维度统计分析。在实际应用中,灵活运用这些工具不仅能提高查询效率,还能为数据分析提供深入洞察。理解并掌握这些技术,将显著提升在大数据场景中的分析和处理能力。
425 20
|
SQL Java 关系型数据库
spring data elasticsearch 打印sql(DSL)语句
spring data elasticsearch 打印sql(DSL)语句
903 0
|
JSON 自然语言处理 算法
ElasticSearch基础2——DSL查询文档,黑马旅游项目查询功能
DSL查询文档、RestClient查询文档、全文检索查询、精准查询、复合查询、地理坐标查询、分页、排序、高亮、黑马旅游案例
ElasticSearch基础2——DSL查询文档,黑马旅游项目查询功能
|
JSON 自然语言处理 数据格式
分布式系列教程(33) -ElasticSearch DSL语言查询与过滤
分布式系列教程(33) -ElasticSearch DSL语言查询与过滤
300 0
|
存储 数据库 索引
面试题ES问题之动态映射的定义如何解决
面试题ES问题之动态映射的定义如何解决
148 1
|
存储 JSON 物联网
【Elasticsearch】学好Elasticsearch系列-Query DSL 1
【Elasticsearch】学好Elasticsearch系列-Query DSL
261 0
|
自然语言处理 索引
Elasticsearch之常用DSL语句
mapping是对索引库中文档的约束
351 1
|
Java 索引
ElasticSearch DSL操作
ElasticSearch DSL操作
206 1
|
JSON 自然语言处理 算法
【Elasticsearch】DSL查询文档
【Elasticsearch】DSL查询文档
595 0