ਲੀਨਕਸ 0.8.0 'ਤੇ ZFS ਦੀ ਰਿਲੀਜ਼, ਲੀਨਕਸ ਕਰਨਲ ਲਈ ZFS ਦੇ ਲਾਗੂਕਰਨ

ਲਗਭਗ ਦੋ ਸਾਲਾਂ ਦੇ ਵਿਕਾਸ ਤੋਂ ਬਾਅਦ ਪੇਸ਼ ਕੀਤਾ ਜਾਰੀ ਲੀਨਕਸ 0.8.0 ਉੱਤੇ ZFS, ਲੀਨਕਸ ਕਰਨਲ ਲਈ ਇੱਕ ਮੋਡੀਊਲ ਦੇ ਰੂਪ ਵਿੱਚ ਪੈਕ ਕੀਤੇ ZFS ਫਾਈਲ ਸਿਸਟਮ ਦਾ ਇੱਕ ਲਾਗੂਕਰਨ। ਮੋਡੀਊਲ ਨੂੰ ਲੀਨਕਸ ਕਰਨਲ ਨਾਲ 2.6.32 ਤੋਂ 5.1 ਤੱਕ ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ। ਤਿਆਰ ਇੰਸਟਾਲੇਸ਼ਨ ਪੈਕੇਜ ਜਲਦੀ ਆ ਰਹੇ ਹਨ ਤਿਆਰ ਕੀਤਾ ਜਾਵੇਗਾ ਡੇਬੀਅਨ, ਉਬੰਟੂ, ਫੇਡੋਰਾ, RHEL/CentOS ਸਮੇਤ ਪ੍ਰਮੁੱਖ ਲੀਨਕਸ ਵੰਡਾਂ ਲਈ। ਲੀਨਕਸ ਮੋਡੀਊਲ 'ਤੇ ZFS ਪਹਿਲਾਂ ਹੀ ਡੇਬੀਅਨ, ਉਬੰਟੂ, ਜੈਂਟੂ, ਸਬਾਯੋਨ ਲੀਨਕਸ ਅਤੇ ALT ਲੀਨਕਸ ਡਿਸਟਰੀਬਿਊਸ਼ਨਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹੈ।

ਲੀਨਕਸ ਉੱਤੇ ZFS ਦੇ ਹਿੱਸੇ ਵਜੋਂ, ਫਾਈਲ ਸਿਸਟਮ ਦੇ ਸੰਚਾਲਨ ਅਤੇ ਵਾਲੀਅਮ ਮੈਨੇਜਰ ਦੇ ਕੰਮਕਾਜ ਦੋਵਾਂ ਨਾਲ ਸਬੰਧਤ ZFS ਭਾਗਾਂ ਦਾ ਇੱਕ ਲਾਗੂਕਰਨ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਖਾਸ ਤੌਰ 'ਤੇ, ਹੇਠਾਂ ਦਿੱਤੇ ਭਾਗ ਲਾਗੂ ਕੀਤੇ ਗਏ ਹਨ: SPA (ਸਟੋਰੇਜ ਪੂਲ ਅਲੋਕੇਟਰ), DMU (ਡਾਟਾ ਪ੍ਰਬੰਧਨ ਯੂਨਿਟ), ZVOL (ZFS ਇਮੂਲੇਟਿਡ ਵਾਲੀਅਮ) ਅਤੇ ZPL (ZFS POSIX ਲੇਅਰ)। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਪ੍ਰੋਜੈਕਟ ਲਸਟਰ ਕਲੱਸਟਰ ਫਾਈਲ ਸਿਸਟਮ ਲਈ ZFS ਨੂੰ ਬੈਕਐਂਡ ਵਜੋਂ ਵਰਤਣ ਦੀ ਯੋਗਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਪ੍ਰੋਜੈਕਟ ਦਾ ਕੰਮ ਓਪਨਸੋਲਾਰਿਸ ਪ੍ਰੋਜੈਕਟ ਤੋਂ ਆਯਾਤ ਕੀਤੇ ਮੂਲ ZFS ਕੋਡ 'ਤੇ ਅਧਾਰਤ ਹੈ ਅਤੇ ਇਲੁਮੋਸ ਕਮਿਊਨਿਟੀ ਤੋਂ ਸੁਧਾਰਾਂ ਅਤੇ ਫਿਕਸਾਂ ਨਾਲ ਵਧਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਪ੍ਰੋਜੈਕਟ ਯੂਐਸ ਦੇ ਊਰਜਾ ਵਿਭਾਗ ਨਾਲ ਇਕਰਾਰਨਾਮੇ ਦੇ ਤਹਿਤ ਲਿਵਰਮੋਰ ਨੈਸ਼ਨਲ ਲੈਬਾਰਟਰੀ ਦੇ ਕਰਮਚਾਰੀਆਂ ਦੀ ਭਾਗੀਦਾਰੀ ਨਾਲ ਵਿਕਸਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ।

ਕੋਡ ਨੂੰ ਇੱਕ ਮੁਫਤ CDDL ਲਾਇਸੈਂਸ ਦੇ ਅਧੀਨ ਵੰਡਿਆ ਜਾਂਦਾ ਹੈ, ਜੋ GPLv2 ਨਾਲ ਅਸੰਗਤ ਹੈ, ਜੋ ਕਿ ਲੀਨਕਸ ਉੱਤੇ ZFS ਨੂੰ Linux ਕਰਨਲ ਦੀ ਮੁੱਖ ਸ਼ਾਖਾ ਵਿੱਚ ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਦਿੰਦਾ ਹੈ, ਕਿਉਂਕਿ GPLv2 ਅਤੇ CDDL ਲਾਇਸੈਂਸਾਂ ਦੇ ਅਧੀਨ ਕੋਡ ਨੂੰ ਮਿਲਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ। ਇਸ ਲਾਇਸੈਂਸ ਦੀ ਅਸੰਗਤਤਾ ਨੂੰ ਰੋਕਣ ਲਈ, CDDL ਲਾਇਸੈਂਸ ਦੇ ਅਧੀਨ ਪੂਰੇ ਉਤਪਾਦ ਨੂੰ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਲੋਡ ਹੋਣ ਯੋਗ ਮੋਡੀਊਲ ਵਜੋਂ ਵੰਡਣ ਦਾ ਫੈਸਲਾ ਕੀਤਾ ਗਿਆ ਸੀ, ਜੋ ਕਿ ਕੋਰ ਤੋਂ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਸਪਲਾਈ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਲੀਨਕਸ ਕੋਡਬੇਸ ਉੱਤੇ ZFS ਦੀ ਸਥਿਰਤਾ ਨੂੰ ਲੀਨਕਸ ਲਈ ਦੂਜੇ ਫਾਈਲ ਸਿਸਟਮਾਂ ਦੇ ਮੁਕਾਬਲੇ ਦਰਜਾ ਦਿੱਤਾ ਗਿਆ ਹੈ।

ਮੁੱਖ ਬਦਲਾਅ:

  • ਫਾਈਲ ਸਿਸਟਮ ਅਤੇ ਭਾਗਾਂ ਦੇ ਪੱਧਰ 'ਤੇ ਸਟੋਰ ਕੀਤੇ ਡੇਟਾ ਦੇ ਐਨਕ੍ਰਿਪਸ਼ਨ ਲਈ ਬਿਲਟ-ਇਨ ਸਮਰਥਨ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਡਿਫੌਲਟ ਏਨਕ੍ਰਿਪਸ਼ਨ ਐਲਗੋਰਿਦਮ aes-256-ccm ਹੈ। "zfs load-key" ਕਮਾਂਡ ਨੂੰ ਇਨਕ੍ਰਿਪਸ਼ਨ ਕੁੰਜੀਆਂ ਲੋਡ ਕਰਨ ਲਈ ਪ੍ਰਸਤਾਵਿਤ ਕੀਤਾ ਗਿਆ ਹੈ;
  • 'zfs ਭੇਜੋ' ਅਤੇ 'zfs ਰਿਸੀਵ' ਕਮਾਂਡਾਂ ਨੂੰ ਚਲਾਉਣ ਵੇਲੇ ਏਨਕ੍ਰਿਪਟਡ ਡੇਟਾ ਨੂੰ ਟ੍ਰਾਂਸਫਰ ਕਰਨ ਦੀ ਯੋਗਤਾ ਨੂੰ ਲਾਗੂ ਕੀਤਾ। ਜਦੋਂ "-w" ਵਿਕਲਪ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹੋ, ਤਾਂ ਪੂਲ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਏਨਕ੍ਰਿਪਟ ਕੀਤਾ ਗਿਆ ਡੇਟਾ ਕਿਸੇ ਹੋਰ ਪੂਲ ਵਿੱਚ ਟ੍ਰਾਂਸਫਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਵਿਚਕਾਰਲੇ ਡੀਕ੍ਰਿਪਸ਼ਨ ਤੋਂ ਬਿਨਾਂ ਹੈ। ਅਜਿਹੀ ਕਾਪੀ ਕਰਨ ਦੇ ਨਾਲ, ਡੇਟਾ ਭੇਜਣ ਵਾਲੇ ਦੀ ਕੁੰਜੀ ਦੁਆਰਾ ਸੁਰੱਖਿਅਤ ਰਹਿੰਦਾ ਹੈ, ਜੋ ਕਿ ਇਸ ਮੋਡ ਨੂੰ ਭਰੋਸੇਮੰਦ ਸਿਸਟਮਾਂ ਵਿੱਚ ਬੈਕਅੱਪ ਲਈ ਵਰਤਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ (ਪ੍ਰਾਪਤਕਰਤਾ ਨਾਲ ਸਮਝੌਤਾ ਕਰਨ ਦੀ ਸਥਿਤੀ ਵਿੱਚ, ਹਮਲਾਵਰ ਕੁੰਜੀ ਤੋਂ ਬਿਨਾਂ ਡੇਟਾ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੇ ਯੋਗ ਨਹੀਂ ਹੋਵੇਗਾ);
  • ਸਟੋਰੇਜ ਪੂਲ ਤੋਂ ਪ੍ਰਾਇਮਰੀ ਡਰਾਈਵਾਂ ਨੂੰ ਹਟਾਉਣ ਲਈ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ, ਵਿਅਕਤੀਗਤ ਤੌਰ 'ਤੇ ਅਤੇ ਸ਼ੀਸ਼ੇ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਜੁੜਿਆ ਹੋਇਆ ਹੈ। ਹਟਾਉਣਾ "zpool remove" ਕਮਾਂਡ ਨਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਮਿਟਾਉਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਬਾਹਰ ਕੱਢੀ ਗਈ ਡਰਾਈਵ ਤੋਂ ਪੂਲ ਵਿੱਚ ਬਾਕੀ ਬਚੀਆਂ ਪ੍ਰਾਇਮਰੀ ਡਰਾਈਵਾਂ ਵਿੱਚ ਡੇਟਾ ਦੀ ਨਕਲ ਕਰਦੀ ਹੈ;
  • ਪੂਲ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ ਨੂੰ ਬਚਾਉਣ ਲਈ "zpool checkpoint" ਕਮਾਂਡ ਨੂੰ ਸਮੇਂ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤੇ ਬਿੰਦੂ (ਪੂਰੇ ਪੂਲ ਦਾ ਇੱਕ ਸਨੈਪਸ਼ਾਟ ਬਣਾਇਆ ਗਿਆ ਹੈ) ਵਿੱਚ ਹੋਰ ਤਬਦੀਲੀਆਂ ਨੂੰ ਵਾਪਸ ਲਿਆਉਣ ਦੀ ਸਮਰੱਥਾ ਦੇ ਨਾਲ ਜੋੜਿਆ ਗਿਆ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਖ਼ਤਰਨਾਕ ਗੁੰਝਲਦਾਰ ਪ੍ਰਬੰਧਕੀ ਕੰਮ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਉਪਯੋਗੀ ਹੋ ਸਕਦੀ ਹੈ, ਜੋ ਕਿ ਆਮ ਹਾਲਤਾਂ ਵਿੱਚ ਅਟੱਲ ਤਬਦੀਲੀਆਂ ਵੱਲ ਖੜਦੀ ਹੈ (ਉਦਾਹਰਨ ਲਈ, ਨਵੀਂ ZFS ਕਾਰਜਸ਼ੀਲਤਾ ਲਈ ਫਲੈਗ ਨੂੰ ਸਰਗਰਮ ਕਰਨਾ ਜਾਂ ਡੇਟਾ ਕਲੀਅਰ ਕਰਨਾ);
  • "zpool trim" ਕਮਾਂਡ ਨੂੰ ਪੂਲ ਵਿੱਚ ਵਰਤੀਆਂ ਗਈਆਂ ਡਰਾਈਵਾਂ ਨੂੰ ਉਹਨਾਂ ਸੈਕਟਰਾਂ ਬਾਰੇ ਸੂਚਿਤ ਕਰਨ ਲਈ ਜੋੜਿਆ ਗਿਆ ਹੈ ਜੋ ਹੁਣ ਵਰਤੋਂ ਵਿੱਚ ਨਹੀਂ ਹਨ। TRIM ਓਪਰੇਸ਼ਨ ਦੀ ਵਰਤੋਂ SSDs ਦੀ ਕੁਸ਼ਲਤਾ ਨੂੰ ਵਧਾਉਣਾ ਅਤੇ ਉਹਨਾਂ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਦੇ ਨਿਘਾਰ ਨੂੰ ਰੋਕਣਾ ਸੰਭਵ ਬਣਾਉਂਦੀ ਹੈ। TRIM ਕਮਾਂਡਾਂ ਨੂੰ ਸੰਚਾਰਿਤ ਕਰਨ ਦੀ ਨਿਰੰਤਰ ਬੈਕਗ੍ਰਾਉਂਡ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ ਇੱਕ ਨਵੀਂ "ਆਟੋਟ੍ਰਿਮ" ਵਿਸ਼ੇਸ਼ਤਾ ਦਾ ਪ੍ਰਸਤਾਵ ਕੀਤਾ ਗਿਆ ਹੈ;
  • ਸਾਰੀਆਂ ਨਾ-ਨਿਰਧਾਰਤ ਡਿਸਕ ਸਪੇਸ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਲਈ "zpool initialize" ਕਮਾਂਡ ਸ਼ਾਮਲ ਕੀਤੀ ਗਈ ਹੈ, ਜੋ ਇਸਨੂੰ ਪਹਿਲੀ ਪਹੁੰਚ 'ਤੇ ਕਾਰਗੁਜ਼ਾਰੀ ਵਿੱਚ ਗਿਰਾਵਟ ਦੇ ਬਿਨਾਂ ਤੁਰੰਤ ਵਰਤੋਂ ਲਈ ਤਿਆਰ ਹੋਣ ਦਿੰਦੀ ਹੈ (ਉਦਾਹਰਨ ਲਈ, VMware VMDK ਵਰਗੇ ਵਰਚੁਅਲਾਈਜ਼ਡ ਸਟੋਰੇਜ਼ ਦੀ ਮੇਜ਼ਬਾਨੀ ਕਰਦੇ ਸਮੇਂ);
  • ਪਹਿਲਾਂ ਉਪਲਬਧ ਉਪਭੋਗਤਾ ਅਤੇ ਸਮੂਹ-ਪੱਧਰ ਦੇ ਕੋਟੇ ਤੋਂ ਇਲਾਵਾ, ਲੇਖਾਕਾਰੀ ਅਤੇ ਪ੍ਰੋਜੈਕਟ-ਪੱਧਰ ਦੇ ਕੋਟੇ ਲਈ ਸਮਰਥਨ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਸੰਖੇਪ ਰੂਪ ਵਿੱਚ, ਪ੍ਰੋਜੈਕਟ ਇੱਕ ਵੱਖਰੇ ਪਛਾਣਕਰਤਾ (ਪ੍ਰੋਜੈਕਟ ID) ਨਾਲ ਜੁੜੀਆਂ ਵਸਤੂਆਂ ਦੀ ਇੱਕ ਵੱਖਰੀ ਥਾਂ ਹਨ। ਬਾਈਡਿੰਗ ਨੂੰ 'chattr -p' ਓਪਰੇਸ਼ਨ ਦੁਆਰਾ ਜਾਂ ਵਿਸ਼ੇਸ਼ਤਾ ਵਿਰਾਸਤ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ। ਪ੍ਰੋਜੈਕਟ ਪ੍ਰਬੰਧਨ ਲਈ, "zfs ਪ੍ਰੋਜੈਕਟ" ਅਤੇ "zfs ਪ੍ਰੋਜੈਕਟਸਪੇਸ" ਕਮਾਂਡਾਂ ਪੇਸ਼ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ, ਜੋ ਤੁਹਾਨੂੰ ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਰਚਨਾ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨ ਅਤੇ ਉਹਨਾਂ ਲਈ ਡਿਸਕ ਸਪੇਸ ਸੀਮਾਵਾਂ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀਆਂ ਹਨ;
  • ZFS ਦੇ ਨਾਲ ਵੱਖ-ਵੱਖ ਕੰਮ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰਨ ਲਈ ਲੂਆ ਸਕ੍ਰਿਪਟਾਂ ਬਣਾਉਣ ਦੀ ਯੋਗਤਾ ਸ਼ਾਮਲ ਕੀਤੀ ਗਈ। ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ "zpool ਪ੍ਰੋਗਰਾਮ" ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਿਸ਼ੇਸ਼ ਅਲੱਗ-ਥਲੱਗ ਵਾਤਾਵਰਨ ਵਿੱਚ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ;
  • ਨਵੀਂ ਲਾਇਬ੍ਰੇਰੀ ਲਾਗੂ ਕੀਤੀ ਗਈ pyzfs, ਜੋ ਪਾਈਥਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਤੋਂ ZFS ਦੇ ਪ੍ਰਬੰਧਨ ਲਈ ਇੱਕ ਸਥਿਰ API ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਲਾਇਬ੍ਰੇਰੀ libzfs_core ਦੇ ਦੁਆਲੇ ਇੱਕ ਰੈਪਰ ਹੈ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਦਾ ਇੱਕ ਸਮਾਨ ਸੈੱਟ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ, ਪਰ ਪਾਇਥਨ ਕਿਸਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ;
  • arcstat, arcsummary, ਅਤੇ dbufstat ਉਪਯੋਗਤਾਵਾਂ ਨੂੰ Python 3 ਦੇ ਅਨੁਕੂਲ ਬਣਾਇਆ ਗਿਆ ਹੈ। arcstat.py, arc_summary.py, ਅਤੇ dbufstat.py ਉਪਯੋਗਤਾਵਾਂ ਨੂੰ ".py" ਐਕਸਟੈਂਸ਼ਨ ਤੋਂ ਬਿਨਾਂ ਸੰਸਕਰਣਾਂ ਵਿੱਚ ਨਾਮ ਦਿੱਤਾ ਗਿਆ ਹੈ;
  • ਲੀਨਕਸ ਡਾਇਰੈਕਟ IO (O_DIRECT) ਕਰਨਲ ਇੰਟਰਫੇਸ ਲਈ ਸਹਿਯੋਗ ਜੋੜਿਆ ਗਿਆ ਹੈ, ਜੋ ਕਿ ਬਫਰਿੰਗ ਅਤੇ ਕੈਸ਼ ਨੂੰ ਬਾਈਪਾਸ ਕੀਤੇ ਬਿਨਾਂ ਡਾਟਾ ਐਕਸੈਸ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ;
  • ਪ੍ਰਦਰਸ਼ਨ ਅਨੁਕੂਲਤਾ ਪੇਸ਼ ਕੀਤੀ ਗਈ:
    • "ਸਕ੍ਰਬ" ਅਤੇ "ਰਿਸਿਲਵਰ" ਕਮਾਂਡਾਂ ਦੇ ਕੰਮ ਨੂੰ ਦੋ ਪੜਾਵਾਂ ਵਿੱਚ ਵੰਡਣ ਕਾਰਨ ਤੇਜ਼ ਕੀਤਾ ਗਿਆ ਹੈ (ਮੈਟਾਡੇਟਾ ਨੂੰ ਸਕੈਨ ਕਰਨ ਅਤੇ ਡਿਸਕ 'ਤੇ ਡੇਟਾ ਵਾਲੇ ਬਲਾਕਾਂ ਦੀ ਸਥਿਤੀ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਇੱਕ ਵੱਖਰਾ ਪੜਾਅ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜੋ ਕ੍ਰਮਵਾਰ ਡੇਟਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹੋਰ ਤਸਦੀਕ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਪੜ੍ਹਨਾ;
    • ਅਲੋਕੇਸ਼ਨ ਕਲਾਸਾਂ ਲਈ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ,
      ਮੁਕਾਬਲਤਨ ਛੋਟੇ SSDs ਨੂੰ ਪੂਲ ਕੀਤੇ ਜਾਣ ਅਤੇ ਸਿਰਫ਼ ਕੁਝ ਖਾਸ ਕਿਸਮਾਂ ਦੇ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤੇ ਜਾਂਦੇ ਬਲਾਕਾਂ ਨੂੰ ਸਟੋਰ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹੋਏ, ਜਿਵੇਂ ਕਿ ਮੈਟਾਡੇਟਾ, DDT ਡੇਟਾ, ਅਤੇ ਛੋਟੇ ਫਾਈਲ ਬਲਾਕ;

    • ਐਡਮਿਨ ਕਮਾਂਡਾਂ ਦੀ ਬਿਹਤਰ ਕਾਰਗੁਜ਼ਾਰੀ ਜਿਵੇਂ ਕਿ
      "zfs ਸੂਚੀ" ਅਤੇ "zfs get", ਉਹਨਾਂ ਦੀ ਕਾਰਵਾਈ ਲਈ ਲੋੜੀਂਦੇ ਮੈਟਾਡੇਟਾ ਨੂੰ ਕੈਚ ਕਰਕੇ;

    • ਹਰੇਕ ਮੈਟਾਸਲੈਬ ਸਮੂਹ ਲਈ ਵੱਖੋ-ਵੱਖਰੇ ਅਲੋਕੇਟਰ ਪ੍ਰਕਿਰਿਆਵਾਂ ਚਲਾ ਕੇ ਬਲਾਕ ਵੰਡ ਕਾਰਜਾਂ ਦੇ ਸਮਾਨਤਾ ਲਈ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ। ਪਰੰਪਰਾਗਤ ਪ੍ਰਣਾਲੀਆਂ 'ਤੇ, 5-10% ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਵਿੱਚ ਵਾਧਾ ਹੁੰਦਾ ਹੈ, ਪਰ ਵੱਡੇ (8 128 GB SSD, 24 ਕੋਰ NUMA, 256 GB RAM) 'ਤੇ, ਬਲਾਕ ਵੰਡ ਕਾਰਜਾਂ ਵਿੱਚ ਵਾਧਾ 25% ਤੱਕ ਪਹੁੰਚ ਸਕਦਾ ਹੈ;
    • "ਰਿਸਿਲਵਰ" ਕਮਾਂਡ ਦੇ ਮੁਲਤਵੀ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੀ ਸੰਭਾਵਨਾ ਨੂੰ ਜੋੜਿਆ ਗਿਆ ਹੈ (ਡਰਾਈਵ ਦੀ ਸੰਰਚਨਾ ਵਿੱਚ ਖਾਤੇ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖਦੇ ਹੋਏ ਡਾਟਾ ਵੰਡ ਨੂੰ ਮੁੜ ਬਣਾਉਣਾ) - ਜੇਕਰ ਨਵਾਂ ਓਪਰੇਸ਼ਨ ਸ਼ੁਰੂ ਕਰਨ ਵੇਲੇ ਪਿਛਲਾ ਅਜੇ ਪੂਰਾ ਨਹੀਂ ਹੋਇਆ ਹੈ, ਤਾਂ ਨਵਾਂ ਹੈਂਡਲਰ ਉਸ ਤੋਂ ਬਾਅਦ ਹੀ ਚਲਾਉਣਾ ਸ਼ੁਰੂ ਕਰੇਗਾ. ਪਿਛਲੇ ਇੱਕ ਦਾ ਅੰਤ;
    • ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਨੂੰ ZIL (ZFS ਇਰਾਦਾ ਲੌਗ) ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ ਹੈ ਤਾਂ ਜੋ ਉਹਨਾਂ ਬਲਾਕਾਂ ਦੀ ਮੌਜੂਦਗੀ ਵਿੱਚ ਬਲਾਕਾਂ ਨੂੰ ਬਣਾਉਣ ਅਤੇ ਪ੍ਰੋਸੈਸ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੱਤੀ ਜਾ ਸਕੇ ਜੋ ਅਜੇ ਵੀ ਸਟੋਰੇਜ ਦੁਆਰਾ ਪ੍ਰੋਸੈਸ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ;
    • ਸਿਸਟਮ ਵਿੱਚ ਭਾਗਾਂ (zvol) ਲਈ ਘਟਾਇਆ ਗਿਆ ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਸਮਾਂ। ਜਦੋਂ ਇੱਕ ਪੂਲ ਵਿੱਚ ਵੱਡੀ ਗਿਣਤੀ ਵਿੱਚ ਭਾਗ ਹੁੰਦੇ ਹਨ, ਤਾਂ ਉਹ "zpool import" ਕਰਨ ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ਉਪਲਬਧ ਹੁੰਦੇ ਹਨ;
    • SHA256 ਹੈਸ਼ਾਂ ਅਤੇ AES-GSM ਐਨਕ੍ਰਿਪਸ਼ਨ ਓਪਰੇਸ਼ਨਾਂ ਦੀ ਹਾਰਡਵੇਅਰ ਐਕਸਲਰੇਟਿਡ ਕੈਲਕੂਲੇਸ਼ਨ ਲਈ Intel QAT (ਤਤਕਾਲ ਅਸਿਸਟ ਟੈਕਨਾਲੋਜੀ) ਚਿਪਸ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਸਮਰਥਨ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। Intel C62x ਚਿੱਪਸੈੱਟ ਅਤੇ CPU ਐਟਮ C3000 ਦੇ ਹਾਰਡਵੇਅਰ ਪ੍ਰਵੇਗ ਲਈ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ।

ਸਰੋਤ: opennet.ru

ਇੱਕ ਟਿੱਪਣੀ ਜੋੜੋ