SPARQLHinweise zur Abfrage - Amazon Neptune

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SPARQLHinweise zur Abfrage

Sie können Abfragehinweise verwenden, um Optimierungs- und Bewertungsstrategien für eine bestimmte SPARQL Abfrage in Amazon Neptune festzulegen.

Abfragehinweise werden mithilfe zusätzlicher Dreifachmuster ausgedrückt, die in die SPARQL Abfrage eingebettet sind und die folgenden Teile enthalten:

scope hint value
  • scope – Bestimmt den Teil der Abfrage, auf den der Abfragehinweis angewendet wird, wie eine bestimmte Gruppe in der Abfrage oder die gesamte Abfrage.

  • hint – Identifiziert die Art des anzuwendenden Hinweises.

  • value – Legt das Verhalten des jeweiligen Systemaspekts fest.

Die Abfragehinweise und Bereiche werden als vordefinierte Begriffe im Amazon–Neptune-Namespace http://aws.amazon.com/neptune/vocab/v01/QueryHints# angezeigt. Die Beispiele in diesem Abschnitt enthalten den Namespace als ein hint-Präfix, das in der Abfrage definiert und enthalten ist:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>

Das folgende Beispiel zeigt beispielsweise, wie Sie einen joinOrder-Hinweis in einer SELECT-Abfrage einschließen:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> SELECT ... { hint:Query hint:joinOrder "Ordered" . ... }

Die vorherige Abfrage weist die Neptune-Engine an, Joins in der Abfrage in der angegebenen Reihenfolge auszuwerten, und deaktiviert jede automatische Neuanordnung.

Sie sollten bei der Verwendung von Abfragehinweisen folgende Punkte beachten:

  • Sie können in einer einzigen Abfrage verschiedene Abfragehinweise kombinieren. Beispielsweise können Sie den Abfragehinweis bottomUp verwenden, um eine Unterabfrage für die Auswertung von unten nach oben zu markieren, und den Abfragehinweis joinOrder, um die Join-Anordnung innerhalb der Unterabfrage festzulegen.

  • Sie können den gleichen Abfragehinweis mehrmals in verschiedenen, sich nicht überschneidenden Bereichen verwenden.

  • Abfragehinweise sind Hinweise. Obwohl die Abfrage-Engine in der Regel die Berücksichtigung der angegebenen Abfragehinweise anstrebt, kann sie diese auch ignorieren.

  • Abfragehinweise bewahren die Semantik. Das Hinzufügen eines Abfragehinweises ändert nichts an der Ausgabe der Abfrage (mit Ausnahme der möglichen Reihenfolge der Ergebnisse, wenn keine Sortiergarantien gegeben werden, d. h., wenn die Reihenfolge der Ergebnisse nicht explizit mithilfe von BY erzwungen wird). ORDER

Die folgenden Abschnitte enthalten weitere Informationen zu den verfügbaren Abfragehinweisen und ihre Nutzung in Neptune.

Umfang der SPARQL Abfragehinweise in Neptune

Die folgende Tabelle zeigt die verfügbaren Bereiche, die zugehörigen Hinweise und Beschreibungen für SPARQL Abfragehinweise in Amazon Neptune. Das Präfix hint in diesen Einträgen stellt den Neptune-Namespace für Hinweise dar:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>
Scope Unterstützter Hinweis Beschreibung
hint:Query

joinOrder

Der Abfragehinweis gilt für die gesamte Abfrage.
hint:Query

queryTimeout

Der Timeout-Wert gilt für die gesamte Abfrage.
hint:Query

rangeSafe

Die Typheraufstufung ist für die gesamte Abfrage deaktiviert.
hint:Query

queryId

Der Abfrage-ID-Wert gilt für die gesamte Abfrage.
hint:Query

verwenden DFE

Die Verwendung von DFE ist für die gesamte Abfrage aktiviert (oder deaktiviert).
hint:Group

joinOrder

Der Abfragehinweis gilt für die Elemente auf der obersten Ebene in der angegebenen Gruppe, jedoch nicht für verschachtelte Elemente (z. B. Unterabfragen) oder übergeordnete Elemente.
hint:SubQuery

evaluationStrategy

Der Hinweis wird angegeben und auf eine verschachtelte SELECT Unterabfrage angewendet. Die Unterabfrage wird unabhängig ohne Berücksichtigung von Lösungen ausgewertet, die vor der Unterabfrage berechnet wurden.