开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

dataworks怎么同步oss这样的数据?

dataworks怎么同步oss这样的数据?路径是日期到小时的,然后下面有N个snappy归档压缩后的文件?image.png

展开
收起
真的很搞笑 2023-11-15 07:52:33 76 0
3 条回答
写回答
取消 提交回答
  • 您可以使用DataWorks中的OSS数据源来同步OSS中的数据。以下是一些步骤:

    1. 在DataWorks控制台中,单击“数据源”>“添加数据源”。
    2. 选择“OSS”作为数据源类型,并填写相关信息,例如Bucket名称、Endpoint、AccessKey ID和AccessKey Secret等。
    3. 配置数据同步任务,包括源路径、目标路径、同步方式等。
    4. 启动数据同步任务。
    2023-11-15 14:52:54
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    DataWorks支持将OSS中的数据导入到ODPS,包括按日期和小时组织的Snappy归档压缩文件。您可以通过以下步骤来实现数据同步:

    1. 创建数据源:首先,您需要在DataWorks中创建一个OSS数据源,指定您的OSS桶的名称、地域和访问密钥。数据源创建完成后,您可以通过这个数据源访问OSS中的文件。
    2. 创建外部表:接下来,您需要创建一个外部表,指定期望的数据格式和文件路径模板。外部表可以使用ODPS SQL语法指定日期和小时维度,例如:
      CREATE EXTERNAL TABLE my_table 
      (  
      column1 STRING,
      column2 STRING,
      ...
      )
      STORED AS PARQUET 
      LOCATION 'oss://my-bucket/path/to/logdir/${yyyyMMdd}/${yyyy-MM-dd}/${HH}'
      TBLPROPERTIES ("fileformat"="parquet", "compression"="SNAPPY");
      
    1. 同步数据:最后,您可以在外部表上执行LOAD语句来同步数据。这样,就会把满足路径模板的文件加载到ODPS表中。

    注意:在同步数据时,可以使用ODPS SQL的LATEST关键字来指定只加载最新的数据:

    LOAD INTO my_table 
    FROM my_table 
    LATEST;
    

    这样,每次执行LOAD语句时都会只加载最新一小时的数据。同时,也可以使用MINUTESHOURSDAYS等关键字来指定时间间隔。

    2023-11-15 13:30:27
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 热门讨论

    热门文章

    相关电子书

    更多
    OSS运维进阶实战手册 立即下载
    《OSS运维基础实战手册》 立即下载
    OSS运维基础实战手册 立即下载