ElasticSearch系列01:如何系统学习ES

2020-11-12 10:44:06 浏览数 (1)

01

ELK Stack 的应用场景

场景一

使用 ES 作为业务系统的后端

此时,ES 的作用类似传统业务系统中的 MySQL、PostgreSQL、Oracle 或者 Mongo 等的基础关系型数据库或非关系型数据库的作用。 我们举例说明。使用 ES 对基础文档进行检索操作,如将传统的 word 文档、PDF 文档、PPT 文档等通过 Openoffice 或者 pdf2htmlEX 工具转换为 HTML,再将 HTML 以JSON 串的形式录入到 ES,以对外提供检索服务。

场景二

在原有系统中增加 ES、Logstash、Kibana等

原有的业务系统中存在 MySQL、Oracle、Mongo 等基础数据,但想实现全文检索服务,就在原有业务系统基础的加上一层 ELK。 举例一,将原有系统中 MySQL 中的数据通过 logstashinputjdbc 插件导入到 ES 中,并通过 Kibana 进行图形化展示。 举例二,将原有存储在 Hadoop HDFS 中的数据导入到 ES 中,对外提供检索服务。

场景三

使用 ELK Stack 结合现有工具对外提供服务

举例一,日志检索系统。将各种类型的日志通过 Logstash 导入 ES 中,通过 Kibana 或者 Grafana 对外提供可视化展示。 举例二,通过 Flume 等将数据导入 ES 中,通过 ES 对外提供全文检索服务。

场景四

其他综合业务场景

主要借助 ES 强大的全文检索功能实现,如分页查询、各类数据结果的聚合分析、图形化展示(饼图、线框图、曲线图等)。 举例说明,像那些结合实际业务的场景,如安防领域、金融领域、监控领域等的综合应用。

02

ELK Stack 学习的优先级

1、我建议 Elasticsearch 为第一优先级

(1)掌握 Elasticsearch 的基本概念,主要包括:

(2)掌握 Elasitcsearch 的基本操作,主要包括:

(3)掌握 Elasticsearch 高级操作,主要包括:

(4)掌握 Elasticsearch Java/Python 等API,主要包括:

(5)Elasticsearch 结合场景开发实战,主要包括:

2、第二学习优先级为 Kibana

3、第三学习优先级为 Logstash

03

ES和Kibana在docker中的安装

1)

ES的安装

  • 1、在docker环境下安装ElasticSearch docker pull elasticsearch:6.4.2
  • 2、查看镜像 docker images
  • 3、启动ElasticSearch docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name MyEs(别名) -d e47ebd7ec3ee(镜像id)
  • 4、启动参数说明
    • -d 后台启动
    • -p 9200:9200 将虚拟机9200端口映射到elasticsearch的9200端口(web通信默认使用9200端口)
    • -p 9300:9300 将虚拟机9300端口映射到elasticsearch的9300端口(分布式情况下,各个节点之间通信默认使用9300端口)
    • --name MyEs 指定一个名字(MyEs 随意指 定)

2)

Kibana的安装

  • 1、安装 docker pull http://docker.elastic.co/kibana/kibana:6.4.2
  • 2、运行 docker run -d -p 5601:5601 --name kb02 --link MyEs(已启动的Es名称):elasticsearch

04

最后附上小编的学习记录图:

后续小编会持续输出ElasticSearch技术系列文章,欢迎关注,共同探讨学习。

扫描二维码 | 关注我

我们共同学习进步

0 人点赞