БистСмата Π·Π° компрСсия OpenZL, която ΠΈΠ·ΠΏΡ€Π΅Π²Π°Ρ€Π²Π° Zstd ΠΈ XZ ΠΏΠΎ скорост ΠΈ Π½ΠΈΠ²ΠΎ Π½Π° компрСсия Π½Π° структурирани Π΄Π°Π½Π½ΠΈ

Компания Meta* прСдстави инструмСнти Π·Π° компрСсия ΠΈ дСкомпрСсия Π½Π° Π΄Π°Π½Π½ΠΈ OpenZL, ΠΊΠΎΠΉΡ‚ΠΎ Π² сравнСниС с Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ‚Π΅ Zstd ΠΈ XZ дСмонстрира ΠΏΠΎ-висок ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ Π½Π° компрСсия ΠΈ скорост Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°. OpenZL Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½ Π·Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Π° компрСсия Π½Π° структурирани Π½Π°Π±ΠΎΡ€ΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡ€ΠΈ машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π° с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ повтарящи сС Ρ‚ΠΈΠΏΠΎΠ²Π΅ информация. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° OpenZL Π΅ написан Π½Π° C/C++ ΠΈ Π΅ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ лицСнзия BSD.

ΠŸΡ€ΠΈ компрСсиранС Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ с астрономичСския ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π½Π° Π·Π²Π΅Π·Π΄ΠΈ SAO, ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΡŠΡ‚ OpenZL ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° сС Π½Π°ΠΌΠ°Π»ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ с 2.06 ΠΏΡŠΡ‚ΠΈ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΡŠΡ‚ zstd компрСсира информацията с 1.31 ΠΏΡŠΡ‚ΠΈ, Π° XZ с 1.64 ΠΏΡŠΡ‚ΠΈ. ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° OpenZL Π½Π°Π΄ΠΌΠΈΠ½Π° zstd ΠΏΠΎ скорост Π½Π° компрСсия Π΄Π²Π° ΠΏΡŠΡ‚ΠΈ (203 MB/s срСщу 115 MB/s), Π° XZ - 65 ΠΏΡŠΡ‚ΠΈ (203 MB/s срСщу 3.1 MB/s). Π Π°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅Ρ‚ΠΎ Π² OpenZL сС ΠΎΠΊΠ°Π·Π° Π»ΡŠΡ‡ Π½Π΅ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Ρ‚Π΅Π»Π½ΠΎ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ ΠΎΡ‚ zstd (822 MB/s срСщу 890 MB/s) ΠΈ 27 ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΎΡ‚ XZ.

БистСмата Π·Π° компрСсия OpenZL, която ΠΈΠ·ΠΏΡ€Π΅Π²Π°Ρ€Π²Π° Zstd ΠΈ XZ ΠΏΠΎ скорост ΠΈ Π½ΠΈΠ²ΠΎ Π½Π° компрСсия Π½Π° структурирани Π΄Π°Π½Π½ΠΈ

OpenZL Π½Π΅ Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ с ΠΎΠ±Ρ‰Π° Ρ†Π΅Π» ΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π° Π΄ΠΎΠ±Ρ€ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ само Π·Π° Π΄Π°Π½Π½ΠΈ с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ извСстна структура. Π Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° OpenZL сС свСТда Π΄ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½Π° гСнСрация Π½Π° компрСсор Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° ΠΏΡ€Π΅Π΄Π°Π΄Π΅Π½ΠΎΡ‚ΠΎ описаниС Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ сС Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° ΠΊΠΎΠ΄ Π·Π° компрСсия, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ Π·Π° конкрСтния Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° Π΄Π°Π½Π½ΠΈ. Π—Π° Ρ€Π°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° унивСрсалСн дСкомпрСсор, ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌ с всички Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈ компрСсори.

ΠšΠΎΠΌΠΏΡ€Π΅ΡΠΈΡΡ‚Π° ΠΈ Ρ€Π°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅Ρ‚ΠΎ сС ΠΎΡΡŠΡ‰Π΅ΡΡ‚Π²ΡΠ²Π°Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π΅Π΄Π½Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Β«zliΒ» ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° libopenzl. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС описва ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ. Π’ΠΊΠ»ΡŽΡ‡Π²Π° сС Π²Π΅Ρ‡Π΅ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ, описващи Ρ‚ΠΈΠΏΠΎΠ²ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. НапримСр, ΠΏΡ€ΠΎΡ„ΠΈΠ» Π·Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ CSV ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½ΠΈ ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° масив ΠΎΡ‚ 64-Π±ΠΈΡ‚ΠΎΠ²ΠΈ числа. ΠšΠΎΠΌΠΏΡ€Π΅ΡΠΈΡΡ‚Π° Π΅ свСдСна Π΄ΠΎ ΠΈΠ·Π±ΠΎΡ€ Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ» с ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«zli list-profilesΒ» ΠΈ стартиранС Π½Π° процСса Π½Π° компрСсия с ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«zli compress β€”profile ΠΈΠΌΠ΅_ΠΏΡ€ΠΎΡ„ΠΈΠ»Π°Β». Π—Π° Ρ€Π°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄Π° сС стартира Β«zli decompressΒ».

Π—Π° спСцифичнитС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° сС създадС собствСн ΠΏΡ€ΠΎΡ„ΠΈΠ», ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«zli trainΒ», която Ρ€Π°Π·ΠΊΡ€ΠΈΠ²Π° закономСрности Π² Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° ΠΏΡ€ΠΎΡ„ΠΈΠ» с ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° компрСсия. Π‘ ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° опцията Β«β€”pareto-frontierΒ» ΡΡŠΠ·Π΄Π°Π΄Π΅Π½ΠΈΡΡ‚ ΠΏΡ€ΠΎΡ„ΠΈΠ» ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€Π°Π½ с Ρ†Π΅Π» ускоряванС Π½Π° ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅Ρ‚ΠΎ ΠΈΠ»ΠΈ Ρ€Π°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅Ρ‚ΠΎ, Ρ†Π΅Π½Π°Ρ‚Π° Π½Π° ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ намаляванС Π½Π° Π½ΠΈΠ²ΠΎΡ‚ΠΎ Π½Π° компрСсия. Π—Π° описаниС Π½Π° слоТни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ с Π²Π»ΠΎΠΆΠ΅Π½ΠΈ структури ΠΈ опрСдСлянС Π½Π° ΠΏΠΎΠ΄Ρ€Π΅Π΄Π±Π°Ρ‚Π° Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ‚Π΅ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² структуритС ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΈΠ»Π°Π³Π° Π΅Π·ΠΈΠΊΡŠΡ‚ SDDL (Simple Data Description Language).

ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π·Π° създаванС Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΈ ΠΎΠΏΠ°ΠΊΠΎΠ²Ρ‡ΠΈΡ†ΠΈ сС основава Π½Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΡ†ΠΈ, всСки ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Π΅ Π½Π°ΠΉ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π΅Π½ Π·Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ ΠΈ послСдоватСлности ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ. Π—Π° компрСсия сС Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ Π°Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅Π½ Π³Ρ€Π°Ρ„ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ, Ρ‡ΠΈΠΈΡ‚ΠΎ възли са ΠΊΠΎΠ΄Π΅Ρ†ΠΈΡ‚Π΅, Π° Ρ€ΡŠΠ±ΠΎΠ²Π΅Ρ‚Π΅ β€” Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² обработвания Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Π’ зависимост ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Π½Π° ΠΏΠΎΡΡ‚ΡŠΠΏΠ²Π°Ρ‰ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ сС ΠΈΠ·Π±ΠΈΡ€Π° Π²Π΅Ρ€ΠΈΠ³Π° ΠΎΡ‚ ΠΊΠΎΠ΄Π΅Ρ†ΠΈ, която ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΎ компрСсира ΠΏΠΎΡΡ‚ΡŠΠΏΠΈΠ»ΠΈΡ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ Π΄Π°Π½Π½ΠΈ. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠ°Π²Π° организация Π·Π°Π³Π»Π°Π²ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»Π° сС компрСсира с Π΅Π΄ΠΈΠ½ ΠΊΠΎΠ΄Π΅ΠΊ, ΠΏΠΎΠ»Π΅Ρ‚ΠΎ с Ρ†Π΅Π»ΠΈ числа β€” с Π²Ρ‚ΠΎΡ€ΠΈ, ΠΏΠΎΠ»Π΅Ρ‚ΠΎ с ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Ρ‰ сС брояч β€” с Ρ‚Ρ€Π΅Ρ‚ΠΈ, Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ с тСкстови Π΄Π°Π½Π½ΠΈ β€” с Ρ‡Π΅Ρ‚Π²ΡŠΡ€Ρ‚ΠΈ.

БистСмата Π·Π° компрСсия OpenZL, която ΠΈΠ·ΠΏΡ€Π΅Π²Π°Ρ€Π²Π° Zstd ΠΈ XZ ΠΏΠΎ скорост ΠΈ Π½ΠΈΠ²ΠΎ Π½Π° компрСсия Π½Π° структурирани Π΄Π°Π½Π½ΠΈ


Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru
ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster