MaxCompute(原ODPS)开发入门指南——数据上云篇

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 根据《MaxCompute(原ODPS)开发入门指南——计量计费篇》的了解,大家清楚了MaxCompute可以做什么,计费模式如何,想必大家也开通了MaxCompute想进行一次POC,但是大家遇到第一个问题一定是我的数据如何上云?

MaxCompute(原ODPS)开发入门指南——数据上云篇

写在最前面

>>>进入了解更多>>>阿里云数加·MaxCompute大数据计算服务.

根据《MaxCompute(原ODPS)开发入门指南——计量计费篇》的了解,大家清楚了MaxCompute可以做什么,计费模式如何,想必大家也开通了MaxCompute想进行一次POC,但是大家遇到第一个问题一定是我的数据如何上云?

SQL Cost

可通过多种方式数据流入MaxCompute

MaxCompute(原ODPS)提供了多种通道数据可以流入MaxCompute,包括MaxCompute原生的Tunnel,以及阿里云体系内的Log、DataX和数据集成,以及开源生态中的Flume、Logstash和Fluentd。以下为大家一一道来,大家视各自情况进行选择。

① MaxCompute Tunnel命令

直接在MaxCompute客户端中使用Tunnel命令进行数据上传,数据在传输过程中都是加密传输的,适用于一次性批量数据导入。

注意的是每一次上传只支持数据上传到一个表或表的一个分区,有分区的表一定要指定上传的分区。

数据上传命令如下:

tunnel upload log.txt test\_project.test\_table/p1="b1",p2="b2";

如何配置客户端和使用命令:

  1. 下载并配置客户端
  2. Tunnel 命令导入数据
  3. 更多关于Tunnel upload命令

SQL Cost

② MaxCompute Tunnel SDK

通过 TUNNEL 提供的 SDK 自行编写 Java 工具。

关于如何利用 tunnel SDK 进行上传数据,下面也将通过场景介绍。场景描述:上传数据到 MaxCompute,其中,项目空间为”odps\_public\_dev”,表名为”tunnel\_sample\_test”,分区为”pt=20150801,dt=hangzhou”。

详细的Tunnel SDK案例教学

③ LOG(阿里云日志分析产品)

了解更多关于日志分析产品

日志服务(Log Service,简称 Log)是针对日志类数据的一站式服务,在阿里巴巴集团经历大量大数据场景锤炼而成。您无需开发就能快捷完成日志数据采集(Logtail)、消费、投递(LogShipper)以及查询分析(LogSearch)等功能,提升运维、运营效率,建立 DT 时代海量日志处理能力。

SQL Cost

通常情况下,在使用开源的产品时都需要自己写正则来进行日志采集和结构化,通过Log产品可以进行可视化取词来选择自己需要解析的字段值,同时也提供手工方式输入正则表达式,如下图:

SQL Cost

在大家场景中,尝尝需要将日志进行实时采集,然后归档到MaxCompute进行数据分析与挖掘,Log产品覆盖了: Nginx, Apache, Log4J ,Wordpress , Python, NodeJS, 分隔符 (Delimiter, 如 CSV、TSV 等格式)、logstash , ThinkPHP, IIS(Windows 平台,默认格式)/logstash等。

SQL Cost

大部分情况下日志数据在写入LogStore后的0.5~1个小时导入到MaxCompute,具体归档的帮助文档详见:>>>Log数据归档到MaxCompute

点击进入:更多关于Log产品使用指南

④ DTS-数据传输

数据传输(Data Transmission)服务DTS是阿里云提供的一种支持RDBMS(关系型数据库)、NoSQL、OLAP等多种数据源之间数据交互的数据服务。它提供了数据迁移、实时数据订阅及数据实时同步等多种数据传输能力。

  • 创建RDS for Mysql数据实时同步到MaxCompute,实现原理如下:

SQL Cost

如上图所示,整个同步过程分为两步:

  1. 全量初始化, 这个步骤将RDS MySQL中已经存在的全量数据初始化到MaxCompute中。对于同步的每个表,全量初始化的数据都会独立存储在MaxCompute中的全量基线表中,这个表的默认格式为:源表名\_base。例如表 t1,那么全量基线表在MaxCompute中存储的表名为:t1\_dts\_base。这个存储表名前缀可以根据需要变更,您可以在配置任务时,修改表在MaxCompute存储的名称。
  2. 增量数据同步,这个步骤将RDS MySQL产生的增量数据数据实时同步到MaxCompute中。并存储在增量日志表中,每个同步表对应一个增量日志表。增量日志表在MaxCompute中存储的表名的默认格式为:源表名\_log。这个存储表名前缀可以根据需要变更,您可以在配置任务时,修改表在MaxCompute存储的名称。
只支持表的同步,不支持其他非表对象如视图的同步。

建议大家可以尝试下使用DTS来做数据的增量同步。具体详细的操作文档详见:创建RDS到MaxCompute数据实时同步作业

⑤ 开源产品:Flume / Logstash / Fluentd

目前开源产品都是提供output插件将数据写入DataHub(目前免费公测中)再数据归档到MaxCompute上。如下图:

SQL Cost

个人觉得这几款开源产品与阿里云自研的Log日志分析产品在日志采集上类似,但是Flume、Logstash、Fluentd需要一定技术能力的同学方可快速上手,需要手动编写日志格式化的正则表达式,在这一点上,让一些新手趋之若鹜。大家可以考虑下 Log直接上手。
  • Apache Flume是一个分布式的、可靠的、可用的系统,可用于从不同的数据源中高效地收集、聚合和移动海量日志数据到集中式数据存储系统,支持多种Source和Sink插件。Apache Flume的Datahub Sink插件将日志数据实时上传到Datahub。
  • Logstash是一种分布式日志收集框架,非常简洁强大,经常与ElasticSearch,Kibana配置,组成著名的ELK技术栈,非常适合用来做日志数据的分析。 阿里云流计算为了方便用户将更多数据采集进入DataHub,提供了针对Logstash的DataHub Output/Input插件。
  • Fluentd也是大家经常接触到的分布式日志采集系统,该插件是基于Fluentd开发的输出插件,主要是将采集到的数据写入DataHub。该插件遵守Fluentd输出插件开发规范,安装方便,可以很方便地将采集得到的数据写到DataHub。

SQL Cost

[总结]三款产品都是不错的选择,需要根据个人使用习惯进行选择,我自己也习惯使用Logstash所以也写过一些真是case的文章 《构建网站日志实时运营大屏》,从日志采集-->Logstash采集-->DataHub技术栈。

⑥ DataX、数据集成(Data IDE数据采集)

之所以将DataX和Data IDE数据采集放在一起给大家介绍,是因为两者之间密不可分,但是又有着巨大差别。

  • DataX阿里巴巴集团内被广泛使用的离线数据同步工具/平台,目前已经开源DataX。如下图:

SQL Cost

  • Data IDE是基于MaxCompute之上的大数据开发套件,其中数据采集模块完美的支持了DataX的所有数据通道。

SQL Cost

【相同点】:Data IDE数据采集模块是基于DataX平台之前构建的可视化配置+调度系统,支持的数据通道完全一致。【不同点】:DataX需要自己本机或服务器上配置josn文件和自己编写crontab进行调度运维。

建议:大家直接使用 大数据开发套件-数据采集工具,因为大数据开发套件Data IDE提供了一整套的数据仓库工具解决方案,从数据采集到数据加工以及后续的调度运维等。关键是免费!免费!免费!

* 支持的数据通道:
数据源分类 数据源类型 抽取(Reader) 导入(Writer) 支持方式 支持类型
大数据存储 MaxCompute(对应数据源名称是 ODPS) 支持 支持 向导/脚本 阿里云
大数据存储 AnalyticDB(对应数据源名称ADS) 不支持 支持 向导/脚本 阿里云
关系型数据库 MySQL 支持 支持 向导/脚本 阿里云/自建
关系型数据库 SQL Server 支持 支持 向导/脚本 阿里云/自建
关系型数据库 PostgreSQL 支持 支持 向导/脚本 阿里云/自建
关系型数据库 Oracle 支持 支持 向导/脚本 自建
关系型数据库 DRDS 支持 支持 向导/脚本 阿里云
关系型数据库 DB2 支持 支持 脚本 自建
关系型数据库 达梦(对应数据源名称是 dm) 支持 支持 脚本 自建
关系型数据库 RDS for PPAS 支持 支持 脚本 阿里云
MPP HybridDB for MySQL 支持 支持 向导/脚本 阿里云
MPP HybridDB for PostgreSQL 支持 支持 向导/脚本 阿里云
非结构化存储 OSS 支持 支持 向导/脚本 阿里云
非结构化存储 HDFS 支持 支持 脚本 自建
非结构化存储 FTP 支持 支持 向导/脚本 自建
NoSql HBase 支持 支持 脚本 阿里云/自建
NoSql MongoDB 支持 支持 脚本 阿里云/自建
NoSql Memcache 不支持 支持 脚本 阿里云/自建Memcached
NoSql Table Store(对应数据源名称是OTS) 支持 支持 脚本 阿里云
NoSql LogHub 不支持 支持 脚本 阿里云
NoSql OpenSearch 不支持 支持 脚本 阿里云
NoSql Redis 不支持 支持 脚本 阿里云/自建
性能测试 Stream 支持 支持 脚本

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
14天前
|
存储 大数据 数据挖掘
【数据新纪元】Apache Doris:重塑实时分析性能,解锁大数据处理新速度,引爆数据价值潜能!
【9月更文挑战第5天】Apache Doris以其卓越的性能、灵活的架构和高效的数据处理能力,正在重塑实时分析的性能极限,解锁大数据处理的新速度,引爆数据价值的无限潜能。在未来的发展中,我们有理由相信Apache Doris将继续引领数据处理的潮流,为企业提供更快速、更准确、更智能的数据洞察和决策支持。让我们携手并进,共同探索数据新纪元的无限可能!
59 11
|
19天前
|
存储 分布式计算 大数据
MaxCompute 数据分区与生命周期管理
【8月更文第31天】随着大数据分析需求的增长,如何高效地管理和组织数据变得至关重要。阿里云的 MaxCompute(原名 ODPS)是一个专为海量数据设计的计算服务,它提供了丰富的功能来帮助用户管理和优化数据。本文将重点讨论 MaxCompute 中的数据分区策略和生命周期管理方法,并通过具体的代码示例来展示如何实施这些策略。
51 1
|
24天前
|
分布式计算 资源调度 Hadoop
Hadoop入门基础(五):Hadoop 常用 Shell 命令一网打尽,提升你的大数据技能!
Hadoop入门基础(五):Hadoop 常用 Shell 命令一网打尽,提升你的大数据技能!
|
24天前
数据平台问题之在数据影响决策的过程中,如何实现“决策/行动”阶段
数据平台问题之在数据影响决策的过程中,如何实现“决策/行动”阶段
|
26天前
|
分布式计算 搜索推荐 物联网
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
|
26天前
|
人工智能 分布式计算 架构师
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
|
27天前
|
存储 监控 安全
大数据架构设计原则:构建高效、可扩展与安全的数据生态系统
【8月更文挑战第23天】大数据架构设计是一个复杂而系统的工程,需要综合考虑业务需求、技术选型、安全合规等多个方面。遵循上述设计原则,可以帮助企业构建出既高效又安全的大数据生态系统,为业务创新和决策支持提供强有力的支撑。随着技术的不断发展和业务需求的不断变化,持续优化和调整大数据架构也将成为一项持续的工作。
|
11天前
|
SQL 分布式计算 大数据
代码编码原则和规范大数据开发
此文档详细规定了SQL代码的编写规范,包括代码的清晰度,执行效率,以及注释的必要性。它强调所有SQL关键字需统一使用大写或小写,并禁止使用select *操作。此外,还规定了代码头部的信息模板,字段排列方式,INSERT, SELECT子句的格式,运算符的使用,CASE语句编写规则,查询嵌套规范,表别名定义,以及SQL注释的添加方法。这些规则有助于提升代码的可读性和可维护性。
11 0
|
11天前
|
SQL 分布式计算 大数据
大数据开发SQL代码编码原则和规范
这段SQL编码原则强调代码的功能完整性、清晰度、执行效率及可读性,通过统一关键词大小写、缩进量以及禁止使用模糊操作如select *等手段提升代码质量。此外,SQL编码规范还详细规定了代码头部信息、字段与子句排列、运算符前后间隔、CASE语句编写、查询嵌套、表别名定义以及SQL注释的具体要求,确保代码的一致性和维护性。
15 0
|
19天前
|
分布式计算 安全 大数据
MaxCompute 的安全性和数据隐私保护
【8月更文第31天】在当今数字化转型的时代背景下,企业越来越依赖于大数据分析来推动业务增长。与此同时,数据安全和隐私保护成为了不容忽视的关键问题。作为阿里巴巴集团推出的大数据处理平台,MaxCompute(原名 ODPS)致力于为企业提供高效、安全的数据处理解决方案。本文将探讨 MaxCompute 在数据安全方面的实践,包括数据加密、访问控制及合规性考虑等方面。
41 0

热门文章

最新文章

相关产品

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