【大数据干货】数据进入阿里云数加-大数据计算服务MaxCompute(原ODPS)的N种方式

简介: 想用阿里云大数据技术服务MaxCompute对于大多数人首先碰到的问题就是数据如何迁移到MaxCompute中。按照数据迁移场景大致可以分为批量数据、实时数据、本地文件、日志文件等的迁移下面我们针对每种场景分别介绍几种常用方案。

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

想用阿里云大数据计算服务(MaxCompute),对于大多数人首先碰到的问题就是数据如何迁移到MaxCompute中。按照数据迁移场景,大致可以分为批量数据、实时数据、本地文件、日志文件等的迁移,下面我们针对每种场景分别介绍几种常用方案。

快速、完全托管的TB/PB级数据仓库解决方案,向用户提供了完善的数据导入方案以及多种经典的分布式计算模型,能够更快速的解决用户海量数据计算问题,有效降低企业成本,并保障数据安全。


1ee238b9c67b687d2cdcedfe61cd9b8c856f2b45

一、   异构数据源批量数据迁移到MaxCompute

1、通过大数据开发套件(DataIDE)- 数据开发做数据同步

                         i.    开通大数据开发套件,进入项目管理-数据源管理中将数据源配置到DataIDE中,并保证连通性。目前MaxCompute支持的数据源如下图:

e60ce9bb20d74028adfb3399665beae45f57264e

MaxCompute产品地址:https://www.aliyun.com/product/odps


                       ii.创建数据同步任务,配置数据映射

31a89625fb1ec6bba67a0f6b492f3599e435e7c2

 

a82a505fb42764a29bbefc5e9b782ed1dede5881

                    iii.保存后提交运行,可以通过执行日志监控执行成功与否。

feb157c187947ff37f70969a9973a4aa085b9099

适用场景:这种方式通过界面向导逐步配置,操作简单容易上手,对于大数据开发套件(DataIDE)已经支持的数据源之间同步数据非常方便,但是要确保数据源连通性,同时对数据同步的速度也有限制,最高10M/s


2、通过DataX实现数据同步

DataX 是阿里巴巴集团内被广泛使用的异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、MaxCompute(原ODPS)、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。

DataX本身作为离线数据同步框架,采用Framework + plugin架构构建。将数据源读取和写入抽象成为Reader/Writer插件,纳入到整个同步框架中。目前已经有了比较全面的插件体系,主流的RDBMS数据库、NOSQL、大数据计算系统都已经接入。DataX目前支持数据如下:

8d55ef023432ae6409d7e7f03bea026ca7006de3

使用示例(从MySQL读取数据 写入ODPS):

                         i.直接下载DataX工具包,下载后解压至本地某个目录,修改权限为755。下载地址:http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz

                      ii.创建作业配置文件

python datax.py -r mysqlreader -w odpswriter

                    iii.根据配置文件模板填写相关选项(源和目标数据库的用户名、密码、URL、表名、列名等),如下图:

f5cd77348ef79a2a2bf7f8fcc4a4d15dacbff69d

                     iv.              启动DataX同步任务

python datax.py ./mysql2odps.json

适用场景:DataX通过plugin的方式实现对异构数据源的支持,支持的数据源种类更丰富,对于暂不支持的数据源用户也可以自己扩展plugin实现。另外这种方式通过配置文件做源和目标的映射非常灵活,同时也很容易跟其他的任务做集成。

 

3、通过Sqoop实现数据同步

请参考https://github.com/aliyun/aliyun-odps-sqoop

 


二、本地文件上传到MaxCompute

1、通过大数据开发套件(DataIDE)导入本地文件

                         i.登陆“大数据开发套件-数据开发”,点击“导入-导入本地数据”

773a409c6409be198c32de197d31669da7479a72

                       ii.               配置分隔符、数据文件字符编码等

55cbfa6cb147d96fb3ccbac4e8379aa16d5bfbc0

                    iii.选择目标表后即可导入

fff616442e12063da05d609c42e23be9c5004587

适用场景:这种方式适用于一些简单场景验证,通过向导方式上传本地文件简单易用,但是对于文件大小限制不能超过10M


2、通过MaxCompute客户端上传数据

                         i.下载MaxCompute客户端

下载路径:http://repo.aliyun.com/download/odpscmd/0.24.1/odpscmd_public.zip

                       ii.解压并配置客户端

解压后进入到conf目录,用编辑器打开odps_config.ini,配置相应的access_id、access_key、project_name等。

70f560881aec3ab4e522ccf830043ed66ae32332

                    iii.运行MaxCompute客户端

odpscmd –config=../conf/odps_config.ini

cd057f8221610d811aca436654e078d42e2f0199

                     iv.通过tunnel 可以上传下载数据,详情可以通过tunnel help查看帮助


                       v.通过tunnel upload上传本地文件到MaxCompute,详情可以通过tunnel help upload查看帮助

7986a2ade4c0443ee2e475196bd7f1fa5218e414

命令示例:

tunnel upload ./data.txt test_tunnel -fd "," -rd "\n";

解读:

data.txt – 数据文件,导入时注意指定路径

test_tunnel – MaxCompute中数据表

-fd "," – 指定逗号为数据列分隔符

-rd "\n" – 指定换行符为数据行分隔符

 

命令行使用请参考

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

另外有个性化需求的也可以通过Tunnel SDK的方式做数据同步,详见:https://help.aliyun.com/document_detail/27837.html

 

适用场景:通过Tunnel上传数据适合数据文件大小适中的场景(比如单表上百GB可能会由于数据本身或者网络不稳定导致数据导入失败),并且可以指定线程数等来提升效率,充分发挥硬件性能。


三、   实时数据归档到MaxCompute

1.通过DataHub将流式数据归档到MaxCompute

用户通过创建DataHub Connector,指定相关配置,即可创建将Datahub中流式数据定期归档的同步任务。请参考https://datahub.console.aliyun.com/intro/advancedguide/connector.html

 

2.通过DTS将数据实时同步到MaxCompute

目前实时同步只能支持RDS MySQL实例,暂不支持其他数据源类型。请参考https://help.aliyun.com/document_detail/26614.html

 

3.通过OGG将数据实时同步到MaxCompute

这种方式要通过OGG将实时数据先同步到DataHub,再在DataHub中通过创建DataHub Connector将数据实时归档到MaxCompute。请参考https://datahub.console.aliyun.com/intro/guide/plugins/ogg.html

 

四、日志数据同步到MaxCompute

目前日志类型的数据实时同步到MaxCompute的需求也非常强。市面上也有很多成熟的日志收集工具,比如Fluentd、Logstash。日志数据实时同步到MaxCompute的方案也是要借助于这些成熟的日志收集工具,将日志数据同步到DataHub中后,再通过DataHub将数据归档到MaxCompute,数据链路:

9f9e6a2aa543ab30be325692a0f05a2eb26e881f

1.通过Logstash采集日志数据到MaxCompute

请参考https://help.aliyun.com/document_detail/47451.html

归档到Max Compute https://help.aliyun.com/document_detail/47453.html

2.通过Fluentd采集日志数据到MaxCompute

请参考https://help.aliyun.com/document_detail/47450.html

归档到Max Compute https://help.aliyun.com/document_detail/47453.html


相关数据分析文章:

云数据,大计算—海量日志数据分析与应用


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
6天前
|
分布式计算 DataWorks 大数据
MaxCompute产品使用合集之odps.sql.mapper.split.size和odps.stage.mapper.split.size这两个参数的区别是什么
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6天前
|
SQL 机器学习/深度学习 分布式计算
MaxCompute产品使用合集之在ODPS中,如何将日期时间与8小时进行拼接
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6天前
|
SQL 分布式计算 DataWorks
MaxCompute产品使用合集之odps的表是否支持修改
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6天前
|
SQL 分布式计算 运维
MaxCompute操作报错合集之遇到报错:ODPS-0110061: Failed to run ddltask - Modify DDL meta encounter exception该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
6天前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
|
6天前
|
分布式计算 DataWorks NoSQL
DataWorks操作报错合集之从MongoDB同步数据到MaxCompute(ODPS)时,出现报错,该怎么解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
DataWorks操作报错合集之从MongoDB同步数据到MaxCompute(ODPS)时,出现报错,该怎么解决
|
8天前
|
分布式计算 大数据 Java
MaxCompute产品使用合集之在datawoks的datastudio和odpscmd里执行时间没有问题,但是用jdbc连接大数据计算MaxCompute获取getdate()时间就不对,该怎么办
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
11天前
|
存储 负载均衡 安全
使用阿里云解决云上数据保存的挑战
在数字化时代,数据成为企业重要资产,但快速增长的数据管理变得复杂。为此,作者选择了阿里云作为云上数据存储解决方案。阿里云凭借其高性能、高可靠和高安全的云存储服务,如对象存储OSS、文件存储NAS等,解决了数据保存问题。此外,阿里云的多副本和多机房策略确保了数据的可靠性和安全性,同时,丰富的存储产品线满足了不同场景的需求,帮助企业降低存储成本并提高数据访问效率。通过实施数据迁移、访问和备份恢复,作者成功优化了数据管理并期待未来与阿里云的更多合作。
42 8
|
19天前
|
SQL 运维 关系型数据库
阿里云DTS踩坑经验分享系列|数据不一致修复大法
阿里云数据传输服务DTS在帮助用户迁移数据、同步数据时,在某些复杂场景下会出现源库与目标库数据不一致的问题,造成数据错误,给用户带来困扰。由于数据不一致的问题很难完全避免,为了及时修复不一致的数据,DTS产品推出数据订正功能,保障用户在同步\迁移数据时的数据一致性。本文介绍了产生数据不一致的一些典型场景,并重点阐述了如何使用DTS数据订正功能来修复不一致的数据。
252 4
|
6天前
|
机器学习/深度学习 人工智能 DataWorks
人工智能平台PAI产品使用合集之在使用行调用时遇到一直卡在ps job的问题,并且无法在DataWorks上查看到相关日志,是什么导致的
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。

热门文章

最新文章

相关产品

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