Elasticsearch

1,Elasticsearch 简介

1)分布式实时文件存储,可以将每一个字段都编入索引,使其可以被检索
2)可以作为一个大型分布式集群(数百台服务器)技术,处理PB级数据
3)Elasticsearch不是什么新技术,主要是将全文检索、数据分析以及分布式技术,合并在了一起,才形成了独一无二的ES

2,基本概念

1)Node(节点):Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。单个 Elastic 实例称为一个节点(node)
2)cluster(集群):一组节点构成一个集群。
3)Index(索引):Elastic 数据管理的顶层单位就叫做 Index(索引)。它是单个数据库的同义词。每个 Index (即数据库)的名字必须是小写。
4)Document(文档):Index 里面单条的记录称为 Document(文档)。许多条 Document 构成了一个 Index。
5)Type(分组):分组就叫做 Type,它是虚拟的逻辑分组,用来过滤 Document。

3,安装

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip

下载压缩包,解压,进入 bim 目录执行 elasticsearch 即可

访问 localhost:9200 ,可以通过说明启动成功

参考 https://blog.csdn.net/ganquanzhong/article/details/108633025

4,中文分词器

使用 bin 下 elasticsearch-plugin 安装 ik 中文分词插件。

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.5.1/elasticsearch-analysis-ik-5.5.1.zip

重新启动 Elastic,就会自动安装这个插件。

使用 ik 分词器:

5,es 图形化页面

参考 https://blog.csdn.net/ganquanzhong/article/details/108633025,第 2.4 节

6,分片

  把分片想象成数据的容器,文档存储在分片中,然后分片分配到集群中的节点,当集群扩容或缩小,ES将会自动在节点间迁移分片,以使集群保持平衡一个分片在es中是最小级别的工作单元.它只是保存了索引中所数据的一部分

分片可以是主分片或者复制分片,在集群中唯一一个空节点创建一个叫做blogs的索引,默认情况下,一个索引被分配5个主分片,每个主分片又分配一个副分片。

7. 集群

  一个集群就是由一个或多个节点组织在一起,它们共同持有整个的数据,并一起提供索引和搜索功能。一个集群由一个唯一的名字标识,这个名字默认就是“elasticsearch”。这个名字是重要的,因为一个节点只能通过指定某个集群的名字,来加入这个集群。

集群的搭建:

准备三台服务器,内部复制三个 elasticsearch 服务。修改elasticsearch-cluster\node*\config\elasticsearch.yml配置文件。

node1:

#节点1的配置信息:
#集群名称,保证唯一
cluster.name: my-elasticsearch
#节点名称,必须不一样
node.name: node-1
#必须为本机的ip地址
network.host: 127.0.0.1
#服务端口号,在同一机器下必须不一样
http.port: 9200
#集群间通信端口号,在同一机器下必须不一样
transport.tcp.port: 9300
#设置集群自动发现机器ip集合
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]

node2:

#节点2的配置信息:
#集群名称,保证唯一
cluster.name: my-elasticsearch
#节点名称,必须不一样
node.name: node-2
#必须为本机的ip地址
network.host: 127.0.0.1
#服务端口号,在同一机器下必须不一样
http.port: 9201
#集群间通信端口号,在同一机器下必须不一样
transport.tcp.port: 9301
#设置集群自动发现机器ip集合
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]

node3:

#节点3的配置信息:
#集群名称,保证唯一
cluster.name: my-elasticsearch
#节点名称,必须不一样
node.name: node-3
#必须为本机的ip地址
network.host: 127.0.0.1
#服务端口号,在同一机器下必须不一样
http.port: 9202
#集群间通信端口号,在同一机器下必须不一样
transport.tcp.port: 9302
#设置集群自动发现机器ip集合
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
posted @ 2024-02-19 11:05  primaryC  阅读(5)  评论(0编辑  收藏  举报