大数据上云那些事儿:(一)上云工具的选择

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 阿里云•数加上如果要实现大数据上云,可选的工具有以下几种(如下图所示),主要分为批量加载工具和实时采集工具两大类。工具这么多,那么我应该选择哪一个呢? 首先第一就是确定您的业务场景对实时性的要求。 a) 如果是实时性要求不高,则采用批量加载类工具,定时完成批量数据加载即可。

阿里云•数加上如果要实现大数据上云,可选的工具有以下几种(如下图所示),主要分为批量加载工具和实时采集工具两大类。工具这么多,那么我应该选择哪一个呢?
_1

首先第一就是确定您的业务场景对实时性的要求。
a) 如果是实时性要求不高,则采用批量加载类工具,定时完成批量数据加载即可。比如离线数仓,离线BI数据分析等场景。
b) 如果对实时性要求很高,数据一产生就需要即时看到分析结果,则采用实时采集类工具。如实时监控,实时分析,实时大屏等场景。
不过也有例外,在某些离线场景下有时候也会采用实时采集工具来完成数据上云。比如每天都有海量数据(可能TB级别甚至更多)需要同步,批量定时同步的话同步时间过长,无法满足业务要求,此时可以考虑采用实时采集工具来完成数据上云,以满足对同步时间的要求。

离线工具适用场景说明:

  1. 数据集成(DI)是数加提供的官方同步工具,分为界面向导模式和脚本模式两种开发模式。如果您是离线数据加工场景,那么优先推荐选择它。它可以完成阿里云云上数据到MaxCompute的大部分离线场景。比如常见的:
    a) 从RDS/DRDS同步到MaxCompute

b) 从ECS(自建MySQL/Oracle等)同步到MaxCompute
c) 从ECS(文件)同步到MaxCompute
d) 从OSS/OTS等阿里云产品同步到MaxComdpute
e) 数据在IDC机房,并且企业已经搭建阿里云物理专线连接,此时可以通过数据集成(DI)自定义调度资源的方式完成数据上云。
注:以上均为举例,不一定覆盖所有情况,DI支持的数据源请参考:https://help.aliyun.com/document_detail/53008.html

  1. DataX(开源)阿里开源的离线数据同步工具,可以理解它是数据集成(DI)的单机版实现,它与数据集成(DI)所支持的数据源是基本相同的。但有些时候因为网络、安全或者自定义需求等情况,无法用数据集成(DI)来完成企业的需求,此时可以考虑使用DataX来完成。比如:
    a) 数据在本地IDC机房,IDC的机器无法添加为数据集成(DI)的执行Agent

b) 企业期望对同步任务资源占用有完全的控制权(包括但不限于内存占用量、完全掌控同步流控等);
c) 企业具有一定的系统运维能力,期待脚本化、定制化的数据上云策略。比如本地环境已有任务调度系统,期待使用此调度系统触发执行同步作业;
d) 数据上云是临时性的、一次性的操作;

  1. DI On Hadoop适用于企业已有Hadoop集群,且对数据同步性能有很高的要求,此时用DI On Hadoop工具来完成数据上云。它可以充分的利用现有Hadoop 集群的能力,来快速完成从Hadoop 到 MaxCompute的数据迁移或上云。但它对网络情况也有一定要求,它要求Hadoop集群的机器必须可以通过公网或者专线的方式,能过连通MaxCompute。
  2. MaxCompute客户端中有Tunnel 命令,它适用于原始数据存在在文件,临时或一次性上传一些数据到MaxCompute。
  3. Tunnel SDK :在上述工具均无法满足需求时,可以通过自己调用Tunnel SDK实现更加灵活自由的数据上传需求。比如:
    a) 数据下载过程中,需要根据数据内容不同,分发到不同的数据库或分库分表。

实时采集工具适用场景说明:

  1. Logstash / Flume / Flunted 为3个开源的数据采集工具,阿里云分别为其提供了写入DataHub的插件,可以实现数据采集后输出到DataHub。适用于大部分文件类数据采集类需求,如行为日志,系统日志等。选择这3个,主要取决于用户自己的技术倾向。
    Logstash 为JRuby开发,Flume为Java开发,Flunted为Ruby开发。三者性能上来看Flunted略差,Logstash和Flume应该说不分仲伯吧,暂无明确数据对比。
  2. Log Service(日志服务)是阿里云提供的针对日志类数据的一站式服务,它可以完成采集日志信息,并将其投递给各种下游产品,其中就包括Stream Compute 和 MaxCompute。它与Logstash / Flume / Flunted 所完成的场景类似,选择哪个主要取决于客户的使用习惯或技术倾向,暂无比较明显的区别。
  3. DTS(数据传输服务)是阿里云提供的云上数据的实时传输服务,适用于采集RDS(MySQL)的实时更新数据,并将其传输给DataHub或MaxCompute。如果你有云上RDS(MySQL)数据需要上传到大数据平台,那么可以选择它。不过它采集的是binlog信息,到MaxCompute后还需对数据做合并和预处理。
  4. OGG(Oracle GoldenGate)主要适用于源库为Oracle,可以通过其采集实时更新数据到DataHub中。一般在公共云上比较少见,但在专有云即线下机房比较常见。

整理各个工具的官网及使用说明供大家参考:

  1. 数据集成(DI)官网:https://www.aliyun.com/product/cdp
    使用文档:https://help.aliyun.com/document_detail/47677.html
  2. DataX源码:https://github.com/alibaba/DataX
    快速开始:https://github.com/alibaba/DataX/wiki/Quick-Start

各个数据源配置:https://github.com/alibaba/DataX/wiki/DataX-all-data-channels

  1. DI On Hadoop 暂无,目前还未完全开放。
  2. MaxCompute 客户端 安装:https://help.aliyun.com/document_detail/27971.html
    Tunnel命令说明:https://help.aliyun.com/document_detail/27833.html
  3. Tunnel SDK 使用说明:https://help.aliyun.com/document_detail/27837.html
    Tunnel SDK 上传下载示例:https://help.aliyun.com/document_detail/27842.html
  4. Logstash 官网帮助文档:https://www.elastic.co/guide/en/logstash/2.3/index.html
    阿里云Logstash教程文档:https://help.aliyun.com/document_detail/47451.html
  5. Flume 插件开源网站:https://github.com/aliyun/aliyun-maxcompute-data-collectors/tree/master/flume-plugin
  6. Flunted 官方文档http://docs.fluentd.org/v0.12/articles/quickstart
    阿里云Flunted教程文档:https://help.aliyun.com/document_detail/47450.html
  7. Log Service 官网:https://www.aliyun.com/product/sls
    Log Service 数据采集:https://help.aliyun.com/document_detail/28981.html

Log Service 投递 MaxCompute:https://help.aliyun.com/document_detail/29001.html
Log Service StreamCompute实时消费:https://help.aliyun.com/document_detail/47334.html

  1. DTS 官网:https://www.aliyun.com/product/dts
    DTS 采集到MaxCompute:https://help.aliyun.com/document_detail/44547.html

DTS 采集到Datahub:https://help.aliyun.com/document_detail/45214.html

  1. OGG 阿里云使用教程:https://help.aliyun.com/document_detail/47452.html
相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
24天前
|
存储 分布式计算 数据可视化
大数据常用技术与工具
【10月更文挑战第16天】
82 4
|
3月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute 生态系统中的数据集成工具
【8月更文第31天】在大数据时代,数据集成对于构建高效的数据处理流水线至关重要。阿里云的 MaxCompute 是一个用于处理大规模数据集的服务平台,它提供了强大的计算能力和丰富的生态系统工具来帮助用户管理和处理数据。本文将详细介绍如何使用 DataWorks 这样的工具将 MaxCompute 整合到整个数据处理流程中,以便更有效地管理数据生命周期。
120 0
|
14天前
|
机器学习/深度学习 搜索推荐 大数据
大数据与教育:学生表现分析的工具
【10月更文挑战第31天】在数字化时代,大数据成为改善教育质量的重要工具。本文探讨了大数据在学生表现分析中的应用,介绍学习管理系统、智能评估系统、情感分析技术和学习路径优化等工具,帮助教育者更好地理解学生需求,制定个性化教学策略,提升教学效果。尽管面临数据隐私等挑战,大数据仍为教育创新带来巨大机遇。
|
1月前
|
存储 分布式计算 大数据
大数据的工具都有哪些?
【10月更文挑战第9天】大数据的工具都有哪些?
53 1
|
2月前
|
存储 分布式计算 Hadoop
大数据分析的工具
大数据是一个含义广泛的术语,是指数据集,如此庞大而复杂的,他们需要专门设计的硬件和软件工具进行处理。该数据集通常是万亿或EB的大小。这些数据集收集自各种各样的来源:传感器,气候信息,公开的信息,如杂志,报纸,文章。大数据产生的其他例子包括购买交易记录,网络日志,病历,军事监控,视频和图像档案,及大型电子商务。
41 8
|
1月前
|
分布式计算 Hadoop 数据挖掘
6个常用大数据分析工具集锦
6个常用大数据分析工具集锦
50 0
|
2月前
|
分布式计算 Hadoop 大数据
28个大数据的高级工具汇总
文章汇总了28种大数据高级工具,并对Hadoop、Spark、Storm等关键技术进行了详细介绍,同时还提供了获取大数据集的多个资源链接。
70 0
|
5月前
|
存储 分布式计算 Hadoop
Spark和Hadoop都是大数据处理领域的重要工具
【6月更文挑战第17天】Spark和Hadoop都是大数据处理领域的重要工具
178 59
|
4月前
|
存储 SQL 数据挖掘
GCP大数据分析工具:BigQuery使用指南
【7月更文挑战第15天】BigQuery作为GCP中的一项重要大数据分析工具,以其高性能、可扩展性和易用性,在数据仓库、实时数据分析、日志分析等多个领域发挥着重要作用。通过本文的介绍,读者可以了解到BigQuery的基本功能、使用场景以及配置和使用方法,为后续的数据分析和业务决策提供支持。希望读者能够充分利用BigQuery的强大能力,挖掘数据背后的价值,为企业的发展贡献力量。
|
4月前
|
消息中间件 分布式计算 大数据
大数据处理工具及其与 Kafka 的搭配使用
大数据处理工具及其与 Kafka 的搭配使用
65 2