MaxCompute_2_MaxCompute数据迁移文档

摘要: 乍一看标题会以为是不是作者写错了怎么会有从MaxCompute到MaxCompute迁移数据的场景呢在实际使用中已经有客户遇到了这种场景比如两个网络互通的专有云环境之间数据迁移、公共云数加DataIDE上两个云账号之间数据迁移、还有网络不通的两个MaxCompute项目数据迁移等等下面我们逐个场景介绍。

免费开通大数据服务:https://www.aliyun.com/product/odps

乍一看标题会以为是不是作者写错了,怎么会有从MaxCompute到MaxCompute迁移数据的场景呢?在实际使用中已经有客户遇到了这种场景,比如:两个网络互通的专有云环境之间数据迁移、公共云数加DataIDE上两个云账号之间数据迁移、还有网络不通的两个MaxCompute项目数据迁移等等,下面我们逐个场景介绍。

场景一:两个网络互通的专有云MaxCompute环境之间数据迁移

这种场景需要先从源MaxCompute中导出元数据DDL,在目标MaxCompute中初始化表,然后借助DataX工具完成数据迁移,步骤如下:

1.安装配置ODPS客户端
https://help.aliyun.com/document_detail/27804.html

2.安装配置Datax客户端

下载DataX工具包,下载后解压至本地某个目录,修改权限为755,进入bin目录,即可运行样例同步作业:

$ tar zxvf datax.tar.gz 
$ sudo chmod -R 755 {YOUR_DATAX_HOME} 
$ cd  {YOUR_DATAX_HOME}/bin 
$ python datax.py ../job/job.json

3.表结构迁移

3.1 从ODPS中导出某个表的建表语句,可用来测试数据同步。

export table table_name;
DDL:create table IF NOT EXISTS ` date_timestame ` (`id` datetime comment "") partitioned by(pt string comment "");
alter table ` date_timestame ` add IF NOT EXISTS partition(dt='20161001');
alter table ` date_timestame ` add IF NOT EXISTS partition(dt='20161101');
alter table ` date_timestame ` add IF NOT EXISTS partition(dt='20161201');
alter table ` date_timestame ` add IF NOT EXISTS partition(dt='20170101');

3.2 从ODPS批量导出建表语句。

export <projectname> <local_path>;

3.3 将建表语句在目标ODPS的project下执行,即可完成表结构创建。

4.数据迁移

从源ODPS读取数据写入到目标ODPS,先按照“表结构迁移”在目标ODPS创建一个表,做DataX数据同步验证。

4.1 、创建作业的配置文件(json格式)

可以通过命令查看配置模板: python datax.py -r {YOUR_READER} -w {YOUR_WRITER}

odps2odps.json样例(填写相关参数,odpsServer/ tunnelServer要改成源/目标ODPS配置):

{"job": {"setting": {"speed": {"channel": 1}},"content": [{"reader": {"name": "odpsreader","parameter": {"accessId": "${srcAccessId}","accessKey": "${srcAccessKey}","project": "${srcProject}","table": "${srcTable}","partition": ["pt=${srcPartition}"],"column": [ "*" ],"odpsServer": "http://service.odpsstg.aliyun-inc.com/stgnew","tunnelServer": "http://tunnel.odpsstg.aliyun-inc.com" }},"writer": {"name": "odpswriter","parameter": {"accessId": "${dstAccessId}","accessKey": "${dstAccessKey}","project": "${dstProject}","table": "${dstTable}","partition": "pt","column": [ "*" ],"odpsServer": "http://service.odpsstg.aliyun-inc.com/stgnew","tunnelServer": "http://tunnel.odpsstg.aliyun-inc.com" }}}]}
}

4.2 启动DataX

$ cd {YOUR_DATAX_DIR_BIN} $ python datax.py ./odps2odps.json

同步结束,显示日志如下:

4.3 、批量迁移

根据导出的表结构批量生成DataX同步脚本,我会协助完成。

场景二:公共云数加DataIDE上两个云账号之间数据迁移

这个场景比较容易理解,比如一个公司很可能会申请多个云账号,假如每个云账号都开通了MaxCompute,很可能就会碰到两个云账号的MaxCompute之间数据迁移。公共云上都借助于DataIDE使用MaxCompute,而DataIDE上面本身提供了数据同步任务,我们通过配置数据同步任务即可很容易的完成数据迁移。执行步骤如下:

1、在其中一个MaxCompute项目空间项目管理中添加数据源,该数据源为另一个云账号的MaxCompute项目空间。

图片描述

2、在DataIDE数据开发中新建“数据同步”任务,如果目标数据源中表还不存在,可以点击“快速建ODPS表”,配置字段映射等。

图片描述

3、保存之后点击“测试运行”即可。

场景三:网络不通的两个MaxCompute环境数据迁移

这种场景做数据同步局限性比较大,由于网络不通,数据迁移必须要在中间落盘后再写入,所以当数据量比较大时要考虑磁盘容量、带宽等问题。步骤如下:

1、首先也是要先将源MaxCompute项目空间的DDL导出并在目标项目空间创建表,操作同场景一。

export <projectname> <local_path>;

2、安装配置ODPS客户端,操作同场景一。

3、通过ODPS CLT中的tunnel命令实现数据的导出。命令参考:

图片描述

Example:

tunnel download test_project.test_table log.txt

4、通过ODPS CLT中的tunnel命令实现数据的导入。命令参考:

图片描述

Example:

tunnel upload log.txt test_project.test_table

原文链接

干货好文,请关注扫描以下二维码:
图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/522069.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

printf 指针地址_指针搞都不懂,好意思说自己会C语言?

C语言面试必问知识点之「指针」一、指针相关概念指针与地址我们使用的计算机&#xff0c;系统为了更好地管理我们的内存&#xff0c;就为内存区的每一个字节都分配一个唯一编号&#xff0c;这就是“地址”。指针的实质就是地址&#xff0c;就是这一个个编号。指针变量变量在编译…

开启数据科学职业生涯的8个基本技巧

摘要&#xff1a; 本文为数据科学家开创数据科学事业铺平了道路。只要按照这八个小贴士来做&#xff0c;你就能让自己的职业生涯有一个良好的开端。Nick Bostrom&#xff08;译者注&#xff1a;Nick Bostrom是牛津大学哲学系的教授&#xff0c;是人类未来研究院的创始人和主任。…

WIAC上,华为展区都有点儿啥?

戳蓝字“CSDN云计算”关注我们哦&#xff01;谈及计算产业的变迁&#xff0c;我们了解到其先后经历了大型计算机、小型机/x86服务器阶段&#xff0c;并同时开创了敏捷、创新、体验好、省成本的Cloud 1.0以及Cloud 2.0时代&#xff0c;在云计算、5G与AI等创新技术不断叠加发展的…

【技术系列】浅谈GPU虚拟化技术(第一章)

摘要&#xff1a; GPU深度好文系列&#xff0c;阿里云技术专家分享 第一章 GPU虚拟化发展史 GPU的虚拟化发展历程事实上与公有云市场和云计算应用场景的普及息息相关。如果在10年前谈起云计算&#xff0c;大部分人的反应是“不知所云“。但是随着云计算场景的普及&#xff0c;概…

php如何删除数据mysql数据库_php如何删除数据库

php如何删除数据库1、首先查看有哪些数据库2、使用php删除test2<?php $dbhost localhost; // mysql服务器主机地址$dbuser root; // mysql用户名$dbpass root; // mysql用户名密码$conn mysqli_connect($dbhost, $dbuser, $dbpass);if(! $conn ){die(连接失败: . mysq…

Mac 神兵利器(二) 极简软件清单

摘要&#xff1a; 作为一个非常爱好折腾的Mac重度用户&#xff0c;在尝试了不少于50次重装系统经历以及安装了几乎所有软件类别的N多软件后&#xff0c;决定分享一下自己的软件清单。 选择app的三个原则&#xff1a; 尽量使用系统原生软件&#xff0c;比如日历&#xff0c;提醒…

解决 idea 运行 Spring Boot 项目启动慢的问题

同事win10启动Spring Boot工程只要3秒左右&#xff0c;我的启动要30秒。开始以为是CPU差距太大&#xff0c;后来才觉得不是这样&#xff01; 解决方案 hostname命令查看自己的 hostname 注意修改 hosts 文件时&#xff0c;ip 与域名之间要换成两个 tab 键。 127.0.0.1 PC-2…

亚马逊首席科学家李沐「实训营」国内独家直播,马上报名 !

开学了&#xff0c;别人家的学校都开始人工智能专业的学习之旅了&#xff0c;你呢&#xff1f;近年来&#xff0c;国内外顶尖科技企业的 AI 人才抢夺战愈演愈烈。华为开出200万年薪吸引 AI 人才&#xff0c;今年又有 35 所高校新增人工智能本科专业&#xff0c;众多新生即将开展…

Windows Server Version 1709 管理之入门篇

摘要&#xff1a; 相信有部分同学们会有这样的体验&#xff0c;在公有云上购买了Windows Server Version 1709数据中心版的虚拟机&#xff0c;通过远程连接进去之后&#xff0c;里面全是黑乎乎的一个命令行&#xff0c;其它啥也没有。这&#xff0c;一脸懵懂啊。 相信有部分同学…

切面是异步还是同步操作‘_细说JS异步发展历程

知其然知其所以然&#xff0c;首先了解三个概念&#xff1a;1.什么是同步&#xff1f;所谓同步&#xff0c;就是在发出一个"调用"时&#xff0c;在没有得到结果之前&#xff0c;该“调用”就不返回。但是一旦调用返回&#xff0c;就得到返回值了。换句话说&#xff0…

数据科学家需要掌握的10项统计技术,快来测一测吧

摘要&#xff1a; 本文给出了数据科学应用中的十项统计学习知识点&#xff0c;相信会对数据科学家有一定的帮助。无论你是不是一名数据科学家&#xff0c;都不能忽视数据的重要性。数据科学家的职责就是分析、组织并利用这些数据。随着机器学习技术的广泛应用&#xff0c;深度学…

java获取mysql的自增列_java - MyBatis如何获取Mysql自增id

问 题INSERT INTO USER(name,age,address,loan_type)VALUES(#{name},#{age},#{address},#{loanType});user表中id自增&#xff0c;添加过一条数据后&#xff0c;可以得到主键id&#xff1b;DEBUG [main] - > Preparing: INSERT INTO USER(name,age,address,loan_type) VALUE…

hosts文件位置在哪里

C:\Windows\System32\drivers\etc\hosts

反转!2019程序员吸金榜来了,AI程序员刷爆了..

前两天在网上发现一个热门话题&#xff1a;“做开发一年&#xff0c;在北京月薪不到1万&#xff0c;有点迷茫。” 其中&#xff0c;这个回答我永远忘不了&#xff1a;在这短短的一条信息里&#xff0c;小编佩服不仅仅是毕业一年的AI程序员拿到年薪60万&#xff0c;而是这一番回…

前端详细设计文档怎么写_UI设计师简历应该怎么写?

像这种分享&#xff0c;常规开篇都应该说说当前的就业趋势啦&#xff0c;分析分析行业形势啦这类的但我不想按流程写行业不论什么时候分析&#xff0c;它都没好过&#xff0c;什么红利期什么风口&#xff0c;那更是从来没赶上过。但凡我能跟点风&#xff0c;我也不能到现在还没…

阿里云携领先SDN能力,亮相全球网络技术盛会ONS

摘要&#xff1a; 网络通讯届盛会Open Network Summit(ONS)于3月29日落下了帷幕。作为开源网络届首屈一指的世界性大会&#xff0c;今年在洛杉矶举办的ONSNA2018已经是第七年举办了。参会者囊括了来自电信运营商、云服务提供商、网络设备制造商、芯片厂商、网络软件开发商、研究…

容器开启数据服务之旅系列(一):Kubernetes如何解自建PostgreSQL运维之痛

摘要&#xff1a; 通过阿里云Kubernetes容器服务,开启你的数据服务之旅 &#xff08;一&#xff09;云上运维自建数据库之痛&#xff0c;使用容器服务自动恢复数据库postgresql实例 概述 本文为大家介绍一种容器化的数据服务 posgresql db on ACK&#xff0c;通过使用云盘自动挂…

今日头条技术架构分析

戳蓝字“CSDN云计算”关注我们哦&#xff01;今日头条创立于2012年3月&#xff0c;到目前仅4年时间。从十几个工程师开始研发&#xff0c;到上百人&#xff0c;再到200余人。产品线由内涵段子&#xff0c;到今日头条&#xff0c;今日特卖&#xff0c;今日电影等产品线。一、产品…

mysql图书管理数据库的三个关系模式_数据库 考虑如下关于图书馆的关系模式,用关系代数写出查询(数据库系统概念第六版6.14)...

贝尔梅尔娜美2019.03.15采纳率&#xff1a;60% 等级&#xff1a;39已帮助&#xff1a;91565人数据库系统的基本概念数据&#xff1a;实际上就是描述事物的符号记录。数据的特点&#xff1a;有一定的结构&#xff0c;有型与值之分&#xff0c;如整型、实型、字符型等。而数据…

dom文档对象手册_HTML5学习之DOM编程

DOM是Document Object Model的缩写&#xff0c;中文名称是文档对象模型。DOM是处理HTML页面的标准编程接口&#xff0c;【前端精选40G资料包赠送co&#xff0c;每日新闻资讯ding,每天进步一点点bb&#xff0c;小写英文为微信】DOM可被JavaScript用来读取、改变HTML的内容和结构…