实时数据集成(Flink版)

物联网平台数据服务中的产品属性时序表、产品事件表和自定义存储表(时序表)数据,可以集成到阿里云实时计算Flink版中计算和分析,以便您实时分析和诊断设备的运行状况,实时检测运行故障等。本文介绍使用实时计算Flink版的连接器功能集成物联网平台实例下数据服务中数据的完成流程。

前提条件

背景信息

阿里云实时计算Flink版是一套基于Apache Flink构建的⼀站式实时大数据分析平台,提供端到端亚秒级实时数据分析能力,并通过标准SQL降低业务开发门槛,助力企业向实时化、智能化大数据计算升级转型。详细内容,请参见阿里云实时计算Flink版

实时计算Flink版服务集成物联网平台的产品属性时序表数据、产品事件表数据和自定义存储表时序数据,需要在Flink SQL开发作业中使用SQL连接器连接物联网平台数据服务中对应的时序数据表。Flink全托管产品支持您自定义连接器后上传使用,物联网平台提供连接器iot-source的使用说明,请参见实时数据集成的连接器

使用限制

限制项

说明

地域

华东2(上海)、华南1(深圳)、华北2(北京)、美国(弗吉尼亚)。

物联网平台企业版实例

标准型、尊享型。实例类型说明,请参见企业版实例不同类型和功能区别

集成的物联网平台数据源

产品属性时序表和产品事件表自定义存储表(时序表)

计费说明

数据服务中实时数据集成流出会消耗数据处理单元(CU),详细说明,请参见计费项说明

实时计算Flink版服务的计费逻辑和详细说明,请参见计费概述

使用流程

  1. 下载连接器(IoT Connector)文件iot-flink-connector-source.jar

  2. 注册连接器(IoT Connector):在阿里云实时计算控制台的数据连接页面,单击创建自定义连接器,上传已下载的连接器文件iot-flink-connector-source.jar,单击完成

    image.png

  3. SQL作业开发:在阿里云实时计算控制台的SQL开发中新建流作业模板,编写作业信息,进行更多配置和深度检查后,完成调试和部署。

    本文以物联网设备上传物模型属性通过Flink任务流转到log文件为例,结合Print连接器接收并打印数据输入记录。编写代码如下:

    重要
    • 创建SQL作业时,Flink的引擎版本建议选择vvr-6.0.6-flink-1.15。更高版本的Flink集群可能出现JAR包冲突。

    • 实际场景中,需修改连接器iot-source中WITH下参数为真实值。参数配置说明,请参见WITH参数说明

    CREATE TEMPORARY TABLE iot_source_test {
        productKey STRING,
        deviceName STRING,
        body STRING
    } with {
        'connector'='iot-source',
        'regionId'='cn-shanghai',
        'accessId'='xxxxxxxx',
        'accessKey'='xxxxxxxx',
        'tableName'='product.xxxx',
        'iotInstanceId'='iot-xxxx',
        'clientId'='test',
        'uid' = 'xxxxxxxx'
    };
    
    CREATE TEMPORARY TABLE TEST_SINK(
        productKey STRING,
        deviceName STRING,
        body STRING
    ) WITH (
        'connector' = 'print',
        'logger'='true'
    );
    
    INSERT INTO TEST_SINK 
    SELECT *
    FROM iot_source_test;
  4. 启动作业:部署完成后,在作业运维中启动作业。

    image.png

  5. 查看作业性能:在作业运维中,单击运行中作业名称,进入作业运维详情页面,查看Flink计算结果。

    运行日志可在作业探查中的运行Task Managers页签下的日志列表中查看。连接器输出日志均写入到flink.log中(目前日志会打印写入数据和错误信息)。

    image.png

相关文档

Flink SQL开发参考:Flink SQL是为了简化计算模型、降低您使用Flink门槛而设计的一套符合标准SQL语义的开发语言。了解Flink SQL使用方法,可帮助您在实时计算Flink版中分析处理数据。