Öğretici: Gremlin kullanarak Gremlin için Azure Cosmos DB'yi sorgulama

ŞUNLAR IÇIN GEÇERLIDIR: Gremlin

Gremlin için Azure Cosmos DB API'si Gremlin sorgularını destekler. Bu makalede, başlamanıza yardımcı olmak için örnek belgeler ve sorgular sunulmaktadır. Gremlin desteği makalesinde ayrıntılı bir Gremlin başvurusu sağlanmıştır.

Bu makale aşağıdaki görevleri kapsar:

  • Gremlin ile verileri sorgulama

Önkoşullar

Bu sorguların çalışması için bir Azure Cosmos DB hesabınız ve kapsayıcıda graf verileriniz olmalıdır. Bunlardan biri yok mu? Hesap oluşturmak ve veritabanınızı doldurmak için 5 dakikalık hızlı başlangıcı tamamlayın. Gremlin konsolunu veya sık kullandığınız Gremlin sürücüsünü kullanarak aşağıdaki sorguları çalıştırabilirsiniz.

Graftaki köşeleri sayma

Aşağıdaki kod parçacığı, graftaki köşe sayısının nasıl hesaplanacağını gösterir:

g.V().count()

Filtreler

Gremlin’in has ve hasLabel etiketlerini kullanarak filtreler gerçekleştirebilir ve daha karmaşık filtreler derlemek için and, or ve not kullanarak bunları birleştirebilirsiniz. Azure Cosmos DB, hızlı sorgular için köşeleriniz ve dereceleriniz içindeki tüm özelliklerin şemadan bağımsız dizinlemesini sağlar:

g.V().hasLabel('person').has('age', gt(40))

Projeksiyon

values adımını kullanarak sorgu sonuçlarında belirli özellikleri yansıtabilirsiniz:

g.V().hasLabel('person').values('name')

Şu ana kadar yalnızca tüm veritabanlarında çalışan sorgu işleçlerini gördük. Graflar, ilgili kenarlara ve köşelere gitmeniz gerektiğinde çapraz geçiş işlemleri için hızlı ve etkilidir. Şimdi Thomas’ın tüm arkadaşlarını bulalım. Thomas’taki tüm dış kenarları bulmak için Gremlin’in outE adımını kullanıp sonra Gremlin’in inV adımını kullanarak bu kenarlardan iç köşelere çapraz geçiş yaparak bunu gerçekleştiririz:

g.V('thomas').outE('knows').inV().hasLabel('person')

Sonraki sorgu, outE ve inV öğelerini iki kez çağırarak Thomas’ın tüm “arkadaşlarının arkadaşlarını” bulmak için iki atlama gerçekleştirir.

g.V('thomas').outE('knows').inV().hasLabel('person').outE('knows').inV().hasLabel('person')

Gremlin kullanarak, filtre ifadelerini karıştırma, loop adımını kullanarak döngü gerçekleştirme ve choose adımını kullanarak koşullu gezinti uygulama gibi güçlü grafik çapraz geçişi mantığı uygulayabilir ve daha karmaşık sorgular derleyebilirsiniz. Gremlin desteği ile neler yapabileceğiniz hakkında daha fazla bilgi edinin!

Sonraki adımlar

Bu öğreticide aşağıdakileri yaptınız:

  • Graf kullanarak sorgulamayı öğrendiniz

Şimdi Azure Cosmos DB hakkında daha fazla bilgi için Kavramlar bölümüne geçebilirsiniz.