2016-09-20 3 views
0

Wird die Option search: simultane Suche für Facettenberechnungen intern als (viele Facetten gleichzeitig auf demselben Kern gelöst) oder (jede Facette aufgelöst auf einem einzelnen Kern) ausgeführt?facet gleichzeitige Auflösung?

Was ist die maximale Grenze für die Option für den gemeinsamen Zugriff? Gibt es eine Beziehung zwischen dieser Option und der Anzahl der Kerne?

Wenn die Facetten auf demselben Kern aufgelöst werden? Werden sie innerhalb desselben Prozesses mit mehreren Threads berechnet oder wird jede Facette als ein anderer Prozess aufgelöst?

ist ML7 und ML8 gleichzeitige Facetten auf andere Weise auflösen?

in cts: Element-Wert Dokumentation für „gleichzeitige“ Option: here

Was bedeutet u von "Dies ist besonders nützlich in Fällen, in denen mehrere Lexika Anrufe in der gleichen Abfrage (zum Beispiel auftreten, löst viele Facetten in einer einzigen Abfrage) "?

Wie haben Sie die gleiche Abfrage oder einzelne Abfrage definiert?

Wenn ich viele Facetten mithilfe von cts: element-values ​​ohne Verwendung der Suche auflösen muss: suche, wie ich sie in eine "einzelne Abfrage" setzen kann, damit sie gleichzeitig aufgelöst werden können?

Antwort

1

Jeder Anwendungsserver hat eine konfigurierte maximale Anzahl von Threads.

Die concurrency-level within the query options steuert, wie viele Threads eine Abfrage mit der REST oder Search API verbrauchen darf (begrenzt durch das Maximum für den Anwendungsserver).

Wenn die Abfrage ausgeführt wird, weist der Server Threads für die Facettenauflösung zu (bis zum unteren Maximum aus den Abfrageoptionen und der tatsächlichen Anzahl der zu diesem Zeitpunkt verfügbaren Threads).

Wenn es mehr Facetten als Threads gibt, wird die Auflösung der zusätzlichen Facetten in ausgewogener Weise auf die Threads verteilt.

Der Server wurde entwickelt, um mehrere Kerne beim Ausführen von Threads zu nutzen.

ML7 und ML8 nehmen den gleichen grundlegenden Ansatz.

Eine Abfrage besteht aus der Ende-zu-Ende-Verarbeitung einer Anfrage, eval oder invoke.

Um mehrere Anforderungen gleichzeitig auszuführen, greifen Sie erst nach der Ausführung aller Aufrufe auf die von den Aufrufen zugewiesenen Variablen zu.

Das heißt, die Such-API eignet sich gut für die gleichzeitige Ausführung von Facetten. Daher sollten Sie die Vorteile der Suchfunktion nutzen, wenn Sie nicht einen zwingenden Grund haben, etwas anderes zu tun.

+0

Vielen Dank. Ihre Antwort ist hilfreich :). –