Kurz: Vytvoření účtu rozhraní API Cassandra v Azure Cosmos DB pomocí aplikace Java k ukládání dat typu klíč/hodnota

PLATÍ pro: rozhraní API Cassandra

Jako vývojář můžete mít aplikace, které používají páry klíč/hodnota. K ukládání dat typu klíč rozhraní API Cassandra hodnotu můžete Azure Cosmos DB účet úložiště. Tento kurz popisuje, jak pomocí aplikace Java vytvořit účet rozhraní API Cassandra v Azure Cosmos DB, jak přidat databázi (nazývanou také prostor klíčů) a přidat tabulku. Aplikace v Javě 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 a závislostí Mavenu
  • Přidání databáze a tabulky
  • Spuštění aplikace

Požadavky

Vytvoření účtu databáze

  1. V 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 Azure Cosmos DB vyberte Vytvořit.

  4. Na stránce Azure Cosmos DB účtu zadejte základní nastavení pro nový účet Azure Cosmos.

    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 zadejte nový název skupiny prostředků pro váš účet. Pro zjednodušení použijte stejný název jako název účtu Azure Cosmos.
    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 k jedinečnému názvu účtu připojí.

    Název účtu může obsahovat pouze malá písmena, číslice a spojovníky (-) a musí být dlouhý 3 až 31 znaků.
    rozhraní API Cassandra Rozhraní API určuje typ účtu, který se má vytvořit. Azure Cosmos DB poskytuje pět rozhraní API: Core (SQL) pro dokumentové databáze, Gremlin pro grafové databáze, MongoDB pro dokumentové databáze, 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í API Cassandra.

    Další informace o rozhraní API Cassandra
    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 vašim uživatelům nejblíže, a podejte jim nejrychlejší přístup k datům.
    Režim kapacity Zřízená propustnost nebo bez serveru Vyberte Zřízená propustnost a vytvořte účet v režimu zřízené propustnosti. Vyberte Bez serveru a vytvořte účet v režimu bez serveru.
    Použití Azure Cosmos DB úrovně Free Použít nebo Neakusovat S Azure Cosmos DB úrovně Free získáte v účtu prvních 1 000 RU/s a 25 GB úložiště zdarma. Přečtěte si další informace o úrovni Free.

    Poznámka

    Můžete mít až jednu úroveň Free Azure Cosmos DB předplatného Azure a při vytváření účtu se musíte přihlásit. Pokud nevidíte možnost uplatnit slevu na bezplatnou úroveň, znamená to, že u jiného účtu v předplatném už je povolená úroveň Free.

    Stránka nového účtu pro Azure Cosmos DB rozhraní API Cassandra

  5. 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 vašeho účtu spárováním oblasti s párovou oblastí. Další oblasti můžete do svého účtu přidat později.
    Zápisy do více oblastí Zakázat Funkce zápisu do více oblastí umožňuje využít zřízenou propustnost pro databáze a kontejnery po celém světě.

    Poznámka

    Pokud jako Režim kapacity vyberete Bez serveru, nejsou k dispozici následující možnosti:

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

  7. Vyberte Zkontrolovat a vytvořit.

  8. 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

  9. Výběrem možnosti Přejít k prostředku přejděte na Azure Cosmos DB účtu.

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 Java. Připojovací řetězec umožňuje vaší aplikaci komunikovat s hostovanou databází.

  1. V Azure Portalpřejděte ke svému účtu Služby Azure Cosmos.

  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 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 v souboru java-examples\src\main\resources\config.properties 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 vyžadované vaším projektem, jak je znázorněno vpom.xml souboru.

  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 jsou uloženy hodnoty koncového bodu připojení a klíče rozhraní API Cassandra účtu.

    • Soubor log4j.properties definuje úroveň protokolování požadovanou pro interakci s rozhraní API 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. Nová složka ukládá užitkové třídy potřebné pro připojení k účtu rozhraní API 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 Cassandra v 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.

    Ve složce vytvořte třídu User.java pomocí metod get a src/main/java/com/azure/cosmosdb/cassandra/ set.

Přidání databáze a tabulky

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

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

  2. Vytvořte třídu UserRepository 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. Vytvořte třídu UserProfile 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 vytvořili projekt. 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 se naučili vytvořit účet rozhraní API Cassandra v Azure Cosmos DB, databázi a tabulku pomocí aplikace v Javě. Teď můžete přejít k dalšímu článku: