一、 介绍
随着互联网数据规模爆炸式增长,如何在海量的数据中快速获取有用的信息,变得越来越有挑战性。我们知道,关系型数据库对海量数据查询的响应速度对用户来说是不可接受的。因为在关系型数据库做模糊查询时,它会遍历整张表,同时进行字符串匹配。这两个步骤都不高效,而且随着数据量的增大,消耗的资源和时间都会线性的增长。最近几年elasticsearch已经开始在国内流行起来,其中也有很多大公司在使用,比如百度,新浪等,Elasticsearch是一个基于ApacheLucene的开源搜索引擎,无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好、功能最全的搜索引擎库。Elasticsearch不仅仅是全文搜索引擎,它还提供:
- 分布式的实时文件存储,每个字段都被索引并可被搜索
- 实时分析的分布式搜索引擎
- 可以扩展到上百台服务器,处理PB级结构化或非结构化数据
名词解释:
1.索引(index)
索引就是存放数据的地方,可以理解为mysql中的一个数据库
2.类型(type)
类型是用来定义数据结构的,可以理解为mysql中的一张表,值得注意的是Elasticsearch为了提高搜索速度,在7.x版本中已不推荐使用type,在将来8.x会直接去除type。因为es全文检索功能之所以快,是因为倒排索引的存在,而这种倒排索引的生成是基于index的,而并非type,多个type反而会减慢搜索的速度。
3.文档(document)
文档就是最终的数据,可以理解为一张表里面的一行记录,文档以JSON格式来表示
4.倒排索引
也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。通过倒排索引,可以根据单词快速获取包含这个单词的文档列表。倒排索引主要由两个部分组成:“单词词典”和“倒排文件”。其中“单词词典”包含了所有粒度的拆分词;“倒排文件”则保存了该词对应的所有相关信息。
二、 Contos 7安装与配置
2.1 安装:略
2.2 网络配置:参考11.4
三、安装Docker容器
3.1 安装Docker
yum -y update //先更新yum软件管理器
yum install -y docker //然后再安装docker
3.2 启动、关闭与启动
service docker start //启动docker容器
service docker stop //停止docker容器
service docker restart //重启docker容器
3.3 修改镜像仓库
1.修改 /etc/docker/daemon.json文件
2.添加如下格式
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}