Dropbox frigiver kode til ny DivANS-kompressionsalgoritme

Tech / Dropbox frigiver kode til ny DivANS-kompressionsalgoritme 1 minut læst

Android overskrifter



Hvis du troede, at 7-Zip leverede fremragende kompressionsforhold, så er du måske i godbid, da Dropbox frigav deres nye DivANS-kompressionsalgoritme som et open source-projekt. Udviklere hævder, at DivANS kan komprimere data tættere end 7-Zip, Brotli eller endda Zstandard.

Koden bruger i vid udstrækning programmeringssproget for Rust-systemer, som er sponsoreret af Mozilla. Rust blev designet til at være sikkert og samtidig, hvilket gør det til et fremragende sprog til udvikling af denne slags software i.



DivANS bruger ny, iboende vektorteknologi, der leveres af Rust-platformen. Da den er flertrådet, bør den heller ikke være langsom.



En anden nyere teknologi kaldet mellemrepræsentation giver udviklere friheden til at tvinge forskellige komprimeringsalgoritmer sammen og derfor opbygge bedre optimeringsmidler over tid.



Det er overflødigt at sige, at projektet altid er på udkig efter mere samfundsinddragelse fra dem, der gerne vil melde deres tid til at producere en bedre kompressionsalgoritme.

DivANS blev frigivet under Apache-licensen, hvilket skulle hjælpe med at sprede koden, da licensen er ret tilladelig. Når det er sagt, skal derivatkomprimeringskode baseret på DivANS teknisk ikke nødvendigvis distribueres med den samme licens. Dette er noget i modsætning til copyleft-licenser, der følger med GPL-baserede softwareudgivelser.

Et af de mest interessante aspekter af algoritmen er relateret til dens kompilering. DivANS blev skrevet i Rust, men blev kompileret mod WebAssembly (WASM). Dette kan hjælpe med at forklare, hvordan der allerede er en browserdemo tilgængelig.



WASM-kode blev designet til at fremskynde udførelsen af ​​online underrutiner, som JavaScript og andre fortolkende sprog ville have kæmpet med. Selvom det ikke er beregnet til at erstatte JavaScript, ser det ud som en situation, hvor WASM virkelig kunne være gavnligt, da skrivning af en komprimeringsalgoritme i JavaScript potentielt ville dømme det til en ret langsom udførelse.

I betragtning af den enorme mængde data, som Dropbox gemmer på vegne af klienter, kan det være let at se fordelene ved en ny komprimeringsmetode fra deres synspunkt. Selv en reduktion med 1 eller 2 procent af den samlede mængde data Dropbox-butikker ville give teoretisk massive besparelser. Det kan også reducere den tid, der sendes til transmission af data over et netværk tilbage til brugerne.

Mærker dropbox