阿里云-MaxComputer学习+踩坑 第001天

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

由于公司(一家蒸蒸日上的小跨境电商公司)业务快速增长,之前的数仓一直在MySQL+TIDB中构建,目前业务支撑遇到瓶颈,公司准备上马数据中台,领导一拍脑袋就是要自建平台,服务器都买了十几台(要在机房吃灰了),最后考虑再三,还是引入现有产品,接触了几家云平台厂商,最后确定使用阿里云的数据平台DataWorks
了解+推荐 最后选择了MaxComputer


一、DataWorks是什么?

DataWorks(数据工场,原大数据开发套件)是阿里云重要的PaaS(Platform-as-a-Service)平台产品,为您提供数据集成、数据开发、数据地图、数据质量和数据服务等全方位的产品服务,一站式开发管理的界面,帮助企业专注于数据价值的挖掘和探索。

DataWorks支持多种计算和存储引擎服务,包括离线计算MaxCompute、开源大数据引擎E-MapReduce、实时计算(基于Flink)、机器学习PAI、图计算服务Graph Compute和交互式分析服务等,并且支持用户自定义接入计算和存储服务。DataWorks为您提供全链路智能大数据及AI开发和治理服务。

二、MaxComputer是什么?

1.产品介绍

大数据计算服务MaxCompute(原名ODPS)是一种快速、完全托管的EB级数据仓库解决方案。

随着数据收集手段不断丰富,行业数据大量积累,数据规模已增长到了传统软件行业无法承载的海量数据(TB、PB、EB)级别。MaxCompute致力于批量结构化数据的存储和计算,提供海量数据仓库的解决方案及分析建模服务。

2.表分区规范

在导入数据创建表时就开始犯难了,表分区不知道如何设计,数据量多大适合建什么样的分区,分区建如何选择等等问题…经过咨询阿里的技术人员,得到的结果是:目前没有建表规范,分区最大限制是60000 最大查询分区限制10000

3.官方分区文档

分区表是指拥有分区空间的表,即在创建表时指定表内的一个或者某几个字段作为分区列。分区表实际就是对应分布式文件系统上的独立的文件夹,一个分区对应一个文件夹,文件夹下是对应分区所有的数据文件。

分区可以理解为分类,通过分类把不同类型的数据放到不同的目录下。分类的标准就是分区字段,可以是一个,也可以是多个。

MaxCompute将分区列的每个值作为一个分区(目录),您可以指定多级分区,即将表的多个字段作为表的分区,分区之间类似多级目录的关系。

分区表的意义在于优化查询。查询表时通过WHERE子句查询指定所需查询的分区,避免全表扫描,提高处理效率,降低计算费用。使用数据时,如果指定需要访问的分区名称,则只会读取相应的分区。

部分对分区操作的SQL的运行效率较低,会给您带来较高的费用,例如更新动态分区数据(DYNAMIC PARTITION)。

对于部分操作MaxCompute的命令,处理分区表和非分区表时语法有差别,详情请参见表操作和INSERT操作。

使用限制
单表分区层级最多为6级。
单表分区数最大值为60000个。
单次查询允许查询最多的分区个数为10000个。
STRING分区类型的分区值不支持使用中文。
分区列的数据类型
MaxCompute 2.0数据类型版本支持的分区字段为TINYINT、SMALLINT、INT、BIGINT、VARCHAR、STRING。

MaxCompute 1.0数据类型版本支持的分区字段仅有STRING。虽然可以指定分区列的类型为BIGINT,但是除了表的字段显示为BIGINT类型,任何其他情况(例如,字段的计算和比较)下都当作STRING类型处理。执行如下语句后,返回的结果只有一行。


总结

严重怀疑售后的技术人员反馈的结果,我跟技术人员反复确认了使用场景和数据量问题,他们表示内部沟通一下,我们目前选择的方式是按量计费,表分区设计的合理与否直接关系到我们的计算费用,等待售后技术的反馈。后续更新。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值