首页 > 其他分享 >JuiceFS介绍

JuiceFS介绍

时间:2023-01-17 11:55:32浏览次数:91  
标签:存储 Kubernetes 介绍 兼容 POSIX JuiceFS 数据

简单介绍

JuiceFS 是一款面向云原生设计的高性能分布式文件系统,在 Apache 2.0 开源协议下发布。提供完备的 POSIX 兼容性,可将几乎所有对象存储接入本地作为海量本地磁盘使用,亦可同时在跨平台、跨地区的不同主机上挂载读写。
JuiceFS 采用「数据」与「元数据」分离存储的架构,从而实现文件系统的分布式设计。文件数据本身会被切分保存在对象存储(例如 Amazon S3),而元数据则可以保存在 Redis、MySQL、TiKV、SQLite 等多种数据库中,你可以根据场景与性能要求进行选择。
JuiceFS 提供了丰富的 API,适用于各种形式数据的管理、分析、归档、备份,可以在不修改代码的前提下无缝对接大数据、机器学习、人工智能等应用平台,为其提供海量、弹性、低价的高性能存储。运维人员不用再为可用性、灾难恢复、监控、扩容等工作烦恼,专注于业务开发,提升研发效率。同时运维细节的简化,对 DevOps 极其友好。

核心特性

  • POSIX 兼容:像本地文件系统一样使用,无缝对接已有应用,无业务侵入性;
  • HDFS 兼容:完整兼容 HDFS API,提供更强的元数据性能;
  • S3 兼容:提供 S3 网关 实现 S3 协议兼容的访问接口;
  • 云原生:通过 Kubernetes CSI 驱动 轻松地在 Kubernetes 中使用 JuiceFS;
  • 分布式设计:同一文件系统可在上千台服务器同时挂载,高性能并发读写,共享数据;
  • 强一致性:确认的文件修改会在所有服务器上立即可见,保证强一致性;
  • 强悍性能:毫秒级延迟,近乎无限的吞吐量(取决于对象存储规模),查看性能测试结果;
  • 数据安全:支持传输中加密(encryption in transit)和静态加密(encryption at rest),查看详情;
  • 文件锁:支持 BSD 锁(flock)和 POSIX 锁(fcntl);
  • 数据压缩:支持 LZ4 和 Zstandard 压缩算法,节省存储空间。

应用场景

JuiceFS 为海量数据存储设计,可以作为很多分布式文件系统和网络文件系统的替代,特别是以下场景:

  • 大数据分析:HDFS 兼容;与主流计算引擎(Spark、Presto、Hive 等)无缝衔接;无限扩展的存储空间;运维成本几乎为 0;性能远好于直接对接对象存储。
  • 机器学习:POSIX 兼容,可以支持所有机器学习、深度学习框架;方便的文件共享还能提升团队管理、使用数据效率。
  • Kubernetes:JuiceFS 支持 Kubernetes CSI;为容器提供解耦的文件存储,令应用服务可以无状态化;方便地在容器间共享数据。
  • 共享工作区:可以在任意主机挂载;没有客户端并发读写限制;POSIX 兼容已有的数据流和脚本操作。
  • 数据备份:在无限平滑扩展的存储空间备份各种数据,结合共享挂载功能,可以将多主机数据汇总至一处,做统一备份。

数据隐私

JuiceFS 是开源软件,你可以在 GitHub 找到完整的源代码。在使用 JuiceFS 存储数据时,数据会按照一定的规则被拆分成数据块并保存在你自己定义的对象存储或其它存储介质中,数据所对应的元数据则存储在你自己定义的数据库中。

官网链接:https://juicefs.com/docs/zh/community/introduction/

标签:存储,Kubernetes,介绍,兼容,POSIX,JuiceFS,数据
From: https://www.cnblogs.com/yuhaohao/p/17057505.html

相关文章

  • Iptables原理介绍
    Linux防火墙——iptables原理介绍原创 liugp 大数据与云原生技术分享 2023-01-0207:30 发表于广东收录于合集#linux13个#防火墙3个#iptables2个一、......
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:OCR组件
    本文简述如何在Smobiler中使用OCR组件进行文字识别。Step1.新建一个SmobilerForm窗体,并在窗体中加入OCR和Button,布局如下Button的点击事件代码:privatevoid......
  • Servlet5 - Session介绍
    SessionHTTP无状态:服务器无法判断两次请求是否为同一个客户端发送的无状态的现实问题:第一次请求添加商品到购物车,第二次请求结账,如果不能判断是同一个用户就会导致混乱......
  • 20. Pytest.ini文件介绍
    一、前言pytest.ini文件是Pytest的主配置文件,可以改变Pytest的运行方式,pytest.ini文件的名字是固定的,不能改动。pytest.ini文件可以改变Pytest测试框架默认的行为(查找执......
  • hashCode介绍
    hashCode()方法的作用是获取哈希码,也称为散列码,实际上是一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置。散列表存储的是键值对(key-value),它的特点是:能......
  • 21.Selenium【EC模块】expected_conditions模块介绍
    一、前言expected_conditions是selenium的一个模块(简称EC),其中包含一系列可用于判断的条件。二、学习目标1.了解EC判定方法三、知识点1.【判定方法】判定方法#1.判......
  • 【BERT-多标签文本分类实战】之三——多标签文本分类的方向与常用数据集介绍
    【注】本篇将首先介绍多标签文本分类中几个小方向,然后介绍这几个小方向对应的常用数据集。最后介绍如何自己寻找和下载数据集。[1]多标签文本分类的若干小方向  目前学......
  • SAP ABAP 一个有用的程序正确性辅助工具,Checkpoint group 的使用方法介绍
    本教程前一篇文章介绍的内容:74.学会使用SAPABAPApplicationLog在代码里添加应用日志记录功能有读者向我提问:一个ABAP程序植入了应用日志的记录功能之后,有没有......
  • AXI 协议翻译介绍
    一、介绍Introduction本章描述了axis协议的体系结构和协议定义的基本事务。它包含以下部分:•第1-2页关于AXI协议•第1-3页是架构•第1-7页是基本事务•第1-11页的附加功......
  • 【Javaweb】动态web工程目录介绍
    src存放自己编写的Java源代码web专门用来存放web工程的资源文件(html页面、css文件、js文件等等)WEB-INF是一个受服务器保护的目录,浏览器无法直接访问此目录的内容web.......