StreamingPro 支持Spark Structured Streaming-阿里云开发者社区

开发者社区> 祝威廉> 正文

StreamingPro 支持Spark Structured Streaming

简介: Structured Streaming 的文章参考这里: Spark 2.0 Structured Streaming 分析。2.0的时候只是把架子搭建起来了,当时也只支持FileSource(监控目录增量文件),到2.0.2后支持Kafka了,也就进入实用阶段了,目前只支持0.10的Kafka。
+关注继续查看
前言

Structured Streaming 的文章参考这里: Spark 2.0 Structured Streaming 分析。2.0的时候只是把架子搭建起来了,当时也只支持FileSource(监控目录增量文件),到2.0.2后支持Kafka了,也就进入实用阶段了,目前只支持0.10的Kafka。Structured Streaming 采用dataframe API,并且对流式计算重新进行了抽象,个人认为Spark streaming 更灵活,Structured Streaming 在某些场景则更方便,但是在StreamingPro中他们之间则没太大区别,唯一能够体现出来的是,Structured Streaming 使得checkpoint真的进入实用阶段。


下载

假设我们都放在/tmp目录下


写逻辑

新建一个文件,/tmp/ss-test.json,内容如下:

{
  "scalamaptojson": {
    "desc": "测试",
    "strategy": "spark",
    "algorithm": [],
    "ref": [
    ],
    "compositor": [
      {
        "name": "ss.source.mock",
        "params": [{"duration1":["1","2","3"]}]
      },
      {
        "name": "ss.table",
        "params": [{"tableName": "test"}]
      },
      {
        "name": "ss.sql",
        "params": [
          {
            "sql": "select value + 100 from test",
            "outputTableName": "test2"
          }
        ]
      },
      {
        "name": "ss.output",
        "params": [
          {
            "mode": "append",
            "format": "console"
          }
        ]
      }
    ],
    "configParams": {
    }
  }
}

StreamingPro 现在支持短名称了,不用写那么冗长的package名。

  • ss 开头指的是structrued streaming。
  • batch 则是spark 批处理
  • stream 则是 spark streaming

逻辑:

  1. 配置模拟数据
  2. 映射为表
  3. 使用SQL查询
  4. 输出(console)

如果是接的kafka,则配置如下即可:

{
        "name": "ss.source",
        "params": [{
        "format":"kafka"
        "kaka.bootstrap.servers":"host1:port1,host2:port2",
        "subscribe":"topic1,topic2"
}]
 }


运行

./bin/spark-submit   --class streaming.core.StreamingApp \
--master local[2] \
--name test \
/tmp/streamingpro-0.4.7-SNAPSHOT-online-2.0.2.jar    \
-streaming.name test    \
-streaming.platform  ss  \
-streaming.checkpoint  file:///tmp/ss  \
-streaming.job.file.path file:///tmp/ss-test.json

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
phpstudy APACHE支持.htaccess以及 No input file specified解决方案
你的Apache安装文件夹conf里找到httpd.conf文件 索LoadModule rewrite_module modules/mod_rewrite.so 如果前面有注释符号#,请去掉。 搜索Options FollowSymLinks,然后将它下面的AllowOverride None 修改为AllowOverride All; 【1】 没想到遇见了 N
3503 0
Apache Spark 3.0 将内置支持 GPU 调度
如今大数据和机器学习已经有了很大的结合,在机器学习里面,因为计算迭代的时间可能会很长,开发人员一般会选择使用 GPU、FPGA 或 TPU 来加速计算。在 Apache Hadoop 3.1 版本里面已经开始内置原生支持 GPU 和 FPGA 了。
9466 0
Dubbo 在跨语言和协议穿透性方向上的探索:支持 HTTP/2 gRPC 和 Protobuf
本文整理自刘军在 Dubbo 成都 meetup 上分享的《Dubbo 在多语言和协议穿透性方向上的探索》。 本文总体上可分为基础产品简介、Dubbo 对 gRPC (HTTP/2) 和 Protobuf 的支持及示例演示三部分,在简介部分介绍了 Dubbo、HTTP/2、gRPC、Protobuf 的基本概念和特点;第二部分介绍了 Dubbo 为何要支持 gRPC (HTTP/2) 和 P
658 0
+关注
96
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载