Mit IBM Cloudant Query arbeiten

Übersicht

IBM Cloudant Query ist eine flexible Abfragesprache, mit der Dokumente aus einer Datenbank abgerufen werden können, die einem „Selektor“ entsprechen – einem JSON-Objekt, das die Suchkriterien definiert.

So funktioniert IBM Cloudant Abfrage

Um IBM Cloudant Query zu verwenden, senden Sie JSON-formatierte Abfragen an den _find HTTP Endpunkt einer Datenbank. Das JSON enthält einen Selektor, der die Abfrage selbst definiert, sowie Metadaten wie die Sortierreihenfolge, die bei der Rückgabe von Dokumenten verwendet werden soll. Die Selektor-Syntax basiert lose auf der Abfragesprache MongoDB's und bietet einen umfangreichen Satz von Abfrageoperatoren, die zu komplexen Abfragen kombiniert werden können.

Lernen Sie mehr über Abfragen, indem Sie die Selektorsyntax lesen.

Um sicherzustellen, dass Abfragen schnell Ergebnisse liefern, sollten IBM Cloudant Abfragen durch einen geeigneten sekundären Index unterstützt werden. Es sind zwei Arten von Indizes verfügbar:

  1. JSON-Indizes (type=json, der Standard)- eine Reihe von benannten Dokumentenfeldern, die zusammen den Indexschlüsselbereich bilden. Die Selektor- und Sortierparameter einer Abfrage müssen mit den Schlüsseln eines Indexes übereinstimmen, damit dieser bei der Verarbeitung der Abfrage verwendet werden kann.
  2. Textindizes (type=text)- eine Reihe von benannten Dokumentfeldern, die separat indiziert werden. Ein oder mehrere der indizierten Felder können in Selektorausdrücken kombiniert werden, um kleine Datenabschnitte zu extrahieren (bis zu 200 Dokumente pro Abfrage).

IBM Cloudant abfragen können sich auf die gesamte Datenbank oder bei partitionierten Datenbanken auf eine einzelne Partition beziehen.

Informieren Sie sich über die Erstellung von Indizes durch Lesen:

Wann ist IBM Cloudant Query zu verwenden?

IBM Cloudant Query ist ideal für:

  • Operative Abfragen, bei denen der Selektor/Sortierer einer Abfrage mit einem vordefinierten type=json Index übereinstimmt.
  • Ad-hoc-Abfragen über ein oder mehrere Felder, die durch einen type=text-Index unterstützt werden, für kleine Ergebnismengen.
  • Erstellung von Teilindizes, bei denen eine Teilmenge der Dokumente zur Bildung des Indexes verwendet wird und der Selektor/Sortierer die indizierten Daten weiter filtert.

Wann sollte man IBM Cloudant Query nicht verwenden?

Vermeiden Sie die Abfrage für:

  • Datenaggregation. Verwenden Sie stattdessen Views.
  • Freitext- oder Wildcard-Suche. Verwenden Sie stattdessen Cloudant Search.

Seitenaufteilung

Lesezeichen-Paginierung für Selektor-Syntax-Abfragen verwenden. Spezifische Einzelheiten und Beispiele finden Sie in der API-Dokumentation unter Paging bei Abfragen mit Selektorsyntax.