Delen via


Zelfstudie: Gegevens opvragen uit een API voor Cassandra-account in Azure Cosmos DB

VAN TOEPASSING OP: Cassandra

Als ontwikkelaar hebt u mogelijk toepassingen die gebruikmaken van sleutel-/waardeparen. U kunt een API voor Cassandra-account in Azure Cosmos DB gebruiken om de sleutel-/waardegegevens op te slaan en er query's op uit te voeren. Deze zelfstudie laat zien hoe u een query uitvoert op gebruikersgegevens uit een API voor Cassandra-account in Azure Cosmos DB met behulp van een Java-toepassing. De Java-toepassing maakt gebruik van het Java-stuurprogramma en vraagt gebruikersgegevens op zoals gebruikers-id, gebruikersnaam en woonplaats van de gebruiker.

Deze zelfstudie bestaat uit de volgende taken:

  • Gegevens opvragen uit een Cassandra-tabel
  • De app uitvoeren

Als u nog geen abonnement op Azure hebt, maakt u een gratis account aan voordat u begint.

Vereisten

  • Dit artikel maakt deel uit van een meerdelige zelfstudie. Voordat u begint, moet u de vorige stappen uitvoeren om de API voor cassandra-account, keyspace, tabel en voorbeeldgegevens in de tabel te laden.

Querygegevens

Gebruik de volgende stappen om query's uit te voeren op gegevens uit uw API voor Cassandra-account:

  1. Open het bestand UserRepository.java in de map src\main\java\com\azure\cosmosdb\cassandra. Voeg het volgende codeblok toe aan het einde van het bestand. Deze code biedt drie methoden:

    • Een query uitvoeren op alle gebruikers in de database
    • Een query uitvoeren op een specifieke gebruiker, gefilterd op gebruikers-ID
    • Een tabel verwijderen
    /**
    * 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. Open het bestand UserProfile.java in de map src\main\java\com\azure\cosmosdb\cassandra. Deze klasse bevat de main-methode die de methoden createKeyspace en createTable aanroept, de methoden voor het invoegen van gegevens die u eerder hebt gedefinieerd. Voeg nu de volgende code toe om een query uit te voeren op alle gebruikers of een specifieke gebruiker:

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

De Java-app uitvoeren

  1. Open een opdrachtprompt of terminalvenster. Plak het volgende blok met code.

    Met deze code gaat u naar de map (cd) waarin u het project hebt gemaakt. Vervolgens wordt de opdracht mvn clean install uitgevoerd voor het genereren van het bestand cosmosdb-cassandra-examples.jar in de doelmap. Ten slotte wordt de Java-toepassing uitgevoerd.

    cd "cassandra-demo"
    
    mvn clean install
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile
    
  2. Open nu Data Explorer in de Azure-portal en controleer of de gebruikerstabel is verwijderd.

Resources opschonen

Wanneer ze niet meer nodig zijn, kunt u de resourcegroep, het Azure Cosmos DB-account en alle gerelateerde resources verwijderen. Als u deze wilt verwijderen, selecteert u de resourcegroep voor de virtuele machine en selecteert u Verwijderen. Vervolgens bevestigt u de naam van de resourcegroep die u wilt verwijderen.

Volgende stappen

In deze zelfstudie hebt u geleerd hoe u gegevens opvraagt uit een API voor Cassandra-account in Azure Cosmos DB. U kunt nu verdergaan met het volgende artikel: