1. 全文搜索ES入门
1.1 全文搜索的概念:
将无结构化的数据转换成有结构话的数据,来加快对文本的快速搜索。
例如:有序数组、红黑树等这些作为结构化的数据,其查询效率很快。
1.2 常见的全文搜索
1.Lucene
2.Elastic Search(ES)
3.Solr
1.3 全文搜索与like的区别
like:将关键字与数据库中的数据进行 一个个 比对,效率低下
全文搜索:先将数据进行分词,然后进行排序和去重,形成数据和数据的编号,作为索引区;
原数据作为数据区;
索引库:索引区+数据区
全文搜索的原理:查询的数据先通过二分查找去查索引区的数据,找到其数据的编号,再去匹配数据区的数据,提高了查询效率。
2. ElasticSearch概述和安装
2.1 ES与Lucene的区别
1.ES支持分布式和集群
2.ES操作更简单
3.Lucene只支持java,而ES支持多种语言
2.2 ES的安装
在线地址:
安装步骤(适用windows系统):
1.选择ES合适的版本号,下载其ES的压缩包
2、直接解压到指定的文件夹
3.找到其bin目录下的elasticsearch.bat,双击即可启动ES服务器
4.验证ES服务器是否成功启动:
使用浏览器访问:http://localhost:9200 ,如果能成功访问,则启动成功。
2.3 ES的配置
可以修改 jvm.options 文件来修改内存;
2.4 Kibana5安装
Kibana5:这个相当于是ES的可视化界面(客户端操作服务器)
下载地址:https://www.elastic.co/downloads/kibana
2.4.1 Kibana5的安装与启动
解压即可安装 , 执行bin\kibana.bat 即可启动Kibana
2.4.2 Kibana5的配置
编辑config/kibana.yml,设置elasticsearch.url的值为已启动的ES
注意:默认情况下,Kibana会链接本地的默认ES http://localhost:9200
,如果需要修改链接的ES服务器,通过修改安装目录下 config/kibana.yml,将配置项 #elasticsearch.url: "http://localhost:9200"
取消注释即可修改连接的ES服务器地址
2.4.3 测试Kibana
浏览器访问 http://localhost:5601 --Kibana默认地址
3. ElasticSearch的基本使用
3.1 通过Kibana去操作ElasticSearch
访问Kibana成功后,点击Dev Tools(开发者工具)
3.2 索引库基本CRUD操作
3.2.1 进行CRUD之前的补充:
ElastciSearch全文搜索 | Mysql关系型数据库 |
---|---|
索引库(index) | 数据库(database) |
文档类型(Type) | 数据表(Table) |
文档(Document) | 一行数据(Row) |