自建Hadoop迁移阿里云MaxCompute实践-持续更新2018/9/13

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: Hadoop迁移MaxCompute的文章教程应该不少,比如前不久刚刚发布的《Hadoop数据迁移到MaxCompute最佳实践》https://help.aliyun.com/video_detail/88429.

Hadoop迁移MaxCompute的文章教程应该不少,比如前不久刚刚发布的

《Hadoop数据迁移到MaxCompute最佳实践》https://help.aliyun.com/video_detail/88429.html  

理论与实践:如何从Hadoop迁移到MaxCompute https://yq.aliyun.com/articles/639294

https://yq.aliyun.com/articles/637482


但用户实际迁移还是会遇到一些问题,我会定期整理一些数据迁移和脚本迁移遇到的问题及解决方案,帮助企业快速拥有阿里巴巴同款数据仓库,构建自己的数据中台,并开展数据业务;


网络问题:

1、自建机房如何连通阿里云MaxCompute

方案:通过物理专线访问VPC中的云服务  https://help.aliyun.com/document_detail/57195.html


2、MaxCompute 经典网络和VPC访问配置

方案:参考 https://help.aliyun.com/document_detail/34951.html

Region名称 所在城市 开服状态 VPC网络Endpoint VPC网络Tunnel Endpoint
华东1 杭州 已开服 http://service.cn.maxcompute.aliyun-inc.com/api http://dt.cn-hangzhou.maxcompute.aliyun-inc.com
华东2 上海 已开服 http://service.cn.maxcompute.aliyun-inc.com/api http://dt.cn-shanghai.maxcompute.aliyun-inc.com
华北2 北京 已开服 http://service.cn.maxcompute.aliyun-inc.com/api http://dt.cn-beijing.maxcompute.aliyun-inc.com

3、数据同步慢

方案:建议走VPC专线和经典网络,公网比较慢;另外,如果通过tunnel上传,命令行添加参数 -threads 10 ,数据切片;


数据同步问题:

1、 HDFS-MaxCompute 

方案:自己部署DataX或使用阿里云数据集成(官方版本DataX),DataX还支持DataX-On-Hadoop(提工单申请)

https://yq.aliyun.com/articles/638606

https://help.aliyun.com/document_detail/47677.html


2、同步数据时分区字段里面有月份需要截取

方案:shell+datax自定义资源组(除华东2提工单),在shell中对月份进行处理,如/user/hive/ods/hivetable/op_year=2018/op_month=8/op_day=1



任务迁移问题:

1、每天几百个任务如何批量导入?

方案:使用Dataworks任务同步工具(内测,提工单)


SQL问题:


1、Hadoop库如何映射MaxCompute

方案:简单的话是一对一,或者可以按照合适的纬度(比如业务部门)重新划分整合后再对应到Dataworks/MaxCompute的多个projects,这样方便后续管理。


2、字段类型

兼容date类型

方案:date类型需要set odps.sql.type.system.odps2=true;set odps.sql.hive.compatible=true;

其他需要set flag的字段类型参考https://help.aliyun.com/document_detail/27821.html


3、系统参数

兼容CURRENT_TIMESTAMP

方案:set odps.sql.type.system.odps2=true;set odps.sql.hive.compatible=true;


兼容${hiveconf:ymd}

方案:替换成${bdp.system.bizdate}



4、函数

兼容to_date(SUBSTR('2018-08-24 16:58:21.284',1,10),'yyyy-mm-dd')

方案:需要改写,select cast(cast('2018-08-24 16:58:21.284' as timestamp) as date); 



兼容from_unixtime(unix_timestamp(cast(ds as string),'yyyymmdd'),'yyyy-mm-dd')

方案:ds是date类型,需要set odps.sql.type.system.odps2=true;set odps.sql.hive.compatible=true;


grouping sets/rollup/cube

方案:MaxCompute近期开放


5、表达式

兼容字段值为null时比较大小

方案:set odps.sql.type.system.odps2=true;set odps.sql.hive.compatible=true;


兼容string 与 数值类型直接关联

方案:set odps.sql.type.system.odps2=true;set odps.sql.hive.compatible=true;


兼容map() cnt

方案:null as cnt


插入动态分区数据为空,INSERT OVERWRITE TABLE ods_log partition (ymd) select 20180910 as ymd from ods_log

方案:套一层select,20180910 as ymd 是个常量,会被当成静态分区来处理,改写为INSERT OVERWRITE TABLE ods_log partition (ymd) select * from (select 20180910 as ymd from ods_log) t


DML、DDL区别

方案:https://help.aliyun.com/document_detail/54051.html


与Hive数据类型映射表

参考:https://help.aliyun.com/document_detail/54081.html


相关问题:

1、如何连接Tableau和BDP、QuickBI

方案:通过MaxCompute Lightning (公测),走PostgreSql协议;



未完待续...

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
1月前
|
SQL 分布式计算 关系型数据库
阿里云E-MapReduce Trino专属集群外连引擎及权限控制踩坑实践
本文以云厂商售后技术支持的角度,从客户的需求出发,对于阿里云EMR-Trino集群的选型,外连多引擎的场景、Ldap以及Kerberos鉴权等问题进行了简要的实践和记录,模拟客户已有的业务场景,满足客户需求的同时对过程中的问题点进行解决、记录和分析,包括但不限于Mysql、ODPS、Hive connector的配置,Hive、Delta及Hudi等不同表格式读取的兼容,aws s3、阿里云 oss协议访问异常的解决等。
|
2月前
|
存储 监控 安全
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
为了提供更好的日志数据服务,360 企业安全浏览器设计了统一运维管理平台,并引入 Apache Doris 替代了 Elasticsearch,实现日志检索与报表分析架构的统一,同时依赖 Doris 优异性能,聚合分析效率呈数量级提升、存储成本下降 60%....为日志数据的可视化和价值发挥提供了坚实的基础。
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
718 2
|
28天前
|
SQL 存储 API
阿里云实时计算Flink的产品化思考与实践【下】
本文整理自阿里云高级产品专家黄鹏程和阿里云技术专家陈婧敏在 FFA 2023 平台建设专场中的分享。
110755 86
阿里云实时计算Flink的产品化思考与实践【下】
|
2月前
|
人工智能 数据管理 大数据
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
34 2
|
23天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
216 1
|
1月前
|
弹性计算 网络协议 关系型数据库
网络技术基础阿里云实验——企业级云上网络构建实践
实验地址:<https://developer.aliyun.com/adc/scenario/65e54c7876324bbe9e1fb18665719179> 本文档指导在阿里云上构建跨地域的网络环境,涉及杭州和北京两个地域。任务包括创建VPC、交换机、ECS实例,配置VPC对等连接,以及设置安全组和网络ACL规则以实现特定服务间的互访。例如,允许北京的研发服务器ECS-DEV访问杭州的文件服务器ECS-FS的SSH服务,ECS-FS访问ECS-WEB01的SSH服务,ECS-WEB01访问ECS-DB01的MySQL服务,并确保ECS-WEB03对外提供HTTP服务。
|
1月前
|
云安全 人工智能 安全
|
1月前
|
弹性计算 算法 应用服务中间件
倚天使用|Nginx性能高27%,性价比1.5倍,基于阿里云倚天ECS的Web server实践
倚天710构建的ECS产品,基于云原生独立物理核、大cache,结合CIPU新架构,倚天ECS在Nginx场景下,具备强大的性能优势。相对典型x86,Http长连接场景性能收益27%,开启gzip压缩时性能收益达到74%。 同时阿里云G8y实例售价比G7实例低23%,是Web Server最佳选择。

相关产品

  • 云原生大数据计算服务 MaxCompute