Samouczek: wykonywanie zapytań o dane z interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB

DOTYCZY: Cassandra

Jako deweloper być może masz aplikacje, które używają par klucz-wartość. Możesz użyć interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB, aby przechowywać dane klucza/wartości i wykonywać względem nich zapytania. W tym samouczku pokazano, jak wykonywać zapytania o dane użytkownika z interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB przy użyciu aplikacji Java. Aplikacja języka Java używa sterownika Java i wykonuje zapytania względem danych użytkownika, takie jak identyfikator użytkownika, nazwa użytkownika i miasto użytkownika.

Ten samouczek obejmuje następujące zadania:

  • Wykonywanie zapytań względem danych z tabeli bazy danych Cassandra
  • Uruchamianie aplikacji

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto .

Wymagania wstępne

  • Ten artykuł należy do wieloczęściowego samouczka. Przed rozpoczęciem upewnij się, że wykonasz poprzednie kroki, aby utworzyć interfejs API dla konta Cassandra, przestrzeni kluczy, tabeli i załadowania przykładowych danych do tabeli.

Zapytania o dane

Wykonaj następujące kroki, aby wykonać zapytanie o dane z interfejsu API dla konta Cassandra:

  1. Otwórz plik UserRepository.java w folderze src\main\java\com\azure\cosmosdb\cassandra. Dodaj poniższy blok kodu. Ten kod umożliwia zastosowanie trzech metod:

    • Wykonywanie zapytań względem wszystkich użytkowników w bazie danych
    • Wykonywanie zapytań względem określonego użytkownika przefiltrowanego według identyfikatora
    • Usuwanie tabeli
    /**
    * 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. Otwórz plik UserProfile.java w folderze src\main\java\com\azure\cosmosdb\cassandra. Ta klasa zawiera metodę główną, która wywołuje zdefiniowane wcześniej metody wstawiania danych createKeyspace i createTable. Teraz dodaj poniższy kod, który wykonuje zapytanie dotyczące wszystkich użytkowników lub określonego użytkownika:

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

Uruchamianie aplikację języka Java

  1. Otwórz wiersz polecenia lub okno terminala. Wklej poniższy blok kodu.

    Ten kod zmienia katalog (polecenie cd) na ścieżkę folderu, w której utworzono projekt. Następnie jest uruchamiane polecenie mvn clean install w celu wygenerowania pliku cosmosdb-cassandra-examples.jar w folderze docelowym. Na koniec kod uruchamia aplikację języka Java.

    cd "cassandra-demo"
    
    mvn clean install
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile
    
  2. Teraz w witrynie Azure Portal otwórz Eksplorator danych i upewnij się, że tabela użytkowników została usunięta.

Czyszczenie zasobów

Gdy nie będą już potrzebne, możesz usunąć grupę zasobów, konto usługi Azure Cosmos DB i wszystkie powiązane zasoby. Aby to zrobić, wybierz grupę zasobów maszyny wirtualnej, wybierz pozycję Usuń, a następnie potwierdź nazwę grupy zasobów, którą chcesz usunąć.

Następne kroki

W tym samouczku przedstawiono sposób wykonywania zapytań o dane z interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB. Teraz możesz przejść do następnego artykułu: