FAQ: Mein Korpus ist zu groß und mein RAM reicht nicht aus – was kann ich tun?

Wenn dein Korpus zu groß ist, um vollständig in den Arbeitsspeicher (RAM) geladen zu werden, bietet der CorpusExplorer zwei einfache Möglichkeiten, das Problem zu lösen:


1. Das richtige Korpus-Format verwenden (STREAM-Modus)

Der wichtigste Schritt ist, dein Korpus im CEC6-Format zu speichern und mit Stream-Support zu importieren.

Schritt-für-Schritt:

  1. Lade dein Korpus wie gewohnt im CorpusExplorer.

  2. Gehe zu „Schnappschuss Übersicht“ → „Exportieren“ → „CorpusExplorer v6 (*.cec6)“.

  3. CorpusExplorer neu starten, damit kein Korpus mehr im Speicher liegt.

  4. In der „Korpus Übersicht“ auf „Korpus importieren“ klicken.

  5. Wähle das Format „CorpusExplorer v6 [STREAM] (*.cec6)“ aus.

Vorteil:
Das Korpus wird nicht vollständig geladen, sondern bei Bedarf von der Festplatte gestreamt.
Dadurch sinkt der RAM-Verbrauch drastisch.

Beispielrechnung zum Speicherbedarf:

Faustregel:

Anzahl der Layer × 15 = Speicherbedarf pro Token in Byte

Beispiel: Bei 3 Layern (x 15) => 45 Byte pro Token. In diesen 45 Byte ist alles inkludiert: welches Dokument, Position (Dokument/Satz) des Token, usw. Jetzt berechnen wir den RAM-Verbrauch für zwei Beispielkorpora die OHNE STREAM geladen werden.

Anzahl der Token × 45 = Speicherbedarf in Bytes (ohne STREAM)

Korpusgröße Rechnung RAM-Verbrauch
100 Mio. Token 100.000.000 × 45 = 4.500.000.000 Bytes 4.5 GB
1 Mrd. Token 1.000.000.000 × 45 = 45.000.000.000 Bytes 45 GB

Jetzt laden wir das Korpus mit STREAM – der RAM-Verbrauch ist hier 0,25 Byte pro Layer. Im Beispiel rechnen wir als den RAM-Verbrauch mit 0,75 Byte (bei 3 Layern).

Anzahl der Token × 0,75 = Speicherbedarf in Bytes (mit STREAM)

Korpusgröße Rechnung RAM-Verbrauch
100 Mio. Token 100.000.000 × 3 = 300.000.000 Bytes ≈ 300 MB
1 Mrd. Token 1.000.000.000 × 3 = 3.000.000.000 Bytes ≈ 1 GB

Tipp:
Je größer das Korpus, desto stärker profitiert man vom STREAM-Modus – allerdings dauern Analysen dann etwas länger, da Daten von der Festplatte nachgeladen werden.


⚙️ 2. Analysen ressourcenschonend ausführen

Einige Analysen (z. B. N-Gramm-Analysen) erzeugen extrem große Datenmengen.
Selbst mit STREAM kann das in der grafischen Oberfläche (GUI) zu RAM-Engpässen führen.

Lösung:

Nutze für solche Fälle die Konsolen-Version des CorpusExplorer.
Diese arbeitet speichereffizienter und kann auch sehr große Korpora problemlos verarbeiten.