MaxCompute助力OSS支持EB级计算力

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 一、 MaxCompute是什么 你的OSS数据是否作堆积在一旁沉睡已久存储成本变为企业负担你是否想唤醒沉睡的数据驱动你的业务前行MaxCompute可以帮助你高效且低成本的解决这些问题通过对海量数据进行分析和计算来实现勾勒用户画像、提升营销转化、挖掘产品优化方向、预测业务发展等丰富的业务场景。

一、 MaxCompute是什么?

你的OSS数据是否作堆积在一旁沉睡已久,存储成本变为企业负担?你是否想唤醒沉睡的数据,驱动你的业务前行?MaxCompute可以帮助你高效且低成本的解决这些问题,通过对海量数据进行分析和计算来实现勾勒用户画像、提升营销转化、挖掘产品优化方向、预测业务发展等丰富的业务场景。

 

MaxCompute是一项提供快速、完全托管的EB级数据仓库解决方案的大数据计算服务,可以高效并经济的分析处理海量数据。作为阿里云大数据旗舰产品,MaxCompute的EB级别性能处理达到了全球领先性,被Forrester评为全球云端数据仓库领导者。同时,MaxCompute也是阿里巴巴内部大数据旗舰平台,阿里巴巴近99%的数据存储以及95%的计算能力都在这个平台上产生。

 

最近MaxCompute重磅推出了一项重要特性:OSS外表查询功能。该功能可以帮助您直接对OSS中的海量文件进行查询,而不必将数据加载到MaxCompute 表中,既节约了数据搬迁的时间和人力,也节省了多地存储的成本。除此之外,MaxCompute外表查询功能还拥有如下的优势:

1、MaxCompute是一个无服务器的分布式计算架构,无需用户再额外维护和管理服务器基础设施,能方便及时的为OSS用户提供临时按需的查询服务,从而大大帮助企业节省成本。目前该功能处于公测阶段,免费使用;

2、支持处理OSS上开源格式的结构化文件,包括:Avro、CSV、ORC、Parquet、RCFile、RegexSerDe、SequenceFile和TextFile,同时支持gzip压缩格式;

3、提供灵活的用户自定义代码的处理框架,用来支持处理OSS上非结构化文件,用户可以自行编写代码直接对OSS上的数据进行处理和计算。比如对OSS上的视频,图像,音频,基因,气象等数据进行特征提取和分析,可以支持丰富的第三方音视频处理库;

 

二、 客户案例

1、华大基因

基因技术从实验室逐渐进入生活场景,数据体量爆发式增长,远超出传统计算能力所能支持的范围。基于这样的背景,华大选择了MaxCompute。在百万人基因组项目中,对人群结构的分析,oss存放了大量的fastq文件,传统计算方式需3-5天,且需要将数据同步到数据仓库,现在通过外表功能,MaxCompute可使整个分析在1小时内完成,极大加速了数据吞吐和交付生产效率。

2、天弘基金

天弘基金旗下的余额宝,是中国规模最大的货币基金。除理财功能外,余额宝还是移动互联网时代的现金管理工具。余额宝每天有大量的金融数据交换文件存放在oss上,需要进行超大文本文件的结构化分析,之前是把oss文件先下载到本地,然后再上传到MaxCompute,链路长且效率不高。现在oss上的大文件可以直接用外部表的方式加载到MaxCompute做分析,整个链路的效率得到了大幅提升。

 

三、 如何使用MaxCompute?

下面我们通过两个简单的示例,介绍如何通过MaxCompute外表功能实现对OSS数据的分析和处理。

 

场景一:物联网采集数据分析

Step1:准备工作

1、开通OSS 、MaxCompute服务

您可以通过官网分别开通OSS、MaxCompute服务,并创建OSS bucketMaxCompute Project

2、采集数据到OSS

您可以使用任何数据集来执行测试,以验证我们在这篇文章中概述的最佳实践。

本文准备一批 CSV 数据存在 OSS 上,endpoint 为oss-cn-beijing-internal.aliyuncs.com,bucket 为oss-odps-test,数据文件的存放路径为/demo/vehicle.csv

3、授权MaxCompute访问OSS

MaxCompute需要直接访问OSS的数据,前提需要将OSS的数据相关权限赋给MaxCompute的访问账号,可以直接登录阿里云账号后,点击此处完成一键授权

Step2:通过MaxCompute创建外部表

创建外部表,语句如下:


CREATE EXTERNAL TABLE IF NOT EXISTS ambulance_data_csv_external

(

vehicleId int,

recordId int,

patientId int,

calls int,

locationLatitute double,

locationLongtitue double,

recordTime string,

direction string

)

STORED BY 'com.aliyun.odps.CsvStorageHandler'

LOCATION 'oss://oss-cn-beijing-internal.aliyuncs.com/oss-odps-test/Demo/';
AI 代码解读


Step3:通过MaxCompute查询外部表

外部表创建成功后,便可如同普通表一样使用这个外部表。假设/demo/vehicle.csv数据如下:

1.     1,1,51,1,46.81006,-92.08174,9/14/2014 0:00,S

2.     1,2,13,1,46.81006,-92.08174,9/14/2014 0:00,NE

3.     1,3,48,1,46.81006,-92.08174,9/14/2014 0:00,NE

4.     1,4,30,1,46.81006,-92.08174,9/14/2014 0:00,W

5.     1,5,47,1,46.81006,-92.08174,9/14/2014 0:00,S

6.     1,6,9,1,46.81006,-92.08174,9/14/2014 0:00,S

7.     1,7,53,1,46.81006,-92.08174,9/14/2014 0:00,N

8.     1,8,63,1,46.81006,-92.08174,9/14/2014 0:00,SW

9.     1,9,4,1,46.81006,-92.08174,9/14/2014 0:00,NE

10.  1,10,31,1,46.81006,-92.08174,9/14/2014 0:00,N

执行如下 SQL 语句:

1.     select recordId, patientId, direction from ambulance_data_csv_external where patientId > 25;

输出结果如下:

1.     +------------+------------+-----------+

2.     | recordId   | patientId  | direction |

3.     +------------+------------+-----------+

4.     | 1          | 51         | S         |

5.     | 3          | 48         | NE        |

6.     | 4          | 30         | W         |

7.     | 5          | 47         | S         |

8.     | 7          | 53         | N         |

9.     | 8          | 63         | SW        |

10.  | 10         | 31         | N         |

11.  +------------+------------+-----------+

关于更多详细的OSS外表使用方法,请参考官方文档,点这里

 

场景二:阿里云产品消费账单分析

Step1:准备工作

完成案例1中准备工作1、3步骤。

Step2:通过费用中心同步账单数据到OSS

打开费用中心->消费记录->存储到OSS,输入oss bucket,此示例为oms-yl 

开通后,每天会将增量的例消数据生成文件同步存到您的OSS指定的bucket中。

Step3:通过MaxCompute注册账单处理类

1、点击这里下载,odps-udf-example-0.30.0-SNAPSHOT-jar-with-dependencies.jar

2、将自定义代码编译打包,并上传到 MaxCompute。

add jar odps-udf-example-0.30.0-SNAPSHOT-jar-with-dependencies.jar

Step4:通过MaxCompute创建外部表

示例:创建5月4日的账单消费表


CREATE EXTERNAL TABLE IF NOT EXISTS oms_oss_0504

(

月份 string,

资源拥有者 string,

消费时间 string,

消费类型 string,

账单编号 string,

商品 string,

计费方式 string,

服务开始时间 string,

服务结束时间 string,

服务时长 string,

财务核算单元 string,

资源id string,

资源昵称 string,

TAG string,

地域 string,

可用区 string,

公网ip string,

内网ip string,

资源配置 string,

原价 string,

优惠金额 string,

应付金额 string,

计费项1 string,

使用量1 string,

资源包扣除1 string,

原价1 string ,

应付金额1 string,

计费项2 string,

使用量2 string,

资源包扣除2 string,

原价2 string,

应付金额2 string,

计费项3 string,

使用量3 string,

资源包扣除3 string,

原价3 string,

应付金额3 string,

计费项4 string,

使用量4 string,

资源包扣除4 string,

原价4 string,

应付金额4 string,

计费项5 string,

使用量5 string,

资源包扣除5 string,

原价5 string,

应付金额5 string,

计费项6 string,

使用量6 string,

资源包扣除6 string,

原价6 string,

应付金额6 string,

计费项7 string,

使用量7 string,

资源包扣除7 string,

原价7 string,

应付金额7 string,

计费项8 string,

使用量8 string,

资源包扣除8 string,

原价8 string,

应付金额8 string,

计费项9 string,

使用量9 string,

资源包扣除9 string,

原价9 string,

应付金额9 string

)

STORED BY 'com.aliyun.odps.udf.example.text.TextStorageHandler' --STORED BY 指定自定义 StorageHandler 的类名。

with SERDEPROPERTIES (

'odps.text.option.complex.text.enabled'='true',

'odps.text.option.strict.mode'='false'

--遇到列数不一致的情况不会抛异常,如果实际列数少于schema列数,将所有列按顺序匹配,剩下的不足的列补NULL

)

LOCATION 'oss://oss-cn-beijing-internal.aliyuncs.com/oms-yl/2018-05-04/'

USING 'text_oss.jar'; --同时需要指定账单中的文本处理类定义所在的 jar 包

 
AI 代码解读


Step5:通过MaxCompute查询外部表

查询示例:查询MaxCompute按量存储消费账单


select  月份,使用量3,原价3,应付金额3 from oms_oss 
where 计费项3='Storage' and 商品=大数据计算服务MaxCompute(按量付费);
AI 代码解读


输出结果如下:

 

四、 总结

通过上述示例,将沉睡在OSS中的非结构化数据激活,通过MaxCompute把海量数据分析工作效率提升至分钟级,帮助客户更高效、更低成本的挖掘海量数据价值。现在请您赶快通过下述方式联系我们吧!

开通MaxCompute服务,点这里

申请MaxCompute试用代金券,点这里

购买咨询MaxCompute,请扫二维码加入钉钉群。


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
打赏
0
0
0
0
82934
分享
相关文章
存储之外,还有什么?云计算对象存储服务OSS深度洞察
存储之外,还有什么?云计算对象存储服务OSS深度洞察
740 0
基于OSS的EB级数据湖
数据湖无缝对接多种计算分析平台,对Hadoop生态支持良好,存储在数据湖中的数据可以直接对其进行数据分析、处理、查询,通过对数据深入挖掘与分析,洞察数据中蕴含的价值。
基于OSS的EB级数据湖
MaxCompute产品使用合集之要增加MaxCompute的自定义资源,该怎么操作
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
MaxCompute 产品新能力发布-2024年Q1
随着阿里云MaxCompute4.0的产品新版本发布,越来越多的MaxCompute产品新能力被客户广泛关注,包括近实时查询/湖仓一体&开放架构/容灾备份等。在此我们对外整体介绍一下MaxCompute FY25-Q1产品新功能,帮助更多用户借此了解MaxCompute4.0云原生数仓新版本的重点产品特性,核心竞争力与典型用户场景等信息。
339 1
DataWorks产品使用合集之要获取OSS文件大小并配置成调度任务,该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
Hologres实时湖仓能力增强,挑战5分钟加速分析OSS数据
5分钟快速使用Hologres实时湖仓能力,无需移动数据,直接加速读取存储于数据湖OSS上的Hudi、Delta、Paimon等格式类型的数据
开通大数据计算MaxCompute就能存储外表了吗?
开通大数据计算MaxCompute就能存储外表了吗?
156 0
大数据计算MaxCompute建的oss外表怎么中文乱码呢?
大数据计算MaxCompute建的oss外表怎么中文乱码呢?
128 0
AnalyticDB MySQL — Spark 助力在OSS上构建低成本数据湖
阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高可靠的云存储服务。通过和OSS团队的深入合作,AnalyticDB MySQL 的Spark能力 更好发挥了云原生数据湖方案的优势,本文为你详细解读!
AnalyticDB MySQL Spark 助力在OSS上构建低成本数据湖
借助AnalyticDB MySQL Spark 可以轻松处理OSS上PB级数据,助力企业构建低成本数据湖

相关产品

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

    你好,我是AI助理

    可以解答问题、推荐解决方案等