本文为您介绍如何通过DataWorks的数据集成功能,迁移Oracle数据至MaxCompute。
前提条件
-
准备DataWorks环境
-
开通MaxCompute。
-
创建工作空间(本文以简单模式的工作空间为例)。
-
在DataWorks上创建业务流程。详情请参见创建业务流程。
-
-
准备Oracle环境
本文中的Oracle安装在云服务器ECS上,ECS具体配置如下。为了让网络互通,您需要给ECS配置公网IP,并且配置ECS的安全组规则放通Oracle数据库的常用端口1521。关于ECS安全组配置详情请参见修改安全组规则。
如上图所示,本文中的ECS规格为ecs.c5.xlarge,使用专有网络,区域为华东1(杭州)。
背景信息
本文需要使用DataWorks Oracle Reader读取Oracle中的测试数据,详情请参见Oracle Reader。
准备Oracle测试数据
-
进入Oracle图形化操作界面,新建表DTSTEST.GOOD_SALE,主要包括create_time、category、brand、buyer_id、trans_num、trans_amount、click_cnt这7列。
插入测试数据,本文中手动插入数据如下。
insert into good_sale values('28-12月-19','厨具','品牌A','hanmeimei','6','80.6','4'); insert into good_sale values('21-12月-19','生鲜','品牌B','lilei','7','440.6','5'); insert into good_sale values('29-12月-19','衣服','品牌C','lily','12','351.9','9'); commit;
-
插入数据后,执行如下语句查看表数据。
select * from good_sale;
通过DataWorks将数据从Oracle迁移至MaxCompute
-
登录DataWorks控制台,单击左侧导航栏的数据建模与开发 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发。
-
在数据开发页面创建目标表,用于接收从Oracle迁移的数据。
-
右键单击已创建的业务流程,选择新建表 > MaxCompute > 表。
-
在新建表页面,配置表的基本信息。
-
在表的编辑页面,单击DDL。
-
在DDL对话框,输入建表语句,单击生成表结构。
CREATE TABLE good_sale ( create_time string, category string, brand string, buyer_id string, trans_num bigint, trans_amount double, click_cnt bigint ) ;
在建表过程中,需要考虑Oracle数据类型与MaxCompute数据类型的映射,Oracle Reader支持的数据类型请参见类型转换列表。
-
单击提交到生产环境。
-
-
新建Oracle数据源,详情请参见配置Oracle数据源。
-
创建离线同步节点。
-
进入数据开发页面,右键单击指定业务流程,选择新建节点 > 数据集成 > 离线同步。
-
在新建节点对话框中,配置节点基本信息,并单击确认。
-
成功创建数据同步节点后,选择数据源为您刚刚添加的Oracle数据源,表为您刚刚创建的测试表格,选择同名映射。其它参数保持默认配置。
单击
图标运行代码。
-
您可以在运行日志查看运行结果。
-
验证结果
-
右键单击业务流程,选择新建节点 > MaxCompute > ODPS SQL。
-
在新建节点对话框中配置节点基本信息,并单击确认。
-
在ODPS SQL节点编辑页面输入如下语句。
--查看是否成功写入MaxCompute。 select * from good_sale;
-
单击
图标运行代码。
-
您可以在运行日志查看运行结果。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/158953.html