RWI-Blobs und URL-Table zusammenführen

Ideen und Vorschläge sind willkommen.

RWI-Blobs und URL-Table zusammenführen

Beitragvon PCA42 » So Jan 23, 2011 12:24 pm

Aktuell werden die URLs getrennt von den RWIs in Dateien aufgesammelt und dort gehalten. Diese Datenmenge kann im laufenden Betrieb nicht verkleinert werden. Dies ist nur über externe Wartungsfunktionen möglich (Stichwort: URLDBCleaner). URLs und RWIs sollten meiner Meinung nach zusammengeführt werden. Wie soll das geschehen?

Neben der eigentlichen Blob-Datei wird eine weitere Datei erstellt, in der die Daten nochmals vorhanden sind, hier wird jedoch nach den URLs indiziert. Hierbei gibt es sicherlich Möglichkeiten der Datenreduktion. Weiterhin sollte jede URL über die Gesamtstruktur einmalig bleiben. Das bedeutet, die Daten zu einer URLs sind alle in einem Blob enthalten. Kommen z.B. durch DHT neue Daten hinzu, werden alle Daten in die aktuelle Blob-Stuktur übernommen.

Durch diese Verfahrensweise ergeben sich nun Vor- und Nachteile. Als Nachteil sehe ich folgendes:
  • Es entsteht eine erhöhte IO-Last beim Hinzufügen von Daten. Dies kann jedoch vielleicht dadurch aufgefangen werden, dass erst beim Schreiben des RWI-Puffers die restlichen Daten gesammelt aus den vorhandenen Blobs kopiert werden.
  • Der Merge von zwei Blobs wird komplizierter und benötigt mehr Arbeitsspeicher.

Es ergeben sich aus meiner Sicht jedoch Vorteile, die dies aufwiegen sollten:
  • Suchabläufe lassen sich mit der Anzahl der Blobs aufteilen. Insbesondere Mehrwortsuchen sollten schneller sein, da nur jeweils die Datenbestände innerhalb eines Blobs verarbeitet werden müssen.
  • Der Datenbestand wird frei von Duplikaten. Es existiert in diesem Modell jede Kombination aus RWI und URL nur 1x.
  • Der Datenbestand kann besser aktualisiert werden. Wird eine URL aktualisiert oder invalid (z.B. Fehler 404) kann sie gezielt manipuliert werden.
PCA42
 
Beiträge: 621
Registriert: Mi Jan 23, 2008 4:19 pm
Wohnort: @Home

Zurück zu Wunschliste

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast