αα·ααΆααααΌαααα ααΎαααΆααα·ααΆααααΆα’αααΈαααααΆαααααααΆααα½αα
ααα½ααα½α
ααα αΎα α§ααΆα αααα
ααΆααΆααααααΎαααΆαα, αααααααααΊααΆααααααααα’αααα»αααΎααααΈααααΆαα ZFS, α’αααα’αΆααααα
ααααΉαα
ααααΎαα ααααΆααααααΉαααΆαα
αααα»ααααα·αααααΆαααΆαααααα’αααα’αα·αααααα OpenZFS ααα Matt Ahrens "ααΆαα·αααΆααααΆαααΆαα" α
ααα»αααααα»αααααααααΎαααΆααααααα - α αΎααα½αααααΉααααα»ααααααΆ - αααααΆαααααααΎαααΆααα’αααααααΆααααΆαααααααα ααΆαααααααα ZFS α ααα½αααααΆαααΈ ααΎαααααΌααα·ααΆαα’αααΈ αααα ααΆααΌαα ZFS αααααΆαα»ααα·αααααααα ααΎααΆαα
Zpool, vdev αα·αα§ααααα
ααααΆααααΆαα’αΆαααααααααααα½αααΆα vdevs αααα½αααΈ ααααΆααααΈαα½αα αα·ααα½ααααααΆαα RAIDz2
ααΆααααααΆααΆααααΆαα ααα»ααααΎααααΈαααααΎααααα»ααααααααα αα·αααα α vdev ααααα·αααααΌααααααααα ααα»ααααααααΆαα’αααΈααΆααΆααα’αααααΈααΆαααααΎααΌα
ααααααααα·αααΎα’αααα
ααααΆαα
ααΎααααΈαααα αααΆααα’αααΈααααααααα―αααΆα ZFS α’αααααααΌααα·αα·αααααΎααααΆααα·ααααααΌααα ααΆααααααααααΆαααααααααααααΆα ααΈαα½α ZFS ααααα½αααααα½αααααα·ααααααααΈααααααα·αααα‘αα αα·αααΆααααααααααααααααααα―αααΆαα ααΈααΈα ααΆααααΎααααααΆαα ααααααΎααΆααααααααααα·ααααα·ααΆαα αααααααα·αααααΆαααααααΆααααααΆααααααααααΆααα ααΆαααααααααα»αααΈααααααααα―αααΆαααααααΆ αα·αα’αΆαα RAID α αααα»αααααΌααααααα»αα’ααΆαααΆααΌαααααΆααααααααΌααααααΊ α’αΆααααα»ααα»α (zpool) α§ααααααα·αααα·α (vdev) αα·αα§ααααααα·α (α§ααααα) α
zpool
α’αΆααααα»α zpool ααΊααΆαα ααΆαααααααα ZFS ααααΌααααα»αα α’αΆαααΈαα½ααααΆαα§ααααααα·αααα·ααα½α α¬α αααΎαα αα αααα»αααα αα½αααΆααΈαα½ααααΆαα§ααααααα·ααα½α α¬α αααΎα (α§ααααα)α α’αΆααα·αααα·αααΊααΆαααα»ααααααΆαααααααα½αα―αα αα»αααααΌαααβααΌααααααβαα½αβα’αΆα βααΆαβα’αΆαβααΈαβα¬βα αααΎαβααΆα αβαααβα‘ααβααΈβααααΆ ααα»ααααβαα»αααααΌαααβααΈαα½ααβααΊβα―αααΆαααβααΆααβαααα»αβααΈβα§αααααβαααααβαααα α’αΆααα·αα’αΆα α αααααααα§ααααααα·αααα·αααΆαααα
ααΆαα ααααΌαα ααααααα ZFS ααΊαα ααααα·αα§ααααααα·αααα·α αα·αααααα ααααα·αα’αΆααααααα αα·αααΆαααΆααααααααΌαααΆαααα ααααα ααααα·αα’αΆααα - ααααα·αααΎααααΆαααααΈαα¬ααΈααΈααΈαα·αααααΆαα½αααααΌαααΆαααΆααααααααα’αΆαααΆααααΌαααΉαααΆαααααααΆαα½αααΆα
α§ααααααααα»αααααΎαα’αΆα αααααΆαααΆαααΈαα·αααΈααΆαααΆαααααααααΆαααααααΆαα α¬αααααα ααα»α§ααααααα·αααα·α - αααααΈααΆαα½αααα’αΆα ααΆααααααα·αααααααααααααα·α αα½α ααααα ααααα·αααΎαα½αααααΆααααααααααα ααα» vdev ααα‘α»ααααααΆα αα ααααα’αααα·αααΈ α¬ααΆααααααααααα
ααΆαααΆαααααα»αααΆααΌαα
ααα ZFS "ααααΌααα·αααααα" ααααΌαααΆαααααααα
ααΌααΆααα’αΆαααΆααααΌαα αααβααΊβααΆβααΆαβαα·αβαα·αβααα Zpool αα·ααααααΆ RAID0 αα½αα±ααα’ααααααΎα
ααΆααααααα ααΆααΆααΆααα½αα±ααα’ααααααΎα
αααααΆαααααααααΆαα αααΎα αααααααααΆααααΌαααΆαα ααα αΆααααα»αα ααααα§ααααααα·αααα·ααααααΆα ααααα ααΆαααα αααααααααααΆα ααΌα ααααααΆαααααΉααααΈ αα½αααΆααΆααα’ααααΉαααααΌαααΆαααααααααα»αααααααα½αα αα αααα»αααααααααααααα ZFS ααΆαααααΎααααΆαα vdev αα αα α»αααααα (ααΆαααααΎααααΆαα) ααααΌαααΆααααααααα·α αΆαααΆ - ααααα·αααΎα§ααααααα·αααα·ααα½αααΆαααΆααααΆααΉαααααΆααααΆαα§ααααααααααααα (α§ααΆα ααα αααααΆαααΆααααα»αααΆαα’αΆα) ααΆααΉαααααΌαααΆαααααααΆααααααα’αΆαααααααααΆααααΆαααααα αααααΈααΆααΆαααΆαα₯ααα·αααααααααααααα»ααααααα αααΆααΆαααααα α
ααααααΆαααΆαααααΆαααααΎααααΆαααααααΆααααααΎαα‘αΎααα αααα»ααα·ααΈααΆααααααααα ααααΆαααααα ZFS ααααΎαα’αΆα ααΆαααααααααΆαααΊααααΆα αα·ααααααΎαααΆααααααΌααααα»αα’αα‘α»ααααααααΆααααα»αααααααα»αααΈααααααΆ - ααα»ααααααΆαα·ααααααα ααΆαααΆ ααΎααΆαααΆααααα αΌαααααΆαααα’α ααααΆαα HDDs ααΊα αα·α SSDs αααααΆαααααΏαααΏααα αααα»αα’αΆααα½αα α’αΆααα·αααααΎααααΆααααααααΉααα ααααααΎαααΆααααα»αααααΏαααα§αααααααΊααααα»α αααααΊααΌα ααΆααΆααααΌαααΆαααααα‘αΎαααΆαααααα»αααΈα§αααααααααααα
vdev
αααααααααα»αααΈαα½ααααΆαα§ααααααα·αααα·ααα½α α¬α αααΎα (α§ααααααα·αααα·α vdev)α αα αααα»αααα vdev ααΈαα½ααααΆαα§ααααααα·ααα½α α¬α αααΎαα α§ααααααα·αααα·αααΆαα αααΎαααααΌαααΆαααααΎαααααΆααααΆααααα»ααα·ααααααααΆαααα ααα»ααααααΆαααααΆαααααα½α vdev ααΆα αααΎααα½αααΆα CACHE, LOG, αα·α SPECIAL α αααααα vdev ααΈαα½ααβα’αΆα βααΆαβαααααΎαβαα½αβαααα»αβα αααα 1 topologies: α§ααααααααα½α (α§ααααααααα½α) RAIDz2, RAIDz3, RAIDzXNUMX α¬αααα αα (αααα αα)α
RAIDz1, RAIDz2 αα·α RAIDz3 ααΊβααΆβααααααβαα·αααβααβα’αααΈβαααβααα»αααβααααβααΎαβα α βααΆ RAID ααααΎβαααα (α’αααααααααΌα)α 1, 2 αα·α 3 αααα ααΎα ααα½ααααα»α parity ααααΌαααΆααααα αααααααΆααααααααα·ααααααααΈαα½ααα αααα½αα±ααααΆαααΆα ααααα‘αααααααΆααααΆαααααΎααααΆ α§ααααααα·αααα·α RAIDz α ααα αΆαααΆαααααΎααααΆαααααΆαααααααΆαααααΎαααααΆαα ααΌααΆααααΆαα α’αΆαα RAIDz α’αΆα ααΆαααααααΆαα αααΎαααΌα αααααΆααΆααααα»αααααΎααααΆα ααααα·αααΎααΆααΆαααα½αααα ααΆααΉαααΆαα α αΎαααα’αΆααααα»ααα»αααΆαα½αααΆα
αα αααα»αα§ααααααα·αααα·αααααααα»ααααα αΆαα (αααα αα vdev) αααα»αααΈαα½ααααααΌαααΆααααααΆαα»ααα ααΎα§αααααααΈαα½αααα αααα»α vdev α αααααΈααΆαααα ααααΈαααΊααΆααΏαααααααΆαααα»αααααα ααα»ααααα ααα½αα§ααααααααααααΆαααΆαα½αα’αΆα αα αααα»ααααα αααα½α - ααΈααααααΌαααΆαααααΎααΆααΉαααΆαααα αααα»αααΆαααα‘αΎααααααααΆααααααΎα±αααααααΎαα‘αΎαααΌαααΆαα’αα»ααααααΆαα’αΆα αα·αααΆαα’αααααααααα α»αα αααα αα vdev α’αΆα αα½α αα»αααΈααΆααααΆαααααΆαα½α αααΆαααΆαααΆαα αα ααΆααα§ααααααα½ααα αααα»α vdev ααααααααΎαααΆαα
vdevs αααα½αααΊααΆααααααααααΆααα α§ααααααα·αααα·αααααααααΉααα·ααα½α αα»αααΈααΆααααΆααααααα½ααα - α αΎαααααα·αααΎααααΎααΆαααααααααα»αα¬ vdev αα·ααααααααΆααααΆαααααααααΆααΉαααΆααα αααααΆαααααααΆαα’αΆαααΆααααΌαα ααΌααααααααααα ααΈαααα
CACHE, LOG, αα·α SPECIAL VAs α’αΆα ααααΌαααΆααααααΎααααααααΎ topologies ααΆαααΎααΆαα½α - ααα»ααααααααΌαα αΆαααΆααΆαααΆααααα SPECIAL VA ααΆααααααΆααΆαααΆαααααα’αΆα ααΌα ααααα αΎα topology αααααααΌαααΆαααα αααααααΌαααΆαααααΆααααΆαααααΆααα
α§ααααα
ααααααα ααααΆααΆααααααααΆαααααααα»ααα αααα»α ZFS - ααΆααΆα§αααααα αΌαααααΎαααα ααααααααα»αα ααΌαα αα αΆαααΆα§ααααααα·αααα·αααααΌαααΆααααααΎαα‘αΎαααΈα§αααααααΈαα½αα ααααααααααααα»ααα½αααααΌαααΆααααααΎαα‘αΎααααα§ααααααα·αααα·αα
ααΆα - ααΆαααααΆαααα·α α¬ααΉα - ααΊααΆα§ααααααααα»αααΌαα αααα»ααααααααΌαααΆαααααΎααΆαααα»αα’αΆααΆααα vdev α ααααααΆαααΆααααα α§αααααααΆαα½ααααααΆαα’ααααα·αααααΆαα αααα»α /dev ααΉαααααΎ ααΌα ααααα’αΆαα RAID αααααααΉαααΆααααΌαα’αΆα ααααΌαααΆαααααΎααΆα§αααααααΆα ααααα‘ααα
α―αααΆααα
ααΆααααααΊααΆα§ααααααααα»ααααα½αααααααΆαααααα»ααα½αααα vdev α’αΆα
ααααΌαααΆααααααΎαα‘αΎαααΈα α’αΆαααΆαααααααΈ
α’αααβα’αΆα
βαααααΎαβααααα»αβααΆαααααβααΈβα―αααΆαβααΌα
βαβαααα»αβαααβααβααα»ααααΆαβαα·ααΆααΈβααα»ααααα - ααα»ααααβαα»αααααα
βαα»αβα’αΆαβααΆααααΌα αα·αβαααΆαααΆαα»βααααααΆβαααααΆααβαα
α αΌααα·ααΆαααΆα’αααα ααααΆαααααΆαααΈααααα ααΎααΆαα ααα½αααααΆαααΈ α αΎααααααααΉαααααΎααΆα 10 TB (~9300 GiB) ααα»ααααα’ααααα·αααααΆααααΆαα½αααΆαααααΆαααααΉααααααΌαααΆαααααα’ααααααα»αα αα αααα»αα§ααΆα αααααΆαααΎ ααΎααααααΎαααααα»αααΆαααααααΈα―αααΆαααΌα ααααα»αααααααααα»ααααΆααα·ααΆααΈ α αΎαα₯α‘αΌααααααΎαααΉαααΆ RAIDz2 vdev ααααΆα 10 TB α ααα½αααααΆαααΈαααααααΌααααααααΆαααααΎααααΆααααΆα 50 TiBα
α§ααααααα·ααααα½ααααααΊ SPARE (ααααα)α α§αααααααααΌααααα αα·αααΌα α§αααααααααααΆαα ααΆαααααα·αααα·ααααα’αΆαααΆααααΌα αα·ααα·αααααααααΆααα§ααααααα·αααα·ααααα½αααα ααααα·αααΎ vdev αα αααα»αα’αΆααααΆααα α αΎαα§αααααααααααα½αααααΌαααΆαααααΆαααα α’αΆα α αΎαα’αΆα ααααΎααΆα αααααΆααΉαα αΌααα½αααΆαα½α vdev ααααααααααααΆαααααααααααααααααα·α
αααααΆααααΈααααΆαααα vdev ααααααααααααΆαα α§ααααααααααα αΆααααααΎαααα½αα αααΆααα αααα α¬αααααΎαα‘αΎααα·αααΌααα·ααααααααααα½αααααΆααα ααΎα§ααααααααααΆααα αα αααα»α RAID αααααααΈαααααααΌαααΆαααα α ααΆααΆααααΆαα‘αΎααα·αααααααααααα αααα»α ZFS ααΆααααΌαααΆαααα α ααΆ resilvering α
ααΆααΆααΆαααααΆαααααα»αααΆαααααααααΆααααΆα§αααααααααααα·ααααα½αα§αααααααααααΆαααααΆα’α α·ααααααααααα αααααααΆααααααΆααΆααααα½αααααααα’αΆααααααΎααααΈααΆααααααααααααααΆααα vdev ααααΌαααΆααααααΆαααααααα αααααΆααααΈα’αααααααααααααααα½α vdev ααααααΆααα ααΆααααααααΌαααΆαααα αααααααΌαααΆαααααΆααα α§αααααα’α α·ααααααααααα α αΎα SPARE ααααΌαααΆαααααΆα αα ααααΈ vdev α αΎααααα‘αααα ααααΎααΆααα·αααΆααααααααααααααααΆααα’αΆαααΆααααΌαα
αααα»ααα·αααααα αααα»α αα·αααααα
αααα»ααααααΆαααααααα»αα’ααΆαααΎααααΈααααα ααΎααααΎα ZFS ααααααΎαααΊαα·α ααΆαα’αααΈαααααααΉα αα·αα αααΎααααα’αααΈααααααααα·αααααααααα½αα―αααααΌαααΆααααα α αα·ααααααΆαα»αα ααΎααααα»αααααααααα·ααα½αα ααα½ααα ααΈααα - ααΌα ααΆ metaslab - ααΎααααΈαα»αα±αααααααΆαααααααΆααααα’α·αααααααααααααααΆααΆααααααΉαα’αααΈαα ααΆααααααααααΆααααΌαα
αααα»ααα·αααααα (αααα»ααα·αααααα)
αα
αααααΎααααααΎααααα»ααα·ααααααααααΌα ααΆαααα αΆαααα αα’αΆααααααΆαααΆααα’ααα αααααΆααααααΎααααααααΌααΆ - α αΎαααααΆααααααΌαα
ααα»α
ααααα ααααααα!
Zvol ααΊαααααΆαααααααααΆαα
αααΎαααααΆααααααΆαααα»ααα·αααααααααααα
ααααΈαααααΆααααααααααα―αααΆαααααααΆ αααααΎααααα»ααααα½ααα
ααΈαααααΆαα½αααΉαααααααααα―αααΆα ext4 ααααααΆα
αααα»ααα·αααααα ZFS ααΊαααα αΆαααααα ααααΉαααααααααα―αααΆααααααΆααααααααααααΆαα ααΌα ααααααααα―αααΆαααααααΆααα αα glance ααααΌαααΆααΎααα ααΌα ααΆ "ααααΆαααααααα½ααααααααα" α ααα»ααααααΌα ααΆααααααααα―αααΆααααα’αΆα ααααααΆαααααααΆ αααα»ααα·αααααα ZFS ααΈαα½ααααΆααααα»ααααααααααααααα·ααΌαααααΆαααααΆαααααα½αα
ααΆααααΌα αααα»ααα·ααααααα’αΆα
ααΆαααΌααΆαααααΆααααααα ααααα·αααΎααααα zfs set quota=100G poolname/datasetname
αααααΆαααα α’αααααΉααα·αα’αΆα
ααααααα
αααααααΆαααααααΆαααα /poolname/datasetname
α
αααΎαααΆα 100 GiB α
αααααΆααααααααΆα - αα·αα’ααααααΆα - αααααααΆαα
ααΎααααααΆααααΈαα½αα? αααα»ααα·ααααααααΈαα½ααααΆαααααααααααΆαααααα½αααΆαααα
αααα»αααΆααΆαα»αααα ZFS αα·αααΆααΆαα»ααααααααααααααααα αα·αααΆααααααΆααΆααααΆααα»ααα
αααα»αααΆααΆαα»αααα ZFS αα - α’αααα
αΆααααααΎαααααααααα’αΆαα αΎααααααΆααααααααΌαααΈαααα»ααα·αααααααα½ααα
αααα»ααα·αααααααααααΆααα α§ααΆα ααα, pool/parent/child
αααααΆαααααα»ααα·αααααααααααΆαααααα child
αα
ααααααααα»ααα·αααααααα parent
αα
αααα»αα’αΆααα½ααααααΆααααααα
αααααααα·α pool
.
ααΆαααααΆαααΎα α
ααα»α
αααααααααααα»ααα·ααααααααΉαααααΎααΉααααααααααααΆαα
αααα»αααΆααΆαα»αααα ZFS αααααΆααααααΆα
α»α
ααΆααα»α - α’αΆααααααΆαααααα pool
ααΆαααααααΆ /pool
, αααα»ααα·αααααα parent
ααΆαβααα‘αΎαβαα
βαααα»α /pool/parent
αα·ααααα»ααα·αααααααα»ααΆα child
ααΆαβααα‘αΎαβαα
βαααα»α /pool/parent/child
. ααααααΆαααΆααααα α
ααα»α
ααααΆαααααααααααααααααα»ααα·ααααααα’αΆα
ααααΌαααΆαααααΆααααααΌαα
ααααα·αααΎααΎααααααΆαα zfs set mountpoint=/lol pool/parent/child
αααααΆαααααααα»ααα·αααααα pool/parent/child
ααΆαααα‘αΎααα
ααΎααααααααααΌα
/lol
.
ααααααααΈααΎαααα»ααα·αααααα ααΎααα½ααα·ααΆαα’αααΈααα·ααΆα (zvols) α ααααα·αααα‘ααααΊαααα αΆαααααα ααααΉααααα»ααα·αααααα ααΎααααααααΆαα·αααΆαααααααααα―αααΆααα - ααΆααααΆααααααΆα§ααααααααααααΆααααα»αααααα α§ααΆα αααα’αααα’αΆα
αααααΎα zvol
ααΆαα½αααααα mypool/myzvol
αααααΆααααααααΎαααααααααΆαααΆααΆαα½αααααααααα―αααΆα ext4 α αΎααααααΆααααααααααααααααα―αααΆαααα - α₯α‘αΌααααα’αααααΆαααααααααα―αααΆα ext4 ααα»ααααααΆαα½αααΉααα»αααΆααα»ααααα·ααΆαααΆααα’αααααα ZFS! ααΆα’αΆα
α αΆααααΌα
ααΆαααα½αααα
ααΎαααΆαααΈααααα½α ααα»ααααααΆααΆααααα
αααΎααααα»αααΆαααΆαααααα·ααΈααΆαααααααα
αααααΆαα
ααα§ααααα iSCSI α
αααα»α
α―αααΆαααααΌαααΆαααααΆαααααααα»ααα½α α¬α
αααΎαα αααα»αααΈαα½ααααααΌαααΆααααααΆαα»ααα
ααΎα§ααααααα·αααα·ααα½αα ααα ααααα»αααΆααααααΆααααΎααΉααααΆαααΆαααααα ααα ααααααααααΆααα»ααααα’αΆα
ααααΌαααΆαααΆααααααααα
2^ ααΆαααααΆααααααΌαααααα·αααΎααΆααΆααα·ααααααααααΆ α¬α―αααΆαααΌα
αα½αα
ααΎααα·αααΆ αα·αααΆ αα»ααα·ααΆααααα’αααΈααΆααα·αααααΎααΆαα’αα»αααααααα ααααα·αααΎα’ααααααααααΆαααααΆααααααΌαααΌα
ααα
αα
αααα»ααααα»α ZFS αα·ααααααααΆααα’αα αα½αααΆαααα·ααααααααααΆααααΌαααΆααααααΆαα»ααααα»ααααα»αα ααα ααααα»αα’αα·ααααΆαααααΆαααααα»ααα·ααααααααΈαα½ααααααΌαααΆαααααααα
αααα»αααααααααααααα· recordsize
(ααα ααααααααααΆ) α ααα ααααααααααΆα’αΆα
ααααΌαααΆαααααΆααααααΌα ααα»ααααααΆααΉααα·αααααΆααααααΌαααα α α¬ααΈααΆαααααααα»αααΆαα½ααααααααΌαααΆαααααααα½α
α αΎααα
ααΆαααααα»ααα·ααααααααααα - ααΆαααααΆαααααααα»αααααΈ ααΌα
ααααα½αααααααΌαααΆααααααα
ααΎααααααααΆαααΆααααααΆαααααααααΈααα ααα ααααααααααΆααααΆαααΎααα
αα
α»ααααααααΊ 128 KiBα ααΆααΆααααααααααΆααααααΌαααααααΆααα½α αααααΆααααααααα·αααα’α₯αααα
αα ααα»ααααααΆαα·ααα½αα±αααααααααΆα
αα
αααα»αααααΈααΆαα
αααΎααααααα Recordsize
α’αΆα
ααααααα
αααααααΆαα½αααΈ 4K αα
1M (ααΆαα½αααΆααααααααααα·αααααα recordsize
α’αααα’αΆα
ααα‘αΎαααΆααααα
αααΎα ααα»αααααααααααααΆαααα·αααα’)α
αααα»αααΆαα½ααααα ααΎαα·ααααααααα―αααΆααααα½α α’ααααα·αα’αΆα α ααααΆα αα―αααΆαααΈααααααααααΆαα αααα»ααααα»ααααα½αααΆαααα α―αααΆαααΈαα½ααααΆααααα»ααα½α α¬α αααΎα α’αΆαααααααΎααα αααααααΆα ααααα·αααΎααα αα―αααΆαααΌα ααΆαααα ααααααααααΆ ααΆααΉαααααΌαααΆααααααΆαα»ααααα»ααααα»αααΌα ααΆαα§ααΆα ααα αααα»ααααααΆαα―αααΆα 2KiB ααΉαααΆααααΆααααααααα 4KiB αα½ααα ααΎααΆαααα»αααααα
ααααα·αααΎα―αααΆαααΆαααα ααααααα α αΎαααααΌαααΆααααα»αααΆα
αααΎα ααααααααααααΆααΆααα’αααααααΆαα―αααΆααααααΉαααΆαααα α recordsize
- αα½αααΆααααΆαα»α
α»αααααααααααΆαααααααααΆαααααα’αΆα
ααΆα
zvols αα·αααΆααααααααααααααα·ααα recordsize
- αααα½ααααα·α αα½αααααΆααααααααααααααα·ααααΌα volblocksize
.
αα·ααα
αααα»αα’ααΆαααΌαααααΆαα α»αααααααααα»αααΊαα·αααα ααΆααΆα―αααΆααΌαααααααΌα αααα»ααααα’αΆα ααααααα α¬α’αΆαααΈα§αααααααΌαααααΆαα α’ααααΆα αααΎααααααααα ααΆαααΆαα αααΎαααΆαααααΎααααα 512 ααα ααααΈαααα ααΆαααΆαα αααΎαααααΌαααΆαααααααα ααΆαααααααααααααΆααααααα 4 KiB α αΎααα½αα ααα½α - ααΆαα·ααα SSDs - ααΆαααααα 8 KiB α¬α αααΎαααΆααααα
αααααααα ZFS ααΆααααααααααααααα·αααα’αα»ααααΆαα±ααα’ααααααααααα αααααααααααα αααααααααααααα·αααα ashift
. ααΆαααΆααααα
ααααααααα·α
ααΆαααααΆααααααΌαααΊααΆα’αααΆα
ααααΈαα α§ααΆα ααα, ashift=9
ααΆααααααΆααα αααααααα 2^9 α¬ 512 ααα
ZFS ααΆααα½αααααααααααααα·ααααα·ααΆααααααΆααααααααΆααααα’α·αα’αααΈα§ααααααααα»αααΈαα½αα αα ααααααααΆααααΌαααΆααααααααα vdev ααααΈ α αΎαααΆαααααΉααααΈααΉαααα‘αΎα ashift αααααααααααααααα·αααΆαααααΉαααααΌααααααα’ααααΎααααααΆααααα ααΆα’αα»αα ααααΆαααΆα αααΎααα·ααΆαα’αααΈααα αααααααααααα½ααα ααΎααααΈαααααΆααΆαααααααΆααΆαα½α Windows XP (ααααα·αα’αΆα αααααΆαααΌα drives ααΆαα½αααΉαααα αααααααααααααα)α
αααααΆααααααΆα’αααααααααααα ZFS ααααΌαααΆαααααΆααααΆαααααΆααα±ααααΉαααΈααα αααΆαααααααααα§ααααααααααα½ααα αα·ααααααααααα ashift
. ααααα·αααΎ ashift ααααΌαααΆααααααααΆαααα αααα
ααα½αααααααα·ααααα·ααΆαα’αΆα/αααααααΎαα‘αΎαααΆαααΆααΆααΆαααααα ααΌα
ααααααΆαααααα 512-byte "sectors" αα
αααα»ααα·ααα 4 KiB αα·αααααΆααααΆααααααΆααααΌαααααα "sector" ααααΌα αααααΆααααα’αΆαααααα 4 KiB ααααααααΆααΆαα½α "sector" 512-byte ααΈααΈααααααααΆαααα‘αααα
ααααΈ αα·ααα 4 KiB α αΎαααΌα
αααααα
ααΎα αααααΆααααΆαα»ααΈαα½ααα
αα
αααα»ααα·αααα·α ααΆααα·ααααααααααααααΆααααα Samsung EVO SSDs ααα ashift=13
ααα»αααα SSDs ααΆααααααα·ααΆαα’αααΈααα αααααααααααα½ααα α αΎαααΌα
ααααααααΆαααΎαααααΌαααΆαααααααα
ashift=9
. ααααα·αααΎα’αααααααααααααααααααααααααΆααααα·ααααααα·αααααΆααααααΌαααΆααααααααααα SSD αααααααΎαααΆα ααΊαααΆα HDD αααΆαααα·αααααααΆα
αααααΆααααΆααααααααααααααΆααααα αααααα ashift
ααΆααααααααα·αααΆαααΆααα·αααααα αα·αααΆαααΆααα·αααααΎααΆαα’αα»ααααααΆααααααααα α αΎαααΆαααΎαα‘αΎαααααα αααααα·αααααΎααΊααααΆααααααααα (α¬ααΌαααααΆαα½αααΉαααΆααααα αΆαααααααΆαααΎα)α ααΌα
ααααα αΎα ααΎαααΌαααααΆααααΆααα»αααΆαααΆ ααΌααααΈααααααΆαααααΆααααααααααααΎααααα 512-byte ααα‘αΎα ashift=12
α¬ααΌααααΈ ashift=13
ααΎααααΈααααααα»αααΉαα’ααΆααααααααα»αα
α·αααα
αααααααααααααα· ashift
ααααΌαααΆαααααααααααΆααα§ααααααα·αααα·α vdev ααΈαα½αα αα·α αα·αααααααααΆααα’αΆααααααΌα
αααααα»αααααΆα
αααΎααα·ααα»α - α αΎααα·αααααΆααααααΌααααααΆααααΈααα‘αΎαα ααααα·αααΎα’ααααα»ααααα
ααααα ashift
αα
αααα’ααααααααα vdev ααααΈαα
α’αΆαααΉα α’αααααΆααααα»αα’αΆαααΉααααααααα·αα’αΆα
ααα½αααααΆαααΆαα½αααΉαα§αααααααααΎαααΆαααΆα α αΎαααΆααααααΆαα·αααΆααααααΎααααααααααααα
ααΈααααααΆαα’αΆα α αΎαα
αΆααααααΎαα‘αΎααα·αα ααΌααααΈααααΆααα vdev α
ααααααΉααα·ααα½αααααααααα’αααααΈααΆαααααααα
ααΆαααααααααααααΌα
αααα ashift
!
ααααααΆαα ααααααΎααΆαααααα
ααααα·αααΎααααααααα―αααΆαααααααΆααααΌαααΆααααααααΆααααΎαα·αααααα ααΆααααΆααααααΌααααα»αααΈαα½αααααααΆααΆα
ααααααααα―αααΆαα
ααααααΎααΆααααααααααααααααααα»αααααΈ α αΎααααααΆαααααααααααααα
αΆαα
αα
αααα»αα’ααΌααΈ ααααα·αααΎααΎααααααΎααααααΎαααΉαααΈααΆααααΆααααααααααααα»α ααα "αα·ααααααααααΆααα»αααααα»α" ααααααΎαααααΌαααΆαααααΎα±ααααΆαααααα
ααΆ "αααααΌααα·αααααα" αααααααΆααααΈααΈααααααα
ααααΆαααααααΆαααααααΈαααααααααααααα
α₯α‘αΌαααα ααΎαα’αΆα
ααα½αααΆααααα·αααααα’αα½αα’αααΈαααααααααΆαα
ααααααΎααΆααααααααΌαααααααΎαααΆα - αααα»αααΈαα½ααα’αΆα
ααΆααααααΌαααα
αααΎα α αΎαααΉααααααα αΌααααααΌααααααααΆαααααααααΆααα’ααααααΌαααΆαααααααΆα
ααααααΆαα ααααααΎααΆαααααα (CoW) ααΊααΆααΌαααααΆαααααΉαααα’αααΈαααααααΎα±αα ZFS ααΆααααααααααα’ααα αΆααααα½αα ααααααα·αααΆααΌαααααΆαααΊααΆαααα - ααααα·αααΎα’ααααα½αααααααααα―αααΆαααααααααααΈααΎααααΈααααΆααααααΌαα―αααΆα ααΆααΉαααααΎααΌα α’αααΈαααα’αααααΆααα½αα ααααα·αααΎα’αααααααΎα±ααααααααααα―αααΆαα ααααααΎααΆααααααα±ααααααΎααΌα ααααΆ ααΆααΉααα·ααΆαααΆ "ααααααα" ααα»αααααα»α αα’αααα
αααα»ααα αα·α ααααααααα―αααΆαα ααααααΎααΆαααααααααααααααααααΈαααααα»ααααααΆααααααα α αΎααααααΆααααααααΎαα αα α»ααααααααΆααα·ααααααααααΆααααα―αααΆαααΎααααΈααααΆα ααααα»αα αΆαα αα·αααααΆαααααα»αααααΈαααα’αααααΎαααααααααα ααΆα
ααΆαααααΆα ααααα»αα αΆαα αα·αααααΆαααααα»αααααΈααααΌαααΆαααααΎαα½α αααα»αααααα·ααααα·ααΆααα½α ααΌα ααααααΆαα·αα’αΆα ααααΆαααΆααα - ααααα·αααΎα’ααααα·αααααΎαααΆααααααΆααααΈααΆααΎαα‘αΎα α’αααααΆαααααααααΈααα―αααΆα α αΎαααααα·αααΎα’ααααα·αααααΎαααΆααα»α α’αααααΆαααααα αΆααα . αααα»αααααΈααΆαααααααΆααΉααα·αααΆααααααααα αααα»αααααααααα―αααΆαααα
ααΆαα
ααααααΎααΆαααααααα
αααα»α ZFS ααΎαα‘αΎααα·αααααΉααααα
ααααα·αααααααααα―αααΆαααα»ααααααα ααα»αααααααα
ααααα·ααααααααααααΆααααααα αααααΆααααααΆ ZFS αα·αααααΌαααΆααααααΆαααααα
ααααααααα (
ZILα αααααα ααα»α ααααΆ ZFS
αααααααα ZFS α
αΆααα
ααααΆαααααααααααααΎααααΆααααααααα»ααα·ααΈαα·ααααα½α - ααΆαα»αααΆααααααα’αΆαααα ααα»ααααααααΆαααααααΆαα»ααα½αααΆαααα»α ZIL αα»ααααααααααα½αααΆααΆα’α
α·αααααααααα
αααααααα αα½αααΆαα½αααΉαααΆααααααα’ααααΆαα
ααΆααααααΆ αα·αααααααααααααααα
ZIL αα·αααααΌαααΆαα’αΆααααααααααα ααα»ααααααΆα’αΆα
αα
αα½α
αααααΆααααΈααααααααααΆαα
SLOG α¬α§ααααα LOG ααΈααΈαααΊααααΆααααααΆα§ααααααα·ααα - αα·αααΏααααα»α - vdev ααα ZIL α’αΆα
ααααΌαααΆααααααΆαα»αααΆα
ααααα‘ααααΈαααααααααα»αααααΆαα
αααααΆααααΈααΆαα αα·ααααααααααααααΆααα’αααα
αααα»α ZIL ααααΌαααΆαα
αΆααα‘αΎααα·α - αααα»αααααΈααα ZIL αααα·ααα
ααΎ SLOG ααΌα
ααααααΆααααΌαααΆαα
αΆααα‘αΎααα·αααΈααΈααα
ααΆαααΈαααααααααααΆαααααααααα·ααααα·ααΆαααααα - ααααΆααααα (ααααΆααααα) αα·αα’ααααΆα (α’ααααΆα) α αααααΆααααααα»αααΆαααΆαααΆαα αααΎα ααΆααααααααΆαα αααΎαααΊα’ααααΆα - ααααααααα―αααΆαα’αα»ααααΆαα±αααα½αααΆααααΌαααΆααααααΌααααα»α αα·αα ααααΆααΆα α ααΆαααααααααΆααααα αα αα·αααΆαααΎαα‘αΎααααΆαααααΆααα
ααΆααααααααααΎααααΆαααααααΊααΆαααα αΆαα»αααααΆααΆαααααα»αα αα ααααααααα·ααΈααααΎαα»αααΆααααααααααΆααααα ααΆααααΆααααααααααα―αααΆαα "α’αααααααΌααααα αΌαααΆαα α’αααα αα αΆαααααα·αααΆαααΉαααααααΆα ααα» α₯α‘αΌαβααααα αΌαβααβαααβαααβααα αααα»αβαα·αβα’αΆα βααααΎβα’αααΈβααΆαβαααβααΒ»α ααΌα αααα ααΆααααααααααΆααααααα½αααααααΌαααΆαααααααααΆα α·ααααα ααΆααααΆαααααΆαα α αΎαααααα·αααΎααΆαααααΎαααΆαααααα α¬ααΆαααααααααΆααααααΌα αααααααΌα αααααααα
ZFS αααααααααααΆααααααααααΆααααααα»αααΈααααααααα―αααΆαααααααΆ - αααα½αα±ααααΆαααααααα½αααΆααααΆαααα αααααααααα»αααααααΆ ZFS ααααααααΆαα αααααααααα»ααα·ααααααα α ααΆ ZFS Intent Log α¬ ZIL α αααα·α ααΊααΆαααααααααΆααΆααααα ααααα αα αααααα·ααααα»αααα· αααααααΌαααΆααααααΌααααα»ααα½αααΆαα½αααΉαααααΎαααααα’ααααΆαααααααΆ αααααααΌααααα αΌααα αααααααααα»ααα ααααααααααΆ TXGs ααααααΆα₯αααα αα (αααα»αααααα·ααααα·ααΆα)α
αα αααα»αααααα·ααααα·ααΆαααααααΆ ZIL ααααΌαααΆαααααααα αα·ααα·αα’αΆααααααααα αα αααααααα½αααααα»αααααααα αααααααααΆααΈ ZIL ααααΌαααΆαααααααααΆα α·αααα ααααααΆααααα»αααααΆαααα αααα»α TXGs ααααααΆααΈ RAM αα½αααααααΌαααΆαααααΆα αα ααααΈ ZIL α αααααααΆαααα½αααααααααααΌαααΆαα’αΆαααΈ ZIL ααΊαα ααααααα’αΆαααααΌαααΆαααΆαα αΌαα
ααααα·αααΎ ZFS αααΆααα - ααααααααααααα·ααααα·ααΆαααΆαα α¬ααΆαααΆα αα ααααα’αααα·αααΈ - αααααααααααΆααα·αααααααα αααα»α ZIL αα·αααααααααααΉαααααΌαααΆαα’αΆαααα‘α»ααααααΆαα αΌαα’αΆααααααΆαα (α§ααΆα ααα αα αααα αΆααααααΎααααααααααααααααααααααΆααα‘αΎααα·α)α α’αααΈααααααα αααα»α ZIL ααΉαααααΌαααΆαα’αΆα αααααΆααααΆαααα»ααα ααΆ TXGs αααααααααααΆα α·αααα ααααααΆααααα»αααααΆαα α αΎααααααΆααααααααΌαααΆαααααΆα αα ααααΈ ZIL αααα»αα’αα‘α»ααααααααΎαααΆαααΆαα αΌαα
ααααΆαααααα½α vdev αα½αααααΌαααΆαααα α ααΆ LOG α¬ SLOG αααααΆα§ααααααααααΆααααααααααα LOG α ααΆααΆαααααααααα½α - ααΎααααΈαααααα’αΆαααΆα ααααα‘αααα½α αα·αααΏαααΆα vdev ααααααααΉαααΆααααααα αααΎα ααΎααααΈαααααΆαα»α ZIL αααα½αα±ααααΆααααααΆαα»α ZIL αα ααΎα αΆα vdev ααααΆααα ZIL αααα½αααΆααΆαα₯αα·ααΆααααΌα ααααΆαα·αααΆααΆααααΌαααΆααααααΆαα»ααα ααααααααΆααααα ααα»ααααααααα·αααΎ LOG vdev ααΆαααααΎαααΆαααααααααααααααΆαα ααΆααααααααααΆαααααααΉαααΏαααΆααα»αα
ααΆααααααα vdev ααΆαα½α LOG αα
α’αΆααα·αααααΎαααΆαααα αα·αα’αΆα
ααα ααααΎα±αααααααΎαα‘αΎαααΌαααΆααααααα’ααααΆα - αααααΈααΆα’ααααααααα±αααααααααΆααα’αααα
ZIL ααΆαα½α zfs set sync=always
αα½αααααΉααα
ααααααΌαααΆαααααΆαααα
αααααααααα»αααααΆαααα
αααα»α TXG ααΆαααααααΌα
ααααΆ αα·ααααα»αααααΏαααΌα
ααααΆαααααααΆααααααα ααα»α ααΆααααααα’ααΆαα’αα»ααααααααΆαααααα½ααααααΊααΆαααΊααααΆαααααΆααααααααααΆααααα (ααααααααααα ααα»ααΆααααααΏααααααΎαααααΏαααααα·ααααα·ααΆα) α sync
).
ααααααΆαααΆααααα αα αααα»αααα·ααΆααΆααααααΆαααΆαααΆααααααααααΆαααααα αααΎααα½α α αΎα vdev LOG α’αΆα αααααΎαααααΏαααΆααααααα’ααααΆα αα·αααΆαα’αΆαααααα·αααΆαααααΆαααααααΆαααααααααααα ααΆαααΆαααααα αΌαααΆαα» ZIL αα ααΆαα vdev LOG ααΆα ααααα‘ααααΆααααααΆααΆαααΆααααααααααΆαα·α αααααΆαα IOPS ααΎααΆααααα»αααα αααααααΎα’αααααααΎαα‘αΎαααΌαααααΎαααΆαααααΆαα’αΆα αα·ααααααααΆααα’αααααα»αααααα·ααα½αα ααα½αα
ααΌααα
ααααααΆαα ααααααΎααΆααααααααααΆααΌαααααΆαααααΉαα αΆαααΆα ααααααΆααααΆαααααΌαα’αΆααΌαα·α ZFS αα·αααΆαα ααααα’ααααΆαααααααα ααααααααα―αααΆααααααααΆααααααΆαααααα·α ααααααααΆαααααααααααΆααΆααα’ααααΆαα½αααΉααα·αααααααα αα α»αααααα - αα αααα’αααααααΌα α’αααααααΆααααα αααααααααΆαααααα·α αααα
αα αααααααααααααααΆααααΌαααΆααααααααΆααααΎαα ααΎααααααααα―αααΆαααααα ZFS ααααΌαααααααααααααα»αααααΈαα αααααααααααααααα·αααααΎα αααααΆααααααΆααααΆα αααααα αΆαααααααα»αααΈααααααααα―αααΆααα αα α»ααααααα ααα»ααααααααα·αααΎααΌααααα½αα ααα½ααααα αα ααΎαααα»αα αΆαα ααΆαα αααα·αααααΆααααααΌαα αααα»αβα αΆααβααΉαβαα·αβααααΌαβααΆαβααααΆαβα‘αΎαβαα·αβααΆβααα αβαααααβαα αα αΌαβααΆααβααβααΌαααβααΆααα’ααβαααβαααβαααα»αβαααβααααΌαβααΆαβααααααΆα!
ααΆαα αααα
αααααΆααα Steam αααααααα»ααααα»αααααΆα 2015 ααΊ 158 GiB αα·ααα½ααααα
αΌαα―αααΆαα
ααα½α 126 α αααααΊαα·αααΉαααααΆαααΆαααα’αααα»ααααααΆαα rsync - ααΆαα
αααα ZFS ααΎαααααΆαααΊ "ααΏαααΆα" 927% ααα»αααααα
αα
ααΎαααααΆααααα½α ααΆαα
ααααα―αααΆαααΌαααΆααααΆαααΈααα·αααα·α Windows 40 ααα α 7GB αααα½αααΊααΆααΏααα»αααααΆααΆαααααα»αα ααΆαα
αααα ZFS ααΊααΏαααΆα rsync 289 αα - α¬ "αα" 161 ααααΏαααΆα ααααα·αααΎα’αααααΆαααααΆααααααααααΆαααααα»αααΆαα α
rsync ααΆαα½α --inplace α
αα
ααααααααΌαααΆα VM ααααΌαααΆαααααΎααΆαααααααΆα rsync α
ααααΆαααααααΆαααΆαα½αααΆα 1,9 TiB αα·ααααααααΆααααΌαααΆα VM ααααΎααα ααα»ααααααΆαααααααααααΆαα
αααα ZFS ααΏαααΆα rsync ααααα
1148 αα ααΌααααΈααααΆαα½αα’αΆαα»ααααα --inplace αααα rsync
αα
ααααααα’ααααααααΈαααααααααΌαααααααΎαααΆα ααΆαα½αααααΆααααα½ααααα»αααΆααααααααΉαααΆαααααΆαα
ααααα αααααΆαααΌαααααααΆααααααΆααΎαααα
ααα’α»ααα
αα ααΆααααΎααΆαααΆααΎααΎαααααΎ zfs send
ααΌααααααααΆαααα ααΎαααααΎααΆαααααααΆαααα αα·ααααααααααΆααΆααα’αααααααΆαααααααααΆαα½αααΆα αα
ααααααααΎαααααΎαααα zfs send
Π² zfs receive
αα
ααΎααααα
ααΆαααααααΆααααααΉαααΆααα·ααααααα»α αα·ααααααΆαααααααα·α
ααααααα
ααΎαααα»ααα
ααΆαααααα»ααα·ααααααααααα
α
α’αααΈαααΆαααααα½αα±ααα
αΆααα’αΆαααααααα
ααΎαααΈααΈα zfs send
. α₯α‘αΌααααααΎαααΆαααααααααααΈααααααΈαα½ααααΆα poolname/datasetname@1
α αΎαα’αααααααΌαααααΈα poolname/datasetname@2
. ααΌα
αααααα
αααα»αα’αΆαααΎαα’αααααΆα datasetname@1
ΠΈ datasetname@2
α αΎααα
αααα»ααααα»αααααα
αα αΌααααααααααααααΆαααααΌαααααααΌαααα»αααααα datasetname@1
.
αααααΆαααΎαααΆαααΌαααααααααΆαααΆαααααα αα·αααααα
datasetname@1
, ααΎαβα’αΆα
βααααΎβααΆβααΆα αααααα zfs send
ααΎααΆα αα
αααααΎααα·ααΆααα
ααΆαααααααααα zfs send -i poolname/datasetname@1 poolname/datasetname@2
ααΆααααααααααΎαααΎααααα·α
ααΈαα α
ααα»α
ααΆαα½ααααααΆααααα
αααα»α @2
ααΆααααααααααα
αα
ααΎαααα»αααααΈ - ααΌα
ααααααΎαααααΌαααΆαααΆαα·ααΆαααααα»αααΆαααααα
αα
ααΎααααααααααΈα
ααααΆα ααααΎαααΆααααααα send
ααααΆααααααΆααααα ααααΌαααΎααααααααΆαα»ααααΈααΆααα’ααααααα½ααααα
αΌααααα»αααααααΈα send
α αΎααααααΆααααααααααα
ααα»α
α
ααα’α»ααα
αααα»αααΆαααααα Voila ααΎαααΆα @2
αα
αααα»αααααααααααααΈ!
ααΆαα αααααααααααααα’ααααΆα ZFS ααΊααΆααΆααααααα’αααααα½αααΎαα·ααΈααΆαααααααααα·αααΆαααΌαααααΆαααΎααΌααααα»αα ααΌα ααΆ rsync ααΆααΎαα αααα»αααααΈααΆααααΈα ααΆααααα·αααααααααααΆαααααΆααααααΌαααα»ααααααααααααΌαααΆαααααα - ααα»αααα rsync ααααΌαααααΆαα»ααα·α α’αΆα ααΈααΆαααΆααα’αα αα·ααααααααΆααααααΆα ααΎααααΈαα·αα·αααααΎαααααΌα αα·αααααααααααΆα αααα»ααα αα·α ααΆαα αααα ZFS αα·αα’αΆαα’αααΈαααα ααΈααΎαααΎααααα·α - αα·ααααα»αααΆαα½αααααα·αααΆαααααααΆααα αααα»αααΌααααααααΆαα αααααααα
ααΆααααα αΆαααααααααΆααααααΆαα½α
ααααααΆαα ααααααΎααΆαααααααααα½αααααα½αααααααααααααααα αΆαααααα»ααα½ααααααα αα αααα»αααααααααα―αααΆααααααααΈ ααΆααααα αΆααααΆααααα αΆ - ααΆααααααα αΆαα αα·αααααααααΈαααα·αααααααααααΆααααααααααα·ααα αααα»αα αααααααΌα ααααΆα
ααααα·αααΎααΎααα·α αΆαααΆααΎααααααααα·αααααααα αααααΆαααα―αααΆααααα αΆααααααΎαααΈαα·αααΆ megabyte ααΌαααααΈ 0x00000000 α αΎαααΌα αααααα ααΎααα ααΆααΆααααα½αααΆαααααα»αααΆααααα αΆααααΆαα ααααααα½ααα ααΎααΆαα ααα»ααααααΎααΆαα’αααΈααΎαα‘αΎαααααα·αααΎααΎααααα½αααααΆααααααΌααααααααΆαα½αααΉααα·ααααααααααα·αα’αΆα αααα αΆααααΆααα½αααα αααΆααααΌα ααΆ JPEG α¬ pseudo-random noise? ααααα·αααΉαααααΆαααα αα·ααααααααααΆαααααααΉααα·αααααΌαααΆααα½ααα ααα»ααααααααα 256 4 KiB α αΎααα αααα»αααααααααααα ααΎααΆαααΆαααααααααα½αααα»ααααααααααααΌαααΆαααααα»ααα»αα
ZFS αα·αααΆααααα αΆααααα ααααααααααααααΆαααααΆααααααααααααααααΌαααΆαααααααα ααΆαααααααααααααααααα·αααααΎ - αααα»αααΎαααΆααααΆααααααααααα½α 4 KiB α αΎααααααααααΆααααΈααΉαααΆααααΆαα 256 ααα»ααααααααα·ααααααΆαααα αΆαα - ααααααααααΆαααααααααααΈααααααΈ " αααααΆα" ααα―αααΆαααΉαααααΌαααΆαααααααα αααααααααααααααα·αααααΎααααα·ααα·αααΈααΆααΎααα αααααααΆααΆαααααΆααααααΌαα¬α’αα ααΌα αααααααααΆαα ZFS αααααΊααΆααααΆαααΆαααααααΆα
ααΆααααα αΆαα ZFS ααΎαααααΌαααΆααα·αααΆαααααΆαααΎα α αΎααααααααααααααααΌααααα½ααααααααΆααααα’αΆα αααααΆα - αα αα α»ααααααααΊ LZ4, gzip (1-9), LZJB, αα·α ZLE α
- LZ4 α ααΊβααΆβαααα½αβαααααααΆαβααΆαβααααΆαβαααβαααααβααΌαβα’αααααααααααβααβααΆαβαααα αΆαα αα·αβααΆαβααααα½αβααΏαβαααα»αβαααααΆααβααααΈβααααΎβααααΆααβααΆαβα αααΎα - ααΌααααΈβααβαα βααΎ CPU αααβααΆαβααααΏαβααΊαβααβαααα
- GZIP ααΊααΆαααα½ααααααααΆαααααααααααΆ αααα’αααααααΎααααΆααααΌααΈαααΆααα’ααααααΆαα αα·ααααααΆααα ααΆβα’αΆα βααααΌαβααΆαβα’αα»ααααβααΆαα½αβααααα·αβαααα αΆαα 1-9 αααβααΆαβαααΆααΆαααβαααα αΆαα αα·αβααΆαβααααΎβαααΈααΈααΌβααΎαα‘αΎαβαα αααβααΆβααΆαβαααβααααα·α 9 α αααα½ααααααααΆαβααΊβααβααα’βαααααΆααβααααΈβααααΎβα’αααααβααΆααα’αα (α¬βα’αΆα βαααα αΆααβααΆαβαααααβαααααααα) ααα»ααααβα αααΎαβααβααααβαααα αΆβαααΈααΈααΌ - ααααΎβααΆ ααααααα»ααααααααα ααΆαα·ααααα ααααα·ααααααα
- LZJB ααΊααΆαααα½ααααααααΆαααΎααα αααα»α ZFS α ααΆαααααααΎα αΎααα·ααα½αααααΎααααα LZ4 ααΎαααΆααααααα·ααΈα
- α’αΆααααα - ααΆαα’αα·αααΌαααααα·αααΌααα ααΆαα’αα·αααΌαααααα·αααΌαααα ααΆβαα·αβαααβαα·ααααααβααααααΆβααΆααβααβααα ααα»ααααβαααα αΆααβαααβααΌαααβαααα ααΆααααααααααααααΆαααααα»ααα·ααααααααααα·αα’αΆα ααααα½αααΆαααΆαααααα»α (ααΌα ααΆ JPEG, MP4 α¬αααααααααααΆααααα αΆαααα½α α αΎααααααααα) αααααΆαααΆαα·αα’αΎααΎαα·ααααααααααα·αα’αΆα αααα αΆααααΆα ααα»ααααααααα½αααα αααααα·αααααΎαα αααα»ααααααααααΆααααααα
ααΎαααΌαααααΆαααΆααααα αΆαα LZ4 αααααΆααααααΈααααΎααααΆααααααΎαααααΆααα’αα; ααΆααα·αααααΎααΆαα’αα»αααααα
ααααα½αααααααα·ααααααααααα·αα’αΆα
ααααα½αααΆαααΊααΌα
ααΆαα αα·α ααααΎα ααααΎαααΆααααααΆαααα·ααααααααααααΆααΊααααΆααα ααΆαα
ααααααΌαααΆααααΆαααΈααα·αααα·ααααααΆααααΆαααα‘αΎαααααΈααααααααααααααα·ααααα·ααΆα Windows (ααααααααααααα·ααααα·ααΆααααααΆαααα‘αΎαααααΈα αα·αααΆααααΆααα·αααααααα
ααΆααααα»ααα
α‘αΎα) ααΆαα½α compression=lz4
ααΏαααΆα 27% compression=none
αα
ARC - ααααΆαααααααΆαααααα½αα’αΆααΆααααα
ZFS ααΊααΆααααααααα―αααΆαααααΎααααα½αααααααααΎαααΉαααΆααααΎααααααΆαααααΆαααααααΆααα’αΆαααααααα½αα―α ααΆααΆαααΉαααα’ααααΎααααΆαααααααΆαααααααααααααααααααααααα·ααααα·ααΆαααΎααααΈαααααΆαα»αα αααΆααα αααααααααα»ααααααΆαα’αΆαααααΈααα αααα»α RAM α
αααααΈααΆααααΆαααααααΆααααΎααα·αααΆααααα αΆααααα - ZFS αα·αα’αΆα
ααααΎααααα
ααΉαααααΎαααα
ααα’αααα
αα
αΆαααααΈααΆαααΏαααΌα
ααΊααα ααΌα
αααααααα αΆαααααααααΈ malloc()
αα
ααΎααΆααααα
ααα’αααα
αα
αΆαα’αΆα
αααΆαααααααα·αααΎααΆααααΌαααΆα RAM ααααα
αα
α»ααααααααΆααααΆααααα ARC α ααα»ααααααΆαα ααα»ααααα’αααα»αααΆαααααΎααααΆαααααααΆααααααΆαααααα½αααααα’ααα αααΆαα αα
ααΆαααααααΆααααααααα
ααααααααααααα·ααααα·ααΆαααααΎααααααααααΆααααΆααα’αα αα½αααΆαα MacOS, Windows, Linux αα·α BSD ααααΎαααα½ααααααααΆα LRU (Least Used) ααΎααααΈα’αα»ααααααααΆαααααααΆαααααααα αααααΊααΆαααα½ααααααααΆααααααααα»ααααα»αααααΆαααααααΆαα "α‘αΎααα½α" αααααΆααααΈα’αΆαααΈαα½αα α αΎααα»ααααα»α "α α»ααα½α" ααΆααααααΌαααΆα ααΎααααΈααααααααΆαααααΆαααααΆαααααααΆααααααΈ (αααα»αααααα½αααααΌαααΆαα’αΆαααΈααΆα αα·ααααααααΈααααΆαααααααΆαααα) α‘αΎαα
αααα½ααααααααΆαααΆααααααΆααααΎαααΆαααα’ ααα»αααααα ααΎαααααααααααααΆααααα»ααα·ααααααααΆαααΆααα LRU ααΆαααΆααα ααααΆαααΆααα»α - αααααααααα»ααααααααΌαααΆαααΆααΉαααΆαα ααΎααααΈαααααΎααααααααααααΆαααααα»ααααααΉααα·αααααΌαααΆαααα’αΆαααΈααααΆαααααααΆαααααααααα
ααααααα α»ααααααααααΏαααΆααα’αααααααΊααΆααααΆαααααααΆαααααααΆααααΆααΆααααα»ααααααααΆαα αααΎα αααΆααΆααααααΆαααΆαα αΌαααααΆαααααααΆαα (α’αΆαααΈααααΆαααααααΆαα) αα·αααΆααααααΆαααααααΆαα (α’αΆαααΈααΆα)α αααααΊααΆαααα·αα·ααααααΆαααααα»α - αα·αααααΉαααααααΆαααααααΆαααααααΆααααα αΆααααα½αα―αααΆαααααΆαααααααααΏαααΆααα»αααααα ααΆαααααΆαααααααΆαααααααΆααααα’αΆα ααααΌαααΆααααααΎααΏαααΆααα»αααααα αααααΆαααααΆαααααααΆααα αΌαααΆααααα αααΎα ααΆαααααΎαα»αααΈααααα»ααααααααΆαααααΆααΆαααααα·α αα·ααααααααααααΆααααααααΆααααΆαααααΆαααααα ααααααααααΌααα ααααΌαααΆααααααΎααΆαα½αααΆαα
ααα ααααΈααααα·ααααΆα
αααααΆααααΈααΆααα·ααααΆα’ααααααααΆααΌαααααΆααα ZFS - αααααααααΆαα ααααααΎααΆααααααααααΎαααΆα ααααΌα ααΆααααΆαααααααααΆαααααΆαααααα»α α§ααααααα·αααα·α αααα»α αα·ααα αα·αα―αααΆα - ααΎαααααααααα½ααα½α ααΆααα αΎαααΎααααΈαα·ααΆααααΆα’αααΈααΆαα’αα»ααααααΆαααααααααΆαα½αααΉαα ααα½ααα·αα
αα
αααα»αααααααααααΆαα ααΎαααΉααα·αα·αααααΎαααΆαα’αα»ααααααΆαααααααααα’αΆαααΆαα½α vdevs αααα»α αα·α RAIDz αααααΉαααααΆαα
αα·ααα
αα αα·ααααααααΉα RAID kernel αααααααΈαααααΎαααΆαααααααααααααα
ααααΌαααΎαα
ααααααααααααααααΌαααααΆα - ZFS topologies αααα½αα―α - ααα»αααααααααΆααααΈ αααααα α
αΌαααΎαααααααααα½αααΎααααΈαα·ααΆαα’αααΈααΆαααα‘αΎαααααα·ααααααααααααααα αα·αααΆααααααααΌα ZFS αα½αααΆααααΆαααααΎααααΆαααααααα vdev αααα½αααΌα
ααΆ L2ARC, SLOG αα·αααΆααααα
αααα·αααα
ααααα: www.habr.com