-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
btrfs-vs-zfs-difference-in-implementing-snapshots #93
Comments
2.1 数据集下 |
感謝發現錯誤!是繼承,我打錯了,已修。 |
应该是职责? |
多謝,改掉啦 |
页面中链接
|
感謝!實際鏈接是 https://www.kernel.org/doc/html/latest/filesystems/f2fs.html#id1 , 馬上修 |
你整個分析File system文章真棒.我能引用跟轉載嗎? |
你好, 在 btrfs wiki SysadminGuide 中关于 Flat 布局中这样描述:"Flat: subvolumes are children of the top level subvolume (ID 5), typically directly below in the hierarchy or below some directories belonging to the top level subvolume.",而在您描述的flat布局中画的示意图中下面的root、home以及www子卷均和5号the fs tree并列,请问是否存在问题?另请问是否有兴趣补充下wiki中那个nested的布局表示意图,因为全网络上您的这篇是理解btrfs中最好的文章。 |
可以隨意轉載引用,我的博客內容除了特別說明的,都是 CC BY-NC-SA ,符合協議註明來源就可以。 |
SysadminGuide 中說的子卷間的父子關係是在說文件夾樹中的關係,類似文件夾和子文件夾的關係。我後面的配圖中畫出的 FS_TREE 是平級和5號子卷並列,是在表達它們在磁盤上表示方式,它們都是從 root_tree 引出的 fs_tree ,這裏在存儲上的確是並列的。可以對比傳統文件系統比如 ext4 / xfs 的 inode table ,父子文件夾在 inode table 中都是並列的 inode 方式的記錄。同樣 btrfs 中每個子卷的 FS_TREE 在 ROOT_TREE 中都是並列的記錄方式。
btrfs wiki 中那個 nested 的例子有點大,畫成圖會比較難看清 XD ,我下面對 flat 的 5 號子卷做 snapshot 的時候畫了一個例子,那個 snapshot 的結果就會產生 nested 方式的子卷,可以考慮存儲方式類似。 |
感谢解答!另外还有个疑问就是为什么在您的这个Flat布局数据结构示意图中是 5 号 the FS TREEE 指向文件夹树的根目录,而不是/root这个subvolume呢?因为根据Btrfs wiki中关于这个flat 子卷布局的描述如下: |
注意「根目錄」的概念是相對的,每個子卷,包括5號的頂級子卷,都有一個「根目錄」。 5 號子卷的根目錄是整個 pool 的名字空間的根,和系統的根目錄是兩個概念,系統的根目錄是掛載在「/」的那個子卷的根目錄。 不加掛載參數 -o subvol= 的時候,默認掛載的子卷根據 root_tree 中 6 號對象 root_dir 指向的東西決定,我的圖裏 6 號 root_dir 指向 256 號對象,256 號是叫做 "root" 的那個子卷的 fs_tree 。
我畫的圖中的數據結構沒有關心系統目錄結構,只畫了以5號子卷開始的子卷佈局。系統目錄結構是掛載的時候才確定的,和磁盤記錄的子卷佈局是不同的概念。 |
你好,这里看到多次提到disk format这篇论文,我最近也有看,但是看到后面的部分,不太理解,能否有空分享分享,文章中很多内容感觉也是和那个数据结构有关的,有很多点没接触过,我刚接触存储和zfs,多谢了。 |
ZFS的去重性能确实烂完。 |
This issue is reserved for https://farseerfc.me/btrfs-vs-zfs-difference-in-implementing-snapshots.html
The text was updated successfully, but these errors were encountered: