开发者社区> 罗庆超> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

基于对象存储 OSS 的智能数据分析处理框架和功能

简介: 今年参加了 2019 全球闪存峰会(Flash Memory World),分享了“基于云存储的智能数据分析处理架构”,重点介绍在对象存储 OSS 之上的数据处理功能,现整理相关内容和大家探讨。
+关注继续查看

导语

今年参加了 2019 全球闪存峰会(Flash Memory World),分享了“基于云存储的智能数据分析处理架构”,重点介绍在对象存储 OSS 之上的数据处理功能,现整理相关内容和大家探讨。

一、通过存储技术分析,探讨为什么对象存储适合做数据分析处理

1.1 存储技术分析

纵观存储技术的发展历史,从 1957 年发明硬盘,1970 年代发明 SAN(Storage Area Network),1980 年代发明 NAS(Network Attached Storage),再到 2006 年发明 Object Storage。从中可以看出,存储技术是不断向上和应用结合的过程,但是这些技术并不是代次的替换,而是场景的扩展。其中有个规律,大约每隔 10 年就会有新技术的出现。现在是2019年,距离对象存储出现已经13年过去了,下一个存储未来技术会是什么呢?(后面会抛出一些思考)。

存储技术对比.png

通过上图对比存储技术的差异,加强理解:

  • 存储的部署和服务场景不同。SAN(块存储) 和 NAS(文件存储)都是面向数据中心内访问的设备,而对象存储产生的目的根本就不是在数据中心内使用,而是面向互联网、移动互联网(3G、4G、5G)而产生的,为大量使用的网页、视频、图片、音频、文档访问而设计。
  • 存储的使用者不同。块存储的使用者是机器,它映射 LUN(Logical Unit Number) 给机器,被机器识别为盘,然后创建文件系统、数据库。NAS 的使用者是办公账号,如 AD(Active Directory) 和 LDAP(Lightweight Directory Access Protocol) 账号,该账号登陆 NAS 设备的 IP(Internet Protocol) 地址就可以访问共享文件夹,用于办公场景。对象存储的使用者是云账号或者社交账号,通过该账号成功登陆云服务后就可以存储数据了。
  • 访问协议/接口不同。SAN(块存储) 和 NAS(文件存储) 是基于数据中心内的技术,采用 FC、iSCSI、NFS、CIFS、SMB 协议。而对象存储是基互联网访问的技术,采用基于 HTTP/HTTPS 的 S3(Simple Storage Service)/OSS(Object Storage Service) 访问接口。

综上可以看出,存储技术的不同,关键是 交互模式的差别SAN 是典型的机机交互模式,NAS 是人机交互模式,对象存储是移动互联网交互模式。SAN 的机机交互最简单,就是要求盘时延低、带宽大;NAS 的人机交互需求多,就像人管理图书那样会分门别类(目录)和书名(文件名)、重命名、移动,还有复杂的权限、配额管理等;对象存储的移动互联网交互模式,上面会通过互联网应用对外服务,可以做的比人机交互更简单,如采用平坦的名字空间来管理对象,从而降低了 NAS 场景下大目录、海量小文件的管理难题。不同的交互模式,大大影响了存储背后的设计哲学,它也是系统设计的源头和根本

1.2 存储技术的应用场景

存储本质.png

从本质上来看:

  • SAN 存储(块),本质是一块盘,就是一个线性地址空间,在它之上装文件系统、数据库、虚拟机等后,才能让应用更好的使用。
  • NAS 存储,本质是 企业员工+IP地址+共享文件夹,围绕目录、文件等特性设计,应用于企业办公、媒体编辑、高性能计算等场景。
  • 对象存储,本质是 云账号通过互联网(或移动互联网)访问网络内容,广泛使用的互联网短视频、图片、音乐等应用,它为应用提供了全局、全网共享的数据大池子,非常适合做为互联网内容的底层平台。

对象存储拥有面向互联网的海量数据存储、访问能力,在它之上构建数据分析平台,可以关联数据挖掘的价值;在对象存储上构建分析平台,让存储更智能,这将是存储未来的发展之道

二、当前基于对象存储构建数据分析的典型设计范式

当前,大量的计算应用构建在对象存储上,因为对象存储是面向互联网、面向未来5G的存储服务,它的数据量非常巨大,从而形成了海量的数据池,计算应用基于它去分析,更容易找出数据之间的关联性、挖掘数据价值。所以,基于对象存储来构建数据分析体系,是公有云上常见的使用模式。

解决方案.png

如上图所示:

  • 阿里云的全球文娱互动直播解决方案,就是使用对象存储系统 OSS 为底座,通过 ECS 部署截图、窄带高清转码、拉流直播、录制等软件,形成文娱互动的能力;该方案提供全球多 Region 容灾部署、千万级高并发能力。
  • 阿里云的在线教育解决方案,基于阿里云对象存储 OSS,构建媒体转码、媒体点播、视频直播,来管理服务大量的视频数据。该方案提供海量、安全、低成本、高可靠的云存储,不限文件数量,基于 RESTful API 的互联网任何位置存储和访问。

上述应用方案设计范式的典型特征,就是在对象存储 OSS 之上自主搭建计算、分析集群的能力,实现业务需求。但这样的方案,对带宽的消耗也很明显,做好将计算功能 Offloading(卸载) 到存储,将是很有价值的工作。

三、对象存储计算卸载的智能数据分析处理框架

上述章节的方案解决了对应场景的使用问题,但也存在优化点。

  • 带宽优化,对于图片、音视频等多媒体文件,都是较大的对象,不管通过公网还是 VPC 内网,都会带来较大的带宽需求,会存在性能瓶颈。
  • 时延问题,将大量的数据下载到手机、服务器处理,传输距离长、时延大,用户体验较差。
  • 部署要求,需要购买机器、软件,在进行安装、配置、运维等,这都需要不少的投入。

这些优化点都存在成本开销,因此将合适的数据分析处理算子卸载到存储、实现数据就近访问,并采用 Serverless 的对外提供服务,将会降低带宽开销、减少时延、更易运维使用。

数据分析框架.png

因此,对象存储计算卸载的智能数据分析处理框架核心是构建计算框架、并将它和存储关联,为此在对象存储最近的数据中心,部署计算引擎实现就近访问。然后,在对象存储的数据路径上和计算框架打通,从而实现关联。
为了支持种类丰富的数据分析处理,设计了智能的调度框架:

  • 该框架在底层支持 CPU、GPU、FPGA 芯片。
  • 将机器抽象为物理机、虚拟机、容器屏蔽硬件差异。
  • 在此之上运行 Linux、Windows 运行环境,并部署各类卸载的算子。
  • 通过集群调度系统提供离线请求、实时请求的灵活调度。

通过该框架,只要卸载的算子通过验证并部署过来,就可以提供集群化的服务,并实现云服务的 SLA 能力。

四、典型场景

通过对象存储计算卸载的智能数据分析处理框架,支持如下的场景。
应用场景.png

4.1 图片处理

通过卸载图片转换算法的算子到调度框架,实现了图片水印、缩放、裁剪、旋转、格式转换、效果共 6 个场景,完完全全实现了云上的 PS。以前做图片处理是在本地机器上用 photoshop 完成,现在可以在云上实现,而且还不用安装软件,并且云上 PS 还可方便的实现多人协作处理。使用方式也非常简单,无需购买任何服务器、无需安装软件,直接使用 URL 请求完成,例如:

http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_200

它表示将图片缩放为宽度 200 像素的新图片,通过使用 FPGA 加速,和自主搭建 CPU 方式相比,单机的吞吐率可提升 6 倍,时延下降 80%-90%,整体带宽优化可以达到 5 倍

4.2 视频推流

OSS 是业界第一个实现支持多媒体推流的公共云对象存储服务,通过卸载视频流处理算子,可以在对象存储 OSS 的推流配置完成后,得到 RTMP 推流的 OSS 地址,然后就可在客户端推送视频流到 OSS,例如:

ffmpeg -i 1.flv -c copy -f flv "rtmp://your-bucket.oss-cn-hangzhou.aliyuncs.com/live/test-channel?OSSAccessKeyId=LGarxxxxxxHjKWg6&Expires=1472199095&Signature=%2FAvRo7FTss1InBKgwn7Gz%2FUlp9w%3D"

通过此方法,无需搭建多媒体流服务,就可以让视频处理卸载到对象存储,并切还能支持音频流,在时延要求不高时还可做直播。

4.3 视频处理

通过卸载视频截帧算子,可实现零流量的截帧处理,直接使用 URL 请求完成,例如:

http://a-image-demo.oss-cn-qingdao.aliyuncs.com/demo.mp4?x-oss-process=video/snapshot,t_7000,f_jpg,w_800,h_600,m_fast

它表示在 7 秒钟的时间,截 1 帧长宽 800×600 的图片。

4.4 文档预览

通过该卸载算子,可以直接预览存储在对象存储 OSS 上的文档。对于文档预览功能,只需提交请求预览文档,OSS 将会返回经过转码的签名 URL,然后基于该 URL 就可以在浏览器中进行文档查看,目前支持近 50 种文档格式的预览。由于和 OSS 天然结合,从而也完全复用了 OSS 的 SLA 能力(大于 99.9%),并享受 OSS 的安全设计。

4.5 图片 AI

通过卸载图片 AI 算子,实现人脸识别和图像内容识别。
人脸识别 功能,使用时直接在人脸图片的 URL 后加上参数就能直接返回识别的人脸结果,例如:

http://image-demo.oss-cn-hangzhou.aliyuncs.com/person.jpg?x-oss-process=imm/detecface

内容识别 功能,使用时直接在图片的 URL 后加上参数就能直接返回识别结果,例如:

http://image-demo.oss-cn-hangzhou.aliyuncs.com/image.jpg?x-oss-process=imm/tagimage

4.5 SQL 卸载(Select Object)

在对象存储 OSS 中,也叫 Select Object 功能,它将 SQL 的条件、Projection 算子下推,实现基本的过滤并且只返回有用的数据,从而实现高效的数据查询。
Select Object 的卸载方式,和外部大数据平台实现 SQL 方式(OSS 未卸载)相比,时延可减少到原来的1/12,带宽最多可以减少99%

五、总结

  • 交互模式决定存储系统的设计哲学。SAN 块存储是机机交互,NAS 文件存储是人机交互,对象存储是移动互联网交互(3G/4G/5G),不同的交互模式决定后端的架构和功能。
  • 基于对象存储计算卸载的智能数据分析处理框架,可以灵活支持不同硬件、平台、操作系统、运行环境、卸载算子,并提供实时、离线请求,满足不同场景的数据分析处理需求。
    -存储卸载的遵循原则。寻找合适的数据分析处理算子,实现数据就近访问,提供 Serverless 的模式。

通过整体的介绍,可以相信,基于对象存储海量数据的数据分析处理,挖掘数据价值,是未来技术的重要发展趋势。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SpringCloud微服务实战——搭建企业级开发框架(二十九):集成对象存储服务MinIO+七牛云+阿里云+腾讯云
微服务应用中图片、文件等存储区别于单体应用,单体应用可以放到本地读写磁盘文件,微服务应用必需用到分布式存储,将图片、文件等存储到服务稳定的分布式存储服务器。目前,很多云服务商提供了存储的云服务,比如阿里云OSS、腾讯云COS、七牛云对象存储Kodo、百度云对象存储BOS等等、还有开源对象存储服务器,比如FastDFS、MinIO等。
291 0
专访阿里云罗庆超:对象存储的过去、现在、未来
发展到现在,数据湖越来越受企业重视,美国知名科技企业风投机构 A16Z 经过调查发现数据湖已成为现代化数据分析架构中的中流砥柱,处于数据分析架构的核心位置。HDFS 和对象存储都是可以用来构建数据湖的组件,但对象存储更能适应当前存算分离的发展趋势,所以越来越多的企业转向了对象存储,阿里的数据湖在 2019 年也从 Hadoop 生态转向了对象存储 OSS。
90 0
利用rsync和云存储网关备份文件到阿里云对象存储
本文通过具体的实践展示了利用rsync和云存储网关将本地目录备份到阿里云对象存储的方案。
924 0
一站式极致读吞吐,加速业务数字化转型 - 阿里云对象存储 OSS加速器解析与实践
阿里云对象存储OSS重磅推出OSS加速器功能,提供高性能、高吞吐量的数据访问服务。
6081 0
提升 10 倍!阿里云对象存储 OSS 可用性 SLA 技术揭秘
对象存储被广泛应用于互联网应用中,当我们打开手机观看视频、收听音乐、分享图片、浏览网页、淘宝购物时,背后的数据基本都是存在对象存储中。应用使用卡、打不开就和对象存储的可用性 SLA 有关,SLA 越高,应用体验越好。本文分享阿里云在对象存储 OSS(Open Storage Service) 的可用性 SLA (Service Level Agreement) 上的实践和技术沉淀。
1629 0
快开启阿里云对象存储 OSS 防误删新功能--版本控制,保护您珍贵的数据
阿里云对象存储 OSS 是保存海量数据的平台,支持丰富的应用。在使用过程中难免会遇到误操作、程序 Bug、覆盖写等导致数据被删除的场景,对于数据的丢失会非常着急,后果也非常严重,甚至某些情况下还会影响你的职业生涯。
1661 0
阿里云对象存储 OSS 发布全球第一可用性 SLA 背后的技术体系
2020年6月,阿里云对象存储 OSS 通过十年积累的技术红利,将可用性 SLA(Service Level Agreement) 提升 10 倍,做到了全球第一的核心竞争力,是其他的云厂家的 10~20 倍,如下图所示。
700 0
阿里云对象存储服务OSS 学习笔记
阿里云对象存储服务(Object Storage Service,简称 OSS)
6699 0
+关注
罗庆超
罗庆超,阿里巴巴资深技术专家,阿里云对象存储负责人。曾就职于华为,作为海量存储首席架构师负责OceanStor/FusionStora文件存储、对象存储,以及分布式存储DFV(数据功能虚拟化/Data Function Virtualization)的架构设计和实现。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
阿里云 JindoFS+OSS 数据上云实战
立即下载
云存储之OSS实战进阶分享
立即下载
OSS运维进阶实战手册
立即下载