Kurz: Vytvoření účtu rozhraní API pro Cassandra ve službě Azure Cosmos DB pomocí aplikace Java k ukládání dat klíč/hodnota

PLATÍ PRO: Cassandra

Jako vývojář můžete mít aplikace, které používají páry klíč/hodnota. K uložení dat klíč/hodnota můžete použít rozhraní API pro účet Cassandra ve službě Azure Cosmos DB. Tento kurz popisuje, jak pomocí aplikace Java vytvořit rozhraní API pro účet Cassandra ve službě Azure Cosmos DB, přidat databázi (označovanou také jako prostor klíčů) a tabulku. Aplikace Java používá ovladač Java k vytvoření uživatelské databáze, která obsahuje podrobnosti, jako je ID uživatele, uživatelské jméno a město uživatele.

Tento kurz se zabývá následujícími úkony:

  • Vytvoření účtu databáze Cassandra
  • Získání připojovacího řetězce účtu
  • Vytvoření projektu Maven a závislostí
  • Přidání databáze a tabulky
  • Spuštění aplikace

Požadavky

Vytvoření účtu databáze

  1. V nabídce Azure Portal nebo na domovské stránce vyberte Vytvořit prostředek.

  2. Na stránce Nový vyhledejte a vyberte Azure Cosmos DB.

  3. Na stránce Azure Cosmos DB vyberte Vytvořit.

  4. Na stránce rozhraní API vyberte Vytvořit v části Cassandra .

    Rozhraní API určuje typ účtu, který se má vytvořit. Azure Cosmos DB poskytuje pět rozhraní API: NoSQL pro databáze dokumentů, Gremlin pro databáze grafů, MongoDB pro databáze dokumentů, Azure Table a Cassandra. Pro každé rozhraní API musíte vytvořit samostatný účet.

    Vyberte Cassandra, protože v tomto rychlém startu vytváříte tabulku, která funguje s rozhraním API pro Cassandra.

    Přečtěte si další informace o rozhraní API pro Cassandra.

  5. Na stránce Vytvořit účet služby Azure Cosmos DB zadejte základní nastavení nového účtu služby Azure Cosmos DB.

    Nastavení Hodnota Popis
    Předplatné Vaše předplatné Vyberte předplatné Azure, které chcete pro tento účet služby Azure Cosmos DB použít.
    Skupina prostředků Vytvořit nový

    Pak zadejte stejný název jako Název účtu.
    Vyberte, že chcete vytvořit novou IP adresu. Pak pro svůj účet zadejte nový název skupiny prostředků. Pro zjednodušení použijte stejný název jako název účtu služby Azure Cosmos DB.
    Account Name Zadejte jedinečný název. Zadejte jedinečný název, který identifikuje váš účet služby Azure Cosmos DB. Identifikátor URI vašeho účtu se cassandra.cosmos.azure.com připojí k jedinečnému názvu účtu.

    Název účtu může obsahovat pouze malá písmena, číslice a spojovníky (-) a musí být dlouhý 3 až 31 znaků.
    Umístění Oblast nejbližší vašim uživatelům Vyberte zeměpisné umístění, ve kterém chcete účet služby Azure Cosmos DB hostovat. Použijte umístění, které je nejblíže vašim uživatelům, abyste jim poskytli nejrychlejší přístup k datům.
    Režim kapacity Zřízená propustnost nebo bezserverová Vyberte Zřízená propustnost a vytvořte účet v režimu zřízené propustnosti . Výběrem možnosti Bezserverový vytvořte účet v bezserverovém režimu.
    Uplatnění slevy na úrovni Free služby Azure Cosmos DB Použít nebo Neaplikovat Se službou Azure Cosmos DB úrovně Free získáte prvních 1 000 RU/s a 25 GB úložiště zdarma v rámci účtu. Přečtěte si další informace o úrovni Free.
    Omezení celkové propustnosti účtu Vyberte, pokud chcete omezit propustnost účtu. To je užitečné, pokud chcete omezit celkovou propustnost účtu na určitou hodnotu.

    Poznámka

    Pro každé předplatné Azure můžete mít až jeden účet služby Azure Cosmos DB úrovně Free a při vytváření účtu musíte vyjádřit výslovný souhlas. Pokud možnost uplatnění slevy na úrovni Free nevidíte, znamená to, že úroveň Free už má povolený jiný účet v předplatném.

    Stránka nového účtu pro službu Azure Cosmos DB for Apache Cassandra

  6. Na kartě Globální distribuce nakonfigurujte následující podrobnosti. Pro účely tohoto rychlého startu můžete ponechat výchozí hodnoty:

    Nastavení Hodnota Popis
    Geografická redundance Zakázat Povolte nebo zakažte globální distribuci ve svém účtu spárováním oblasti s párovací oblastí. Později můžete ke svému účtu přidat další oblasti.
    Zápisy do více oblastí Zakázat Funkce zápisu do více oblastí umožňuje využívat zřízenou propustnost pro vaše databáze a kontejnery po celém světě.
    Zóny dostupnosti Zakázat Zóny dostupnosti jsou izolovaná umístění v rámci oblasti Azure. Každou zónu tvoří jedno nebo několik datacenter vybavených nezávislým napájením, chlazením a sítí.

    Poznámka

    Následující možnosti nejsou k dispozici, pokud jako režim kapacity vyberete Bezserverový:

    • Použít slevu založenou na bezplatné úrovni
    • Geografická redundance
    • Zápisy do více oblastí
  7. Volitelně můžete nakonfigurovat další podrobnosti na následujících kartách:

    • Sítě – Nakonfigurujte přístup z virtuální sítě.
    • Zásady zálohování – Nakonfigurujte zásady pravidelného nebo průběžného zálohování.
    • Šifrování – Použijte buď klíč spravovaný službou, nebo klíč spravovaný zákazníkem.
    • Značky – Značky jsou páry název/hodnota, které umožňují kategorizovat prostředky a zobrazit konsolidovanou fakturaci použitím stejné značky na více prostředků a skupin prostředků.
  8. Vyberte Zkontrolovat a vytvořit.

  9. Zkontrolujte nastavení účtu a pak vyberte Vytvořit. Vytvoření účtu trvá několik minut. Počkejte, až se na stránce portálu zobrazí Vaše nasazení je dokončené.

    Podokno Oznámení portálu Azure Portal

  10. Výběrem možnosti Přejít k prostředku přejděte na stránku účtu služby Azure Cosmos DB.

Získání podrobností o připojení vašeho účtu

Získejte informace o připojovacím řetězci z Azure Portal a zkopírujte je do konfiguračního souboru Javy. Připojovací řetězec umožňuje vaší aplikaci komunikovat s hostovanou databází.

  1. V Azure Portal přejděte ke svému účtu služby Azure Cosmos DB.

  2. Otevřete podokno Připojovací řetězec .

  3. Zkopírujte hodnoty KONTAKTNÍ BOD, PORT, UŽIVATELSKÉ JMÉNO a PRIMÁRNÍ HESLO pro použití v dalších krocích.

Vytvoření projektu a závislostí

Ukázkový projekt Java, který používáte v tomto článku, je hostovaný na GitHubu. Můžete spustit kroky v tomto dokumentu nebo si stáhnout ukázku z úložiště azure-cosmos-db-cassandra-java-getting-started .

Po stažení souborů aktualizujte informace o připojovacím řetězci java-examples\src\main\resources\config.properties v souboru a spusťte je.

cassandra_host=<FILLME_with_CONTACT POINT> 
cassandra_port = 10350 
cassandra_username=<FILLME_with_USERNAME> 
cassandra_password=<FILLME_with_PRIMARY PASSWORD> 

K vytvoření ukázky od začátku použijte následující postup:

  1. Z terminálu nebo příkazového řádku vytvořte nový projekt Maven s názvem Cassandra-demo.

    mvn archetype:generate -DgroupId=com.azure.cosmosdb.cassandra -DartifactId=cassandra-demo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 
    
  2. Najděte složku cassandra-demo. Pomocí textového editoru otevřete soubor pom.xml, který byl vygenerován.

    Přidejte závislosti Cassandra a sestavte moduly plug-in požadované pro váš projekt, jak je znázorněno v souborupom.xml .

  3. Ve složce cassandra-demo\src\main vytvořte novou složku s názvem resources. Ve složce prostředků přidejte soubory config.properties a log4j.properties:

    • V souboru config.properties se ukládají hodnoty koncového bodu připojení a klíče účtu rozhraní API pro Cassandra.

    • Soubor log4j.properties definuje úroveň protokolování vyžadovanou pro interakci s rozhraním API pro Cassandra.

  4. Přejděte do src/main/java/com/azure/cosmosdb/cassandra/ složky. Ve složce cassandra vytvořte další složku s názvem utils. V nové složce jsou uložené třídy nástrojů potřebné pro připojení k účtu rozhraní API pro Cassandra.

    Přidejte třídu CassandraUtils k vytvoření clusteru a k otvírání a zavírání relací Cassandra. Cluster se připojí k účtu rozhraní API pro Cassandra ve službě Azure Cosmos DB a vrátí relaci pro přístup. Pomocí třídy Konfigurace si přečtěte informace o připojovacím řetězci ze souboru config.properties.

  5. Ukázka v Javě vytvoří databázi s informacemi o uživateli, jako je uživatelské jméno, ID uživatele a město uživatele. Budete muset definovat metody get a set pro přístup k podrobnostem o uživateli v hlavní funkci.

    Vytvořte třídu User.java ve src/main/java/com/azure/cosmosdb/cassandra/ složce s metodami get a set.

Přidání databáze a tabulky

Tato část popisuje, jak přidat databázi (prostor klíčů) a tabulku pomocí CQL.

  1. Ve složce src\main\java\com\azure\cosmosdb\cassandra vytvořte novou složku s názvem repository.

  2. UserRepository Vytvořte třídu Java a přidejte do ní následující kód:

    package com.azure.cosmosdb.cassandra.repository; 
    import java.util.List; 
    import com.datastax.driver.core.BoundStatement; 
    import com.datastax.driver.core.PreparedStatement; 
    import com.datastax.driver.core.Row; 
    import com.datastax.driver.core.Session; 
    import org.slf4j.Logger; 
    import org.slf4j.LoggerFactory; 
    
    /** 
     * Create a Cassandra session 
     */ 
    public class UserRepository { 
    
        private static final Logger LOGGER = LoggerFactory.getLogger(UserRepository.class); 
        private Session session; 
        public UserRepository(Session session) { 
            this.session = session; 
        } 
    
        /** 
        * Create keyspace uprofile in cassandra DB 
         */ 
    
        public void createKeyspace() { 
             final String query = "CREATE KEYSPACE IF NOT EXISTS uprofile WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 1 }"; 
            session.execute(query); 
            LOGGER.info("Created keyspace 'uprofile'"); 
        } 
    
        /** 
         * Create user table in cassandra DB 
         */ 
    
        public void createTable() { 
            final String query = "CREATE TABLE IF NOT EXISTS uprofile.user (user_id int PRIMARY KEY, user_name text, user_bcity text)"; 
            session.execute(query); 
            LOGGER.info("Created table 'user'"); 
        } 
    } 
    
  3. Vyhledejte složku src\main\java\com\azure\cosmosdb\cassandra a vytvořte novou podsložku s názvem examples.

  4. UserProfile Vytvořte třídu Java. Tato třída obsahuje hlavní metodu, která volá metody createKeyspace a createTable, které jste definovali dříve:

    package com.azure.cosmosdb.cassandra.examples; 
    import java.io.IOException; 
    import com.azure.cosmosdb.cassandra.repository.UserRepository; 
    import com.azure.cosmosdb.cassandra.util.CassandraUtils; 
    import com.datastax.driver.core.PreparedStatement; 
    import com.datastax.driver.core.Session; 
    import org.slf4j.Logger; 
    import org.slf4j.LoggerFactory; 
    
    /** 
     * Example class which will demonstrate following operations on Cassandra Database on CosmosDB 
     * - Create Keyspace 
     * - Create Table 
     * - Insert Rows 
     * - Select all data from a table 
     * - Select a row from a table 
     */ 
    
    public class UserProfile { 
    
        private static final Logger LOGGER = LoggerFactory.getLogger(UserProfile.class); 
        public static void main(String[] s) throws Exception { 
            CassandraUtils utils = new CassandraUtils(); 
            Session cassandraSession = utils.getSession(); 
    
            try { 
                UserRepository repository = new UserRepository(cassandraSession); 
                //Create keyspace in cassandra database 
                repository.createKeyspace(); 
                //Create table in cassandra database 
                repository.createTable(); 
    
            } finally { 
                utils.close(); 
                LOGGER.info("Please delete your table after verifying the presence of the data in portal or from CQL"); 
            } 
        } 
    } 
    

Spuštění aplikace

  1. Otevřete příkazový řádek nebo okno terminálu. Vložte následující blok kódu.

    Tento kód změní adresář (cd) na cestu ke složce, ve které jste projekt vytvořili. Pak spustí příkaz mvn clean install, který v cílové složce vygeneruje soubor cosmosdb-cassandra-examples.jar. A nakonec spustí aplikaci v Javě.

    cd cassandra-demo
    
    mvn clean install 
    
    java -cp target/cosmosdb-cassandra-examples.jar com.azure.cosmosdb.cassandra.examples.UserProfile 
    

    Okno terminálu zobrazí oznámení o vytvoření prostoru klíčů a tabulky.

  2. Teď na webu Azure Portal otevřete Průzkumníka dat a potvrďte, že byl vytvořen prostor klíčů a tabulka.

Další kroky

V tomto kurzu jste zjistili, jak vytvořit účet API pro Cassandra ve službě Azure Cosmos DB, databázi a tabulku pomocí aplikace v Javě. Teď můžete přejít k dalšímu článku: