JindoFS解析 - 云上大数据高性能数据湖存储方案

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: JindoFS 是云原生的文件系统,可以提供OSS 超大容量以及本地磁盘的性能

作者:殳鑫鑫,花名辰石,阿里巴巴计算平台事业部EMR团队技术专家,目前从事大数据存储以及Spark相关方面的工作。


2019 年云栖大会上,EMR Jindo 的技术存储分离方案得到很大的关注,视频直达链接【云上大数据的一种高性能数据湖存储方案】
【EMR打造高效云原生数据分析引擎】

JindoFS背景

计算存储分离是云计算的一种发展趋势,传统的计算存储相互融合的的架构存在一定的问题, 比如在集群扩容的时候存在计算能力和存储能力相互不匹配的问题,用户在某些情况下只需要扩容计算能力或者存储能力,传统的融合架构不能单独的扩充计算或者存储能力, 而计算存储分离可以很好的解决这个问题,用户只需要关心整个集群的计算能力。

基于OSS 计算存储分离

image

EMR 现有的计算存储分离方案是基于OSS提供兼容Hadoop文件系统的OssFS, 用户通过OssFS 可以访问OSS 上的数据, 因此OssFS 保留了OSS的一些优势,比如提供海量存储,成本低,高可靠等,同时也存在一些问题比如文件重命名操作慢, OSS 带宽限制,高频访问的数据消耗过多的OSS带宽。而JindoFS 除了可以保留上述OssFS的优势,还克服上述OssFS的问题。

JindoFS 介绍

image
JindoFS 主要包含两个服务组件:Namespace的服务以及Storage 服务,Namespace服务主要JindoFS 元数据管理以及 Storage 服务的管理, Storage 服务主要负责 用户数据的管理包含本地数据的管理和OSS上数据的管理, JindoFS是云原生的文件系统,可以提供本地存储的性能以及OSS的超大容量。下面我们分别介绍下这两个服务的主要功能。

Namespace 主要用来管理用户的元数据,这部分元数据包含JindoFS 文件系统的元数据, Block 的元数据以及 Storage 服务的元数据,JindoFS Namespace服务可以在单个集群上支持不同的Namespace, 用户可以根据不同的业务划分不同的Namespace,不同的Namespace存放不同业务数据。 此外Namespace可以设置不同存储后端现阶段主要支持RocksDB,OTS的支持预计在下个版本发布,针对Namespace的性能我们支持大量的优化,比如支持目录级别的并发控制,元数据的缓存等等。

Storage 服务主要负责实际的数据管理,本地缓存的数据管理以及OSS数据管理,可以支持不同的存储后端以及存储介质,存储后端现阶段主要支持本地文件系统以及OSS, 本地存储系统可以支持HDD/SSD/DCPM等存储介质,用以提供缓存加速,另外Storage 服务针对用户的小文件较多的场景进行优化,避免过多的小文件给本地文件系统带来过大的压力造成整体性能的下降。

此外在整个生态方面,JindoFS 支持EMR 框架的所有计算引擎,包括Hadoop, Hive, Spark, Flink, Impala, Presto 以及 HBase, 用户只要替换文件访问路径的模式为jfs就可以使用JindoFS,另外在机器学习方面下个版本JindoFS将会推出Python SDK, 方便机器学习用户可以高效率的访问JindoFS上的数据,另外JindoFS 与 EMR Spark高度集成优化,支持基于Spark的物化视图以及Cube的优化,实现秒级Adhoc的分析

JindoFS 使用模式

JindoFS Block模式

image
Block模式将JindoFS的文件切分的Block的形式存放本地磁盘以及OSS上,用户通过OSS 只能看到Block的数据,本地的Namespace服务负责管理元数据,通过本地元数据以及Block数据构建出文件数据,该模式相对与后一种模式该模式下JindoFS的性能是最佳的, Block模式适用用户对数据以及元数据都有一定的性能要求的场景,Block模式需要用户将数据迁移到JindoFS。
Block模式为用户提供不同的存储策略适配用户不同的应用场景

策略名称 策略描述 适用场景
COLD 数据只有一份存放在OSS上 主要适用冷数据存储的场景
WARM 默认策略,数据本地一份,OSS一份 本地数据提供性能加速
HOT 数据本地多份,OSS一份 针对热数据提供进一步加速功能
TEMP 数据仅有本地一个备份 针对一些零时数据存储场景

对比HDFS, JindoFS的Block 模式提供以下优势:

  • 利用OSS 的廉价和无限容量 JindoFS 提可以 OSS 优势成本以及容量的优势
  • 冷热数据自动分离,计算透明,冷热数据自动迁移的时候逻辑位置不变,无须修改表元数据 location 信息
  • 维护简单,无须 decommission,节点坏掉或者下掉就去掉,数据 OSS 上有,不会丢失
  • 系统快速升级/重启/恢复,没有 block report
  • 原生支持小文件,避免小文件过程造成文件系统过大的压力

JindoFS Cache模式

image
Cache模式将JindoFS文件以对象的形式存在OSS,用户可以通过OSS 看到原有的目录结构以及文件,该模式提供数据以及元数据的缓存加速用户的读写数据的性能,该模式下用户无需迁移数据到OSS,但是性能相对Block模式有一定的性能损失。 在元数据同步方面用户可以根据不同的需求选择不同的元数据同步策略。

对比OssFS, JindoFS的Cache模式提供以下优势:

  • 由于本地备份存在,读写吞吐与HDFS相当
  • 能够支持全部 HDFS 接口, 支持更多的场景,如Delta Lake,支持 HBase on JindoFS
  • JindoFS作为数据以及元数据的缓存, 用户在读写数据以及List/Status操作相对OssFS有性能提升
  • JindoFS作为数据缓存, 可以加速用户的数据读写

JindoFS 外部客户端

image
外部客户端提供用户在EMR 集群外访问 JindoFS的一种方式,现阶段该客户端只支持JindoFS的Block模式,客户端的权限与OSS 权限绑定,用户需要有相应OSS的权限才能够通过外部客户端访问JindoFS的数据。

JindoFS + DCPM 性能

测试环境

image

性能

下面主要JindoFS + DCPM的性能,测试主要分为三部分:Micro-benchmark, TPC-DS查询在JindoFS上的性能以及 SSB在Spark Relational Cache + JindoFS 上的性能。 其中DCPM 为Intel 傲腾数据中心级可持久化内存。
image
上图为Micro-benchmark的性能,主要测试了不同文件大小( 512K, 1M, 2M, 4M and 8M )和不同并行度(1-10)下的100个小文件读操作,从图中可以看出DCPM为小文件读带来了性能的显著提高,文件越大,并行度越高,性能提升的也更明显。

image

上图TPC-DS的测试结果,TPC-DS数据量为2TB,测试整个TPC-DS的99个查询。基于归一化时间,DCPM总体上带来了1.53倍的性能提升。
image

上图SSB在Spark Relational Cache + JindoFS 测试结果,其中SSB( 星型基准测试 )是基于TPC-H的针对星型数据库系统性能的测试基准。Relational Cache是EMR Spark支持的一个重要特性,主要通过对数据进行预组织和预计算加速数据分析,提供了类似传统数据仓库物化视图的功能。 在SSB测试中,使用1TB数据来单独执行每个查询,并在每个查询之间清除系统cache。基于归一化时间,总体上DCPM 能带来2.7倍的性能提升。对于单个query,性能提升在1.9倍至3.4倍。


相关文章推荐【JindoFS概述:云原生的大数据计算存储分离方案】


后续我们也会在云栖社区和钉钉群分享更多的 Jindo 技术干货,欢迎有兴趣的同学加入 【Apache Spark技术交流社区】进行交流和技术分享。
二维码.JPG

相关实践学习
基于EMR Serverless StarRocks一键玩转世界杯
基于StarRocks构建极速统一OLAP平台
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
相关文章
|
3月前
|
安全 虚拟化
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力。通过具体案例,展示了方案的制定和实施过程,强调了目标明确、技术先进、计划周密、风险可控和预算合理的重要性。
74 5
|
1月前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
5天前
|
存储 人工智能 并行计算
2025年阿里云弹性裸金属服务器架构解析与资源配置方案
🚀 核心特性与技术创新:提供100%物理机性能输出,支持NVIDIA A100/V100 GPU直通,无虚拟化层损耗。网络与存储优化,400万PPS吞吐量,ESSD云盘IOPS达100万,RDMA延迟<5μs。全球部署覆盖华北、华东、华南及海外节点,支持跨地域负载均衡。典型应用场景包括AI训练、科学计算等,支持分布式训练和并行计算框架。弹性裸金属服务器+OSS存储+高速网络综合部署,满足高性能计算需求。
|
1月前
|
机器学习/深度学习 传感器 人工智能
穹彻智能-上交大最新Nature子刊速递:解析深度学习驱动的视触觉动态重建方案
上海交大研究团队在Nature子刊发表论文,提出基于深度学习的视触觉动态重建方案,结合高密度可拉伸触觉手套与视觉-触觉联合学习框架,实现手部与物体间力量型交互的实时捕捉和重建。该方案包含1152个触觉感知单元,通过应变干扰抑制方法提高测量准确性,平均重建误差仅1.8厘米。实验结果显示,其在物体重建的准确性和鲁棒性方面优于现有方法,为虚拟现实、远程医疗等领域带来新突破。
62 32
|
24天前
|
存储 分布式计算 大数据
大数据揭秘:从数据湖到数据仓库的全面解析
大数据揭秘:从数据湖到数据仓库的全面解析
71 19
|
30天前
|
存储 人工智能 NoSQL
Tablestore深度解析:面向AI场景的结构化数据存储最佳实践
《Tablestore深度解析:面向AI场景的结构化数据存储最佳实践》由阿里云专家团队分享,涵盖Tablestore十年发展历程、AI时代多模态数据存储需求、VCU模式优化、向量检索发布及客户最佳实践等内容。Tablestore支持大规模在线数据存储,提供高性价比、高性能和高可用性,特别针对AI场景进行优化,满足结构化与非结构化数据的统一存储和高效检索需求。通过多元化索引和Serverless弹性VCU模式,助力企业实现低成本、灵活扩展的数据管理方案。
65 12
|
1月前
|
存储 分布式计算 Hadoop
基于Java的Hadoop文件处理系统:高效分布式数据解析与存储
本文介绍了如何借鉴Hadoop的设计思想,使用Java实现其核心功能MapReduce,解决海量数据处理问题。通过类比图书馆管理系统,详细解释了Hadoop的两大组件:HDFS(分布式文件系统)和MapReduce(分布式计算模型)。具体实现了单词统计任务,并扩展支持CSV和JSON格式的数据解析。为了提升性能,引入了Combiner减少中间数据传输,以及自定义Partitioner解决数据倾斜问题。最后总结了Hadoop在大数据处理中的重要性,鼓励Java开发者学习Hadoop以拓展技术边界。
50 7
|
3月前
|
存储 安全 数据安全/隐私保护
PyPI 存储库中的 JarkaStealer:深入解析与防范措施
PyPI 存储库中的 JarkaStealer:深入解析与防范措施
44 2
|
3月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
182 2
|
27天前
|
SQL 数据可视化 大数据
从数据小白到大数据达人:一步步成为数据分析专家
从数据小白到大数据达人:一步步成为数据分析专家
210 92

推荐镜像

更多