海量日志处理_方案

实时数据处理
方案
Flume
Kafka 日志收集
Spark Streaming 实时处理

将数据写入到kafka持久化存储;Spark Streaming消费kafka数据,业务级别分析;将分析结果写入HBase或者HDFS。

业界
《百度海量日志分析架构及处理》
对于互联网企业来说,最有价值的数据,往往蕴藏在网站日志之中。
从日志中,我们不仅可以了解应用的使用量、活跃用户数、服务质量,还可以了解到用户的地域来源、使用偏好等许多关键信息,从而改善服务质量,更好地满足用户需求。
但在实践中,随着网站用户规模增大和数据量的爆炸性增长,日志的管理、分析、挖掘变得越来越具有挑战性。百度在实战中积累了大量对海量日志数据处理的经验,并演化出一套平台化、可定制、高性能、高吞吐、高可用的技术架构。本次演讲将介绍百度日志处理平台LSP和海量数据处理语言DISQL的演化历程与架构思路,以及百度在日志分析中积累的一些经验。希望对大家有所启发。
如何让这些数据高效地运转起来体现实用价值,而不仅仅是拿到很多数据存储起来。
夯实基础:其次要选择一种或者几种适合自己企业当前状态的实时计算框架。实时分析并不等于实时计算,在分析过程中除了需要数据计算能力之外,还需要数据挖掘能力、实时采集能力。

《阿里云日志服务》
日志收集与实施消费(LogHub:日志中枢通道)
打通日志与数据仓库(LogShipper:日志投递)
提供海量日志查询与分析(LogSearch,日志检索)
文章
《Spark Streaming 1.3对Kafka整合的提升详解》http://dataunion.org/12102.html
《Spark Streaming 读取 Kafka 数据的两种方式》http://group.jobbole.com/15559/
《Spark streaming+kafka实战教程》
http://qifuguang.me/2015/12/24/Spark-streaming-kafka%E5%AE%9E%E6%88%98%E6%95%99%E7%A8%8B/

 

Kafka + Spark Streaming
Spark Streaming提供与Kafka整合的内置支持。
Flume版本: apache-flume-1.5.0-cdh5.4.9 ,该版本已经较好地集成了对kafka的支持。
《Kafka + Spark Streaming构建实时数据处理系统》
https://www.ibm.com/developerworks/cn/opensource/os-cn-spark-practice2/
使用 Kafka 分布式消息框架和 Spark 的 Streaming 模块构建一个实时数据处理系统。
股市走向分析, 气象数据测控,网站用户行为分析。

Kafka应用场景
流计算系统的数据源。
数据流分发给 Kafka 消息主题,流数据计算系统 (Storm/Spark Streaming) 实时消费并计算数据。
日志聚集:Kafka 可以作为日志收集系统的替代解决方案,将系统日志数据按类别汇集到不同的 Kafka 消息主题。

Spark Streaming应用场景
以高吞吐量,并且容错的方式处理持续性的数据流。目前 Spark Streaming 支持的外部数据源有 Flume、 Kafka、Twitter、ZeroMQ、TCP Socket 等。

 


Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
Flume-ng最明显的改动就是取消了集中管理配置的 Master 和 Zookeeper,变为一个纯粹的传输工具。Flume-ng另一个主要的不同点是读入数据和写出数据现在由不同的工作线程处理(称为 Runner)。
日志采集层:主要可以使用Flume, Kafka两种技术。Cloudera 建议如果数据被多个系统消费的话,使用kafka;如果数据被设计给Hadoop使用,使用Flume。

 

posted @ 2016-11-17 11:20  Uncle_Nucky  阅读(2548)  评论(0编辑  收藏  举报