全文检索工具elasticsearch5.6.4教程之基础入门
一、什么是搜索?
计算机根据用户输入的关键词进行匹配,从已有的数据库中摘录出相关的记录反馈给用户。常见的全网搜索引擎,比如百度、谷歌。垂直领域也有广泛的应用,如何淘宝、京东搜索。它们基于海量的数据!
二、倒排索引
全文搜索引擎目前主流的索引技术就是倒排索引的方式。
倒排索引又称反向索引、置入档案或反向档案,是一种索引方法,基于分词技术构建倒排索引,根据单词快速获取包含这个单词的文档列表。倒排索引主要由两个部分组成:单词词典与倒排文件。
三、 全文检索工具elasticsearch
lucene
不是一个完整的全文检索引擎,它只是一个提供全文搜索功能类库的核心工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。
现在火热的搜索引擎软件:elasticsearch
和solr
,它们基于lucene的搭建的,可以独立部署启动的搜索引擎服务软件,内核相同,所以对数据的操作基本一致,现在elasticsearch
在市面应用广泛,基于java语言开发的。
四、elasticsearch应用场景
(1)为用户提供按关键字查询的全文搜索功能;
(2) 著名的ELK
框架(ElasticSearch
,Logstash
,Kibana
),实现企业海量日志的处理分析的解决方案。
五、elasticsearch基本概念
参数 | 描述 |
---|---|
cluster |
整个elasticsearch 默认就是集群状态,整个集群是一份完整、互备的数据。 |
node |
集群中的一个节点,一般只一个进程就是一个node
|
shard |
分片,即使是一个节点中的数据也会通过hash 算法,分成多个片存放,默认是5片。 |
index |
相当于RDBMS<关系数据库管理系统> 的database , 对于用户来说是一个逻辑数据库,虽然物理上会被分多个shard 存放,也可能存放在多个node 中。 |
type |
类似于RDBMS 的table ,但是与其说像table ,如同面向对象中的class , 同一Json 格式的数据集合。 |
document |
类似于RDBMSs 的 row 、面向对象里的object
|
field |
相当于字段、属性 |
☝上述分享来源个人总结,如果分享对您有帮忙,希望您积极转载;如果您有不同的见解,希望您积极留言,让我们一起探讨,您的鼓励将是我前进道路上一份助力,非常感谢!我会不定时更新相关技术动态,同时我也会不断完善自己,提升技术,希望与君同成长同进步!
☞本人博客:https://coding0110lin.blog.****.net/ 欢迎转载,一起技术交流吧!