PaddleHub 树莓派USB gitee debugging orm drupal7 vue滑动事件 nginx视频 ios视频教程 小程序demo源码 jquery绑定click事件 jq遍历元素 jquery绑定change事件 collection框架的结构 js空格符 js教程文档 磁盘清理会误删东西吗 汇编语言clr pythonset python传参 java包 java正则表达式用法 java数组扩容 java类的继承 java初级入门教程 java目录 javasocket java系统学习 wps2011 日历制作模板 bash命令 mac画图软件 怎么设置迅雷为默认下载器 js日期格式化 战地2地图包下载 神牧属性 php完全自学手册 a1530是什么版本 kms工具 dos命令大全及用法
当前位置: 首页 > 学习教程  > 编程语言

Elasticsearch学习(一)什么是ELK?相关概念是什么?在虚拟机里面安装es,Kibana

2021/2/13 19:26:20 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

目录什么是ELK功能分类为什么选择elasticsearch(技术选型)相关概念和集群相关clustershardsreplicasIndex(相当于表)Document元数据倒排索引在虚拟机里面的docker里面安装es在虚拟机里面安装Kibana什么是ELK ELK是Elasticsearch、…

目录

  • 什么是ELK
  • 功能分类
  • 为什么选择elasticsearch(技术选型)
  • 相关概念
    • 和集群相关
      • cluster
      • shards
      • replicas
      • Index(相当于表)
      • Document
      • 元数据
      • 倒排索引
  • 在虚拟机里面的docker里面安装es
  • 在虚拟机里面安装Kibana

什么是ELK

ELK是Elasticsearch、Logstash、Kibana三个软件首字母。
Elasticsearch: 全文检索工具。和之前学习的Solr功能是类似的。
Kibana:页面管理工具。可以通过Kibana的管理界面操作Elasticsearch
Logstash:日志收集的工具,通过此工具可以实现日志内容收集及格式转换。也就是将日志输入到这个里面,之后进行转换,再输出到Elasticsearch中,我们就可以在Elasticsearch中检索日志了。

功能分类

Elasticsearch具备两个主要功能:
搜索。功能和Solr类似。
分析。结合LogStash使用。

为什么选择elasticsearch(技术选型)

为了实现全文检索
Mysql也可以实现全文检索,但是国内很多的人不会选择,选择的主流是这个
如果数据库大的话,推荐使用elasticsearch。
Mysql为了达到查询快,使用索引,但是数据和索引是存放在磁盘上面,
Elasticsearch是索引在内存,数据在磁盘上面。

相关概念

和集群相关

cluster

集群。
Elasticsearch集群由一或多个节点组成,其中有一个主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。Elasticsearch的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部看Elasticsearch集群,在逻辑上是个整体,你与集群中的任何一个节点通信和与整个Elasticsearch集群通信是等价的。也就是说,主节点的存在不会产生单点安全隐患、并发访问瓶颈等问题。

shards

primary shard:代表索引的主分片,Elasticsearch可以把一个完整的索引分成多个primary shard,这样的好处是可以把一个大的索引拆分成多个分片,分布存储在不同的Elasticsearch节点上,从而形成分布式存储,并为搜索访问提供分布式服务,提高并发处理能。primary shard的数量只能在索引创建时指定,并且索引创建后不能再更改primary shard数量。

replicas

replica shard:代表索引主分片的副本,Elasticsearch可以设置多个replica shard。replica shard的作用:一是提高系统的容错性,当某个节点某个primary shard损坏或丢失时可以从副本中恢复。二是提高Elasticsearch的查询效率,Elasticsearch会自动对搜索请求进行负载均衡,将并发的搜索请求发送给合适的节点,增强并发处理能力。

Index(相当于表)

索引。相当于关系型数据库中的表。其中存储若干相似结构的Document数据。如:客户索引,订单索引,商品索引等。Elasticsearch中的索引不像数据库表格一样有强制的数据结构约束,在理论上,可以存储任意结构的数据。但了为更好的为业务提供搜索数据支撑,还是要设计合适的索引体系来存储不同的数据。

Document

文档。Elasticsearch中的最小数据单元。一个Document就是一条数据,一般使用JSON数据结构表示。每个Index下的Type中都可以存储多个Document。一个Document中可定义多个field,field就是数据字段。如:学生数据({“name”:“张三”, “age”:20, “gender”:“男”})。

元数据

在Elasticsearch中所有以“_”开头的属性都成为元数据,都有着自己特定的含义。
例如:_index:表示索引

倒排索引

对数据进行分析,抽取出数据中的词条,以词条作为key,对应数据的存储位置作为value,实现索引的存储。这种索引称为倒排索引。倒排索引是Document写入Elasticsearch时分析维护的。

传统的我们的检索是通过文章,逐个遍历找到对应关键词的位置。而倒排索引,是通过分词策略,形成了词和文章的映射关系表,这种词典+映射表 即为倒排索引。有了倒排索引,就能实现 o(1)时间复杂度的效率检索文章了,极大的提高了 检索效率。

在虚拟机里面的docker里面安装es

1 打开虚拟机
在这里插入图片描述
2 开启docker

在这里插入图片描述
如果docker还没有开启。需要先开始docker软件
systemctl start docker
拉取Elasticsearch镜像
docker pull elasticsearch:7.6.1
在这里插入图片描述

===========================================
3创建并启动容器
–name 名字为es
-d 后台启动
-p 端口号。9200restful访问端口,9300为java代码访问端口
docker run --name=es -d -p 9200:9200 -p 9300:9300 elasticsearch:6.8.4

docker run --name=es -d -p 9200:9200 -p 9300:9300 elasticsearch:7.6.1

以上就安装了es,并且进行了启动

docker logs -f es

既然已经es软件启动了,那么我们看看如何连接这个软件?
curl http://localhost:9200
执行以上的命令之后,我们可以看到返回的数据是:

在这里插入图片描述

{
  "name" : "pkshWK7",        当前es节点的名称
  "cluster_name" : "docker-cluster",   集群的名称
  "cluster_uuid" : "eJsstaRaQiGwa-d82NY2dw",   集群的唯一的标识
  "version" : {   里面写的是当前es版本的信息
    "number" : "6.8.4",    版本
    "build_flavor" : "default",
    "build_type" : "docker",    当前es是docker构建的
    "build_hash" : "bca0c8d",
    "build_date" : "2019-10-16T06:19:49.319352Z",
    "build_snapshot" : false,
    "lucene_version" : "7.7.2",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"     es的广告语
}

在虚拟机里面安装Kibana

已经安装了es,我们可以使用命令进行操作了,但是我们现在想要使用界面的形式进行操作,
docker pull kibana:6.8.4

2新建并启动容器
192.168.8.142 Docker所在服务器的IP
–link es:es 中第一个es是容器名,第二个es是容器别名。设置link后才能让容器互通。
docker run -it -d -e ELASTICSEARCH_URL=http://192.168.40.145:9200 --name kibana --link es:es -p 5601:5601 kibana:6.8.4

以上命令就启动了Kibana。并且Kibana连接了es

在浏览器输入 http://192.168.40.145:5601

在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_700327.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?