当前位置: 首页 > news >正文

ElasticSearch--基本操作

ElasticSearch

完成ES安装
http://101.42.93.208:5601/app/dev_tools#/console

库的操作

创建索引库

请求方式:PUT
请求路径:/索引库名,可以自定义
请求参数:mapping映射

PUT /test
{"mappings": {"properties": {"字段名":{"type": "text","analyzer": "ik_smart"},"字段名2":{"type": "keyword","index": "false"},"字段名3":{"properties": {"子字段": {"type": "keyword"}}}}}
}

示例

PUT /heima
{"mappings": {"properties": {"info":{"type": "text","analyzer": "ik_smart"},"email":{"type": "keyword","index": "falsae"},"name":{"properties": {"firstName": {"type": "keyword"}}}}}
}

查询索引库

基本语法:
请求方式:GET
请求路径:/索引库名
请求参数:无
格式:
GET /索引库名

修改索引库

倒排索引结构虽然不复杂,但是一旦数据结构改变(比如改变了分词器),就需要重新创建倒排索引,这简直是灾难。因此索引库一旦创建,无法修改mapping。

虽然无法修改mapping中已有的字段,但是却允许添加新的字段到mapping中,因为不会对倒排索引产生影响。

PUT /索引库名/_mapping
{"properties": {"新字段名":{"type": "integer"}}
}

删除索引库

语法:
请求方式:DELETE
请求路径:/索引库名
请求参数:无
格式:

DELETE /索引库名

文档的操作

新增文档

语法:

POST /索引库名/_doc/文档id
{"字段1": "值1","字段2": "值2","字段3": {"子属性1": "值3","子属性2": "值4"},// ...
}

示例:

POST /heima/_doc/1
{"info": "黑马程序员Java讲师","email": "zy@itcast.cn","name": {"firstName": "云","lastName": "赵"}
}

查询文档

查询文档
根据rest风格,新增是post,查询应该是get,不过查询一般都需要条件,这里我们把文档id带上。

语法:
GET /{索引库名称}/_doc/{id}
通过kibana查看数据:
GET /heima/_doc/1

删除文档

删除文档
删除使用DELETE请求,同样,需要根据id进行删除:
语法:
DELETE /{索引库名}/_doc/id值
示例:
根据id删除数据
DELETE /heima/_doc/1

增量修改

增量修改是只修改指定id匹配的文档中的部分字段。

语法:

POST /{索引库名}/_update/文档id
{"doc": {"字段名": "新的值",}
}

示例:

POST /heima/_update/1
{"doc": {"email": "ZhaoYun@itcast.cn"}
}

总结

文档操作有哪些?

  • 创建文档:POST /{索引库名}/_doc/文档id { json文档 }
  • 查询文档:GET /{索引库名}/_doc/文档id
  • 删除文档:DELETE /{索引库名}/_doc/文档id
  • 修改文档:
    • 全量修改:PUT /{索引库名}/_doc/文档id { json文档 }
    • 增量修改:POST /{索引库名}/_update/文档id { “doc”: {字段}}
http://www.lryc.cn/news/270131.html

相关文章:

  • 大数据应用发展史:从搜索引擎时代到机器学习时代
  • java基础之String的不可变性
  • 【JS】Promise详解
  • 原生微信小程序如何动态配置主题颜色及如何调用子组件的方法
  • Java关键字(1)
  • 【机器学习合集】深度生成模型 ->(个人学习记录笔记)
  • Java将PDF转换为文本
  • Linux 运维工具之1Panel
  • 深入了解小红书笔记详情API:为内容创新提供动力
  • Animate 2024(Adobe an2024)
  • 尽量避免删改List
  • 【Linux操作系统】探秘Linux奥秘:用户、组、密码及权限管理的解密与实战
  • 计算机组成原理复习4
  • AutoSAR(基础入门篇)3.3-Autosar中RTE的数据一致性与Interface接口
  • 超维空间S2无人机使用说明书——52、初级版——使用PID算法进行基于yolo的目标跟踪
  • <JavaEE> TCP 的通信机制(一) -- 确认应答 和 超时重传
  • Spark任务调度与数据本地性
  • 【论文阅读】Self-Paced Curriculum Learning
  • C++简易线程池
  • 【MATLAB】PSO粒子群优化LSTM(PSO_LSTM)的时间序列预测
  • 产品经理学习-怎么写PRD文档
  • 第3课 获取并播放音频流
  • Spark编程实验四:Spark Streaming编程
  • Flink去重计数统计用户数
  • 力扣:62. 不同路径(动态规划,附python二维数组的定义)
  • 2022年全球运维大会(GOPS深圳站)-核心PPT资料下载
  • 8868体育助力意甲罗马俱乐部 迪巴拉有望付出
  • java设计模式实战【策略模式+观察者模式+命令模式+组合模式,混合模式在支付系统中的应用】
  • 小程序wx:if 和hidden的区别?
  • 自动驾驶学习笔记(二十三)——车辆控制模型