赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 对象存储
  4. 实践教程
  5. 数据湖
  6. 阿里云生态
  7. 实时计算Flink读写OSS或者OSS-HDFS

实时计算Flink读写OSS或者OSS-HDFS

  • 阿里云生态
  • 发布于 2025-04-21
  • 0 次阅读
文档编辑
文档编辑

阿里云实时计算Flink支持通过连接器读写OSS以及OSS-HDFS数据。通过配置OSS或者OSS-HDFS连接器的输入属性,实时计算Flink会自动从指定的路径读取数据,并将其作为实时计算Flink的输入流,然后将计算结果按照指定格式写入到OSS或者OSS-HDFS的指定路径。

前提条件

  • 已开通Flink全托管。具体操作,请参见开通实时计算Flink版。

    开通Flink全托管后,Flink全托管页签将在5~10分钟内显示已创建完成的工作空间。

  • 已创建SQL作业。

    创建SQL作业时,Flink计算引擎需选择VVR 8.0.1及以上版本。具体操作,请参见新建作业。

使用限制

  • 仅支持读写相同账号下的OSS或者OSS-HDFS服务的数据。

  • 对于写入OSS的场景,暂不支持写Avro、CSV、JSON和Raw此类行存的格式,具体原因请参见FLINK-30635。

操作步骤

  1. 进入SQL作业创建页面。

    1. 登录实时计算控制台。

    2. 单击目标工作空间操作列下的控制台。

    3. 在左侧导航栏,单击数据开发 > ETL。

  2. 在SQL作业编辑区域,编写DDL和DML代码。

    将srcbucket中的dir路径下的源表数据写入destbucket的test路径下的结果表。

    说明

    如果您希望通过以下代码读取OSS-HDFS的数据,请确保srcbucket以及destbucket已开通OSS-HDFS服务。

    CREATE TEMPORARY TABLE source_table (
     `file.name` STRING NOT NULL,
     `file.path` STRING NOT NULL METADATA
    ) WITH (
      'connector'='filesystem',
      'path'='oss://srcbucket/dir/',
      'format'='parquet'
    );
    
    CREATE TEMPORARY TABLE target_table(
     `name` STRING,
     `path` STRING 
    ) with (
      'connector'='filesystem',
      'path'='oss://destbucket/test/',
      'format'='parquet'
    );
    
    INSERT INTO target_table SELECT * FROM source_table ;

    关于源表支持的元数据列(例如file.path、file.name等)以及WITH参数的具体用法,请参见对象存储OSS连接器。

  3. 单击保存。

  4. 单击深度检查。

    深度检查能够检查作业的SQL语义、网络连通性以及作业使用的表的元数据信息。同时,您可以单击结果区域的SQL优化,展开查看SQL风险问题提示以及对应的SQL优化建议。

  5. 单击部署。

    完成作业开发和深度检查后,即可部署作业,将数据发布至生产环境。

  6. (可选)仅当您需要读取OSS-HDFS服务的数据时,执行此步骤。

    单击作业,在部署详情页签下的运行参数配置区域,按以下说明配置OSS-HDFS服务访问密钥以及Endpoint等信息,然后单击保存。

    fs.oss.jindo.buckets: srcbucket;destbucket
    fs.oss.jindo.accessKeyId: LTAI**************** 
    fs.oss.jindo.accessKeySecret: yourAccessKeySecret
    fs.oss.jindo.endpoint: cn-hangzhou.oss-dls.aliyuncs.com

    各配置项说明如下:

    配置项

    说明

    fs.oss.jindo.buckets

    填写待读取源表数据所在的Bucket名称以及待写入结果表数据所在的Bucket名称。Bucket名称之间以分号分隔,例如srcbucket;destbucket。

    fs.oss.jindo.accessKeyId

    阿里云账号或者RAM用户的AccessKey ID。获取方法请参见查看RAM用户的AccessKey信息。

    fs.oss.jindo.accessKeySecret

    阿里云账号或者RAM用户的AccessKey Secret。获取方法请参见查看RAM用户的AccessKey信息。

    fs.oss.jindo.endpoint

    OSS-HDFS服务的Endpoint,例如cn-hangzhou.oss-dls.aliyuncs.com。

  7. 在作业运维页面,单击启动,等待作业进入运行中状态。

  8. 通过指定的OSS或者OSS-HDFS结果表存储路径path查看写入的数据。

    写入OSS时,您可以通过OSS控制台文件列表下的OSS页签查看写入的数据。写入OSS-HDFS时,您可以通过OSS控制台文件列表下的HDFS页签查看写入的数据。

相关文章

结合SLS分析OSS-HDFS服务热点访问数据 2025-04-21 17:13

为了有效地管理和分析OSS-HDFS服务的审计日志,您需要将审计日志导入日志服务SLS,然后通过SLS内置的查询分析能力对收集的审计日志进行分析,获取OSS-HDFS服务不同时间段内的访问量变化,分析频繁访问的数据、检测异常访问行为等信息。本教程用于演示如何通过SLS分析OSS-HDFS服务热点访问

通过XIHE SQL或者Spark SQL访问OSS数据 2025-04-21 17:13

在EMR Hive或Spark中访问OSS-HDFS 2025-04-21 17:13

EMR-3.42及后续版本或EMR-5.8.0及后续版本的集群,支持OSS-HDFS(JindoFS服务)作为数据存储,提供缓存加速服务和Ranger鉴权功能,使得在Hive或Spark等大数据ETL场景将获得更好的性能和HDFS平迁能力。本文为您介绍E-MapReduce(简称EMR)Hive或S

实时计算Flink读写OSS或者OSS-HDFS 2025-04-21 17:13

阿里云实时计算Flink支持通过连接器读写OSS以及OSS-HDFS数据。通过配置OSS或者OSS-HDFS连接器的输入属性,实时计算Flink会自动从指定的路径读取数据,并将其作为实时计算Flink的输入流,然后将计算结果按照指定格式写入到OSS或者OSS-HDFS的指定路径。 前提条件 已开通F

EMR Flink写入OSS-HDFS服务 2025-04-21 17:13

可恢复性写入功能支持将数据以EXACTLY_ONCE语义写入存储介质。本文介绍Flink如何通过EMR集群的方式可恢复性写入OSS-HDFS服务。 前提条件

使用Flume同步EMR Kafka集群的数据至OSS-HDFS服务 2025-04-21 17:13

本文为您介绍如何使用Flume同步EMR Kafka集群的数据至阿里云OSS-HDFS服务。 前提条件 <

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号