【搜索】ElasticSearch

ElasticSearch是一个基于Lucene的全文搜索引擎,适用于blog系统文章搜索和日志分析。本文介绍了ElasticSearch的核心概念如倒排索引,详细讲解了结构化搜索(term查询、bool过滤器、range、terms)和全文搜索(match查询),并探讨了全文搜索的倒排索引原理和Analyzer在分词中的作用。
摘要由CSDN通过智能技术生成

1.引言

ElasticSearch是一个开源的全文搜索引擎,是一个基于Lucene的面向文档的数据库,它像mogodb一样将数据按照json格式存储,然后你就可以通过查询获取他们了。

1.1 应用场景

1.1.1 blog系统的文章搜索,

文章可以存储在数据库,数据库将文章同步到ES,用户可以通过搜索框数据搜索关键字找到相关文章。

1.1.2 日志分析

应用日志传入kafka等MQ,logstash采集处理后传入ES,通过kibana界面查询日志,通过Grafana页面观看指标等信息。

2 入门使用

安装参考,启动服务后一般监听9200端口,一般IDE可装插件ElasticSearch,连接本机后可以使用Rest API进行交互。

也可安装kibana,安装启动后http://localhost:5601/app/kibana#/dev_tools/console 有提示补全,更友好

 

1.1 核心概念

ES就是每个index中有很多的文档doc

概念 含义 类比数据库
index 索引 具有相同结构的文档集合 Database数据库
type 类型

索引的逻辑分区

一种类型被定义为具有一组公共字段的文档

7以后默认是_doc

Table表
document 文档

JSON格式的字符串,类似于mongo中的文档含义,包含kv字段

可搜索的最小单位

Row行
field 字段 文档中包含零个或者多个字段,字段类似于关系数据库中表的列 Column列
term 分词 索引词 模糊搜素的字面量?
mapping 映射 类似于关系数据库中的表结构 Schema表结构
Query DSL Domain Specific Language SQL

1.2 常用API

API 样例&解释
_cluster

Get /_cluster/health      

 # 查看集群状态,绿主备正常,黄主ok无备,红主无

_cat 查看索引和分配等
   

1.2.1 文档增删改查操作

操作类型 api操作 作用 类比数据库

DDL操作

Index
mapping

PUT school 创建索引 创建数据库school
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值