文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

开源云原生分布式文件系统 - JuiceFS

2024-12-01 14:45

关注

大家最耳熟能详的分布式文件系统当属 HDFS,它的全称是 ​​Hadoop Distributed File System​​,在 Hadoop 技术栈盛行时大放异彩。随着云计算的发展成熟,数据上云成为趋势,但由于对象存储和文件存储的结构不同,在云上要进行大数据存储时会遇到很多问题:查询性能慢、数据不能保证一致性。

今天要为大家介绍的就是一款为云环境设计的文件系统,JuiceFS 是一款云原生高性能分布式文件系统, 采用的是插件化的架构,「数据」与「元数据」分离,用户可按照场景需求选择适用的元数据以及数据引擎。使用 JuiceFS 存储数据,数据本身会被持久化在对象存储(例如,Amazon S3),相对应的元数据可以按需存储在 Redis、MySQL、TiKV、SQLite 等多种数据库中。

JuiceFS 于 2021 年 1 月在 GitHub 上开源,1年半时间已经获得 6.5 K Star,是基础领域备受关注的项目; JuiceFS 采用的是 Aache 2.0 许可证,意味着 用户可以更放心地将 JuiceFS 应用于各种商业环境,与自己的应用集成。在 AI 组件 Fluid 和 PaddlePaddle 中都可以看到 JuiceFS 的身影。

特性

快速上手

安装 JuiceFS 非常简单,你需要准备好元数据存储引擎(比如 Redis, MySQL),以及对象存储,最后下载 JuiceFS 客户端执行一行命令,就能立刻开始使用了。

你可以在 GitHub 项目页面找到 JuiceFS 最新版客户端下载地址,选择你所在平台的预编译版本,下载安装到 /usr/local/bin/juicefs。

当在终端输入并执行 juicefs 并返回了程序的帮助信息,就说明你成功安装了 JuiceFS 客户端。

创建文件系统

创建文件系统使用客户端提供的 format 命令,一般格式为:

juicefs format [command options] META-URL NAME

可见,格式化文件系统需要提供 3 种信息:

挂载文件系统

挂载文件系统使用客户端提供的 mount 命令,一般格式为:

juicefs mount [command options] META-URL MOUNTPOINT

与创建文件系统的命令类似,挂载文件系统需要提供以下信息:**[command options]**:用来指定文件系统相关的选项,例如:-d 可以实现后台挂载;META-URL:用来设置元数据存储。即数据库相关的信息,通常是数据库的 URL 或文件路径;MOUNTPOINT:指定文件系统的挂载点。例如,以下命令将 myjfs 文件系统挂载到 ~/jfs 文件夹:

juicefs mount sqlite3://myjfs.db ~/jfs

当你获得以下反馈即为挂载成功了!!

验证文件系统

当挂载好文件系统以后可以通过 juicefs bench 命令对文件系统进行基础的性能测试和功能验证,确保 JuiceFS 文件系统能够正常访问且性能符合预期。

juicefs bench ~/jfs

运行 juicefs bench 命令以后会根据指定的并发度(默认为 1)往 JuiceFS 文件系统中写入及读取 N 个大文件(默认为 1)及 N 个小文件(默认为 100),并统计读写的吞吐和单次操作的延迟,以及访问元数据引擎的延迟。

验证成功之后,欢迎大展身手,探索更多玩法~

项目地址:https://github.com/juicedata/juicefs。​

参考资料

[1]HDFS API: https://juicefs.com/docs/zh/community/hadoop_java_sdk。

[2]S3 网关: https://juicefs.com/docs/zh/community/s3_gateway。

[3]CSI Driver: https://juicefs.com/docs/zh/community/how_to_use_on_kubernetes/。

[4]性能测试结果: https://juicefs.com/docs/zh/community/benchmark/。

[5]查看详情: https://juicefs.com/docs/zh/community/security/encrypt。

来源:Github爱好者内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯