Oktatóanyag: Adatok lekérdezése Cassandra-fiókhoz készült API-ból az Azure Cosmos DB-ben

A KÖVETKEZŐKRE VONATKOZIK: Cassandra

Fejlesztőként előfordulhat, hogy kulcs-érték párokat használó alkalmazásokkal rendelkezik. Az Azure Cosmos DB-ben cassandra-fiókhoz készült API-val tárolhatja és kérdezheti le a kulcs/érték adatokat. Ez az oktatóanyag bemutatja, hogyan kérdezhet le felhasználói adatokat egy Api for Cassandra-fiókból az Azure Cosmos DB-ben Egy Java-alkalmazás használatával. A Java-alkalmazás a Java-illesztőprogramot használja, és lekérdezi a felhasználói adatokat, például a felhasználói azonosítót, a felhasználónevet és a felhasználó városát.

Ez az oktatóanyag a következő feladatokat mutatja be:

  • Adatok lekérdezése Cassandra-táblából
  • Az alkalmazás futtatása

Ha nem rendelkezik Azure-előfizetéssel, a kezdés előtt hozzon létre egy ingyenes fiókot .

Előfeltételek

Adatok lekérdezése

Az alábbi lépésekkel kérdezhet le adatokat a Cassandra-fiók API-jából:

  1. Nyissa meg azsrc\main\java\com\azure\cosmosdb\cassandra mappában lévő UserRepository.java fájlt. Fűzze hozzá a fájlhoz a következő kódblokkot. Ez a kód a következő három metódust biztosítja:

    • Az adatbázis összes felhasználójának lekérdezése
    • Felhasználói azonosító alapján szűrt konkrét felhasználó lekérdezése
    • Tábla törlése
    /**
    * 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. Nyissa meg azsrc\main\java\com\azure\cosmosdb\cassandra mappában lévő UserProfile.java fájlt. Ez az osztály tartalmazza a createKeyspace és a createTable parancsokat meghívó fő metódust. Szúrja be a korábban meghatározott adatmetódusokat. Most fűzze hozzá a következő kódot, amely lekérdezi az összes felhasználót vagy egy adott felhasználót:

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

A Java-alkalmazás futtatása

  1. Nyisson meg egy parancssort vagy terminálablakot. Illessze be az alábbi kódblokkot.

    Ez a kód a könyvtárat (cd) arra a mappaútvonalra módosítja, ahol a projektet létrehozta. Ezután futtatja az mvn clean install parancsot a cosmosdb-cassandra-examples.jar fájl célmappán belüli létrehozásához. Végül futtatja a Java-alkalmazást.

    cd "cassandra-demo"
    
    mvn clean install
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile
    
  2. Nyissa meg az Azure Portalon az Adatkezelőt, és ellenőrizze, hogy a felhasználói tábla törlődött-e.

Az erőforrások eltávolítása

Ha már nincs rájuk szükség, törölheti az erőforráscsoportot, az Azure Cosmos DB-fiókot és az összes kapcsolódó erőforrást. Ehhez válassza ki a virtuális gép erőforráscsoportját, válassza a Törlés lehetőséget, majd erősítse meg a törölni kívánt erőforráscsoport nevét.

Következő lépések

Ebben az oktatóanyagban megtanulta, hogyan kérdezhet le adatokat egy Api for Cassandra-fiókból az Azure Cosmos DB-ben. Továbbléphet a következő cikkre: