Samouczek: wykonywanie zapytań o dane z interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB
DOTYCZY: Kasandra
Jako deweloper być może masz aplikacje, które używają par klucz-wartość. Do przechowywania i wykonywania zapytań dotyczących danych klucza/wartości można użyć interfejsu API dla konta Cassandra w usłudze Azure Cosmos DB. W tym samouczku pokazano, jak wykonywać zapytania dotyczące danych 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
- Uruchom aplikację
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:
Otwórz plik
UserRepository.java
w folderzesrc\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); }
Otwórz plik
UserProfile.java
w folderzesrc\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
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 plikucosmosdb-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
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 są 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: