学习-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

相关推荐
桃花键神8 分钟前
openFuyao在AI推理与大数据场景中的加速方案:技术特性与实践探索
大数据·人工智能
2401_871260021 小时前
Java学习笔记(二)面向对象
java·python·学习
weixin_409383121 小时前
简单四方向a*学习记录10 重写前面的所有逻辑
学习
喏喏心2 小时前
深度强化学习:价值迭代与Bellman方程实践
人工智能·python·学习·机器学习
天远数科2 小时前
前端全栈进阶:使用 Node.js Crypto 模块处理 AES 加密与天远API数据聚合
大数据·api
天远API2 小时前
后端进阶:使用 Go 处理天远API的 KV 数组结构与并发风控
大数据·api
kkkkkkkkk_12012 小时前
【强化学习】06周博磊强化学习纲要学习笔记——第三课下
笔记·学习·强化学习
千匠网络2 小时前
S2B供应链平台:优化资源配置,推动产业升级
大数据·人工智能·产品运营·供应链·s2b
WX-bisheyuange2 小时前
基于Spring Boot的智慧校园管理系统设计与实现
java·大数据·数据库·毕业设计
白杨SEO营销3 小时前
白杨SEO:看“20步:从0-1做项目的笨办法”来学习如何选一个项目做及经验分享
前端·学习