StreamingPro 再次支持 Structured Streaming

前言

之前已经写过一篇文章,StreamingPro 支持Spark Structured Streaming,不过当时只是玩票性质的,因为对Spark 2.0+ 版本其实也只是尝试性质的,重点还是放在了spark 1.6 系列的。不过时间在推移,Spark 2.0+ 版本还是大势所趋。所以这一版对底层做了很大的重构,StreamingPro目前支持Flink,Spark 1.6+, Spark 2.0+ 三个引擎了。

准备工作
下载streamingpro for spark 2.0的包,然后下载spark 2.1 的安装包。

你也可以在 streamingpro目录 找到spark 1.6+ 或者 flink的版本。最新的大体会按如下格式统一格式了:

streamingpro-spark-0.4.14-SNAPSHOT.jar  适配  spark 1.6+,scala 2.10
streamingpro-spark-2.0-0.4.14-SNAPSHOT.jar  适配  spark 2.0+,scala 2.11
streamingpro.flink-0.4.14-SNAPSHOT-online-1.2.0.jar 适配 flink 1.2.0, scala 2.10

测试例子
写一个json文件ss.json,内容如下:

{
  "scalamaptojson": {
    "desc": "测试",
    "strategy": "spark",
    "algorithm": [],
    "ref": [
    ],
    "compositor": [
      {
        "name": "ss.sources",
        "params": [
          {
            "format": "socket",
            "outputTable": "test",
            "port":"9999",
            "host":"localhost",
            "path": "-"
          },
          {
            "format": "com.databricks.spark.csv",
            "outputTable": "sample",
            "header":"true",
            "path": "/Users/allwefantasy/streamingpro/sample.csv"
          }
        ]
      },
      {
        "name": "ss.sql",
        "params": [
          {
            "sql": "select city from test left join sample on test.value == sample.name",
            "outputTableName": "test3"
          }
        ]
      },
      {
        "name": "ss.outputs",
        "params": [
          {
            "mode": "append",
            "format": "console",
            "inputTableName": "test3",
            "path": "-"
          }
        ]
      }
    ],
    "configParams": {
    }
  }
}

大体是一个socket源,一个sample文件。socket源是流式的,sample文件则是批处理的。sample.csv内容如下:

id,name,city,age
1,david,shenzhen,31
2,eason,shenzhen,27
3,jarry,wuhan,35

然后你在终端执行 nc -lk 9999 就好了。

然后运行spark程序:

SHome=/Users/allwefantasy/streamingpro
./bin/spark-submit   --class streaming.core.StreamingApp \
--master local[2] \
--name test \
$SHome/streamingpro-spark-2.0-0.4.14-SNAPSHOT.jar    \
-streaming.name test    \
-streaming.platform spark_structrued_streaming \
-streaming.job.file.path file://$SHome/ss.json

在nc 那个终端输入比如eason ,然后回车,马上就可以看到spark终端接受到了数据。

时间: 2024-12-08 19:40:34

StreamingPro 再次支持 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 采用dataframe API,并且对流式计算重新进行了抽象,个人认为Spark streaming 更灵活,Structured Streaming 在

Structured Streaming Programming Guide

https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html http://www.slideshare.net/databricks/a-deep-dive-into-structured-streaming   Structured Streaming is a scalable and fault-tolerant stream processing engine built on the

【Spark Summit EU 2016】在在线学习中使用Structured Streaming流数据处理引擎

本讲义出自Ram Sriharsha与Vlad Feinberg在Spark Summit EU上的演讲,首先介绍了什么是在线学习,其实在线学习的主要特点就是在每个数据点都会更新数据参数,但是却无法再次访问之前的数据点.在演讲中还分享了在线学习的优点以及目前分布式在线学习所面临的挑战,之后还介绍了Structured Streaming流数据处理引擎,以及基于Structured Streaming的机器学习模型.

德州上诉法院再次支持微软故意侵犯i4i专利裁决

美国一个上诉法院的陪审团支持下级法院做出的裁决,即微软在Word 2003和Word 2007软件中使用客户化XML标签故意侵犯了i4i公司的专利. 这些法官被要求重新考虑2009年有关i4i专利的一项裁决.这项专利涉及到以相互分离的方式操作一个文件的内容和架构的方法和系统.微软去年12月提出的第一次上诉已经被驳回.然后,微软提出了第二次上诉,要求举行一个陪审团听证会并且在整个上诉法院判决之前进行"全体法官复审".德克萨斯州联邦巡回法院陪审团星期三的裁决就是这个过程的一部分. i4i董

StreamingPro 支持多输入,多输出配置

前言 最近正好有个需求,就是从不同的数据库以及表里拉出数据,经过一定的处理放到ES里供查询,最好还能放个到parquet里,这样可以支持更复杂的SQL.之前StreamingPro是只能配置一个数据源的,所以做了些改造,方便配置多个数据源,以及多个写出. 最新的下载地址: https://pan.baidu.com/s/1eRO5Wga依然的,比较大,因为现在他还能支持Thrift JDBC /Rest SQL: 使用StreamingPro 快速构建Spark SQL on CarbonDat

StreamingPro 简化流式计算配置

前言 前些天可以让批处理的配置变得更优雅StreamingPro 支持多输入,多输出配置,现在流式计算也支持相同的配置方式了. 另外未来等另外一个项目稳定,会释放出来配合StreamingPro使用,它可以让你很方便的读写HBase,比如可以为HBase 表 添加mapping,类似ES的做法,也可以不用mapping,系统会自动为你创建列(familly:column作为列名),或者将所有列合并成一个字段让你做处理. 配置 首先需要配置源: { "name": "strea

使用StreamingPro 快速构建Spark SQL on CarbonData

前言 CarbonData已经发布了1.0版本,变更还是很快的,这个版本已经移除了kettle了,使得部署和使用 变得很简单,而且支持1.6+ ,2.0+等多个Spark版本. StreamingPro可以使得你很简单通过一个命令就能体验Carbondata,并且支持Http/JDBC的访问形态. 下载Spark发行版 比如我下载后的版本是这个: spark-1.6.3-bin-hadoop2.6. 下载StreamingPro 地址在这: https://pan.baidu.com/s/1eR

如何基于Spark Streaming构建实时计算平台

1.前言 随着互联网技术的迅速发展,用户对于数据处理的时效性.准确性与稳定性要求越来越高,如何构建一个稳定易用并提供齐备的监控与预警功能的实时计算平台也成了很多公司一个很大的挑战. 自2015年携程实时计算平台搭建以来,经过两年多不断的技术演进,目前实时集群规模已达上百台,平台涵盖各个SBU与公共部门数百个实时应用,全年JStorm集群稳定性达到100%.目前实时平台主要基于JStorm与Spark Streaming构建而成,相信关注携程实时平台的朋友在去年已经看到一篇关于携程实时平台的分享:

在Silverlight中使用SmoothStreamingMediaElement创建Smooth Streaming播放器

我在"IIS 7 Smooth Streaming技术在Silverlight 3中的应用 "一文中详细介绍了有关 IIS 7.Smooth Streaming技术以及如何在Silverlight中使用MediaElement控件播放Smooth Streaming视频的内容,在继续本文之前,如果你对什么是Smooth Streaming还存在疑问,你 可以先去看看我的那篇文章,也算作是一个入门吧. 在上一文中我向大家介绍了如何利用现有的MediaElement控件来支持Smooth