BLOB-Merge-Strategie

Hier finden YaCy User Hilfe wenn was nicht funktioniert oder anders funktioniert als man dachte. Bei offensichtlichen Fehlern diese bitte gleich in die Bugs (http://bugs.yacy.net) eintragen.
Forumsregeln
In diesem Forum geht es um Benutzungsprobleme und Anfragen für Hilfe. Wird dabei ein Bug identifiziert, wird der thread zur Bearbeitung in die Bug-Sektion verschoben. Wer hier also einen Thread eingestellt hat und ihn vermisst, wird ihn sicherlich in der Bug-Sektion wiederfinden.

BLOB-Merge-Strategie

Beitragvon cfr34x » Sa Jan 28, 2012 2:08 pm

Hallo zusammen,

vor kurzem habe ich ja einen Peer auf meinem VServer, der nur DHT macht, um eine Suche für den #yacy-IRC-Chanel zur Verfügung zu stellen.

Da nur DHT aktiviert ist, werden relativ selten neue und kleine BLOBs erzeugt. Allerdings ist mir aufgefallen, dass diese sofort mit dem einen großen BLOB zusammengeführt werden, was für erhebliche IO-Last auf dem Server sorgt (da jedes Mal 200 MB kopiert werden, wenn nur 500 kB zum Index hinzukommen).

Hat dieses direkte Zusammenführen irgendwelche Vorteile für die Suche? Falls nicht, würde ich folgende Strategie für den Merge-Prozess vorschlagen:

  • Die Dateigröße der zwei kleinsten BLOBs wird angeschaut
  • Wenn der kleinere mindestens halb so groß ist wie der größere, werden die beiden zusammengeführt
  • Wiederhole das solange, bis die Bedinung im ersten Punkt nicht mehr erfüllt ist.

Das würde dafür sorgen, dass der große 200MB-BLOB erst angefasst wird, wenn ein anderer mit mindestens 100MB vorhanden ist.

Viele Grüße
Thomas
cfr34x
 
Beiträge: 49
Registriert: Sa Jan 31, 2009 6:24 pm

Re: BLOB-Merge-Strategie

Beitragvon sixcooler » Sa Jan 28, 2012 5:07 pm

Hallo,

die von Dir beschriebene Strategie ist diejenige die für Blobs >256MB auch angewandt wird.
Alles <256MB wird sofot gemerged da solche Größen noch recht schnell gemerged werden und der Zugang bei einer Suche schneller in einem großen Blob ist, als in vielen kleinen.

cu, sixcooler.
sixcooler
 
Beiträge: 494
Registriert: Do Aug 14, 2008 5:22 pm

Re: BLOB-Merge-Strategie

Beitragvon Orbiter » Sa Jan 28, 2012 10:15 pm

vielleicht kann man ja die Grenze runtersetzen
Orbiter
 
Beiträge: 5792
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: BLOB-Merge-Strategie

Beitragvon cfr34x » Sa Jan 28, 2012 11:49 pm

Orbiter hat geschrieben:vielleicht kann man ja die Grenze runtersetzen

Optimal wäre natürlich, wenn man die Grenze konfigurieren könnte.

50 MB als Grenze wären in meinem Fall wahrscheinlich besser, weil 50 MB kopierte Daten alle 5 min auch auf einem VServer kein Problem sein sollten. Mit der aktuellen Einstellung verbringt der Server leider zeitweise bis zu 30% der CPU-Zeit im IO-Wait, obwohl ich neben YaCy keine IO-lastigen Prozesse laufen habe (die Platten werden anscheinend auch von anderen gut genutzt :roll: ).

Viele Grüße
Thomas
cfr34x
 
Beiträge: 49
Registriert: Sa Jan 31, 2009 6:24 pm

Re: BLOB-Merge-Strategie

Beitragvon Orbiter » So Jan 29, 2012 8:36 pm

hab das nun mal auf 64mb gestellt.
Orbiter
 
Beiträge: 5792
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: BLOB-Merge-Strategie

Beitragvon cfr34x » Mo Jan 30, 2012 7:49 pm

Viele Dank, das Mergen ist jetzt wesentlich zurückhaltender, was IO angeht :-) .
cfr34x
 
Beiträge: 49
Registriert: Sa Jan 31, 2009 6:24 pm


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast