SparkSQL结合SparkStreaming,使用SQL完成实时计算中的数据统计 – lxw的大数据田地
http://lxw1234.com/archives/2015/11/552.htm
关键字:SparkSQL、Spark Streaming、SQL、实时计算
Flume+Kafka+SparkStreaming已经发展为一个比较成熟的实时日志收集与计算架构,利用Kafka,即可以支持将用于离线分析的数据流到HDFS,又可以同时支撑多个消费者实时消费数据,包括SparkStreaming。然而,在SparkStreaming程序中如果有复杂业务逻辑的统计,使用scala代码实现起来比较困难,也不易于别人理解。但如果在SparkSteaming中也使用SQL来做统计分析,是不是就简单的多呢?
本文介绍将SparkSQL与SparkStreaming结合起来,使用SQL完成实时的日志数据统计。
SparkStreaming程序以yarn-cluster模式运行在YARN上,不单独部署Spark集群。
//实时统计需求
以60秒为间隔,统计60秒内的pv,ip数,uv
最终结果包括:
时间点:pv:ips:uv
原始日志格式
每条日志包含7个字段,分隔符为|~|,其中,第3列为ip,第7列为cookieid。假设原始日志已经由Flume流到Kafka中。
Spark Streaming+Flume对接实验 – lxw的大数据田地
http://lxw1234.com/archives/2015/05/217.htm