使用Spark SQL 构建流式处理程序

前言

今天介绍利用 StreamingPro 构建流式(Spark Streaming)计算程序

准备工作

  • 下载StreamingPro

README中有下载地址

我们假设您将文件放在了/tmp目录下。

填写配置文件

  • 实例一,Nginx日志解析后存储到ES

gist

  • 测试样例, 模拟数据,并且单机跑起来

gist

假设你使用的是第二个配置文件,名字叫做test.json,并且放在了/tmp目录下。

启动StreamingPro

Local模式:

cd  $SPARK_HOME

./bin/spark-submit   --class streaming.core.StreamingApp \
--master local[2] \
--name test \
/tmp/streamingpro-0.2.1-SNAPSHOT-dev-1.6.1.jar    \
-streaming.name test    \
-streaming.job.file.path file:///tmp/test.json

访问

http://127.0.0.1:4040

可进入Spark UI

集群模式:

cd  $SPARK_HOME

./bin/spark-submit   --class streaming.core.StreamingApp \

--master yarn-cluster \

--name test \

/tmp/streamingpro-0.2.1-SNAPSHOT-dev-1.6.1.jar    \

-streaming.name test    \

-streaming.job.file.path hdfs://cluster/tmp/test.json

这里需要注意的是,配置文件并蓄放到HDFS上,并且需要带上hdfs前缀。这是一个标准的Spark 批流式处理程序

文/祝威廉(简书作者)

原文链接:http://www.jianshu.com/p/d10edd6c7cf9

著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

时间: 2024-11-05 12:07:46

使用Spark SQL 构建流式处理程序的相关文章

【译】使用Apache Kafka构建流式数据平台(1)

前言:前段时间接触过一个流式计算的任务,使用了阿里巴巴集团的JStorm,发现这个领域值得探索,就发现了这篇文章--Putting Apache Kafka To Use: A Practical Guide to Building a Stream Data Platform(Part 1).在读的过程中半总结半翻译,形成本文,跟大家分享. 最近你可能听说很多技术名词,例如"流式处理"."事件数据"以及"实时"等,与之相关的技术有Kafka.S

使用Elasticsearch,Kafka和Cassandra构建流式数据中心

在过去的一年里,我遇到了一些软件公司讨论如何处理应用程序的数据(通常以日志和metrics的形式).在这些讨论中,我经常会听到挫折感,他们不得不用一组零碎的工具,随着时间的推移将这些数据汇总起来.这些工具,如: - 运维人员使用的,用于监控和告警的工具 - 开发人员用于跟踪性能和定位问题的工具 - 一个完整独立的系统,商业智能(BI)和业务依赖其分析用户行为 虽然这些工具使用不同的视角,适用不同的场景,但是他们同样都是关注数据来源和类型.因此,许多软件团队说,"如果时间充裕,我们可以建立一个更好

使用Spark SQL构建交互式查询引擎

前言 StreamingPro 原来仅仅是用来作为Spark Streaming的一个配置化+SQL封装,然而不经意间,已经涵盖了批处理,交互式查询等多个方面.今天就讲讲如何使用StreamingPro构建一个交互式查询引擎. 准备工作 下载StreamingPro README中有下载地址 如果你使用了 Spark 2.0 版本,则要下载对应页面上的Spark 安装包.因为目前Spark 2.0 默认支持Scala 2.11.我提供了一个机遇Scala 2.10版本的.  我们假设您将文件放在

使用Spark SQL构建批处理程序

前言 今天介绍利用StreamingPro完成批处理的流程. 准备工作 下载StreamingPro README中有下载地址 我们假设您将文件放在了/tmp目录下. 填写配置文件 实例一,我要把数据从ES导出到HDFS,并且形成csv格式. gist  启动StreamingPro Local模式: cd $SPARK_HOME ./bin/spark-submit --class streaming.core.StreamingApp \ --master local[2] \ --name

Spark与EVAM组CP,应对实时流式事件处理

文章讲的是Spark与EVAM组CP,应对实时流式事件处理,Apache Spark是一个开源大数据处理框架,其速度快并具有很好的易用性,并且可用来应对复杂分析.Spark可以支持流式处理,图表数据,机器学习,以及Hadoop和map/reduce.它是探索建立实时事件处理的理想平台. EVAM是一个实时事件处理方面的领跑者,有超过40种解决方案可以支持全球超两亿用户的实时事件处理.最近几年,EVAM已经建立了多种客户解决方案,比较流行的几个比如AWS Kinesis和RedShift.既然Ap

In-Stream Big Data Processing译文:流式大数据处理

转自:http://blog.csdn.net/idontwantobe/article/details/25938511  @猪头饼 原文:http://highlyscalable.wordpress.com/2013/08/20/in-stream-big-data-processing/ 作者:Ilya Katsov 相当长一段时间以来,大数据社区已经普遍认识到了批量数据处理的不足.很多应用都对实时查询和流式处理产生了迫切需求.最近几年,在这个理念的推动下,催生出了一系列解决方案,Twi

In-Stream Big Data Processing流式大数据处理详解

相当长一段时间以来,大数据社区已经普遍认识到了批量数据处理的不足.很多应用都对实时查询和流式处理产生了迫切需求.最近几年,在这个理念的推动下,催生出了一系列解决方案,Twitter Storm,Yahoo S4,Cloudera Impala,Apache Spark和Apache Tez纷纷加入大数据和NoSQL阵营.本文尝试探讨流式处理系统用到的技术,分析它们与大规模批量处理和OLTP/OLAP数据库的关系,并探索一个统一的查询引擎如何才能同时支持流式.批量和OLAP处理. 在Grid Dy

Spark Streaming 流式计算实战

这篇文章由一次平安夜的微信分享整理而来.在Stuq 做的分享,原文内容.  业务场景 这次分享会比较实战些.具体业务场景描述: 我们每分钟会有几百万条的日志进入系统,我们希望根据日志提取出时间以及用户名称,然后根据这两个信息形成 userName/year/month/day/hh/normal  userName/year/month/day/hh/delay 路径,存储到HDFS中.如果我们发现日志产生的时间和到达的时间相差超过的一定的阈值,那么会放到 delay 目录,否则放在正常的 no

Spark Streaming 1.6 流式状态管理分析

关于状态管理 在流式计算中,数据是持续不断来的,有时候我们要对一些数据做跨周期(Duration)的统计,这个时候就不得不维护状态了.而状态管理对Spark 的 RDD模型是个挑战,因为在spark里,任何数据集都需要通过RDD来呈现,而RDD 的定义是一个不变的分布式集合.在状态管理中,比如Spark Streaming中的word-count 就涉及到更新原有的记录,比如在batch 1 中  A 出现1次,batch 2中出现3次,则总共出现了4次.这里就有两种实现: 获取batch 1