本文主要为您介绍不同账号之间如何实现表格存储和 MaxCompute 之间的无缝连接。
说明 如需了解同账号下的表格存储与 Maxcompute 对接操作,请参考同账号下使用 MaxCompute 访问表格存储。
准备工作
跨云账号需要两个主账号,账号 A 将访问权限授予账号 B,则运行 MaxCompute 时,账号 B 可以访问账号 A 下的表数据。基本信息如下:
说明 以下信息仅为示例,在操作时请替换为实际使用的信息。
项目 | 表格存储 | MaxCompute |
---|---|---|
主账号名 | 账号 A | 账号 B |
UserId | 12345 | 56789 |
使用 MaxCompute 跨云账号访问表格存储前,您需要完成以下准备工作:
使用 MaxCompute 访问表格存储
跨账号访问的操作与同账号下的访问一样,只是在创建外部表时使用 roleArn。
账号 B 通过 MaxCompute 创建外部表,指定准备工作中创建出来的 roleArn 来访问表格存储。
具体操作步骤请参考同账号授权访问。其中,在步骤 2 创建外部表时,使用如下代码:
CREATE EXTERNAL TABLE ads_log_ots_pt_external
(
vid bigint,
gt bigint,
longitude double,
latitude double,
distance double ,
speed double,
oil_consumption double
)
STORED BY 'com.aliyun.odps.TableStoreStorageHandler'
WITH SERDEPROPERTIES (
'tablestore.columns.mapping'=':vid, :gt, longitude, latitude, distance, speed, oil_consumption',
'tablestore.table.name'='vehicle_track',
'odps.properties.rolearn'='acs:ram::12345:role/aliyunodpsroleforotheruser'
)
LOCATION 'tablestore://cap1.cn-hangzhou.ots-internal.aliyuncs.com'
USING 'odps-udf-example.jar'