Kurz: Dotazování služby Azure Cosmos DB pro Gremlin pomocí Gremlin
PLATÍ PRO: Skřítek
Rozhraní API služby Azure Cosmos DB pro Gremlin podporuje dotazy Gremlin. Tento článek poskytuje ukázkové dokumenty a dotazy, které vám pomůžou začít. Podrobné referenční informace ke Gremlin najdete v článku Podpora Gremlin.
Tento článek se zabývá následujícími úkony:
- Dotazování dat pomocí Gremlin
Požadavky
Aby tyto dotazy fungovaly, musíte mít účet služby Azure Cosmos DB a data grafu v kontejneru. Něco z toho nemáte? Dokončete 5minutový rychlý start a vytvořte účet a naplňte databázi. Následující dotazy můžete spustit pomocí konzoly Gremlin nebo oblíbeného ovladače Gremlin.
Výpočet vrcholů v grafu
Následující fragment kódu ukazuje, jak vypočítat počet vrcholů v grafu:
g.V().count()
Filtry
Můžete provádět filtrování pomocí kroků Gremlin has
a hasLabel
a jejich kombinací pomocí operátorů and
, or
a not
vytvářet složitější filtry. Azure Cosmos DB poskytuje na schématu nezávislé indexování všech vlastností v rámci vrcholů a stupňů pro zajištění rychlých dotazů:
g.V().hasLabel('person').has('age', gt(40))
Projekce
Do výsledků dotazu můžete promítnout určité vlastnosti pomocí kroku values
:
g.V().hasLabel('person').values('name')
Vyhledání souvisejících hran a vrcholů
Zatím jsme viděli pouze operátory dotazu, které fungují v jakékoli databázi. Grafy jsou rychlé a efektivní pro operace procházení, kdy potřebujete přecházet k souvisejícím hranám a vrcholům. Teď najdeme všechny přátele Thomase. Provedeme to pomocí kroku Gremlin outE
, kterým vyhledáme všechny vnější hrany od Thomase, a pak pomocí kroku Gremlin inV
přejdeme z těchto hran k vnitřním vrcholům:
g.V('thomas').outE('knows').inV().hasLabel('person')
Další dotaz provádí dva segmenty směrování a dvojím zavoláním kroků outE
a inV
vyhledá všechny přátele přátel Thomase.
g.V('thomas').outE('knows').inV().hasLabel('person').outE('knows').inV().hasLabel('person')
Pomocí Gremlin můžete vytvářet i složitější dotazy a implementovat výkonnou logiku procházení grafů, včetně kombinování výrazů filtru, provádění smyček pomocí kroku loop
a implementace podmíněné navigace pomocí kroku choose
. Získejte další informace o tom, co můžete provádět díky podpoře Gremlin.
Další kroky
V tomto kurzu jste provedli následující:
- Zjistili jste, jak provádět dotazy pomocí Graphu.
Teď můžete přejít k části Koncepty, která obsahuje další informace o službě Azure Cosmos DB.