ODPS简介

开放数据处理服务(Open Data Processing Service,简称ODPS)是阿里巴巴自主研发的海量数据处理平台。主要服务于批量结构化数据的存储和计算,可以提供海量数据仓库的解决方案以及针对大数据的分析建模服务。 随着社会数据收集手段的不断丰富及完善,越来越多的行业数据被积累下来。数据规模已经增长到了传统软件行业无法承载的海量数据(百GB、TB、乃至PB)级别。 在分析海量数据场景下,由于单台服务器的处理能力限制,数据分析者通常采用分布式计算模式。但分布式的计算模型对数据分析人员提出了较高的要求,且不宜维护。使用分布式模型,数据分析人员不仅需要了解业务需求,同时还需要熟悉底层计算模型。 ODPS的目的是为用户提供一种便捷的分析处理海量数据的手段。用户可以不必关心分布式计算细节,从而达到分析大数据的目的。 ODPS已经在阿里巴巴集团内部得到大规模应用,例如:大型互联网企业的数据仓库和BI分析、网站的日志分析、电子商务网站的交易分析、用户特征和兴趣挖掘等。

ODPS生态圈及其功能组件

ODPS提供了数据上传下载通道,SQL及MapReduce等多种计算分析服务,并且提供了完善的安全解决方案,其功能组件请参考下图: 

ODPS组件介绍

  • 数据通道:
    • ODPS TUNNEL:提供高并发的离线数据上传下载服务。 用户可以使用Tunnel服务向ODPS批量上传或下载数据。ODPS Tunnel仅提供Java编程接口供用户使用。
    • ODPS DataHub:向用户提供数据的实时发布和订阅的功能。 与Tunnel服务不同,通过DataHub上传的数据会即刻在用户数据中有所体现。
  • 计算及分析任务:
    • ODPS SQL :ODPS只能以表的形式存储数据,并对外提供了SQL查询功能。用户可以将ODPS作为传统的数据库软件操作,但其却能处理TB、PB级别的海量数据。需要注意的是,ODPS SQL不支持事务、索引及Update/Delete等操作,同时ODPS的SQL语法与Oracle,MySQL有一定差别,用户无法将其他数据库中得SQL语句无缝迁移到ODPS上来。此外,在使用方式上,ODPS SQL最快可以在分钟,乃至秒级别完成查询,无法在毫秒级别返回用户结果。ODPS SQL的优点是对用户的学习成本低,用户不需要了解复杂的分布式计算概念。具备数据库操作经验的用户可以快速熟悉ODPS SQL的使用。
    • MapReduce :MapReduce最早是由Google提出的分布式数据处理模型,随后受到了业内的广泛关注,并被大量应用到各种商业场景中。在本文档中,我们会对MapReduce模型做简要介绍,以便于用户快速熟悉、了解该模型。使用ODPS MapReduce的用户需要对分布式计算概念有基本了解,并有相对应的编程经验。ODPS MapReduce为用户提供Java编程接口。
    • Graph:ODPS提供的Graph功能是一套面向迭代的图计算处理框架。图计算作业使用图进行建模,图由点(Vertex)和边(Edge)组成,点和边包含权值(Value)。通过迭代对图进行编辑、演化,最终求解出结果,典型应用:PageRank单源最短距离算法 ,K-均值聚类算法 等等。
  • SDK:提供给开发者的工具包,SDK的相关介绍请参考 ODPS SDK介绍 ;
  • 安全:ODPS提供了功能强大的安全服务,为用户的数据安全提供保护,详情请参考 ODPS 安全参考手册 ; 各个功能模型的描述请参考用户手册的其他部分。如果想快速了解如何使用ODPS,请参考 快速开始;
  1. da shang
    donate-alipay
               donate-weixin weixinpay

发表评论↓↓