Tutoriel : Interroger les données à partir d’un compte d’API pour Cassandra dans Azure Cosmos DB

S’APPLIQUE À : Cassandra

En tant que développeur, vous pouvez avoir des applications qui utilisent des paires clé/valeur. Vous pouvez utiliser un compte d’API pour Cassandra dans Azure Cosmos DB pour stocker et interroger des données de clé/valeur. Ce tutoriel montre comment interroger les données utilisateur d’un compte d’API pour Cassandra dans Azure Cosmos DB à l’aide d’une application Java. L’application Java utilise le pilote Java et interroge des données utilisateur, comme l’ID de l’utilisateur, son nom et sa localité.

Ce tutoriel décrit les tâches suivantes :

  • Interroger les données d’une table Cassandra
  • Exécuter l’application

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Prérequis

  • Cet article appartient à un tutoriel en plusieurs parties. Avant de commencer, veillez à effectuer les étapes précédentes pour créer un compte, un espace de clés et une table d’API pour Cassandra, puis pour charger des exemples de données dans la table.

Interroger des données

Utilisez les étapes suivantes pour interroger des données de votre compte d’API pour Cassandra :

  1. Ouvrez le fichier UserRepository.java qui se trouve dans le dossier src\main\java\com\azure\cosmosdb\cassandra. Ajoutez-y le bloc de code suivant. Ce code fournit trois méthodes :

    • Pour interroger tous les utilisateurs de la base de données
    • Pour interroger un utilisateur spécifique, filtré par ID d’utilisateur
    • Pour supprimer une table
    /**
    * 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. Ouvrez le fichier UserProfile.java qui se trouve dans le dossier src\main\java\com\azure\cosmosdb\cassandra. Cette classe contient la méthode principale qui appelle les méthodes d’insertion des données createKeyspace et createTable que vous avez définies précédemment. Ajoutez maintenant le code suivant pour interroger tous les utilisateurs ou un utilisateur spécifique :

    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();
    

Exécuter l’application Java

  1. Ouvrez une invite de commandes ou une fenêtre de terminal. Collez le bloc de code suivant.

    Ce code change le répertoire (cd) pour le chemin du dossier où vous avez créé le projet. Ensuite, il exécute la commande mvn clean install pour générer le fichier cosmosdb-cassandra-examples.jar dans le dossier cible. Enfin, il exécute l’application Java.

    cd "cassandra-demo"
    
    mvn clean install
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile
    
  2. Maintenant, dans le Portail Azure, ouvrez l’Explorateur de données et confirmez la suppression de la table utilisateur.

Nettoyer les ressources

Dès que vous n’en avez plus besoin, vous pouvez supprimer le groupe de ressources, le compte Azure Cosmos DB et toutes les ressources associées. Pour cela, sélectionnez le groupe de ressources de la machine virtuelle, sélectionnez Supprimer, puis confirmez le nom du groupe de ressources à supprimer.

Étapes suivantes

Dans ce tutoriel, vous avez appris à interroger les données d’un compte d’API pour Cassandra dans Azure Cosmos DB. Vous pouvez maintenant passer à l’article suivant :