如何使用Tunnel SDK上传/下载MaxCompute复杂类型数据

本文介绍了如何使用Tunnel SDK上传和下载MaxCompute中的复杂数据类型,如ARRAY, MAP, STRUCT。详细讲解了复杂数据类型的构造与操作函数,并提供了Tunnel SDK的使用方法,包括UploadSession和DownloadSession的创建,以及数据上传和下载的典型流程。同时,给出了具体的代码示例,展示如何从MaxCompute下载复杂类型数据。" 51277712,1376846,CentOS 6.5 iSCSI SAN存储服务搭建教程,"['存储技术', '网络存储', 'Linux系统管理', 'CentOS', 'iSCSI配置']
摘要由CSDN通过智能技术生成

基于Tunnel SDK如何上传复杂类型数据到MaxCompute?首先介绍一下MaxCompute复杂数据类型:

复杂数据类型

MaxCompute采用基于ODPS2.0的SQL引擎,丰富了对复杂数据类型类型的支持。MaxCompute支持ARRAY, MAP, STRUCT类型,并且可以任意嵌套使用并提供了配套的内建函数。

类型 定义方法 构造方法
ARRAY array;array> array(1, 2, 3); array(array(1, 2); array(3, 4))
MAP map;map> map(“k1”, “v1”, “k2”, “v2”);map(1S, array(‘a’, ‘b’), 2S, array(‘x’, ‘y))
STRUCT struct;struct< field1:bigint, field2:array, field3:map> named_struct(‘x’, 1, ‘y’, 2);named_struct(‘field1’, 100L, ‘field2’, array(1, 2), ‘field3’, map(1, 100, 2, 200)

复杂类型构造与操作函数

返回类型 签名 注释
MAP map(K key1, V value1, K key2, V value2, ...) 使用给定key/value对建立map, 所有key类型一致,必须是基本类型,所有value类型一致,可为任意类型
ARRAY map_keys(Map m) 将参数中的map的所有key作为数组返回,输入NULL,返回NULL
ARRAY map_values(MAP m) 将参数中的map的所有value作为数组返回,输入NULL,返回NULL
int size(MAP) 取得给定MAP元素数目
TABLE explode(MAP) 表生成函数,将给定MAP展开,每个key/value一行,每行两列分别对应key和value
ARRAY array(T value1, T value2, ...) 使用给定value构造ARRAY,所有value类型一致
int size(ARRAY) 取得给定ARRAY元素数目
boolean array_contains(ARRAY a, value v) 检测给定ARRAY a中是否包含v
ARRAY sort_array(ARRAY) 对给定数组排序
ARRAY collect_list(T col) 聚合函数,在给定group内,将col指定的表达式聚合为一个数组
ARRAY collect_set(T col) 聚合函数,在给定group内,将col指定的表达式聚合为一个无重复元素的集合数组
TABLE explode(ARRAY) 表生成函数,将给定ARRAY展开,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值