Zweites Interview mit dem Reiser4-Entwickler Eduard Shishkin

Kürzlich hat Eduard Shishkin mich kontaktiert und mich gebeten, ein Interview (das ich gerne mache) in einem Frage-Antwort-Format zu veröffentlichen.

Das erste Interview (2010) finden Sie hier .





- Bitte erinnern Sie die Leser zunächst daran, wo und mit wem Sie arbeiten.





Ich arbeite als Principal Storage Architect bei Huawei Technologies, Deutsches Forschungszentrum. In der Virtualisierungsabteilung beschäftige ich mich mit verschiedenen Aspekten der Datenspeicherung. Meine Aktivität bezieht sich nicht auf ein bestimmtes Betriebssystem.





- Verpflichten Sie sich jetzt zur Hauptleitung?





, . , , 9p ( - VirtFS). : , , , " ", . , - , . , - - .





— , , , . (, , ) -, ? , , -, ?





- . - , , , , " ", , . Computer science, , . - 2x2 , 4, "Linux way", , . , . , . , , . , " ". - . , , - .





— Btrfs? ? — « » ?





. , 11 , . Btrfs, , - . , , . - . , . ( Linux 5.12). , , . . . - 50% ( 15%). - " ". 4 . : , ( 85%) - . , , , (, ), . , , 15% "" , , , . Btrfs ( , .), , ( "" , ) - .





( ). : Btrfs B-, . , "" , . , "" . "". , . Btrfs B-, .. Btrfs. 8-10 , " ", ( ) "Linux way". , , . . , 10 . , . " ", , "- ". "" . B- - , , !





Btrfs? , , . - , " ", c Btrfs . , , , , 30 . - Btrfs .





, , . . . , .





— Btrfs RHEL.





, . "technology preview". , "preview". ! by-design . RHEL - , - . Red Hat , Btrfs. : , , , , , . ? . Red Hat , . , , DoS-, Btrfs. , ? , GPL, , , : " !" Red Hat, , ! , Red Hat- , QA-, .





— Btrfs -?





, "" . - , . , GNU/Linux - RHEL. , , , . , , - , ( ""). , .. . , - .





, - , Facebook Btrfs . , .





— XFS? — , ext4 . Red Hat' XFS? — ext4 XFS?





, . , Red Hat. , : - . XFS ext4. . , - . , . ext4 XFS . , . . , , , . - , (", , !").





— layer violation ( ) ext4, F2FS ( RAID Btrfs)?





, - - , - . , "", , , block layer. "" . : , . , , block layer, . . , "" (bit rot). , -, .. , (, bitmap-, - .), kernel panic. , , block layer (.. RAID 1) . , : - ? , , . ( , ) -. . (, ) - . "" . layering violation - - . - RAID-5 . ( RAID / LVM ) . , layering violation " " . - , , .





Reiser4 "". , , , , , , (VFS).





— ReiserFS v3.6 , , JFS? . ?





, . , ( , ) - . , JFS ( ), ReiserFS (v3) ( ). , , , . , , , . " " . , , , . -. , ReserFS v3 Reiser4, .





— Tux3 HAMMER/HAMMER2 ( DragonFly BSD)?





, . Tux3 - (.. " "), Reiser4 , , . (snapshots) , Reiser4 . , "" , , B-. . , Reiser4, "" - , .





HAMMER: . . , B-. . .





— CephFS/GlusterFS/etc? ?





, . . , - . . , - , . - , " " " ", , : ", !". , . , , . . "Big Data" , , , ..





— , , ?





, . , , - " ". , . . page cache . " " . . IO-forwarding () . (server node) . ( , , ). , server node backend storage - (.. , ) . , , "" "" . - , (- ). . , ( -). backend storage , . (SSD, NVRAM .), " " , , . . , , 9p- QEMU - VirtFS. , , , . - . - . , GlusterFS . , NetBSD.





— ?





, , , , - . , , 4 , : , , , . , , , - (, ).





. -, . .. "" " ", LVM ( layering violation, ZFS). , ( ) (.. , -). , ( ), block layer , "" . , , , . : , . ZFS- ( LVM) ( , ..). ! , ( , ), , . . , - , . , ! , - . , - , , ! , , , / . -, , , .





, +LVM , . , , . , - . discard-, - , .. . , LVM, . , - . . . , ?





.. "Write-Anywhere" ( Reiser4, ). . , . , - . , . , - . , , . , "broken design". , . , . . , . ( , ). ( GlusterFS). - (fsck). , . , .





, (snapshots). LVM ZFS- , . . A ( / ) . . , , 100 , S . , S. : S? , , 100, 3 - A, B C, , (A B). C , C , , , C A B. , , S C . , , () ( ) c (, "" ). , - . : - , ? ! , . "3D-" , .





, - , ( -). , , , . +LVM : LVM , , ( ). LVM +LVM , - , . ZFS Btrfs, , - , layering violation ., ? , LVM. , (storage nodes). , . - DHT GlusterFS CRUSH map Ceph. , , . . 2015 , -, , . , . . , . , ? , , " " . - , . .





— (, blk-mq) ?





. , block layer, . . , block layer, ( reiser4 ).





— (, SMR, SSD) ?





. . . , , - . , - , . , , "".





— Reiser4 ?





, , . Reiser4 . " " - . " - !" - , . - , , , . , . "", "" , , .





— - Reiser4?





, , .. . , . , 30 , .





— Reiser4 ?





"" (resize) , ReiserFS(v3). , DIRECT_IO. , " ", , . , " ". , , ( ). Reiser4 - RAID-Z, , , 128- , .





— , , ?





(), , . , , . , - , instruction pointer, , X, , . "", , X ( X, ). , ( ), , "" - . - , , , . , , "" , . , . , " " . (, ).





— — Reiser4 ? , ? ?





, . , . - . , "" . . , , - . - ( , ). , - , . " " .





, , . , , - . - - . - , , . ? , - .





— Reiser4 ?





, , . , "" . , . , Reiser4 - : -.





, , - . Reiser4 -. . , (snapshots) - "OVERWRITE SET". Reiser4 . (Write-Anywhere) OVERWRITE SET ( ..), "" ( ). . OVERWRITE SET ( , ). , Reiser4 . ReiserFS (v3). , . ( ..), . Reiser4 , , , .





"" " ( ). - Reiser4 -. , ZFS Btrfs : . "" , . "".





, , , , ZFS, Btrfs, block layer, FS+LVM - , O(1)- , . . "" . , , , , , fsync(2). , block layer, bcache, . ( ). , , .. - - .





10. , , - "" -, reiser4. "format41".





— Reiser4 xfstests?





, , .





— Reiser4 () ?





, ! , ! backend storage, . . block layer, - ! , - . , , . ( .). -, , - . . !





— Reiser4 Linux' , FreeBSD ( : «…FreeBSD … … , »)?





, , : Reiser4 - . FreeBSD ! ! c , FreeBSD. : - , .





— Linux ? «»?





. . . - , - . . , , : .





— - ? , -, ?





, . . . . . . "", "" . "Btrfs" , . . . "", " ". , , . : , . ! "", "" - Btrfs systemd, docker, .. - .





- . Reiser4 . (, ) . - VFS, XFS ext4. VFS, , . VFS . Ext4 , , , . , - . , Linux, , - , ( , , , B-, ). . , , "". , "" , , "" , . , , . , - ZFS , . , , : - , . , - ZFS , , , ZFS : . ZFS - . ext4 XFS - .





"Linux file system of next generation". , , , " " Linux . , Linux "just for fun". . , . , , "" , - : , - , "". , . , - , ! : , , "": " ", .. , , "" , .. , " ": , ", .. . , - , "" . - , . . - . . , . .





, " " - , . Btrfs "" Bcachefs, Linux block layer ( ). : , Btrfs. , - - ! Bcachefs Btrfs, , , . " ". , . "" ( ). , , . "" , , "" , . . , , , -: , . , , .





, " ". , - . , , , "" . , - , . , , - . , . , , . . -. , (", "), . . . , , , . , : " " . , Linux VFS. , , , , , . . , 29- , " ". . !









All Articles