1. πFS (github.com)
πFS:基于π的“数据无关”文件系统
πFS(现更专注于inferencefs)是一个概念性文件系统,其核心思想是将文件数据存储于数学常数π的无限序列中,从而理论上实现“100%压缩”和无限存储空间。
核心原理
- 基础假设:π被认为是一个正规数,即其数字序列均匀分布,并且是一个析取序列。这意味着,在足够多的位数后,任何可能的有限数字序列(如一个文件的二进制表示)都必然出现在π中。
- 数据存储方式:文件并非物理存储于硬盘,而是通过记录其内容在π(尤其是十六进制π)中的起始索引和长度来“存储”。提取文件时,只需根据这些索引信息,使用Bailey–Borwein–Plouffe算法等数学方法从π中计算出相应位数即可。
构建与使用
- 构建:需要在系统中安装
autoconf、automake、libfuse等依赖包,然后通过标准的autogen.sh、configure、make、make install流程编译安装。 - 挂载与使用:通过命令
πfs -o mdd=<元数据目录> <挂载点>挂载文件系统。其中,<元数据目录>用于存储文件名和文件在π中的位置等元数据;<挂载点>是用户操作的目录。
关键技术与现状
- 查找优化:为提升查找效率,实现中将文件拆分为单个字节,再分别查找每个字节在π中的位置。
- 元数据存储:文件位置信息作为元数据,存储在由用户指定的本地元数据目录中。
- 性能与挑战:当前版本是一个初始原型,性能较低(例如存储一个400行的文本文件需耗时约5分钟)。丢失元数据目录意味着失去文件位置信息,但理论上文件数据依然永久存在于π中。
未来展望
文章列出了计划中的优化方向,包括:
- 可变长度搜索与查找
- 算术编码
- 并行化查找
- 云端π查找服务
- 适配大数据平台如Hadoop
更新:项目现已转向
inferencefs(见 GitHub 仓库:philipl/inferencefs),代表数据无关文件系统的最新进展。