Öğretici: Azure Cosmos DB'de Cassandra hesabı için API'den veri sorgulama

ŞUNLAR IÇIN GEÇERLIDIR: Cassandra

Geliştirici olarak anahtar/değer çiftleri kullanan uygulamalarınız olabilir. Anahtar/değer verilerini depolamak ve sorgulamak için Azure Cosmos DB'de Cassandra hesabı api'sini kullanabilirsiniz. Bu öğreticide, Java uygulaması kullanarak Azure Cosmos DB'de Cassandra hesabı için api'den kullanıcı verilerini sorgulama gösterilmektedir. Java uygulaması Java sürücüsünü kullanır ve kullanıcı kimliği, kullanıcı adı ve kullanıcı şehri gibi kullanıcı verilerini sorgular.

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

  • Cassandra tablosundan veri sorgulama
  • Uygulamayı çalıştırma

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

  • Bu makale çok bölümlü bir öğreticiye aittir. Başlamadan önce Cassandra hesabı, anahtar alanı, tablo api'sini oluşturmak ve örnek verileri tabloya yüklemek için önceki adımları tamamladığınızdan emin olun.

Verileri sorgulama

Cassandra hesabı için API'nizden veri sorgulamak için aşağıdaki adımları kullanın:

  1. src\main\java\com\azure\cosmosdb\cassandra klasöründeki UserRepository.java dosyasını açın. Aşağıdaki kod bloğunu ekleyin. Bu kod üç yöntem sunar:

    • Veritabanındaki tüm kullanıcıları sorgulama
    • Kullanıcı kimliğine göre filtreleyerek belirli bir kullanıcıyı sorgulama
    • Tabloyu silmek için
    /**
    * Select all rows from user table
    */
    public void selectAllUsers() {
    
      final String query = "SELECT * FROM uprofile.user";
      List<Row> rows = session.execute(query).all();
    
      for (Row row : rows) {
         LOGGER.info("Obtained row: {} | {} | {} ", row.getInt("user_id"), row.getString("user_name"), row.getString("user_bcity"));
      }
    }
    
    /**
    * Select a row from user table
    *
    * @param id user_id
    */
    public void selectUser(int id) {
       final String query = "SELECT * FROM uprofile.user where user_id = 3";
       Row row = session.execute(query).one();
    
       LOGGER.info("Obtained row: {} | {} | {} ", row.getInt("user_id"), row.getString("user_name"), row.getString("user_bcity"));
    }
    
    /**
    * Delete user table.
    */
    public void deleteTable() {
      final String query = "DROP TABLE IF EXISTS uprofile.user";
      session.execute(query);
    }
    
  2. src\main\java\com\azure\cosmosdb\cassandra klasöründeki UserProfile.java dosyasını açın. Bu sınıf, daha önce tanımladığınız createKeyspace ve createTable veri ekleme yöntemlerini çağıran main yöntemini içerir. Şimdi tüm kullanıcıları veya belirli bir kullanıcıyı sorgulayan aşağıdaki kodu ekleyin:

    LOGGER.info("Select all users");
    repository.selectAllUsers();
    
    LOGGER.info("Select a user by id (3)");
    repository.selectUser(3);
    
    LOGGER.info("Delete the users profile table");
    repository.deleteTable();
    

Java uygulamasını çalıştırma

  1. Bir komut istemi veya terminal penceresi açın. Aşağıdaki kod bloğunu yapıştırın.

    Bu kod, dizini (cd) projeyi oluşturduğunuz klasör yoluna değiştirir. Ardından hedef klasörde cosmosdb-cassandra-examples.jar dosyasını oluşturmak için mvn clean install komutunu çalıştırır. Son olarak, Java uygulamasını çalıştırır.

    cd "cassandra-demo"
    
    mvn clean install
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile
    
  2. Şimdi Azure portalda Veri Gezgini'ni açın ve kullanıcı tablosunun silindiğini doğrulayın.

Kaynakları temizleme

Artık gerekli olmadığında kaynak grubunu, Azure Cosmos DB hesabını ve tüm ilgili kaynakları silebilirsiniz. Bunu yapmak için sanal makinenin kaynak grubunu seçin, Sil'i seçin ve silinecek kaynak grubunun adını onaylayın.

Sonraki adımlar

Bu öğreticide, Azure Cosmos DB'de Cassandra hesabı için bir API'den veri sorgulamayı öğrendiniz. Şimdi bir sonraki makaleye geçebilirsiniz: