DataWorks百问百答42:如何自动同步IoT系统新生成文件至MaxCompute?

本文涉及的产品
大数据开发治理平台 DataWorks,不限时长
简介: 如何自动同步IoT系统新生成文件至MaxCompute

背景:

物联网(The Internet of Things,简称IOT)是指通过各种信息传感器等各种装置与技术,实时采集任何需要的各种信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。其是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
物联网、大数据和云计算作为当前第三次信息化浪潮的代表技术,将在未来形成广泛的影响。物联网专注于物物相连,大数据专注于数据的价值化,而云计算则为大数据和物联网提供计算资源等服务支持。
大数据是物联网体系的重要组成部分。物联网的体系结构分成六个部分,分别是设备、网络、平台、分析、应用和安全,其中分析部分的主要内容就是大数据分析。大数据分析是大数据完成数据价值化的重要手段之一,而进行数据分析的第一步就是要使数据能够上云。

解决方案

整条链路的关键步骤可以分为原始数据的存储,以及数据进入分析系统两大步。
存储方面IoT设备大量的数据通常情况下都会被以半结构化的形式,比如存储为CSV文件用以保留原始信息。这块可以利用阿里云的OSS来做存储获得较好的性能和量价比。但对于数据进入到大数据系统或者传统数据库来说急需要有专业数据同步系统。下图给出了一个非常典型的解决方案图,使用DataWorks的数据集成(Data Integration)来完成数据从OSS进入到大数据系统的过程。具体参考“向导模式配置任务”以及读取OSS写入MaxCompute,或者写入其他类型的数据源中
image.png

流程自动化配置

使用OSS读取CSV文件时,如下图需要配置读取的文件名
image.png

但是一般情况下IoT的数据都是在不停地生成,并且落地为csv文件,如果手工去配置对应的同步任务,并且将这些csv文件一个个的读取到云上(在此示例中使用MaxCompute),那将是一个非常繁琐,甚至是不可能完成的任务,比如这些csv文件每5分钟就生成一份,如何将这些csv能够自动同步到MaxCompute中?下面教给大家具体操作方法。

Step0.方案规约

1、OSS上的文件需要按时周期性生成。

由于DataWorks本身可以按照时间来周期调度,所以可以利用这点,周期性的启动同步任务,每次启动时读取不同的问题。方案就是DataWorks任务的调度周期和OSS上生成的文件同步,比如OSS上的文件都是每15分钟生成一份,DataWorks上的同步任务也设置为每15分钟调度一次。

2、生成的文件名需要利用时间戳来命名

OSS同步任务读取文件时需要明确OSS文件的名称,但是我们使用参数变量来动态的生成文件名,为了使同步任务自动生成的文件名可以跟OSS上文件名一致,需要IoT向OSS生成文件时,也使用同样的规律命名。推荐使用yyyymmddhhmm这样的时间戳作为文件名的一部分,其他部分保持不变。比如是iot_log_201911062315.csv。

Step1.文件名使用参数变量

image.png
如上图,将文件名的时间戳部分作为变量,使用一个参数来代替。${...}就是参数,里面写上参数名,这个名称可以自定义,此处定义为filename。
然后在调度配置面板中写下这个参数变量的变量值:(这里使用了自定义变量,具体用法非常灵活,可以参考:调度参数中的自定义参数部分。)

filename=$[yyyymmddhh24mi]

如下图,
image.png
此处自定义变量$[yyyymmddhh24mi]的含义为精确到分的时间戳,比如201911062315(2019年11月6日23点15分),202005250843(2020年5月25日08点43分),201912012207(2019年12月1日22点7分)。

Step2.设置周期调度

image.png
如上图,这里面是周期调度最关键的参数。
调度周期:选择“分钟”
开始时间和结束时间根据自己实际的情况来设置时间范围
时间间隔:根据自己业务情况,进行选择,这点就上面说的,一定要和参数时间戳和任务命名范围保持一致。即如果OSS里的文件是每15分钟生成一个文件,则时间间隔也定为15。

Step3.发布任务

image.png
如图点击"发布"将任务发布,然后在运维页面“周期任务”和“周期实例”中检查生成的任务和实例是否符合需求。
image.png

至此就完成了整个OSS自动同步的步骤。

DataWorks百问百答历史记录 请点击这里查看>>

更多DataWorks技术和产品信息,欢迎加入【DataWorks钉钉交流群】

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
一站式大数据开发治理平台DataWorks初级课程
DataWorks 从 2009 年开始,十ー年里一直支持阿里巴巴集团内部数据中台的建设,2019 年双 11 稳定支撑每日千万级的任务调度。每天阿里巴巴内部有数万名数据和算法工程师正在使用DataWorks,承了阿里巴巴 99%的据业务构建。本课程主要介绍了阿里巴巴大数据技术发展历程与 DataWorks 几大模块的基本能力。 课程目标  通过讲师的详细讲解与实际演示,学员可以一边学习一边进行实际操作,可以深入了解DataWorks各大模块的使用方式和具体功能,让学员对DataWorks数据集成、开发、分析、运维、安全、治理等方面有深刻的了解,加深对阿里云大数据产品体系的理解与认识。 适合人群  企业数据仓库开发人员  大数据平台开发人员  数据分析师  大数据运维人员  对于大数据平台、数据中台产品感兴趣的开发者
相关文章
|
13天前
|
分布式计算 DataWorks Java
DataWorks操作报错合集之在使用MaxCompute的Java SDK创建函数时,出现找不到文件资源的情况,是BUG吗
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
26 0
|
13天前
|
DataWorks 关系型数据库 调度
DataWorks操作报错合集之DataWorks 数据库同步任务中,如果遇到表情符报错的现象,怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
28 0
|
13天前
|
DataWorks Oracle 关系型数据库
DataWorks操作报错合集之尝试从Oracle数据库同步数据到TDSQL的PG版本,并遇到了与RAW字段相关的语法错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
30 0
|
13天前
|
分布式计算 DataWorks Oracle
DataWorks操作报错合集之DataWorks ODPS数据同步后,timesramp遇到时区问题,解决方法是什么
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
26 0
|
13天前
|
分布式计算 DataWorks 数据管理
DataWorks操作报错合集之DataWorks中udf开发完后,本地和在MaxCompute的工作区可以执行函数查询,但是在datawork里报错FAILED: ODPS-0130071:[2,5],是什么原因
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
26 0
|
13天前
|
SQL DataWorks 关系型数据库
DataWorks操作报错合集之DataWorks在同步mysql时报错Code:[Framework-02],mysql里面有个json类型字段,是什么原因导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
30 0
|
13天前
|
分布式计算 DataWorks 数据库
DataWorks操作报错合集之DataWorks使用数据集成整库全增量同步oceanbase数据到odps的时候,遇到报错,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
24 0
|
13天前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之在DataWorks同步数据时,遇到乱码问题,该怎么解决(rest api数据源)
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
22 0
|
13天前
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之在DataWorks数据集成中,但是预览ODPS源数据库为空,是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
23 0
|
13天前
|
缓存 DataWorks 监控
DataWorks操作报错合集之在DataWorks中进行数据同步时,遇到数据量大的表同步时报链接异常,该怎么办
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
21 0

热门文章

最新文章

  • 1
    DataWorks操作报错合集之DataWorksUDF 报错:evaluate for user defined function xxx cannot be loaded from any resources,该怎么处理
    30
  • 2
    DataWorks操作报错合集之DataWorks任务异常 报错: GET_GROUP_SLOT_EXCEPTION 该怎么处理
    24
  • 3
    DataWorks操作报错合集之在DataWorks中,任务流在调度时间到达时停止运行,是什么原因导致的
    31
  • 4
    DataWorks操作报错合集之DataWorks ODPS数据同步后,timesramp遇到时区问题,解决方法是什么
    26
  • 5
    DataWorks操作报错合集之DataWorks配置参数在开发环境进行调度,参数解析不出来,收到了 "Table does not exist" 的错误,该怎么处理
    25
  • 6
    DataWorks操作报错合集之DataWorks中udf开发完后,本地和在MaxCompute的工作区可以执行函数查询,但是在datawork里报错FAILED: ODPS-0130071:[2,5],是什么原因
    26
  • 7
    DataWorks操作报错合集之DataWorks提交失败: 提交节点的源码内容到TSP(代码库)失败:"skynet_packageid is null,该怎么解决
    33
  • 8
    DataWorks操作报错合集之DataWorks集成实例绑定到同一个vpc下面,也添加了RDS的IP白名单报错:数据源配置有误,请检查,该怎么处理
    27
  • 9
    DataWorks操作报错合集之DataWorks在同步mysql时报错Code:[Framework-02],mysql里面有个json类型字段,是什么原因导致的
    30
  • 10
    DataWorks操作报错合集之在 DataWorks 中运行了一个 Hologres 表的任务并完成了执行,但是在 Hologres 表中没有看到数据,该怎么解决
    24
  • 相关产品

  • 大数据开发治理平台 DataWorks