2016-08-01 17 views
0

Ich benutze Marklogic 8 und benutze die Java API um Dokumente abzurufen und zu speichern.
Alle meine Dokumente speichern (JSON-Dateien) haben maximal 2 KB Dateigröße.
Ich habe zwei Fragen: Indizes sind auf den meisten der JSON-Knoten, die Abfrage ist festgelegt.
Die Suche umfasst standardmäßig einen Bereich von Zeitmarken (in langen), d. H. Eine umfassende Suche nach und von Zeitstempeln. Sowie irgendeinen anderen Knoten wie vom Endbenutzer angefordert.
Der Code verwendet QBE Ansatz, um die Datenbank abzufragen.
Welche Suche bietet die beste Leistung in Marklogic 8 Java API?

Frage 1: Gibt es einen besseren Ansatz wie String Query-Definition-Suche, Key-Value Nach, Structured Query Definition oder Kombinierte Abfrage-Suche, die eine bessere Leistung als Query By Example hat

Frage 2: Hat die Maschine, auf der sie läuft, einen Einfluss auf die Leistung?
Ich arbeite jetzt an meinem lokalen Windows-Rechner, aber irgendwann wird Marklogic auf einem UNIX-Rechner in der Produktion gehostet.
Ich bin mir nicht sicher über die Spezifikationen für die Unix-Maschine.

Antwort

5

QBE- und String-Abfragen werden im Server in strukturierte Abfragen übersetzt. Wenn Sie also direkt mit strukturierten Abfragen arbeiten, sollten Sie Ihre beste Leistung erzielen, obwohl der Unterschied vernachlässigbar sein sollte. Kombinierte Abfragen sind weniger ideal als das Speichern Ihrer Optionen im Server, da beim Senden der Optionen mit jeder Abfrage ein gewisser Aufwand verbunden ist.

Die Maschine wird sich natürlich auf die Leistung auswirken. Achten Sie darauf, die Installation Guide zu lesen, während Sie Ihre Produktionsmaschine spezifizieren und das OS konfigurieren. Achten Sie auch darauf, die Query Performance Guide und help knowledgebase articles on tuning zu folgen.