StreamingPro目前已经涵盖流式/批处理,以及交互查询三个领域,实现配置和SQL化

前言

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

准备工作

  • 下载StreamingPro

​README中有下载地址​

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

填写配置文件

  • 下面配置下载后无需任何改动即可跑起来

​gist​

假设你下载后重新命名为test.json,并且放在了/tmp目录下。

ps: 这个例子里,我们模拟了一个流式数据源(一般而言是Kafka),然后将该数据源映射成一张表test。 另外我们知道,在一般流式计算中,我们经常需要一些映射数据,比如ip->地理位置 的映射关系。所以我们定义了一张testJoinTable表,然后该表可以直接可以被流式数据中使用(使用Join)。最后打印出结果。

启动StreamingPro

Local模式:

cd  $SPARK_HOME

./bin/spark-submit --class streaming.core.StreamingApp \
--master local[2] \
--name test \
/tmp/streamingpro-0.4.1-SNAPSHOT-online-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.4.1-SNAPSHOT-online-1.6.1.jar \
-streaming.name test \
-streaming.job.file.path hdfs://cluster/tmp/test.json

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