PgSQL · 佳实践 · 从 MaxCompute (ODPS) 迁移数据到 HybridDB
title: PgSQL · 佳实践 · 从 ODPS 迁移数据到 HybridDB
author: 曾文旌(义从)
背景
近,不少用户在尝试使用 HybridDB 的过程中,询问我们如何把之前在 ODPS 中的数据迁移到 HybridDB。今天就跟大家介绍一种效率较高的方法。
一:原理
ODPS 和 HybridDB 都是多数据节点组合成的集群架构,这样的架构如果要做到效率较高的数据吞吐,需要驱动数据节点主动推送数据。幸运的是 ODPS 和 HybridDB 都支持用该方式向 OSS 读写数据。于是解决方案来了。
要在 OSS 交换数据,约定数据格式是必要的。调查发现,ODPS 支持向 ODPS 写文本格式的数据(TEXT/CSV),HybridDB 也支持读取文本格式的数据。
二:解决方案
下面通过一个简单的 demo 描述整体方案
1. ODPS OSS 外表
首先,我们需要创建一个和 ODPS 数据表相同结构的外部表,用于打通和 OSS 的数据通道。
CREATE external TABLE `demo_oss_ext` (
id string COMMENT 'id',
data1 string COMMENT 'data1',
data2 string COMMENT 'data2'
)
partitioned by (ds string)
STORED BY 'com.aliyun.odps.TextStorageHandler'
WITH SERDEPROPERTIES ('odps.text.option.delimiter'='\t')
LOCATION 'oss://id:key@endpoint/bucketname/oss_dir/';
相关文章