datawroks集成任务配置读取表的所有分区的数据

ODPS支持LinuxShell通配符在分区配置中,*代表0个或多个字符,?代表任意一个字符。默认需分区存在,否则任务失败。设置successOnNoPartition:true可使任务在分区不存在时仍成功。举例说明了如何读取特定或所有分区数据,以及如何按条件过滤和指定最大分区。写入数据时,必须指定到最后一级分区,不支持写入多个分区。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

  • ODPS分区配置支持linux shell通配符,* 表示0个或多个字符,? 代表任意一个字符
     
  • 默认情况下,读取的分区需要存在,如果分区不存在任务会报错。 如果您希望分区不存在时任务仍然成功,您可以转换为脚本模式,在odps的parameter端下面配置successOnNoPartition参数,即 "successOnNoPartition": true

     

例如分区表 test存在

pt=1,ds=hangzhou

 pt=1,ds=shanghai   

 pt=2,ds=hangzhou

pt=2,ds=beijing 四个分区,

如果你想读取 pt=1,ds=shanghai 这个分区的数据,分区信息中配置: pt=1,ds=shanghai;
如果你想读取 pt=1下的所有分区,分区信息中配置 :pt=1,ds=*;

如果你想读取整个 test 表的所有分区的数据,分区信息中配置 :pt=*,ds=*

  • 如果需要指定最大分区,可以配置如下信息(下面的语句是完整语句,须全部复制,修改对应ds分区字段即可):
/*query*/ ds=(select MAX(ds) from DataXODPSReaderPPR)
  • 如果需要按条件过滤,可以配置如下信息:
/*query*/ pt>=20170101 and pt<20170110,表示pt分区大于等于20170101且小于20170110的所有数据

ODPS写插件指定分区技巧

  • 需要写入数据表的分区信息,必须指定到最后一级分区。把数据写入一个三级分区表,必须配置到最后一级分区
例如:pt=20150101/type=1/biz=2
  • 不支持写入多个分区
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值