学习-ES

分布式搜索

了解

*可以从海量数据找到所需内容

*结合 kibana(数据可视化),logstash(数据抓取),es(存储计算) 合称 ELK (数据分析,监控)

mysql是正向索引()
es是倒排索引:(先找查词条找到id,再根据id找到文档)
文档:一条数据
词条:将文档按语义分为词语(不重复)

es合mysql对比

*存储为json风格

*索引(index)(相同文档的集合)(表)

*文档(document)(就是行数据)

*字段(field)

*映射(mapping) 文档的约束-如字段名称类型(唯一约束)

*DSL :json风格的请求语句 基于HTTP请求发送(sql)

分词器

(根据词库)

默认:对中文不是很友好

中文选择:IK
可以拓展词汇合禁止 词汇
两种模式:smart(智能粗粒度),max_word(最细粒度)

索引库操作(建表)

常见的Mapping属性:

*type:数据类型
*字符串 :
text(可分词的), keyword(精确不可以拆)
*数值: long,int,short,double,float
*boolean
*date:日期
*对象:object (json对象)
*没有数组类型

*index: 是否创建索引 默认true

*analyzer :使用哪个分词器(对于字符串的text)

*properties :该字段的子字段(对于object对象)

禁止修改索引库,可以添加新字段

**插入push,查get, 删 delete,**改put
改put(id不存在就新增)

*全量修改

*局部修改

利用JavaRestClient操作

基本语法

DSL

*全文检索

*精确查询

*地理查询

*复合查询(将上述的组合起来)

java的restClient

相关推荐
晓幂4 小时前
【2025】HECTF
笔记·学习·web安全
AI智能探索者4 小时前
揭秘大数据领域特征工程的核心要点
大数据·ai
慕云紫英4 小时前
基金申报的一点经验
学习·aigc
微露清风4 小时前
系统性学习C++-第十八讲-封装红黑树实现myset与mymap
java·c++·学习
宝贝儿好4 小时前
【强化学习】第六章:无模型控制:在轨MC控制、在轨时序差分学习(Sarsa)、离轨学习(Q-learning)
人工智能·python·深度学习·学习·机器学习·机器人
大、男人5 小时前
python之asynccontextmanager学习
开发语言·python·学习
做cv的小昊5 小时前
【TJU】信息检索与分析课程笔记和练习(8)(9)发现系统和全文获取、专利与知识产权基本知识
大数据·笔记·学习·全文检索·信息检索
AC赳赳老秦5 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
盐焗西兰花5 小时前
鸿蒙学习实战之路-蓝牙设置完全指南
学习·华为·harmonyos
hkNaruto5 小时前
【AI】AI学习笔记:MCP协议与gRPC、OpenAPI的差异
人工智能·笔记·学习