Binaire index
Een compact indexbestand dat Mbox Viewer naast een MBOX-archief schrijft na de eerste verwerking, waarin byte-offsets en metadata van berichten zijn opgeslagen voor een vrijwel direct heropenen zonder het volledige bestand opnieuw te scannen.
Nadat Mbox Viewer een MBOX-bestand voor de eerste keer heeft geopend en verwerkt, schrijft het een klein binair indexbestand op dezelfde locatie. Deze index legt de byte-offset en lengte van elk bericht in de MBOX vast, samen met belangrijke koptekstmetadata zoals datum, afzender en onderwerp. Bij alle volgende openingen laadt de app de index in plaats van het bestand opnieuw te scannen, waardoor de openingstijd van minuten (voor zeer grote archieven) wordt teruggebracht tot minder dan een seconde.
Om te garanderen dat de index geldig blijft, slaat Mbox Viewer een SHA-256-hash van het MBOX-bestand (of een gedeelte ervan dat voldoende is om wijzigingen te detecteren) op in de index. Wanneer de app een MBOX-bestand opent, controleert het of de hash overeenkomt voordat het de index vertrouwt. Als de MBOX is gewijzigd — bijvoorbeeld doordat een nieuwe export het oude bestand heeft vervangen — wordt de index verworpen en het bestand opnieuw verwerkt.
De binaire index is een prestatieoptimalisatie die volledig transparant is voor de gebruiker. Het wijzigt het MBOX-bestand zelf nooit; het maakt alleen een begeleidend bestand aan. Dit is consistent met het alleen-lezen ontwerp van Mbox Viewer: je e-mailarchief wordt nooit gewijzigd, alleen gelezen.
Verwante begrippen
Een parsetechniek die een bestand stapsgewijs in kleine stukken leest in plaats van het volledige bestand in één keer in het geheugen te laden, waarmee tools zeer grote MBOX-bestanden van tientallen of honderden gigabytes kunnen openen en indexeren met een laag geheugengebruik.
Een tekstbestand dat meerdere e-mailberichten achter elkaar opslaat, elk beginnend met een scheidingsregel "From ". Dit is het formaat dat Google Takeout produceert bij het exporteren van je Gmail-archief.