← Nieuwste papers
💻 computer science

LogFold: Compressing Logs with Structured Tokens and Hybrid Encoding

Dit paper introduceert LogFold, een nieuwe logcompressiemethode die gebruikmaakt van een typebewuste coderingsstrategie en een hybride encoder om complexe tokenredundanties te exploiteren, wat resulteert in een aanzienlijk betere compressieverhouding en snelheid dan bestaande technieken.

Oorspronkelijke auteurs: Shiwen Shan, Yintong Huo, Hongzhan Zhong, Zhining Wang, Yuxin Su, Zibin Zheng

Gepubliceerd 2026-03-24
📖 4 min leestijd☕ Koffiepauze-leesvoer

Oorspronkelijke auteurs: Shiwen Shan, Yintong Huo, Hongzhan Zhong, Zhining Wang, Yuxin Su, Zibin Zheng

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat je een gigantische bibliotheek hebt, maar in plaats van boeken, zitten er miljoenen dagboeken in. Elke dag schrijft een computer zijn "dagboek" vol met logs: berichten over wat er gebeurt, fouten die optreden, en wie er op welk moment iets doet.

Voor software-ontwikkelaars zijn deze dagboeken goud waard. Als er iets kapot gaat, kijken ze erin om te zien wat er misging. Maar hier is het probleem: deze dagboeken worden enorm. Bedrijven moeten ze jarenlang bewaren (omdat de wet dat vereist), maar het kost een fortuin aan opslagruimte.

Tot nu toe probeerden mensen deze dagboeken te verkleinen met algemene "zip-programma's" (zoals WinZip of Gzip). Maar die zijn niet slim genoeg voor logbestanden. Ze zien niet de specifieke patronen die in computerlogs zitten.

LogFold is een nieuwe, slimme uitvinding die dit probleem oplost. Hier is hoe het werkt, vertaald in alledaagse taal:

1. Het Probleem: De "Vaste Structuur"

Stel je voor dat je een logbericht ziet als:

"2015-07-29 17:41:41,536 [main:QuorumPeerConfig@334] /etc/zookeeper/conf/zoo.cfg"

Een gewone zip-programma ziet dit als een lange, saaie rij letters en cijfers. Maar LogFold kijkt er anders naar. Het ziet dat dit bericht uit bouwstenen bestaat:

  • Een datum (2015-07-29)
  • Een tijd (17:41:41)
  • Een procesnaam (QuorumPeerConfig)
  • Een ID (334)

Deze bouwstenen hebben een vast patroon (een "skelet"). De datum is altijd jaar-maand-dag, gescheiden door streepjes. De tijd is altijd uur:minuut-seconde.

2. De Oplossing: LogFold als een Slimme Sorteerder

LogFold werkt in vier stappen, alsof je een chaotische berg kleding sorteert om hem in een kleine koffer te proppen:

Stap 1: De Scharnierende Sorteerder (Token Analyzer)

LogFold pakt elk logbericht en splitst het in stukjes. Het zegt: "Oké, dit stukje is een datum, dit stukje is een statisch woord (dat nooit verandert), en dit stukje is een willekeurige tekst." Het maakt een lijstje van wat er precies in zit.

Stap 2: Het Skelet Ontmaskeren (Structured Token Processor)

Dit is het magische deel. LogFold kijkt naar de "skeletten" van de complexe stukjes.

  • Voorbeeld: Het ziet dat alle datums een skelet hebben van <>-<>-<> (waarbij de pijltjes voor de getallen staan).
  • In plaats van elke datum apart op te slaan, zegt LogFold: "We slaan het skelet <>-<>-<> maar één keer op."
  • Dan kijkt het naar de getallen erin. Vaak zijn bepaalde delen altijd hetzelfde (bijvoorbeeld het jaar 2015). LogFold haalt die vaste delen eruit en maakt het skelet nog specifieker: 2015-<>-<>.
  • Hierdoor worden de overgebleven getallen veel eenvoudiger en voorspelbaarder.

Stap 3: De Slimme Verpakker (Hybrid Encoder)

Nu heeft LogFold verschillende soorten "pakketjes":

  • Cijferpakketjes: Deze worden verpakt met een slimme methode die alleen het verschil tussen twee getallen opslaat (in plaats van het hele getal). Als je van 100 naar 101 gaat, sla je alleen "1" op, niet "101".
  • Woordpakketjes: Herhaalde woorden krijgen een kort nummer (een soort postcode).
  • Gemengde pakketjes: Soms heb je een rijtje met zowel woorden als cijfers. LogFold is slim genoeg om die om te zetten in één groot getal en die dan te verpakken.

Stap 4: De Koffer Sluiten (Packer)

Tot slot neemt LogFold al deze slimme, verkleinde stukjes en pakt ze in een standaard zip-bestand (zoals Gzip of LZMA). Omdat de data al zo slim is voorbereid, is het eindresultaat veel kleiner dan bij een normale zip.

Waarom is dit zo goed?

In de proeven met 16 verschillende soorten computerlogs (van supercomputers tot mobiele telefoons) deed LogFold het 11% tot 494% beter dan de beste bestaande methoden.

  • Analogie: Stel je voor dat je 1000 keer de zin "Ik heb een rode auto" moet opslaan.
    • Een gewone zip ziet "Ik heb een rode auto" en zegt: "Oké, ik herhaal dit woord."
    • LogFold ziet: "Ah, 'Ik heb een' is altijd hetzelfde, 'auto' is altijd hetzelfde, alleen 'rode' verandert soms naar 'blauwe'." Het slaat de zin op als: "Ik heb een [kleur] auto", en slaat alleen de kleuren apart op. Dat bespaart enorm veel ruimte.

Het Nadeel (en de oplossing)

Het enige nadeel is dat het even langer duurt om in te pakken (compressie) dan een simpele zip, omdat LogFold eerst heel slim moet nadenken over de patronen. Maar voor bedrijven die logs jarenlang willen bewaren, is dat een kleine prijs. Je bespaart duizenden euro's aan opslagkosten, en het uitpakken (decompressie) gaat nog steeds snel genoeg.

Kortom: LogFold is als een super-efficiënte verhuisservice die niet alleen je dozen in elkaar schuift, maar eerst je spullen uit elkaar haalt, de herhalende onderdelen verwijdert en ze slim herordent, zodat je in plaats van een vrachtwagen, slechts een kleine bestelbus nodig hebt om je data te vervoeren.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →