写在前面

Elastic Static 是指由Elasticsearch,Logstash,Kibana,Beats等组件结合起来而构成的一个数据收集,分析,可视化的一个架构.我们经常听说过的ELK就是指前面三个,它能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。

简单介绍

这里我们从数据的流向来简单介绍下这几个组件.

1. 数据采集过程
可以采集人和来源,任何格式的数据

Beats
Beats 是轻量型采集器的平台,从边缘机器向 Logstash 和 Elasticsearch 发送数据。

Logstash
Logstash 是动态数据收集管道,拥有可扩展的插件生态系统,能够与 Elasticsearch 产生强大的协同作用。类似于 Hadoop 生态圈里的 Flume,整个采集的过程也是基于事务(event)的[这一点是通过codec的插件来做到]。通常在其.conf配置文件规定 logstash 如何处理各种类型的事务流,一般包含 input、filter、output 三个部分(域),在每一个域中,可供选择多个插件来处理我们的数据。

2. 数据搜索、分析和存储
Elasticsearch

Elasticsearch 是基于 JSON 的分布式搜索和分析引擎,专为实现水平扩展、高可用和管理便捷性而设计。ElasticSearch 也是基于 Lucene进行了封装,它能在一秒内返回你要查找的且已经在 Elasticsearch 做了索引的文档,提供了更为便利的访问和调用.它存储json格式的文档数据,有基于RESTful的操作接口。利用Elasticsearch可以方便的在任何Web应用中集成搜索应用。另外它更有出色的聚合功能(aggregation),能轻松的对数据进行统计分析 .这个组件也是整个stack的主角.

Elasticsearch 中的 Index 是一组具有相似特征的文档集合,类似于关系数据库模型中的数据库实例,Index 中可以指定 Type 区分不同的文档,类似于数据库实例中的关系表,Document 是存储的基本单位,都是 JSON 格式,类似于关系表中行级对象。我们处理后的 JSON 文档格式的日志都要在 Elasticsearch 中做索引,相应的 Logstash 有 Elasticsearch output 插件,对于用户是透明的。需要说明的是,ES6.0之后,好像规定一个Index下只能够定义一种Type,后面也会慢慢去掉Type这个概念,,最终,我们就姑且把Index当做数据表来理解,Document当做数据表的行理解吧.

3. 数据可视化
Kibana实现数据可视化。导览 Elastic Stack。

Kibana 能够以图表的形式呈现数据,并且具有可扩展的用户界面,供您全方位配置和管理 Elastic Stack。简单来说,Kibana 是在ElasticSearch 有了相当多的数据之后,进行分析,可视化数据用的工具。

ELK VS 大数据Hadoop/Spark

因为在日志处理等场景,难免会在技术选型上有所抉择?
简单来说,对于普通的小型的数据量,PB级别吧对于ES来说,没什么大的问题,而且,个人觉得,ES的简便搭建维护,也是不错的选择.

但是当数据量暴增,我们的集群数量也增加的情况下,就面临着,数据的分布式存储,就要考验H/S集群或者ES集群对于数据一致性的保证.

由于Elasticsearch集群中每个节点都是状态维护者,在集群中网络不稳定的情况下(主节点丢失)就有可能出现集群脑裂(不同的节点对master节点的选择出现了异常)

然而对于Haddop集群来说,就存在主从namenode节点的概念,只会有一个节点来管理datanode的信息(而且还是备份型的)

Elasticsearch拥有功能强大的聚合统计和全文搜索功能,可以轻松的用于网络问题分析,如404错误计数,页面浏览量,用户访问统计信息等。但它缺少类似标准SQL中的join(连接)或子查询的功能。Elasticsearch不支持查询结果的额外处理或分析的中间数据的输出,也不支持数据集的转换(即一个100万行的表,使用分析处理后,成为另一个100万行的表),故不太适合处理复杂的计算逻辑。

虽然Elasticsearch存在这些问题,但是它仍然是一个非常优秀的分布式计算框架,而且Elasticsearch可以非常方便的集成在hadoop中,我们也可以用它优秀的数据检索能力来构造自己的查询系统.

---------------------好的,先就简单介绍到这里.接下来,会减少如何搭建一个自己的ES----------------

Elastic Static初识(01)的更多相关文章

  1. 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)

    091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  2. 001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学

    001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学 welcome to Java World 欢迎来到Java世界 一起领略Java编程世界的奥秘与奥妙 ...

  3. node.js初识01

    1.对于node.js的安装在这里就不做过多的介绍了,安装成功后,可以通过cmd 输入node -v查看node的版本号,如图所示 2.开始我们的hello world,通过cmd进入所属文件夹,输入 ...

  4. Vue框架初识01

    摘要 vue简介 vue使用 一.Vue简介: 简介: Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 A ...

  5. linux初识-01简介

    什么是linux: Linux是一个自由的,免费的,源码开发的操作系统Linux的特点: 开放性.多用户,多任务,具有丰富的网络功能 可靠的系统安全 良好的可移植性 良好的用户界面(命令界面和图形界面 ...

  6. vue的路由初识01

    今天就做了一个vue-router的实例,(路由跳转,参数的传递[一个参数,多个参数])<!DOCTYPE html> <html> <head> <meta ...

  7. MySQL 初识01

    最近开始学习MySQL 所以将这两天所学习到的知识简单小结一下 1.status 显示数据库信息 2.数据类型: a.字符串: char(m):固定长度的字符,最多255个字符: varchar(m) ...

  8. Redis初识01 (简介、安装、使用)

    一.Reids介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  9. Elastic Stack 笔记(一)CentOS7.5 搭建 Elasticsearch5.6 集群

    博客地址:http://www.moonxy.com 一.前言 Elasticsearch 是一个基于 Lucene 的分布式搜索引擎服务,采用 Java 语言编写,使用 Lucene 构建索引.提供 ...

随机推荐

  1. maven替换中央仓库,阿里云镜像下载及自定义本地仓库位置

    maven替换中央仓库- 阿里云 在国内访问Maven仓库,下载速度太慢.下面是将中央仓库替换成阿里云的中央仓库的方法.国内还有其他的公共仓库,自己选择.  在你下载的maven版本-conf-set ...

  2. cf 1102 B

    题意:求字符串中任意相邻两位是否可以可以由前一个加上任意个x或y屏蔽十位与后一位相等,如果可以需要添加的最少数字是多少,x值为0-9,y值也为0-9,求出任意x,y对应情形下字符串需要添加的最少数字, ...

  3. CSS3 transform封装

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. G1 collector 介绍

    背景:由于CMS算法产生空间碎片和其它一系列的问题缺陷,HotSpot提供了另外一种垃圾回收策略,G1(也就是Garbage First)算法,该算法在JDK7u4版本被正式推出,官网对此描述如下: ...

  5. 安装hadoop集群--hdfs

    安装hadoop集群--hdfs 大数据软件 链接:https://pan.baidu.com/s/1-3PYLHMgvvONawJq55hstQ 提取码:izqf 准备一台干净的虚拟机-centos ...

  6. d3.js 教程 模仿echarts柱状图

    由于最近工作不是很忙,隧由把之前的charts项目用d3.js重写的一下,其实d3.js文档很多,但是入门不是很难,可是想真的能做一个完成的,交互良好的图还是要下一番功夫的.今天在echarts找到了 ...

  7. 【故障公告】阿里云 RDS 数据库服务器 CPU 100% 造成全站故障

    非常非常抱歉,今晚 19:34 ~ 21:16 园子所使用的阿里云 RDS 数据库服务器突然出现 CPU 100% 问题,造成全站无法正常访问,由此您带来了很大的麻烦,请您谅解. 故障经过是这样的.1 ...

  8. CF EDU 1101D GCD Counting 树形DP + 质因子分解

    CF EDU 1101D GCD Counting 题意 有一颗树,每个节点有一个值,问树上最长链的长度,要求链上的每个节点的GCD值大于1. 思路 由于每个数的质因子很少,题目的数据200000&l ...

  9. AOJ-2249-Road Construction-dijkstra-最小花费

    Road Construction 题意:在一个无向图中,每条边上有建设的花费和路径的长度,要求求得,在保持每个点到1号点最小距离不变的情况下,求最小的总花费: 思路:用dijkstra 找出每个点的 ...

  10. std::move的原理与实现,右值引用的深入理解

    这次我真的懂了.... 首先C++11引入了右值引用 && ‘&&’这个要连起来看,是一个整体,C++多了一个关键字而已. 不是引用的引用.是船新的一种语法.那有什么用 ...