本场视频链接:
https://developer.aliyun.com/live/1546?spm=a2c6h.12873639.0.0.7dcd359fhRnsQ8&groupCode=apachespark
ppt观看:
https://www.slidestalk.com/AliSpark/0761944
点击文末‘阅读原文’可直达链接
EMR JindoFS背景
计算存储分离已经成为云计算的一种发展趋势。在计算存储分离之前,普遍采用的是传统的计算存储相互融合的架构(下图左侧),但是这种架构存在一定的问题,比如在集群扩容的时候会面临计算能力和存储能力相互不匹配的问题。用户在某些情况下只需要扩容计算能力或者存储能力,而传统的融合架构不能满足用户的这种需求,进行单独的扩充计算或者存储能力;其次在缩容的时候可能会遇到人工干预,人工干预完后需要保证数据在多个节点中同步,而当有多个副本需要同步时候,可能会造成的数据丢失。而计算存储分离架构(下图右侧)则可以很好的解决这些问题,使得用户只需要关心整个集群的计算能力。
EMR现有的计算存储分离方案是基于OSS开发的提供兼容Hadoop文件系统的OssFS。其具备海量存储的能力,用户无需担心存储容量无法满足业务需求;另外由于OssFS可以访问OSS上的数据,因此也保留了OSS的一些优势,比如成本低、高可靠等。但是OssFS也存在一些缺点,比如任务结束后可能会将数据移动到最终的目录,该过程中文件移动以及重命名操作慢,这主要是由于在OSS系统上模拟了文件系统的语义,文件系统对象存储不支持重命名或移动的原子操作;OSS是一个公有云服务,其带宽会受到限制;高频访问的数据消耗过多的OSS带宽。相比之下,JindoFS在保留OssFS的优势的基础上,克服了前面提到的这些问题。
EMR JindoFS介绍
1) 架构简介
EMR JindoFS的整体架构如下图所示,主要包含部分:Namespace服务和Storage服务。Namespace服务主要负责JindoFS 元数据管理以及 Storage服务的管理,而Storage服务主要负责用户数据的管理(本地数据和远程OSS数据)。EMR JindoFS是一个云原生的文件系统,它可以提供本地存储的性能以及OSS的超大容量。
• Namespace服务
Namespace服务是JindoFS的中心服务,主要负责管理用户的元数据,包括JindoFS 本身文件系统的元数据、切分的Block的元数据以及 Storage服务的元数据。JindoFS Namespace服务可以支持多个Namespace,用户可以根据不同的业务划分不同的Namespace,不同的Namespace存放不同业务数据,不相互干扰。Namespace不设置全局大锁