赞
踩
大数据计算服务(MaxCompute,原名ODPS)是一种快速、完全托管的TB/PB级数据仓库解决方案。
当今社会数据收集手段不断丰富,行业数据大量积累,数据规模已增长到了传统软件行业无法承载的海量数据(百GB、TB乃至PB)级别。MaxCompute服务于批量结构化数据的存储和计算,提供海量数据仓库的解决方案及分析建模服务。
由于单台服务器的处理能力有限,海量数据的分析需要分布式计算模型。分布式的计算模型对数据分析人员要求较高且不易维护:数据分析人员不仅需要了解业务需求,同时还需要熟悉底层分布式计算模型。MaxCompute为您提供完善的数据导入方案以及多种经典的分布式计算模型,助您快速解决海量数据的计算问题,有效降低企业成本并保障数据安全。您可以不必关心分布式计算和维护细节,便可轻松完成大数据分析。
1.ODPS:Open Data Processing Service, 简称ODPS;是由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域;阿里巴巴的离线数据业务都运行在ODPS上;
2.御膳房:基于ODPS的一个应用模型;基于公共云计算的数据管理、计算和交换平台,为政府机构、企业、科研机构、第三方软件服务商等客户,提供大数据管理、开发和生产计算的能力,同时让客户间能交换数据,解决数据管理、应用、流通的场景需求,帮助客户实现商业价值;
3.ODPS SQL:与Hive SQL语法基本一致;适用于海量数据(TB级别),实时性要求不高的场合,它的每个作业的准备,提交等阶段要花费较长时间, 因此要求每秒处理几千至数万笔事务的业务是不能用ODPS SQL完成的;ODPS SQL采用的是类似于SQL的语法,可以看作是标准SQL的子集,但不能因此简单的把ODPS SQL等价成一个数据库,它在很多方面并不具备数据库的特征;
PS:常见数据库有层次型(树状),网状型(网络),关系型(二维表格)
4.SQL语句不分大小写,使用“–”进行注释,使用分号作为语句结束符号;
eg:–select * from wifi;
5.支持的数据类型:bigint,double,string,datetime,boolean,decimal;
6.支持的关系运算符:=, <>, <, <=, >, >=, is null, is not null, like, rlike和in ;
7.支持的算术运算符:+, -, * , /, %;
8.支持的逻辑运算符:and, or,not
9.支持的位运算符:&,|;
10.支持三目运算符:A?B:C;
11.SQL语言包括四种主要程序设计语言类别的语句:数据定义语言(DDL),数据操作语言(DML),数据控制语言(DCL)和事务控制语言(TCL);在ODPS中使用的主要是DDL跟DML;
12.ODPS平台上的数据都是以表的形式来处理的,所以SQL语句很重要,在处理SQL时候,字段也是一个关键的概念;
(二)DDL语句
1.表的创建
(1)新建一个自定义的表:create table if not exists A (字段名 字段类型);
(2)新建一个表,字段与现有表一致,但数据并没有复制:create table if not exists A like B;
2.表的删除
drop table A;
3.表的重命名
alter table A rename to B;
4.表的生命周期
alter table A set lifecycles 30;
5.增加字段
alter table A add columns(字段名 字段类型);
6.查看表的信息
desc A
(三)DML语句
1.表中数据的更新(insert语句)
(1)insert overwrite table A select * from B :表示将表A的数据复制到表B中,前提是字段一致;
PS:ODPS平台的SQL仅支持以上的更新数据库语句;其中关键字overwrite表示覆盖写入,可换成into表示追尾写入;
2表中数据的读取(select语句)
(1)select * from A:读取全部字段数据
(2)select uid from A:读取某一字段全部数据
(3)select distinct uid from A :读取某一字段不重复数据
(4)select * from A where uid=’a’:读取某一字段值等于指定值的数据
(5)select * from (select * from A)a:嵌套语句
(6)select sum(uid) from A group by uid:分组查询
(7)select * from A order by uid limit 4:全局排序,必须与limit 配合使用
(8)select row_number() over (partition by item order by score)as row_num from A:对字段item按字段score值进行局部排序并给出序号
3.表的合并(union all 语句)
select * from(
select * from t1 where uid=’a’
union all
select * from t2 where uid=’a’)t;
4.表的连接(join 语句与left outer join 语句)
(1)join
select * from A a join B b on a.item = b.item :返回A,B表中字段item值相同的数据
(2)left outer join
select * from A a left outer join B b on a.item = b.item :返回A表全部数据
(四)内建函数
查看附件文档
MaxCompute-sql
参考链接:https://help.aliyun.com/document_detail/73768.html?spm=a2c4g.11186623.6.619.64cf5ffcW8TpPF
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。