1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 阿里大数据分析与应用(part3)--常用的大数据分析平台

阿里大数据分析与应用(part3)--常用的大数据分析平台

时间:2019-07-07 20:55:21

相关推荐

阿里大数据分析与应用(part3)--常用的大数据分析平台

学习笔记,仅供参考,有错必纠

文章目录

常用的大数据分析平台什么是大数据分析平台基于Hadoop的大数据分析平台阿里云大数据平台典型阿里云大数据平台架构MaxComputeMaxCompute 的主要功能及作用MaxCompute 的使用流程MaxCompute常见使用方式MaxCompute的客户端MaxCompute的客户端应用数据上传/下载综述Tunnel上传/下载数据MaxCompute SQLMaxCompute SQL的关键字MaxCompute SQL的类型转换MaxCompute SQL的运算符MaxCompute SQL的DDL语句MaxCompute SQL的DML语句MaxCompute SQL的函数UDF 实现逻辑UDF的开发流程MapReduceMapReduce(MR)的开发应用流程

常用的大数据分析平台

什么是大数据分析平台

大数据分析平台就是依据企业的数据需求,整合当前主流的、成熟的各种具有不同侧重点的大数据处理分析框架和工具,实现对海量数据的挖掘和分析,满足企业的数据需求。通常意义上讲,大数据分析平台包括如下功能模块:

数据源:数据源决定着数据采集,常见的数据源可分为结构化、非结构化、半结构化数据,依据采集方式又可分批数据采集、实时以及流式数据采集等;

数据采集:即将数据导入到大数据分析平台;

数据存储:采集后的数据,经过系统的清洗,转换、分类等操作,将数据储存在系统中,为了便于数据分析时的提取及应用;

数据处理和分析:即对存储在系统中的数据分析、处理,数据处理与分析的快慢,是检验数据分析系统功能的重要指标,数据分析系统得出数据分析的最终结果,用于业务应用。

数据展示:数据可视化,分析的结果以视觉的角度展现在用户面前,达到最终的目的。

基于Hadoop的大数据分析平台

大数据平台是对海量结构化、非结构化、半机构化数据进行采集、存储、计算、统计、分析处理的一系列技术平台。

大数据平台处理的数据量通常是TB级,甚至是PB或EB级的数据,其涉及的技术主要有分布式计算、高并发处理、高可用处理、集群管理、实时计算等。

Hadoop作为一个开发和运行处理大规模数据的软件平台,实现了在大量的廉价计算机组成的集群中对海量数据进行分布式计算;

Hadoop框架中最核心的设计是HDFS和MapReduce;

HDFS是一个高度容错性的系统,MapReduce是一套可以从海量的数据中提取数据最后返回结果集的编程模型;

Hadoop家族还包含各种开源组件,比如Yarn,Zookeeper,Hbase,Hive,Sqoop,Impala,Spark等;

阿里云大数据平台

典型阿里云大数据平台架构

MaxCompute

大数据计算服务MaxCompute,由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高分布式处理能力,应用于数据分析、挖掘、商业智能等领域,阿里巴巴的数据业务都运行在MaxCompute。

MaxCompute 的主要功能及作用

MaxCompute致力于批量结构化数据的存储和计算,提供海量数据仓库的解决方案及分析建模服务。通常和DataWorks一起构建大数据分析平台。

MaxCompute 的使用流程

MaxCompute所有的操作都是基于表,因此MaxCompute的使用从安装配置环境后的建表开始.

MaxCompute常见使用方式

MaxCompute的客户端

MaxCompute客户端是一个java程序,需要JRE环境才能运行,请下载并安装JRE 1.6+版本(JRE 1.7或以上版本,建议优先使用JRE 1.7/1.8,其中JRE 1.9已经支持,JRE 1.10暂时还不支持)。

使用步骤:

官网下载客户端压缩文件

解压文件,可以看到4个文件夹:bin/conf/lib/plugins/

修改conf/odps_conf.ini文件,其中只需要修改project_nameaccess_idaccess_key三项

MaxCompute的客户端应用

运行bin目录下的MaxCompute

Linux系统下运行./bin/odpscmd

Windows下运行./bin/odpscmd.bat

运行后我们可以输入sql语句进行查询,比如:

odps@my_project> desc my_table; -- 查看表结构odps@my_project> list tables; -- 查看表名列表odps@my_project> create table my_talbe(id bigint );-- 创建表

数据上传/下载综述

MaxCompute系统上传/下载数据包括两种方式:

Tunnel上传/下载数据

MaxCompute客户端提供Tunnel命令实现数据的上传/下载,其基本语法为:

tunnel <subcommand> [options] args#示例#下载数据tunnel download -c GBK tmp_table d:\tmp_table.csv#上传数据tunnel upload -c GBK d:\dim_map.csv dim_map

MaxCompute SQL

MaxCompute SQL 是个数据仓库工具,Query 解析后,计算和存储交由底层的飞天实现。

MaxCompute SQL 支持常用的 SQL 语法,包括窗口函数

MaxCompute SQL 可以看做对标准 SQL 的支持,但是不能简单等同于数据库

MaxCompute SQL 不支持事务、主外键约束、索引等

MaxCompute SQL 适用于海量数据(TB/PB级别)的数据运算

MaxCompute SQL 的每个作业的准备,提交等阶段要花费较长时间,实时性不高

MaxCompute SQL 长度有限制,目前是不能超过 2 M

MaxCompute SQL的关键字

MaxComputeSQL语句的关键字作为保留字。在对表、列或是分区命名时如若使用关键字,需给关键字加``符号进行转义,否则会报错。保留字不区分大小写。

常见如下图所示:

MaxCompute SQL的类型转换

MaxCompute SQL的类型转换分为显示转换和隐式转换:

显示转换:是指用cast将一种数据类型的值转换为另一种类型的值的行为隐式转换:是指依据上下文使用环境及类型转换规则自动进行的类型转换

下面是显示转换的数据类型转换表,其中Y表示可以转换,N表示不可以转换:

下面是隐式转换的数据类型转换表,其中T表示可以转换,F表示不可以转换:

MaxCompute SQL的运算符

关系运算符:

>, <, >=, <=, =, <>, is null, is not null, like, rlike, in, between and

算术运算符:

+, -, *, /, %

位运算符:

&, |

逻辑运算符:

and, or, not

MaxCompute SQL的DDL语句

创建表/视图

添加分区

查看表/分区信息

删除分区

修改表

修改生命周期

MaxCompute SQL的DML语句

SELECT 操作INSERT操作TRUNCATE操作函数

MaxCompute SQL的函数

MaxCompute中的函数 = 内置函数 + 自定义函数

自定义函数:

UDF:用户自定义标量函数UDTF:用户自定义表值函数UDAF:用户自定义聚组函数

UDF 实现逻辑

实现 UDF 需要继承com.aliyun.odps.udf.UDF类,并实现 evaluate 方法

evaluate 方法必须是static的 public 方法

evaluate 方法的参数和返回值类型将作为 SQL 中 UDF 的函数签名

用户可以在 UDF 中实现多个evaluate 方法

调用 UDF 时框架会依据 UDF 调用的参数类型匹配正确的 evaluate 方法

UDF的开发流程

MapReduce

MapReduce(MR)的开发应用流程

安装配置环境开发 MR 程序本地模式测试脚本导出 Jar 包上传至 MaxCompute 项目空间在 MaxCompute 中使用MR

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。