elasticsearch笔记

分布式搜索技术——Elasticsearch

Elasticsearch是一款非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到所需要的内容。

可以结合kibana(数据可视化)、Logstash(数据抓取)、Beats(数据抓取),广泛用于日志数据分析,实时监控等领域。

正向索引和倒排索引

数据库基于ID创建索引,如过搜索带有某一字段的“标题”,就要逐条数据扫描,判断是否包含该字段,包含就放到结果集,否则丢弃。所以正向索引在做局部字段索引的时候性能较差。

倒排索引创建的时候使用了“文档ID”和“词条”。
文档:每条数据就是一个文档
词条:文档按照语义分成词语(不可以重复)

elasticsearch是面向文档存储的,可以是数据库中的一条商品数据,一个订单信息。文档会被序列化为json格式后存储在elasticsearch中。
{
“id”:103,
“name”:“麻子”,
“price”:3499
}

索引(类似于表):相同类型的文档的集合
映射:索引中文档的字段约束信息,类似表的结构约束
在这里插入图片描述
⚠️ DSL是通过Http的请求发出去的,es里的接口与语言无关,任何语言之遥能发http请求就能把DSL发出去。

Mysql:擅长事物类型操作,
ES:擅长海量数据的搜索、分析、计算。

索引库操作

mapping属性

mapping是对索引库中文档的约束,常见的mapping属性包括:

  1. type:字段数据类型,常见的简单类型有:字符串:
    text(可分词文本)、keyword(精确值,不可以再拆了,例如:品牌、国家、ip地址)
    数值:long、integer、short。。。
    布尔
    期日:date
    对象:可以嵌套
    没有数组,但是允许有多个值
  2. index:是否创建索引,默认为true
    要判断某一字段是否需要创建索引
  3. analyzer:使用哪种分词器
  4. properties:该字段的子字段

创建索引库

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值