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

相关推荐
时差95324 分钟前
MapReduce 的 Shuffle 过程
大数据·mapreduce
秃头佛爷27 分钟前
Python学习大纲总结及注意事项
开发语言·python·学习
kakwooi1 小时前
Hadoop---MapReduce(3)
大数据·hadoop·mapreduce
数新网络1 小时前
《深入浅出Apache Spark》系列②:Spark SQL原理精髓全解析
大数据·sql·spark
dayouziei2 小时前
java的类加载机制的学习
java·学习
dsywws6 小时前
Linux学习笔记之vim入门
linux·笔记·学习
晨曦_子画7 小时前
3种最难学习和最容易学习的 3 种编程语言
学习
城南vision7 小时前
Docker学习—Docker核心概念总结
java·学习·docker
昨天今天明天好多天7 小时前
【数据仓库】
大数据
油头少年_w7 小时前
大数据导论及分布式存储HadoopHDFS入门
大数据·hadoop·hdfs