数据查询和业务流分开_阿里云大数据产品 | 大数据计算

阿里云大数据计算产品包括MaxCompute、E-MapReduce和实时计算(Alibaba Cloud Realtime Compute)。

一、MaxCompute

1、MaxCompute概述

MaxCompute(大数据计算服务)是是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute主要用于实时性要求不高的、批量结构化数据的存储和计算。并可提供大数据分析建模服务。其特点如下:

  • 采用分布式架构高效处理海量数据
  • 基于表的数据存储
  • 于SQL的数据处理
  • 支持多用户协同分析数据,多种权限管理方式,具有灵活的数据访问控制策略
  • 兼容Hive

2、MaxCompute架构

数据查询和业务流分开_阿里云大数据产品 | 大数据计算_第1张图片
MaxCompute产品整体逻辑结构图

3、MaxCompute功能

  • 数据存储

适用于TB以上规模的存储及计算需求,最大可达EB级别。数据分布式存储,多副本冗余,数据存储对外仅开放表的操作接口,不提供文件系统访问接口。

表数据列式存储,默认高度压缩,后续将提供兼容ORC的Ali-ORC存储格式。

支持外表,将存储在OSS对象存储、OTS表格存储的数据映射为二维表。

支持Partition、Bucket的分区、分桶存储。

底层是盘古文件系统(不是HDFS)。

使用时,存储与计算解耦,不需要仅仅为了存储而扩大不必要的计算资源。

  • 数据通道

TUNNEL:提供高并发的离线数据上传下载服务。支持每天TB/PB级别的数据导入导出。适合于全量数据或历史数据的批量导入。

DataHub:针对实时数据上传的场景,具有延迟低、使用方便的特点,适用于增量数据的导入。Datahub还支持多种数据传输插件,包括Logstash、Flume、Fluentd、Sqoop等。同时支持日志服务Log Service中的日志数据的一键投递至MaxCompute,进而利用大数据开发套件进行日志分析和挖掘。

  • 多种计算模型

SQL:以二维表的形式存储数据,支持多种数据类型,MaxCompute以二维表的形式存储数据,对外提供了SQL查询功能。不支持事务、索引及Update/Delete等操作,SQL语法与Oracle,MySQL等有一定差别。无法在毫秒级别返回结果。

MapReduce:支持MapReduce java编程接口(提供优化增强的MaxCompute MapReduce,也提供高度兼容Hadoop的MapReduce版本)。不暴露文件系统,输入输出都是表。通过MaxCompute客户端工具、Dataworks提交作业。

Graph:是一套面向迭代的图计算处理框架。图计算作业使用图进行建模,图由点(Vertex)和边(Edge)组成,点和边包含权值(Value)。通过迭代对图进行编辑、演化,最终求解出结果,典型应用:PageRank、单源最短距离算法 、K-均值聚类算法等。

  • PyODPS

PyODPS是MaxCompute 的 Python SDK,同时也提供 DataFrame 框架,提供类似 pandas 的语法,能利用 MaxCompute 强大的处理能力来处理超大规模数据。

  • Spark

MaxCompute提供了Spark on MaxCompute的解决方案,在统一的计算资源和数据集权限体系之上,提供Spark计算框架,支持用户以熟悉的开发使用方式提交运行Spark作业。

  • 交互式分析(Lightning)

MaxCompute产品的交互式查询服务。兼容PostgreSQL协议的JDBC/ODBC接口。支持主流BI及SQL客户端工具的连接访问,如Tableau、帆软BI、Navicat、SQL Workbench/J等。

  • 机器学习

MaxCompute内建支持的上百种机器学习算法,MaxCompute的机器学习能力由PAI产品进行统一提供服务,同时PAI提供了深度学习框架、Notebook开发环境、GPU计算资源、模型在线部署的弹性预测服务。PAI产品与MaxCompute在项目和数据方面无缝集成。

  • 安全

MaxCompute是一个多租户的计算平台。默认情况下,各租户间数据不共享,彼此隔离,但用户可以通过MaxCompute提供的授权机制将数据共享给项目组其他人。

二、E-MapReduce

E-MapReduce (EMR) 是构建在阿里云ECS上的开源Hadoop、Spark、HBase、Hive、Flink 生态大数据 PaaS 产品。为用户提供在云上使用开源技术建设数据仓库、离线批处理、在线流式处理、即时查询、机器学习等场景下的大数据解决方案。

E-MapReduce 还可以方便的与阿里云其他的云数据存储系统和数据库系统(如阿里云 OSS、阿里云 RDS 等)进行数据传输。

数据查询和业务流分开_阿里云大数据产品 | 大数据计算_第2张图片

E-MapReduce 集群基于 Hadoop 的生态环境来搭建,可以跟阿里云的对象存储服务(OSS)进行无缝数据交换。此外,E-MapReduce 集群也可以与云数据库(RDS)等云服务无缝对接,实现数据在多个系统之间的共享和传输,满足不同业务类型的访问需要。

三、实时计算

阿里云实时计算(Alibaba Cloud Realtime Compute,Powered by Ververica)是一套基于Apache Flink构建的一站式、高性能实时大数据处理平台,广泛适用于流式数据处理、离线数据处理、DataLake计算等场景。

  • 在 PB 级别的数据集上可以支持亚秒级别的处理延时;
  • 全链路流计算开发平台,涵盖从数据采集到数据生产,流计算开发严谨可靠;
  • 提供SQL语义的流式数据分析能力(Blink SQL),大幅降低流数据分析门槛;
  • Datalake功能,独享模式支持datalake场景下的数据清洗 、数据分析、数据同步、异构数据源计算等;
  • SQL语言,在线开发,全面支持UDX。

1、数据集采集

广义的实时数据采集指使用流式数据采集工具将数据实时地采集并传输到大数据Pub/Sub(发布订阅)系统。Pub/Sub系统将为下游实时计算提供源源不断的事件源触发流式计算作业的运行。阿里云大数据生态中提供了针对不同场景领域的流式数据Pub/Sub系统。

2、流式计算

流数据作为实时计算的触发源驱动实时计算运行。一个实时计算作业至少使用一个流数据作为数据源。对于复杂的业务场景,实时计算支持和静态数据存储进行关联查询。

3、实时集成

阿里云实时计算可以将计算的结果数据直接写入目的数据存储。阿里云实时计算天然集成了OLTP(RDS产品线等)、NoSQL(OTS等)、OLAP(ADB等)、MessageQueue(DataHub、ONS等)、MassiveStorage(OSS、MaxCompute等)等阿里云生态系统,从而最大程度的降低全链路数据的时延和数据链路的复杂度,保证数据加工的实时性。

4、数据消费

流式计算的结果数据进入各类数据存储后,可以运用个性化的应用操控结果数据。如使用数据存储系统访问数据,使用消息投递系统接收信息,或使用告警系统生成异常结果数据警报。

5、数据链路

部分阿里云生态外部数据存储不能和实时计算系统完全匹配,需使用其它类型流数据进行转换。

  • DataHub

DataHub提供了多类数据(如日志、数据库BinLog、IoT数据流等)上传到DataHub的工具、界面,以及开源、商业软件的集成。

  • LogService

LogService(日志服务)是针对日志类数据的一站式服务。LogService提供了诸多针对日志的采集、消费、投递、查询分析等功能。

  • IoTHub

阿里云物联网平台(IoTHub)是能够帮助开发者搭建安全的数据通道,方便终端(如传感器、执行器、嵌入式设备或智能家电等等)和云端的双向通信。 使用IoTHub规则引擎可以将IoT数据方便投递到DataHub,并利用实时计算和MaxCompute进行数据加工计算。

  • DTS

DTS(数据传输)支持以数据库为核心的结构化存储产品之间的数据传输。DTS是一种集数据迁移、数据订阅及数据实时同步于一体的数据传输服务。使用DTS的数据传输功能,可以方便将RDS等BinLog解析并投递到DataHub,并利用实时计算和MaxCompute进行数据加工计算。

  • MQ

阿里云MQ服务是一套完整的消息云服务。阿里云MQ服务基于高可用分布式集群技术,搭建了包括发布订阅、消息轨迹、资源统计、定时(延时)、监控报警等功能。

你可能感兴趣的:(数据查询和业务流分开)