多语言展示
当前在线:801今日阅读:23今日分享:25

01Elasticsearch入门及Linux安装

版本:6.21、Elasticsearch 是一个高可扩展的开源全文搜索和分析引擎。它允许你快速并接近实时地存储、搜索、分析大量的数据。2、使用Elasticsearch 的一些案例(1)你运行着一个网上商城,允许用户搜索你销售的商品。在这个案例中,你可以使用Elasticsearch 存储商品目录和其库存信息,并为他们提供搜索服务和自动填充的建议。(2)你要收集日志或者交易数据,并分析、挖掘这些数据,以找到趋势、统计、汇总或者异常情况。在这种情况下,你可以使用Logstash 收集、汇总和解析数据,然后把这些数据方法Elasticsearch中,你可以使用搜索和聚合来挖掘任何你想得到的数据。(3)你运行这一个价格提醒平台,并且允许客户根据需要获取对象价格的商品。在这个案例中,你可以抓取商品的价格,放到Elasticsearch中,然后使用其反向搜索功能,匹配商品的价格,然后当价格满足客户需要是给客户推送消息。(4)有大量数据可视化分析的需求,可以把大量的数据存储到Elasticsearch中,然后使用Kibana来构建想要的可视化数据。
工具/原料
1

Elasticsearch

2

Elasticsearch

方法/步骤
1

一、Elasticsearch的核心内容1、瞬时:Elasticsearch是一个瞬时的搜索平台。通常时间1秒。2、集群:集群中的服务器共同持有数据,提供跨越节点的联合索引和搜索功能。一个集群有一个唯一的名称,默认的是elasticsearch。一个几点只能在一个集群中。确保集群名字的唯一性;一个集群可以只有一个节点;可以有多个集群。3、节点:节点是你集群中的单一服务器,存储数据,参与集群的索引和搜索功能。和集群一样,节点也有一个唯一的名字(默认是通过UUID获取的一个id),这个名字是节点启动时生成的。你可以重新定义节点的名字。这些名称对于管理目的很重要,你可以知道每台服务器对应着Elasticsearch集群中的哪一个节点。节点可以通过配置集群名称加入某一个集群。默认情况下,启动节点后,节点会自动组建默认集群elasticsearch ,并使得节点自动加入elasticsearch 集群。在一个集群中,你可以拥有任意个节点,如果在网络中没有节点,此时启动一个节点,这个节点会自动构建一个单一节点的集群elasticsearch 。4、索引(名称index:database):一个索引是多个具有相似特征的文档的集合。例如,你可以拥有一个客户信息的索引、一个产品目录的索引、也可以拥有一个其他数据的索引。一个索引被定义为一个名字(全部小写),这个名字被用来对当前索引(索引中的文档)进行索引(动词,list index)、搜索、更新、删除操作。在一个集群中你可以定义任意个索引。5、类型(type:table):6.00弃用----来在网络6、文档:一个文档是一个可以被索引的基本单位。你可以拥有一个用户的文档,一个商品的文档,文档的格式是json。对于一个 索引/类型 ,可以存储任意个文档。注意文档虽然属于一个索引,但其实文档是在 索引下的type里面的。7、shards分片和replicas副本分片:一个索引可以储存大量的数据,有可能超出单个节点物理存储的限制。为了解决这个问题,Elasticsearch 可以使用分片把一个索引的数据拆分开来。当你创建一个索引时,你可以定义分片的数量。 每个分片都是一个独立的索引,可以被托管在集群中的任意节点上。分片重要的两个原因:(1)它允许水平切割/缩放内容(2)它允许跨分片(多个节点)分发和并行操作,从而提高性能和吞吐量。副本分片:在网络环境中,有可能机器会死掉,所以Elasticsearch使用副本来解决这问题。(1)她提供高可用的能力,当一个单一分片/节点挂掉。副本分配不会和其拷贝源分片在同一个几点上。(2)她扩展了搜索数据的量/吞吐量,因为你可以在所有的副本上并行搜索总结一下:一个索引可以切割成多个分片,一个索引可以没有副本分片或有多个副本分片。一旦有副本分片,每个索引都会有多个主分片,和多个副本分片。在索引创建的时候,可以定义,分片和副本分片的数量,一定创建了索引,分片的数量不能更改,副本分片的数量是可以修改的。默认情况下,一个索引会有5个主分片,每个主分片都有一个副本分片。(一般至少有两个节点,一个集群)。一个索引,5个主分片,一个副本(即5个副本分片)

2

1、jdk版本,至少1.8,推荐:1.8.0_1312、使用tar方式安装3、下载Elasticsearch 6.2.4 tarcurl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz

3

4、解压缩文件tar -xvf elasticsearch-6.2.4.tar.gz

4

5、进入bin目录cd elasticsearch-6.2.4/bin

5

6、启动一个单一节点的集群./elasticsearch运行报错,提示说内存不够,原因是elasticsearch默认分配的内存太大,我只用于测试,所以修改其默认内存配置。修改:config/jvm.options-Xms1g  -Xmx1g为-Xms512m  -Xmx512m

6

重新运行: ./elasticsearch最小必须为512m.通过日志可以看到启动成功,oOH6klQ就是我们的节点名称,并且选择自己作为集群中的master。

7

7、启动时设置集群名称和节点名称:./elasticsearch -Ecluster.name=my_cluster_xyx -Enode.name=my_node_xyx注意IP地址和端口:127.0.0.1:9200默认情况下,Elasticsearch 使用9200端口提供REST API访问,如果需要的话,这个端口是可以配置的。

推荐信息