ืืืืื ืืื ืืืจ ืื ื ืืืื ื ืืฉืื ืืืื, ืืืฉื,
ืืืื, ืืืื ืืื ืืืื ืืืื ืืืืชืจ ืืืืืจ ืืช ZFS, ืงืืจืืื ืกืงืจื ืื. ืจืง ืืขื ืฉืืืขืชื ืืฆื ืืขื ืฉื ืืคืชื OpenZFS ืืื ืืืจื, "ืื ืืืฉ ืงืฉื".
ืืื ืืคื ื ืฉื ืืืข ืืืกืคืจืื - ืืื ืืืื, ืื ื ืืืืื - ืขืืืจ ืื ืืืคืฉืจืืืืช ืืชืฆืืจืช ZFS ืฉื ืฉืืื ื ืืืกืงืื, ืื ืื ื ืฆืจืืืื ืืืืจ ืขื ืืื ืืืืคื ืืืื, ZFS ืืืืกื ื ืชืื ืื ืืืืกืง.
Zpool, vdev ืืืืฉืืจ
ืืืืืจืืช ืืืืืจ ืืืืื ืืื ืืืืืช ืฉืืืฉื vdevs ืขืืจ, ืืื ืืื ืืืืงื, ืืืจืืขื ืขืืืจ RAIDz2
ืืืจื ืืื ืืื ืกืืื ืืืฆืืจ ืืืืจ ืฉื ืกืืืื ืืืืืื ืฉื vdev ืื ืชืืืืื - ืืื ืืื ืฉืื ืืืจ ืฉืืคืจืืข ืื ืืขืฉืืช ืืืช ืื ืชืจืฆื ืืื.
ืืื ืืืืื ืืืืช ืืช ืืขืจืืช ืืงืืฆืื ZFS, ืขืืื ืืืกืชืื ืืงืจืื ืขื ืืืื ื ืืืืืชื ืฉืื. ืจืืฉืืช, ZFS ืืืื ืืช ืืจืืืช ืืืกืืจืชืืืช ืฉื ื ืคื ืื ืืืื ืืขืจืืช ืงืืฆืื. ืฉื ืืช, ืืื ืืฉืชืืฉ ืืื ืื ืื ืืขืชืงื-ืขื-ืืชืืื ืขืกืงื. ืชืืื ืืช ืืื ืืืืจืืช ืฉืืืขืจืืช ืฉืื ื ืืืื ืืืืื ื ืืื ืืช ืืืขืจืืืช ืงืืฆืื ืงืื ืื ืฆืืื ืืืืช ืืืืขืจืื RAID. ืืกื ืืจืืฉืื ืฉื ืืื ื ืืื ืืื ืืืกืืกืืืช ืฉืืฉ ืืืืื ืื ืืืืจ ืืืืกืื (zpool), ืืืฉืืจ ืืืจืืืืื (vdev) ืืืืฉืืจ ืืืืชื (ืืชืงื).
zpool
ืืจืืืช ืืืืกืื ืฉื zpool ืืื ืืื ื ื-ZFS ืืขืืืื ืืืืชืจ. ืื ืืืืจ ืืืื ืืืฉืืจ ืืืจืืืืื ืืื ืื ืืืชืจ. ืืชืืจื, ืื ืืื ืืื ืืืื ืืืฉืืจ ืืื ืื ืืืชืจ ืืืืชื (ืืชืงื). ืืจืืืืช ืืืจืืืืืืืช ืื ืืืืงืื ืขืฆืืืืื. ืืืฉื ืคืืื ืืื ืืืื ืืืืื ืฉืชื ืืจืืืืช ื ืคืจืืืช ืื ืืืชืจ, ืื ืื ืืืช ืืื ืืื ื ืชืืืื ืืืืืืื ืืืืจืืช. ืืจืืืืช ืื ื ืืชื ืืฉืชืฃ ืืืฉืืจืื ืืืจืืืืืืื.
ืืืชืืจืืช ืฉื ZFS ืืื ืืจืืช ืืืืฉืืจ ืืืืจืืืืื, ืื ืืจืืช ืืืจืืื. ืืื ืฉืื ืืชืืจืืช ืืจืืช ืืืจืืื - ืื ืืื ืืื ื vdev ืื vdev ืืืืื, ืื ืื ืืืจืืื ืืืืืช ืืื ืืืชื.
ืืจืืืืช ืืืกืื ืืืืจื ืืืช ืืืืืืช ืืฉืจืื ืืืืื ืฉื ืืืืื ืื ืืืื ืืืฉืืจ ืืืจืืืืื - ืืืจืืช ืฉืื ืืืืืืช ืืืื ืืืืช ืงืื ื ืฉื ื ืชืื ืื ืืืืืืืื ืื ืื ืืืืืืช ืืช ืืืื ื-vdev ืืืืื ืืคืกืงืช ืืฉืื ืื ืงืจืืกืช ืืขืจืืช.
ืืฉื ื ืืขืืช ื ืคืืฆื ืืคืื "ืคืกื ื ืชืื ืื" ืฉื ZFS ื ืืชืืื ืขื ืคื ื ืื ืืืืืจ. ืื ืื ื ืืื. Zpool ืืื ืื ืืฆืืืง RAID0 ืืืื, ืื ืื ืืฆืืืง
ืืจืื, ืืจืฉืืืืช ืืคืืืจืืช ืืื ืืืืฉืืจืื ืืืืืจืืืืืืื ืืืืื ืื ืืืชืื ืืฉืื ืืคื ืื ืืคื ืื, ืื ืฉืืืืคื ืชืืืืจืื ืืชืืืื ืืืื ืืืงืืื. ืืืืจืกืืืช ืืืืืจืืช ืืืชืจ ืฉื ZFS, ืืฉืืืืฉ ืื ืืืื ื-vdev (ื ืืฆืื) ื ืืงื ืืืฉืืื - ืื ืืืฉืืจ ืืืจืืืืื ืืื ืขืืืก ืืฉืืขืืชืืช ืืืืจ (ืืืืืื, ืขืงื ืขืืืก ืงืจืืื), ืืื ืืืื ืืืืคื ืืื ื ืืืชืืื, ืืืจืืช ืฉืืฉ ืื ืืช ืืืื ืืืืช ืืืืืื ืืืืชืจ ืืืก ืฉืื.
ืื ืื ืื ืืืืื ืื ืืฆืื ืืืืื ื ืืฉืืืืช ืืงืฆืืช ืืชืืื ืืืืจื ืืืช ืฉื ZFS ืืืื ืืืคืืืช ืืช ืืื ืืืฉืืื ืืืืืืื ืืช ืืชืคืืงื ืืชืงืืคืืช ืฉื ืขืืืก ืืืื ืืฆืืจื ืืืฆืืช ืืืคื - ืื ืืื ืื ืขืืฉื ืืืช. ืงืืจื ืืืื ืฉ ืขื ืขืจืืื ืื ืจืฆืื ื ืฉื ืืื ื ื HDD ืืืืืื ื-SSD ืืืืจืื ืืืจืืื ืืืช. ืืืืจ ืื ืฉืืืืื ื ืืื ืขืืืื ืืคืขื ืืืืืจืืช ืืืืฉืืจ ืืืืื ืืืืชืจ, ืืืืืจ ืืืืื ืืื ืืืจืื ืืืื ืืืืฉืืจืื ืืืื.
vdev
ืื ืืืืจ ืืืกืื ืืืจืื ืืืืฉืืจ ืืืจืืืืื ืืื ืื ืืืชืจ (ืืืฉืืจ ืืืจืืืืื, vdev). ืืชืืจื, ืื vdev ืืืื ืืืฉืืจ ืืืืชื ืืื ืื ืืืชืจ. ืจืื ืืืืฉืืจืื ืืืืืจืืืืืืื ืืฉืืฉืื ืืืืกืื ื ืชืื ืื ืคืฉืื, ืืื ืืฉ ืืื ืืืืงืืช vdev helper, ืืืื CACHE, LOG ื-SPECIAL. ืืื ืืื ืืกืืื vdev ืืื ืืืืื ืืืืืช ืืืช ืืืืฉ ืืืคืืืืืืืช: ืืชืงื ืืืื (ืืชืงื ืืืื), RAIDz1, RAIDz2, RAIDz3 ืื ืืจืื (ืืจืื).
RAIDz1, RAIDz2 ื- RAIDz3 ืื ืื ืื ืืืืืืื ืฉื ืื ืฉืืืืืืจืื ืืืืชืืงืื ืืงืจืื RAID ืืืืืืช ืืคืืื (ืืืืกืื ืืช). 1, 2 ื-3 ืืชืืืืกืื ืืืื ืืืืงืื ืืืืืืช ืืืงืฆืื ืืื ืจืฆืืขืช ื ืชืื ืื. ืืืงืื ืืืกืงืื ื ืคืจืืื ืืฆืืจื ืืืืืืช, ืืชืงื ืื ืืืจืืืืืืื ืฉื RAIDz ืืคืืฆืื ืืช ืืืืืืืช ืืื ืืืืคื ืืฆื ืฉืืื ืืื ืืืืกืงืื. ืืขืจื RAIDz ืืืื ืืืื ืืืกืงืื ืจืืื ืืื ืฉืืฉ ืื ืืืืงืื ืืืืืื; ืื ืืื ืืืื ืขืื ืืื, ืืื ืืชืจืกืง ืืืืงื ืืืชื ืืช ืืจืืืช ืืืืกืื.
ืืืืฉืืจืื ืืืจืืืืืืื ืืฉืืงืคืื (mirror vdev), ืื ืืืืง ืืืืืกื ืืื ืืืฉืืจ ื-vdev. ืืืจืืช ืฉืืจืืืช ืื ืจืืืืช ืื ืื ืคืืฆืืช ืืืืชืจ, ืื ืืกืคืจ ืฉืจืืจืืชื ืฉื ืืชืงื ืื ืืืื ืืืืืช ืืืจืื - ืฉืืฉืืช ืืฉืืฉืืช ืืจืื ืืืชืงื ืืช ืืืืืืช ืืฉืืคืืจ ืืืฆืืขื ืืงืจืืื ืืกืืืื ืืช ืชืงืืืช. ืืจืื vdev ืืืืื ืืฉืจืื ืื ืชืงืื ืื ืขืื ืืคืืืช ืืืฉืืจ ืืื ื-vdev ืืืฉืื ืืชืคืงื.
VDEV ืืืืืื ืืกืืื ืื ืืืืขื. ืืืฉืืจ ืืืจืืืืื ืืื ืื ืืฉืจืื ืืฉื ืืื - ืืื ืืื ืืฉืืฉ ืืืืกืื ืื ื-vdev ืืืืื, ืืื ืืืฉืืื ืฉืื ืืืืื ืืืจืก ืฉื ืืืจืืื ืืืื. ืืื ืืืื ืืืื ืืืืจืื ืืื.
ื ืืชื ืืืฆืืจ CACHE, LOG ื-SPECIAL VAs ืืืืฆืขืืช ืื ืืืช ืืืืืคืืืืืืืช ืื "ื - ืื ืืืืจ ืื ืืืืื SPECIAL VA ืคืืจืืฉื ืืืืื ืืืจืืื, ืื ืฉืืืคืืืืืื ืืืืชืจืช ืืืืืฆืช ืืืื.
ืืืฉืืจ
ืื ืื ืจืื ืืืื ื ืืื ืงื ืืืื ื ื-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 ืืื ืืขืจื ืืืขืจืืช ืงืืฆืื ืจืืืื. ืืื ืืขืจืืช ืงืืฆืื ืจืืืื, ืืืื ืจืืฉืื ืืื ื ืจืืืช ืืื "ืกืชื ืขืื ืชืืงืืื". ืืื ืืืืืง ืืื ืืขืจืืืช ืงืืฆืื ืจืืืืืช ืื ืืชื ืืช ืืืจืืื, ืืื ืืขืจื ื ืชืื ืื ืฉื 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
ืืชื ืืืื ืืืชืงืื ืืคืืื ืืืชืจ, ืืื ืื ืจืง ืืขืชืื ืจืืืงืืช ืจืขืืื ืืื).
ืื ืืืืง ืืชืืืืก ืื ืชืื ืื ืฉื ืงืืืฅ ืืื ืืืื - ืืชื ืื ืืืื ืืืืืก ืฉื ื ืงืืฆืื ืฉืื ืื ืืืืืง ืืื. ืื ืงืืืฅ ืืืจืื ืืืืืง ืืื ืื ืืืชืจ, ืืืชืื ืืืืื. ืื ืืืื ืืงืืืฅ ืงืื ืืืืื ืืจืฉืืื, ืืื ืืืืืกื ืืืืื ืืืืง ืงืื ืืืชืจ - ืืืืืื, ืืืืง ืขื ืงืืืฅ ืฉื 2 KiB ืืชืคืืก ืจืง ืกืงืืืจ ืืื ืฉื 4 KiB ืืืืกืง.
ืื ืืงืืืฅ ืืืื ืืกืคืืง ืืืืจืฉ ืืกืคืจ ืืืืงืื, ืื ืื ืืจืฉืืืืช ืขื ืืงืืืฅ ืืื ืืืื ืืืืื recordsize
- ืืืื ืืขืจื ืืืืจืื, ืฉืืืงื ืืขืืงืจื ืขืฉืื ืืืืืช
ื-Zvols ืืื ื ืืก recordsize
- ืืืงืื ืืืช ืืฉ ืืื ื ืืก ืฉืืื ืขืจื volblocksize
.
ืืืืจืื
ืืื ืืื ืืื ืืืืจืื ื ืืืืกืืกืืช ืืืืชืจ ืืื ืืืืืจ. ืืืื ืืืืืื ืืคืืืืช ืืงืื ื ืืืืชืจ ืฉื ืืชื ืืืชืื ืื ืืงืจืื ืืืืืฉืืจ ืืืกืืกื. ืืืฉื ืืื ืขืฉืืจืื, ืจืื ืืืืกืงืื ืืฉืชืืฉื ืืกืงืืืจืื ืฉื 512 ืืชืื. ืืืืจืื ื, ืจืื ืืืืกืงืื ืืืืืจืื ื-4 ืกืงืืืจืื ืฉื KiB, ืืืืืงื - ืืืืืื ืืื ื ื SSD - ืืฉ 8 ืกืงืืืจืื ืฉื KiB ืื ืืคืืื ืืืชืจ.
ืืืขืจืืช ZFS ืืฉ ืืืคืืื ืืืืคืฉืจ ืื ืืืืืืจ ืืืืคื ืืื ื ืืช ืืืื ืืกืงืืืจ. ืื ืืก ืืื ashift
. ืืืืคื ืงืฆืช ืืืืื, ืืฉืืคื ืืื ืืื ืฉื ืฉื ืืื. ืืืืืื, ashift=9
ืคืืจืืฉื ืืืื ืืืืจ ืฉื 2^9, ืื 512 ืืชืื.
ZFS ืืืงืฉืช ืืืขืจืืช ืืืคืขืื ืืืืข ืืคืืจื ืขื ืื ืืชืงื ืืืืง ืืืฉืจ ืืื ืืชืืืกืฃ ื-vdev ืืืฉ, ืืชืืืืจืืืช ืืชืงืื ืืืืืืืืช ืืช ashift ืืจืืื ืขื ืกืื ืืืืข ืื. ืืจืืข ืืืื, ืืื ื ืื ืจืืื ืืฉืงืจืื ืืืื ืืืื ืืกืงืืืจ ืฉืืื ืืื ืืฉืืืจ ืขื ืชืืืืืช ืขื Windows XP (ืฉืื ืืฆืืื ืืืืื ืืื ื ืื ืขื ืืืื ืกืงืืืจ ืืืจืื).
ืืฉืืขืืช ืืืืจ ืืื ืฉืื ืื ZFS ืืืืืฅ ืืืื ืืืขืช ืืช ืืืื ืืกืงืืืจ ืืืืืชื ืฉื ืืืืฉืืจืื ืฉืืื ืืืืืืืจ ืืืืคื ืืื ื ashift
. ืื ื-shift ืืืืืจ ื ืืื ืืื, ืืกืคืจ ืคืขืืืืช ืืงืจืืื/ืืชืืื ืืื ืืืืื ื ืืกืืจืื ืืืืช. ืื, ืืชืืืช "ืืืืจืื" ืฉื 512 ืืชืื ืืชืื ืืืืจ ืืืืชื ืฉื 4 KiB ืคืืจืืฉื ืฆืืจื ืืืชืื ืืช "ืืืืืจ" ืืจืืฉืื, ืืื ืืงืจืื ืืช ืืืืืจ ืฉื 4 KiB, ืืฉื ืืช ืืืชื ืขื "ืืืืจ" ืฉื ื ืฉื 512 ืืชืื, ืืืชืื ืืืชื ืืืืจื ืืืืืจ ืืืืฉ ืืืืจ 4 KiB ืืื ืืืื ืขืืืจ ืื ืื ืืกื.
ืืขืืื ืืืืืชื, ืขืื ืฉ ืืื ืคืืืข ืืืื ื ื SSD ืฉื Samsung EVO, ืฉืขืืืจื ashift=13
, ืืื ืืื ื ื ื-SSD ืืืื ืืฉืงืจืื ืืืื ืืืื ืืกืงืืืจ ืฉืืื, ืืืื ืืจืืจืช ืืืืื ืืืืืจืช ื ashift=9
. ืื ืื ืื ืืขืจืืช ืื ืืกื ืื ืืฉื ื ืืช ืืืืืจื ืืื, ื-SSD ืืื ืขืืื ืืืื ืืืชืจ HDD ืืื ืื ืงืื ืื ืฆืืื ืื.
ืืฉื ืืฉืืืื, ืืืืื ืืืื ืืื ashift
ืืื ืืืขื ืขืื ืฉ. ืืื ืขืื ืฉ ืืืืชื ืืืืฆืืขืื, ืืืืืืื ืืฉืื ืฉืืื ื ืื ืืฆื ืืื ืืื ืกืืคื (ืื ืืคืก ืืืฉืจ ืืืืกื ืืืคืขืืช). ืืื, ืื ื ืืืืืฆืื ืืืื ืืืชืงืื ืืคืืื ืืื ื ืื ืฉืืฉืชืืฉืื ืืกืงืืืจืื ืฉื 512 ืืชืื 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. ืืืืืื ืืื ืฉืืจืฉืืืืช ืืืื ืื ืืืืฉืืจ ืืืืืจืื, ืืืฆืืืจ ืืื ืขื ืืงืฉืืช ืืชืืื ื-ืกืื ืืจืื ืืืช ืจืืืืืช, ืืื ืืืืกืืฃ ืืืืืจ ืืืชืจ ืืืืกืื ื-TXG ืจืืืืื ืืืืืืื (Transaction Groups).
ืืคืขืืื ืจืืืื, ื-ZIL ื ืืชื ืืื ื ืงืจื ืฉืื. ืืืฉืจ, ืืืืจ ืืกืคืจ ืจืืขืื, ืืจืฉืืืืช ืื-ZIL ืืืืืืืช ืืืืกืื ืืจืืฉื ื-TXG ืจืืืืื ื-RAM, ืื ืื ืืชืงืื ืื-ZIL. ืืคืขื ืืืืืื ืฉืืฉืื ื ืงืจื ืื-ZIL ืืื ืืืฉืจ ืืืจืืื ืืืืืืช.
ืื ZFS ื ืืฉื - ืงืจืืกืช ืืขืจืืช ืืคืขืื ืื ืืคืกืงืช ืืฉืื - ืืืื ืฉืืฉ ื ืชืื ืื ื-ZIL, ืื ืชืื ืื ืืืื ืืืงืจืื ืืืืื ืืืืื โโืืืจืืื ืืื (ืืืืืื, ืืืฉืจ ืืขืจืืช ืืืืจืื ืืืคืขืืช ืืืืฉ). ืื ืืืจ ื-ZIL ืืืงืจื, ืืงืืืฅ ื-TXGs, ืืชืืืื ืืืืกืื ืืจืืฉื, ืืืืืจ ืืื ืื ืืชืง ืื-ZIL ืืืืื ืชืืืื ืืืืืื.
ืืืช ืืืืืงืืช ืืขืืจ vdev ื ืงืจืืช LOG ืื SLOG, ืืืชืงื ืืืฉื ื ืฉื LOG. ืืฉ ืืื ืืืจื ืืืช - ืืกืคืง ืืืจืืื VDV ื ืคืจื, ืืขืืืฃ ืืจืื ืืืชืจ ืืืืจ, ืขืืื ืืืื ืืืชืืื ืืืืกืื ื-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%.
ืืืืชื ืจืฉืช, ืฉืืคืื ืงืืืฅ ืชืืื ืช ืืืฉื ืืืจืืืืื ืืืื ืื ืคื 40GB ืฉื Windows 7 ืืื ืกืืคืืจ ืืืจ ืืืืจื. ืฉืืคืื ZFS ืืืืจ ืคื 289 ื-rsync - ืื ืืืืจ ืืืชืจ "ืจืง" ืคื 161 ืื ืืชื ืืื ืืกืคืืง ืืงืจืื ื-rsync ืขื --inplace.
ืืืฉืจ ืชืืื ืช VM ืขืืืจืช ืงื ื ืืืื, rsync ืืืฆืื ืืืชื ืงื ื ืืืื. 1,9 TiB ืืื ืื ืื ืื ืืืื ืขืืืจ ืชืืื ืช VM ืืืืจื ืืช - ืืื ืืื ืืกืคืืง ืืืื ืืื ืฉืืคืื ZFS ืืืืจ ืคื 1148 ื-rsync, ืืคืืื ืขื ืืืจืืืื ื --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
, ืืืืืจ ืืื ืืืกืฃ ืืฆืืืขืื ืืืืชื ืืืืงืื. ืืืืื, ืืฉ ืื ื @2
ืืืขืจืืช ืืืืฉื!
ืฉืืคืื ืืฆืืืจ ืืกืื ืืจืื ื ZFS ืืื ืฉืืคืืจ ืขืฆืื ืืขืืืช ืฉืืืืช ืงืืืืืช ืฉืืื ื ืืืืกืกืืช ืชืืื ืช ืืฆื ืืืื rsync. ืืฉื ื ืืืงืจืื, ืจืง ื ืชืื ืื ืฉืืฉืชื ื ืืืขืืจืื - ืื rsync ืืืื ืงืืื ืื ืืงืจืื ืืืืืกืง ืื ืื ืชืื ืื ืืฉื ื ืืฆืืืื ืืื ืืืืืง ืืช ืืกืืื ืืืืฉืืืช ืืืชื. ืืขืืืช ืืืช, ืฉืืคืื ZFS ืืื ื ืงืืจื ืืืจ ืืืื ืขืฆื ืืฆืืืข - ืืื ืืืืงืื ืฉืืื ื ืงืืืืื ืืชืืื ืช ืืืฆื ืืืฉืืชืคืช.
ืืืืกื ืืืื ืืช
ืื ืื ืื ืืขืชืงื-ืขื-ืืชืืื ืืคืฉื ืื ืืช ืืขืจืืช ืืืืืกื ืืืืืืขืช. ืืืขืจืืช ืงืืฆืื ืืกืืจืชืืช, ืืืืืกื ืืื ืืขืืืชืืช - ืื ืืืจืกื ืืืฉื ื ืืื ืืืจืกื ืืืืฉื ืฉื ืื ืชืื ืื ืฉืืฉืชื ื ืฉืืื ืืช ืืืืชื ืืงืื.
ืื ื ืืงื ืืืฉืืื ืคืืกืช ื ืชืื ืื ืืืืฆืข ืงืืืฅ ืฉืืชืืื ืืช ืืืืื ืืืื-ืืืื ืฉื ืืคืกืื ื-0x00000000 ืืื ืืืื, ืงื ืืืื ืืืืืก ืืืชื ืืืืืจ ืืื ืืืืกืง. ืืื ืื ืงืืจื ืื ื ืืืืฃ ืืช ืืืื-ืืืื ืืื ืฉื ืืคืกืื ืืืื-ืืืื ืฉื ื ืชืื ืื ืืืชื-ืืืืกืื ืืื JPEG ืื ืจืขืฉ ืคืกืืืื-ืืงืจืื? ืืืืคื ืืืชื ืฆืคืื, ืืื-ืืืื ืื ืฉื ื ืชืื ืื ืืืจืืฉ ืื ืืื, ืืื 256 4 KiB ืกืงืืืจืื, ืืืืงืื ืื ืืืืกืง ืจืง ืืืืจ ืืื ืฉืืืจ.
ื-ZFS ืืื ืืขืื ืื, ืืืืืื ืฉืจืฉืืืืช ืฉืืฉืชื ื ื ืืชืืืช ืชืืื ืืฉืื ืฉืืื ื ืืฉืืืืฉ - ืืืืืง ืืืงืืจื ืชืืคืก ืจืง ืกืงืืืจ ืืื ืฉื 4 KiB, ืืืจืฉืืื ืืืืฉื ืืชืคืืก 256, ืืื ืื ืื ืืขืื - ืงืืข ืฉืฉืื ื ืืืืจืื ื ืื-" middle" ืฉื ืืงืืืฅ ืืืืชื ืืฉืื ืฉืืื ื ืืฉืืืืฉ ืืื ืงืฉืจ ืื ืืืืื ืฉืื ืืฉืชื ื ืื ืื, ืื ืฉืขืืืจ ZFS ืืื ืืฆื ืื ืจืืื.
ืืืืกืช ZFS ืืงืืจืืช ืืืฉืืชืช ืืืจืืจืช ืืืื, ืืืืขืจืืช ืืฆืืขื ืืืืืจืืชืืื ื ืืชื ืื ืืืืืืจ - ื ืืื ืืขืืฉืื LZ4, gzip (1-9), LZJB ื-ZLE.
- LZ4 ืืื ืืืืืจืืชื ืกืืจืืืื ื ืืืฆืืข ืืชืจืื ืืช ืืืืกื ืืคืืจืืง ืืืืฆืืขืื ืืืืจืื ืืืืืื ืขืืืจ ืจืื ืืงืจื ืืฉืืืืฉ - ืืคืืื ืืืขืืืื ืืืืืื ืืืื.
- GZIP ืืื ืืืืืจืืชื ืืืืื ืฉืื ืืฉืชืืฉื ืืื ืืงืก ืืืืจืื ืืืืืืื. ื ืืชื ืืืืฉื ืืืชื ืขื ืจืืืช ืืืืกื 1-9, ืืืฉืจ ืืืก ืืืืืกื ืืืฉืืืืฉ ื-CPU ืืื ืืื ืฉืืื ืืชืงืจื ืืจืื 9. ืืืืืืจืืชื ืืชืืื ืืื ืืงืจื ืฉืืืืฉ ืืืงืกื (ืื ืืืจืื ืืขืื ืืืืกื ืืืืื), ืื ืืืจื ืืื ืืืจื ืืืขืืืช ื-CPU - ืืฉืชืืฉ ืื ืืืืืจืืช, ืืืืืื ืืจืืืช ืืืืืืช ืืืชืจ.
- LZJB ืืื ืืืืืืจืืชื ืืืงืืจื ื-ZFS. ืืื ืืืฆื ืืฉืืืืฉ ืืืื ืืืฉืชืืฉ ืื ืืืชืจ, ื-LZ4 ืขืืื ืขืืื ืืื ืืืื.
- ZLE - ืงืืืื ืืจืื ืืคืกืืช, ืงืืืื ืืจืื ืืคืกืืช. ืืื ืืื ื ื ืืืข ืืื ืื ืชืื ืื ืจืืืืื, ืืื ืืืืก ืจืฆืคืื ืืืืืื ืฉื ืืคืกืื. ืฉืืืืฉื ืขืืืจ ืืขืจืื ื ืชืื ืื ืืืชื ื ืืชื ืื ืืืืืกื ืืืืืืื (ืืืื JPEG, MP4 ืื ืคืืจืืืื ืืืจืื ืฉืืืจ ืืืืกืื) ืืืืืื ืฉืืื ืืชืขืื ืื ืชืื ืื ืืืชื ื ืืชื ืื ืืืืืกื ืื ืืืืก ืฉืื ืฉืืื ื ืืฉืืืืฉ ืืจืฉืืืืช ืืืชืงืืืืช.
ืื ื ืืืืืฆืื ืขื ืืืืกืช LZ4 ืืืขื ืืื ืืงืจื ืืฉืืืืฉ; ืขืื ืฉ ืืืืฆืืขืื ืืขืช ืืคืืฉ ืขื ื ืชืื ืื ืืืชื ื ืืชื ืื ืืืืืกื ืืื ืงืื ืืืื, ื ืฆึฐืึดืืึธื ืืืฆืืขืื ืขืืืจ ื ืชืื ืื ืืืคืืกืืื ืื ืืฉืืขืืชืืื. ืืขืชืงืช ืชืืื ืช ืืืื ื ืืืจืืืืืืช ืืืชืงื ื ืืืฉื ืฉื ืืขืจืืช ืืืคืขืื Windows (ืืขืจืืช ืืคืขืื ืืืชืงื ืช ืืืืจืื ื, ืขืืืื ืืื ื ืชืื ืื ืืคื ืื) ืขื compression=lz4
ืขืืจ 27% ืืืจ ืืืชืจ ืืืฉืจ ืขื compression=none
ืืชืื
ARC - ืืืืื ืืืืคื ืืืคืืืื
ZFS ืืื ืืขืจืืช ืืงืืฆืื ืืืืืจื ืืช ืืืืืื ืฉืื ื ืืืืจืื ืฉืืฉืชืืฉืช ืืื ืื ืื ืืืืื ืงืจืืื ืืฉืื, ืืืงืื ืืืกืชืื ืขื ืืืืื ืืืคืื ืฉื ืืขืจืืช ืืืคืขืื ืืื ืืืืกื ืขืืชืงืื ืฉื ืืืืงืื ืฉื ืงืจืื ืืืืจืื ื ื-RAM.
ืืืจืืช ืฉืืืืืื ืืืงืืจื ืืื ื ืืฃ ืืืขืืืช - ZFS ืื ืืืื ืืืืื ืืืงืฉืืช ืืงืฆืืช ืืืืจืื ืืืฉืืช ืืืืชื ืืืืจืืช ืืื ืืืืื, ืืืื ืืืชืืจ ืืืืฉ malloc()
ืขื ืืงืฆืืช ืืืืจืื ืขืืื ืืืืืฉื ืื ืืื ืืงืืง ื-RAM ืื ืชืื ืืขืช ืขื ืืื ARC. ืืื ืืฉ ืกืืืืช ืืืืืช ืืืฉืชืืฉ ืืืืืื ืืฉืื, ืืคืืืช ืืขืช ืขืชื.
ืื ืืขืจืืืช ืืืคืขืื ืืืืืจื ืืืช ืืืืืจืืช, ืืืื MacOS, Windows, Linux ื-BSD, ืืฉืชืืฉืืช ืืืืืืจืืชื LRU (Least Recently Used) ืืื ืืืืฉื ืืช ืืืืื ืืขืืืืื. ืืื ืืืืืจืืชื ืคืจืืืืืืื ืฉืืืืฃ ืืช ืืืืืง ืืฉืืืจ "ืืืขืื ืืชืืจ" ืืืืจ ืื ืงืจืืื, ืืืืืฃ ืืช ืืืืืงืื "ืืืื ืืชืืจ" ืืคื ืืฆืืจื ืืื ืืืืกืืฃ ืคืกืคืืกื ืืืืื ืืืฉืื (ืืืืงืื ืฉืืื ืฆืจืืืื ืืืืงืจื ืืืืืกืง, ืื ืืืืืืื) ืึฐืึทืขืึธื.
ืืืืืืจืืชื ืืืจื ืืื ืขืืื ืืกืืจ, ืืื ืืืขืจืืืช ืขื ืืขืจืื ื ืชืื ืื ืขืืืืื ืืืืืื, LRU ืืืืื ืืงืืืช ืืืืืงื - ืคืื ืื ืืืืงืื ืืืจืืฉืื ืืขืชืื ืงืจืืืืช ืืื ืืคื ืืช ืืงืื ืืืืืงืื ืฉืืขืืื ืื ืืงืจืื ืืืืืืื ืฉืื.
ืืชืืฆืื ืืกืืคืืช ืฉื ืื ืื ืืื ืืืืื ืขื ืืืก ืคืืืขื ืืจืื ืืืชืจ ืืืื, ืืืืก ืืื ืื ืืกืืช ืืืืื (ืงืจืืืืช ืฉืืืฆืขื ืืืืืืื) ืืืื ืคืกืคืืกื ืืืืื (ืงืจืืื ืืืืกืง). ืืื ื ืชืื ืืฉืื ืืืืชืจ - ืื ืจืง ืฉืืชืืืืช ืืืืืื ืขืฆืื ืืืืฉืืช ืืกืืจื ืืืื ืืืืจืื ืืืชืจ, ื ืืชื ืื ืืืืืฉ ืคืกืคืืกื ืืืืื ืืืจ ืืืชืจ, ืฉืื ืืื ืฉืืฉ ืืืชืจ ืื ืืกืืช ืืืืื, ืื ืคืืืช ืืงืฉืืช ืืืกืง ืื-ืืื ืืช ืืืฉืืืื ื ืืืื ืืืชืจ ืขืืืจ ืืืืืฆืืช ืื ืืชืจืืช. ืื ืืืื ืืืืืช ืืืืฉ ืขื ืืืกืง.
ืืกืงื ื
ืืืืจ ืฉืืืื ื ืืช ืืกืื ืืืงื ืืืกืืกืืช ืฉื ZFS - ืืืฆื ืคืืขืืช ืืขืชืงื-ืขื-ืืชืืื, ืืื ืื ืืช ืืงืฉืจืื ืืื ืืืืจื ืืืกืื, ืืชืงื ืื ืืืจืืืืืืื, ืืืืงืื, ืกืงืืืจืื ืืงืืฆืื - ืื ืื ื ืืืื ืื ืืืื ืืืืฆืืขืื ืืขืืื ืืืืืชื ืขื ืืกืคืจืื ืืืืชืืื.
ืืืืง ืืื, ื ืกืงืืจ ืืช ืืืืฆืืขืื ืืคืืขื ืฉื ืืจืืืืช ืขื vdevs ื-RAIDz ืืฉืืงืคืื, ืื ืืื ืื, ืืื ืืื ืืืคืืืืืืืช ื-RAID ืืืกืืจืชืืืช ืฉื ืืืืช ืืื ืืงืก ืฉืืงืจื ื.
ืืืชืืื, ืจืฆืื ื ืืืกืืช ืจืง ืืช ืืืกืืืืช - ืืืืคืืืืืืืช ืฉื ZFS ืขืฆืื - ืืื ืืืืจ ืืื ืื ืืืื ื ืชืืื ื ืืืืจ ืขื ืืืืจื ืืืืืื ืื ืืชืงืืืื ืืืชืจ ืฉื ZFS, ืืืื ืฉืืืืฉ ืืกืืื vdev ืขืืจ ืืืื L2ARC, SLOG ืืืงืฆืื ืืืืืืช.
ืืงืืจ: www.habr.com