ไฟล์ที่กระจัดกระจายจะเติบโตตามที่ข้อมูลเพิ่มขึ้น พวกเขาสามารถมีระบบไฟล์ Linux ใด ๆ รวมถึงตัวแปรที่ทันสมัยที่มีการบีบอัดในตัวเช่น btrfs .
สร้างไฟล์ที่กระจัดกระจายที่ว่างเปล่าทุกขนาด ปล่อยให้มันเป็น 5 เทราไบต์:
me@wheezy:~$ truncate -s 5T ext4.sparse btrfs.sparse
จัดรูปแบบพวกเขา
ไปยัง ext4 :
me@wheezy:~$ mkfs.ext4 ext4.sparse
mke2fs 1.42.5 (29-Jul-2012)
<...>
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
ไปยัง btrfs :
me@wheezy:~$ mkfs.btrfs btrfs.sparse
WARNING! - Btrfs Btrfs v0.19 IS EXPERIMENTAL
WARNING! - see http://btrfs.wiki.kernel.org before using
fs created label (null) on btrfs.sparse
nodesize 4096 leafsize 4096 sectorsize 4096 size 5.00TB
Btrfs Btrfs v0.19
ทำให้จุดยึด:
me@wheezy:~$ mkdir ext4_mount btrfs_mount
ติดพวกเขา อย่าลืม loop
ตัวเลือก:
ext4 :
me@wheezy:~$ sudo mount -o loop -t ext4 ext4.sparse ext4_mount/
btrfs (อย่าลืม compress
ตัวเลือก (สามารถ zlib
หรือ lzo
)):
me@wheezy:~$ sudo mount -o loop,compress=lzo -t btrfs btrfs.sparse btrfs_mount/
เพียงเท่านี้ระบบไฟล์จะถูกสร้างและติดตั้งปรากฏเป็น 5 TB สำหรับระบบปฏิบัติการ แต่ใช้พื้นที่น้อยมาก:
DF :
me@wheezy:~$ df -h | grep _mount
/dev/loop0 5.0T 189M 4.8T 1% /home/a/ext4_mount
/dev/loop1 5.0T 120K 5.0T 1% /home/a/btrfs_mount
ดู่ :
me@wheezy:~$ du -h *.sparse
4.3M btrfs.sparse
169M ext4.sparse
สำหรับวัตถุประสงค์ในการทดสอบฉันได้สร้างไฟล์ข้อความขนาดใหญ่ 1.3 GB ที่มีรูปแบบซ้ำ ๆ มันจะเป็น cp
ทั้งระบบไฟล์ที่สร้างขึ้นใหม่:
ext4 :
me@wheezy:~$ time sudo cp /store/share/bigtextfile ext4_mount/
real 0m12.344s
user 0m0.008s
sys 0m1.708s
btrfs :
me@wheezy:~$ time sudo cp /store/share/bigtextfile btrfs_mount/
real 0m3.714s
user 0m0.016s
sys 0m1.204s
เท่าที่เห็นในขั้นตอนก่อนหน้า btrfs พิสูจน์แล้วว่าเร็วขึ้นมากระหว่างการถ่ายโอนข้อมูลที่บีบอัดได้สูงกว่ารุ่นเก่า ext4 . ตรวจสอบขนาดของพวกเขากัน
me@wheezy:~$ df -h | grep _mount
/dev/loop0 5.0T 1.5G 4.8T 1% /home/a/ext4_mount
/dev/loop1 5.0T 46M 5.0T 1% /home/a/btrfs_mount
btrfs พิสูจน์แล้วว่าเป็นพื้นที่ที่มีประสิทธิภาพมากขึ้น ในที่สุดเรามาตรวจสอบขนาดไฟล์แบบเบาบางเช่นกัน:
me@wheezy:~$ du -h *.sparse
50M btrfs.sparse
1.4G ext4.sparse
แค่นั้นแหละ. หากจำเป็นไฟล์ที่กระจัดกระจายอาจถูกขยายให้ใหญ่ขึ้น btrfs สามารถปรับขนาดออนไลน์ได้เช่นกัน