nl.phhsnews.com


nl.phhsnews.com / Waarom kan Zip afzonderlijke bestanden comprimeren beter dan meerdere bestanden met dezelfde inhoud?

Waarom kan Zip afzonderlijke bestanden comprimeren beter dan meerdere bestanden met dezelfde inhoud?


Als u onze bestanden kunt comprimeren zodat u ze gemakkelijker kunt delen en / of vervoeren, kunt u onze elektronisch leven veel gemakkelijker, maar soms kunnen we oneven of onverwachte dimensioneringsresultaten zien nadat we ze hebben gecomprimeerd. Waarom is dat? De SuperUser Q & A-post van vandaag biedt antwoorden op de vragen van een verwarde lezer.

De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een community-driven groep van Q & A-websites.

Foto's met dank aan Jean-Etienne Minh-Duy Poirrier (Flickr).

De vraag

SuperUser-lezer sixtyfootersdude wil weten waarom zip enkele bestanden beter kan comprimeren dan meerdere bestanden met hetzelfde type inhoud:

Stel dat ik 10.000 XML-bestanden hebben en deze naar een vriend willen sturen. Voordat ik ze verzend, wil ik ze comprimeren.

Methode 1: Niet inleveren

Resultaten:

Methode 2: elk bestand apart inpakken en hem 10.000 XML-bestanden met rits verzenden

Opdracht:

Resultaten:

Methode 3: Een enkel zipbestand maken met daarin alle 10.000 XML-bestanden

Opdracht:

Resultaten:

Methode 4: de bestanden samenvoegen tot één bestand en de opdracht Zip It

samenvoegen:

Resultaten:

Vragen

  • Waarom krijg ik zo'n dramatisch betere resultaten als ik slechts één bestand aan het ritsen ben?
  • Ik verwachtte drastisch betere resultaten te krijgen met methode 3 dan met methode 2, maar ik Niet doen. Waarom is dit?
  • Is dit gedrag specifiek voor zip? Als ik Gzip probeerde te gebruiken, zou ik dan andere resultaten krijgen?

Aanvullende informatie

Metadata

Een van de gegeven antwoorden suggereert dat het verschil de metadata van het systeem is die in het zipbestand is opgeslagen. Ik geloof niet dat dit het geval kan zijn. Om het te testen, deed ik het volgende:

Het resulterende zipbestand is 1,4 MB. Dit betekent dat er nog steeds ongeveer tien MB onverklaarde ruimte is.

Waarom is zip in staat om afzonderlijke bestanden beter te comprimeren dan meerdere bestanden met hetzelfde type inhoud?

Het antwoord

SuperUser-bijdragers Alan Shutko en Aganju hebben het antwoord voor ons. Ten eerste, Alan Shutko:

Zip-compressie is gebaseerd op repetitieve patronen in de te comprimeren gegevens en de compressie wordt beter naarmate het bestand langer is, omdat steeds meer patronen kunnen worden gevonden en gebruikt.

Vereenvoudigd, als je één bestand comprimeert, is het woordenboek dat (korte) codes toewijst aan (langere) patronen noodzakelijkerwijs opgenomen in elk resulterend zipbestand; als je een lang bestand zip, wordt het woordenboek 'hergebruikt' en wordt het effectiever voor alle inhoud.

Als je bestanden zelfs een beetje vergelijkbaar zijn (zoals tekst altijd is), wordt hergebruik van het 'woordenboek' zeer efficiënt en het resultaat is een veel kleiner totaal zipbestand.

Gevolgd door het antwoord van Aganju:

In zip wordt elk bestand afzonderlijk gecomprimeerd. Het tegenovergestelde is vaste compressie , dat wil zeggen dat bestanden samen worden gecomprimeerd. 7-zip en Rar gebruiken standaard vaste compressie. Gzip en Bzip2 kunnen niet meerdere bestanden comprimeren, dus Tar wordt eerst gebruikt, met hetzelfde effect als vaste compressie.

Omdat xml-bestanden een vergelijkbare structuur hebben (en waarschijnlijk vergelijkbare inhoud), als de bestanden samen worden gecomprimeerd, zal de compressie hoger zijn .

Als een bestand bijvoorbeeld de tekenreeks " " bevat en de compressor de tekenreeks al in een ander bestand heeft gevonden, wordt deze vervangen door een kleine verwijzing naar de vorige overeenkomst. Als de compressor geen vaste compressie gebruikt, wordt de eerste instantie van de tekenreeks in het bestand opgenomen als een letterlijke , die groter is.


Heeft u iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread


Het Windows Defender-pictogram verwijderen uit uw systeemvak

Het Windows Defender-pictogram verwijderen uit uw systeemvak

Windows 10 heeft altijd de antivirus van Windows Defender opgenomen, maar veel Windows-gebruikers merkten niet dat het er zelfs was. Om het nog voor de hand te houden, voegt de Anniversary Update van Windows 10 een Windows Defender-pictogram toe aan het systeemvak op uw taakbalk. Het schildvormige Windows Defender-pictogram verschijnt, zelfs als u een ander antivirusprogramma hebt geïnstalleerd en gebruikt, aangezien u kunt gebruik nu Windows Defender naast een andere antivirus.

(how-to)

Hoe een PDF-bestand in een Word-document invoegen

Hoe een PDF-bestand in een Word-document invoegen

Onlangs moest ik een paar pagina's uit een PDF-document halen en deze in een Word-document plaatsen dat ik naar een klant moest sturen. Tijdens dit proces heb ik een aantal manieren bedacht die je kunt gebruiken om een ​​PDF-document in een Word-document te plaatsen en dat is wat ik hier ga uitleggen!Als

(How-to)