大数据在线分析处理和常用工具

大数据在线分析处理的特点

  • . 数据源源不断的到来;
  • 数据需要尽快的得到处理,不能产生积压;
  • 处理之后的数据量依然巨大,仍然后TB级甚至PB级的数据量;
  • 处理的结果能够尽快的展现;

以上四个特点可以总结为数据的收集->数据的传输->数据的处理->数据的展现。其中数据的处理一般涉及数据的聚合,数据的处理和展现能够在秒级或者毫秒级得到响应。

针对这些问题目前形成了 Flume  +  kafka  +  Storm / Spark  +  Hbase / Redis 的技术架构

 

Flume介绍

Flume 专注于大数据的收集和传输,用来解决在线分析处理特点,数据源源不断的到来的问题。类似的大数据开源系统有 Logstash  和 Fluentd 。

三者区别如下:

  • Logstash 主要 和 Elasticsearch 、 Kibana  结合使用,俗称 ELK 框架; Logstash 主要负责将数据源的数据转换成 Elasticsearch  认识的索引结构供 Kibana 查询
  • Fluentd 当前的使用者已经很少,逐渐被功能更强大的 Flume 代替了
  • Flume 能够支持多种数据源并且输出到多种输出源,并且支持多种格式的数据

 

架构图

架构图中 Source  用来连接输出源,Sink 用来连接输出源,Channel 是 Flume 内部数据传输通道(主要包括 Memory Channel 和 File Channel)。

其中 Source 连接的输入源可以但不限于:

  • Avro
  • Thrift 
  • Exec(unix command  output)
  • JMS (Java Message Service)
  • Kafka
  • NetCat (可以使用 nc –lk port 测试)
  • Syslog
  • Custom 

 

其中 Sink 连接的输出源可以但不限于:

  • Hdfs
  • Hive 
  • Avro
  • Thrift 
  • File Roll
  • Hbase
  • ElasticSearch (提供的功能和 Logstash 一样,但是不如Logstash 丰富,大多数时候需要自己构造 ElasticSearch  文档和索引)
  • Kafka
  • Custom

 

Flume 也能多个 Agent 相连形成 Agent 链

Flume 也能多个 Agent 进行数据源的合并

 

Spark 和 Storm 介绍

Spark (Spark Streaming) 和  Storm 专注于将数据按照时间窗口进行聚合和处理。用来解决在线分析处理特点,数据需要尽快的得到处理的问题。所以经常被称作流式处理框架。

两者的区别如下:

  • Storm  提供比 Spark 更加实时的流式处理;
  • Spark 提供比Storm更加多的服务,Spark 逐渐已经形成类似 Hadoop 的生态圈了。

 

目前Sp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值