在 JuiceFS 开源一周年之际,我们迎来了首个里程碑版本 JuiceFS v1.0.0 Beta1,并将开源许可从 AGPL v3 修改为 Apache License 2.0。

JuiceFS v1.0.0 Beta1 是一个在生产环境中充分验证迭代的产物,在延续 JuiceFS 一贯开放、安全、稳定、可靠的品质之上,进一步提供一系列紧贴用户需求的全新功能。

亮点一:回收站

数据误删这样的情况总是在你我身边一次又一次上演,周期性备份尚且无法根治,我们需要的是让删除操作可以有回旋的余地。

今天,JuiceFS 正式解锁这项对于数据保护来说非常重要的功能——回收站。

从 JuiceFS v1.0.0 Beta1 开始,文件系统默认开启回收站,任何对文件的删除都会先被移动到回收站,可以随时找回误删的文件。

如果你的 JuiceFS 文件系统经常产生删除操作,回收站可能会占据很多的空间(默认保留最近 1 天的删除数据),你可以调整设置让 JuiceFS 定期清理回收站中的文件。

对于新创建的文件系统,可以在 format 命令中指定 --trash-days 选项,比如 --trash-days 3 代表回收站自动清理存放超过 3 天的文件。

对于已经在用的文件系统,可以通过新增的 config 命令调整回收站清理规则,例如:

$ juicefs config "postgres://user:$PG_PASSWD@127.0.0.1:5432/jfs1" --trash-days 3

关于回收站的详细介绍,请查看 JuiceFS 官方文档

亮点二:元数据自动备份

对于数据和元数据分离存储的分布式文件系统,元数据的安全和完整直接决定了整个存储系统的安全和完整。

于我们而言,数据安全绝不是目标,而是始终尽心捍卫的底线。

早在 JuiceFS v0.15.2 我们就增加了备份和恢复元数据的 dumpload 命令,让用户可以根据实际需要定期备份元数据,从而在基础的数据库备份层面之上又增加了一重对元数据的安全保障。

今天,我们又增加了一重保障——元数据自动备份。

从 JuiceFS v1.0.0 Beta1 开始,不论文件系统通过 mount 命令挂载,还是通过 JuiceFS S3 网关及 Hadoop Java SDK 访问,每小时都会自动备份元数据并拷贝到对象存储。

备份文件存储在对象存储的 meta 目录中,它是一个独立于数据存储的目录,在挂载点中不可见,也不会与数据存储之间产生影响,用对象存储的文件浏览器即可查看和管理。

默认情况下,JuiceFS 客户端每小时备份一次元数据,自动备份的频率可以在挂载文件系统时通过 mount 命令的 --backup-meta 选项进行调整,比如 --backup-meta 8h 设置每八个小时执行一次自动备份。

虽然自动备份元数据成为了默认动作,但在多主机共享挂载同一个文件系统时也不会发生备份冲突,因为 JuiceFS 维护了一个全局的时间戳,确保同一时刻只有一个客户端执行备份操作。当客户端之间设置了不同的备份周期,那么就会以周期最短的设置为准进行备份。

另外,JuiceFS 会按照以下规则定期清理备份:

  • 保留 2 天以内全部的备份;
  • 超过 2 天不足 2 周的,保留每天中的 1 个备份;
  • 超过 2 周不足 2 月的,保留每周中的 1 个备份;
  • 超过 2 个月的,保留每个月中的 1 个备份。

亮点三:新增 config 命令调整文件系统配置

由于元信息全部存储在数据库中,在过去,JuiceFS 文件系统一旦创建,若需要调整文件系统的配置要使用 format 命令进行修改,还需要带上之前格式化文件系统时的那些参数。再就是直接操作数据库,在相应的数据表中小心翼翼的修改,操作不当还有可能损坏数据库。毫无疑问,过去的几种修改方式既麻烦,又存在一定风险。

为了解决这个问题,JuiceFS v1.0.0 Beta1 新增加了 config 命令,让你可以通过客户端就能修改文件系统的基本信息。

本次更新的 config 命令支持修改文件系统的容量配额、inodes 配额、对象存储及密钥、回收站清理规则。

亮点四:新增 destroy 命令销毁文件系统

在之前,如果决定停用一个 JuiceFS 文件系统,需要分别操作对象存储和数据库清理数据,如果数据量特别大时会十分耗费精力。

为此,JuiceFS v1.0.0 Beta1 特别新增了 destroy 命令,只需一条命令即可完成文件系统的销毁。

如上图,销毁操作除了要指定元数据存储的 URL 之外,还需要指定文件系统的 UUID,这可以在一定程度上避免误操作。

注意:销毁文件系统是一项高风险操作,请务必谨慎使用!

更多功能

除了上述几项功能之外,JuiceFS v1.0.0 Beta1 还增加了以下新功能:

  • 新增 --max-deletes 选项,控制并行删除文件的线程数;
  • 新增 --consul 选项,将监控指标 API 注册到 Consul 中;
  • 新增 --keep-etag 选项,保留上传到 S3 网关的对象的 ETag;
  • 新增 --check-all--check-new 选项,允许通过 sync 命令同步数据时校验数据的完整性;
  • sync 命令支持同步匿名访问的对象存储的数据

有关 JuiceFS 新版的更多内容,欢迎了解详情

JuiceFS v1.0.0 Beta1 发布,加强数据安全能力的更多相关文章

  1. JuiceFS v1.0 beta3 发布,支持 etcd、Amazon MemoryDB、Redis Cluster

    JuiceFS v1.0 beta3 在元数据引擎方面继续增强,新增 etcd 支持小于 200 万文件的使用场景,相比 Redis 可以提供更好的可用性和安全性.同时支持了 Amazon Memor ...

  2. JuiceFS V1.0 RC1 发布,大幅优化 dump/load 命令性能, 深度用户不容错过

    各位社区的伙伴, JuiceFS v1.0 RC1 今天正式发布了!这个版本中,最值得关注的是对元数据迁移备份工具 dump/load 的优化. 这个优化需求来自于某个社区重度用户,这个用户在将亿级数 ...

  3. RapidJSON v1.1.0 发布简介

    时隔 15.6 个月,终于发布了一个新版本 v1.1.0. 新版本除了包含了这些日子收集到的无数的小改进及 bug fixes,也有一些新功能.本文尝试从使用者的角度,简单介绍一下这些功能和沿由. P ...

  4. 浏览器端类EXCEL表格插件 版本更新 - 智表ZCELL产品V1.1.0.1版本发布

    智表(ZCELL),浏览器下纯JS表格控件,为您提供EXCEL般的智能体验! 纯国产化.高性价比的可靠解决方案. 更新说明     让大家久等了.因为最近忙其他项目,发布时间稍有延迟.  下次版本更新 ...

  5. FineUIMvc v1.4.0 发布了(ASP.NET MVC控件库)!

    FineUIMvc v1.4.0 已经于 2017-06-30 发布,FineUIMvc 是基于 jQuery 的专业 ASP.NET MVC 控件库,是我们的新产品.由于和 FineUI(专业版)共 ...

  6. 阿里云 Serverless 应用引擎(SAE)发布 v1.2.0,支持一键启停、NAS 存储、小规格实例等实用特性

    近日,阿里云 Serverless 应用引擎(SAE)发布 v1.2.0版本,新版本实现了以下新功能/新特性: 一键启停开发测试环境:企业开发测试环境一般晚上不常用,长期保有应用实例,闲置浪费很高.使 ...

  7. 后台框架 FastAdmin V1.0.0.20200228 发布,为疫情防控作贡献

    后台框架 FastAdmin V1.0.0.20200228 发布,为疫情防控作贡献 https://www.oschina.net/news/113694/fastadmin-1-20200228- ...

  8. 基于swoole框架hyperf开发的纯API接口化的后台RBAC管理工具hyperfly@v1.0.0发布

    hyperfly@v1.0.0发布 本文地址http://yangjianyong.cn/?p=323转载无需经过作者本人授权 github地址:https://github.com/vankour/ ...

  9. QuantumTunnel:v1.0.0 正式版本发布

    经过一段时间运行,代码已经稳定是时候发布正式版本了! v1.0.0 正式版本发布 对核心能力的简要说明: 支持协议路由和端口路由:QuantumTunnel:端口路由 vs 协议路由 基于Netty实 ...

随机推荐

  1. 测试开发实战[提测平台]17-Flask&Vue文件上传实现

    微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 先回顾下在此系列第8次分享给出的预期实现的产品原型和需求说明,如下图整体上和前两节实现很相似,只不过一般测试报告要写的内容可能比较多,就多 ...

  2. 联盛德 HLK-W806 (十二): Makefile组织结构和编译流程说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  3. THUSC 2021 游记

    想了想不往博客园放不行,还是放上来了. 原文 \[\texttt{Brief Introduction} \] 众所周知,THUSC2021 5 月 15-16 日在杭州市 XJ 中学举办,然而由于 ...

  4. flink启动报错:java.lang.NoSuchMethodError: org.apache.flink.api.java.ClosureCleaner.clean(Ljava/lang/Object;Z)V

    这是因为pom文件引入的flink相关依赖设置成了provided 作用域 要嘛把这个去掉 但是如果是IDEA的话 可以更简单的操作 把这个打勾保存 接着重新启动main方法即可

  5. 『与善仁』Appium基础 — 27、模拟手势点击坐标

    目录 1.模拟手势点击坐标 2.tap()用法 3.练习 4.弊端 1.模拟手势点击坐标 在定位元素的时候,你使出了十八班武艺还是定位不到,怎么办呢?(面试经常会问) 那就拿出绝招:点击元素所在位置的 ...

  6. 人工智能论文解读精选 | PRGC:一种新的联合关系抽取模型

    NLP论文解读 原创•作者 | 小欣   论文标题:PRGC: Potential Relation and Global Correspondence Based Joint Relational ...

  7. cmake之错误【Modules/ExternalProject.cmake:3206 (_ep_add_download_command)....】

    本文的 cmake的version是3.18 本文环境: Ubuntu 64 + CMAKE 3.18 错误描述 1.错误内容 Modules/ExternalProject.cmake:3206 ( ...

  8. 【LeetCode】384. Shuffle an Array 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 库函数 Fisher–Yates 洗牌 水塘抽样 日 ...

  9. codeforce-600C. Make Palindrome(贪心)

    http://codeforces.com/problemset/problem/600/C: 题意:给你一个小写字母组成的英文串,将它转换为回文串,要求,改变的字母的个数最小,移动字母不算改变字母. ...

  10. 「实用」打造自我感觉非常漂亮的Mac终端

    背景 (今天我是一个美妆博主) 突然发现自己使用的iterm2终端样式有些朴素,为了让她看起来花枝招展的,我决定给她打扮打扮.毕竟每天面对她的时间比对象还多-- 效果对比 因为每个人的喜好都不一样,所 ...