rychlý start: sestavení aplikace Cassandra pomocí .net Core a Azure Cosmos DB

PLATÍ PRO: rozhraní API Cassandra

v tomto rychlém startu se dozvíte, jak pomocí .net Core a Azure Cosmos DB rozhraní API Cassandra vytvořit profilovou aplikaci klonováním příkladu z GitHub. Tento rychlý start také ukazuje, jak pomocí webového portálu Azure Portal vytvořit účet Azure Cosmos DB.

Azure Cosmos DB je globálně distribuovaná databázová služba Microsoftu pro více modelů. Můžete rychle vytvořit a dotazovat databáze dokumentů, párů klíč-hodnota a grafů, které tak můžou využívat výhody možnosti globální distribuce a horizontálního škálování v jádru služby Azure Cosmos DB.

Požadavky

Pokud ještě nemáte předplatné Azure,vytvořte si bezplatný účet před tím, než začnete. Alternativně můžete vyzkoušet službu Azure Cosmos DB zdarma bez předplatného Azure, poplatků a závazků.

Kromě toho je potřeba toto:

  • pokud ještě nemáte nainstalované Visual Studio 2019, můžete si stáhnout a použít bezplatnou edici Visual Studio 2019 Community. Nezapomeňte při instalaci sady Visual Studio povolit možnost Azure Development.
  • Nainstalujte Git pro klonování příkladu.

Vytvoření účtu databáze

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

  2. na nové stránce vyhledejte a vyberte Azure Cosmos DB.

  3. na stránce Azure Cosmos DB vyberte vytvořit.

  4. na stránce vytvořit Azure Cosmos DB účet 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 jednoduchost 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 připojí k jedinečnému názvu účtu.

    Název účtu může obsahovat jenom malá písmena, číslice a spojovníky (-) a musí mít délku 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 databáze dokumentů, Gremlin pro databáze grafů, MongoDB pro databáze dokumentů, tabulku Azure 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á spolupracuje 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 nejblíže vašim uživatelům, a poskytněte jim tak nejrychlejší přístup k datům.
    Režim kapacity Zřízená propustnost nebo bez serveru Vyberte zřízenou propustnost a vytvořte účet v režimu zřízené propustnosti . Pokud chcete vytvořit účet v režimu bez serveru , vyberte možnost bez serveru .
    použít Azure Cosmos DB slevu úrovně free Použít nebo nepoužít u Azure Cosmos DB úrovně free získáte v účtu první 1000 RU/s a 25 GB úložiště zdarma. Přečtěte si další informace o bezplatné úrovni.

    Poznámka

    v rámci předplatného Azure můžete mít až jednu úroveň bezplatného Azure Cosmos DB účtu a při vytváření účtu musíte souhlasit. Pokud nevidíte možnost použít slevu úrovně Free, znamená to, že v předplatném už je povolený jiný účet s úrovní Free.

    stránka nový účet 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 na účtu spárováním oblasti s oblastí dvojice. Později můžete do svého účtu přidat další oblasti.
    Zápisy do více oblastí Zakázat Funkce pro zápis ve více oblastech vám umožní využít zřízené propustnosti pro vaše databáze a kontejnery po celém světě.

    Poznámka

    Pokud jako režim kapacity vyberete možnost bez serveru , nejsou dostupné 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 na následujících kartách nakonfigurovat další podrobnosti:

    • Sítě – konfigurace přístupu 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í kategorizaci prostředků a zobrazení konsolidované fakturace pomocí stejné značky pro více prostředků a skupin prostředků.
  7. Vyberte Zkontrolovat a vytvořit.

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

    Podokno Oznámení portálu Azure Portal

  9. vyberte přejít k prostředku a přejdete na stránku Azure Cosmos DB účet.

Klonování ukázkové aplikace

Teď přejděme k práci s kódem. Teď naklonujeme aplikaci rozhraní Cassandra API z GitHubu, nastavíme připojovací řetězec a spustíme ji. Přesvědčíte se, jak snadno se pracuje s daty prostřednictvím kódu programu.

  1. Otevřete příkazový řádek. Vytvořte novou složku s názvem git-samples. Pak zavřete příkazový řádek.

    md "C:\git-samples"
    
  2. Otevřete okno terminálu Git, například Git Bash, a pomocí příkazu cd přejděte do nové složky, do které chcete nainstalovat ukázkovou aplikaci.

    cd "C:\git-samples"
    
  3. Ukázkové úložiště naklonujete spuštěním následujícího příkazu. Tento příkaz vytvoří na vašem počítači kopii ukázkové aplikace.

    git clone https://github.com/Azure-Samples/azure-cosmos-db-cassandra-dotnet-core-getting-started.git
    
  4. Potom otevřete soubor řešení CassandraQuickStartSample v sadě Visual Studio.

Kontrola kódu

Tento krok je volitelný. Pokud vás zajímá, jak se pomocí kódu vytvoří prostředky databáze, můžete si prohlédnout následující fragmenty kódu. Všechny fragmenty kódu jsou pořízeny ze Program.cs souboru v rámci async Task ProcessAsync() metody, který je nainstalován ve C:\git-samples\azure-cosmos-db-cassandra-dotnet-core-getting-started\CassandraQuickStart složce. Jinak můžete přeskočit přímo k části Aktualizace informací o připojení.

  • Inicializujte relaci připojením ke koncovému bodu clusteru Cassandra. Cassandra API ve službě Azure Cosmos DB podporuje jenom TLSv1.2.

        var options = new Cassandra.SSLOptions(SslProtocols.Tls12, true, ValidateServerCertificate);
        options.SetHostNameResolver((ipAddress) => CASSANDRACONTACTPOINT);
        Cluster cluster = Cluster
            .Builder()
            .WithCredentials(USERNAME, PASSWORD)
            .WithPort(CASSANDRAPORT)
            .AddContactPoint(CASSANDRACONTACTPOINT)
            .WithSSL(options)
            .Build()
        ;
        ISession session = await cluster.ConnectAsync();
    
  • Pokud již existuje, přetáhněte existující prostor.

    await session.ExecuteAsync(new SimpleStatement("DROP KEYSPACE IF EXISTS uprofile")); 
    
  • Vytvořte nový prostor klíčů.

    await session.ExecuteAsync(new SimpleStatement("CREATE KEYSPACE uprofile WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 1 };"));
    
  • Vytvořte novou tabulku.

    await session.ExecuteAsync(new SimpleStatement("CREATE TABLE IF NOT EXISTS uprofile.user (user_id int PRIMARY KEY, user_name text, user_bcity text)"));
    
  • Vložte entity uživatelů pomocí objektu IMapper s novou relací, která se připojuje k prostoru klíčů uprofile.

    await mapper.InsertAsync<User>(new User(1, "LyubovK", "Dubai"));
    
  • Použijte dotaz pro získání informací o všech uživatelích.

    foreach (User user in await mapper.FetchAsync<User>("Select * from user"))
    {
        Console.WriteLine(user);
    }
    
  • Použijte dotaz pro získání informací o jednom uživateli.

    mapper.FirstOrDefault<User>("Select * from user where user_id = ?", 3);
    

Aktualizace připojovacího řetězce

Teď se vraťte zpátky na portál Azure Portal, kde najdete informace o připojovacím řetězci, a zkopírujte je do aplikace. Informace o připojovacím řetězci umožňují aplikaci komunikovat s hostovanou databází.

  1. Na portálu Azure Portal vyberte Připojovací řetězec.

  2. Pomocí tlačítka na pravé straně obrazovky Zkopírujte hodnotu uživatelské jméno.

    Zobrazení a zkopírování přístupového klíče na webu Azure Portal, stránka Připojovací řetězec

  3. v Visual Studio otevřete soubor Program. cs.

  4. Vložte hodnotu UŽIVATELSKÉ JMÉNO z portálu místo <PROVIDE> na řádku 13.

    Řádek 13 souboru Program.cs by teď měl vypadat nějak takto:

    private const string UserName = "cosmos-db-quickstart";

    Stejnou hodnotu můžete také vložit <PROVIDE> na řádku 15 pro hodnotu kontaktního bodu:

    private const string CassandraContactPoint = "cosmos-db-quickstarts.cassandra.cosmosdb.azure.com"; // DnsName

  5. Přejděte zpátky na portál a zkopírujte hodnotu HESLO. Vložte hodnotu HESLO z portálu místo <PROVIDE> na řádku 14.

    Řádek 14 souboru Program.cs by teď měl vypadat nějak takto:

    private const string Password = "2Ggkr662ifxz2Mg...==";

  6. Přejděte zpátky na portál a zkopírujte hodnotu KONTAKTNÍ BOD. Vložte hodnotu kontaktní bod z portálu místo <PROVIDE> na řádku 16.

    Řádek 16 programu. cs by teď měl vypadat nějak podobně jako

    private const string CASSANDRACONTACTPOINT = "quickstart-cassandra-api.cassandra.cosmos.azure.com";

  7. Uložte soubor Program.cs.

Spuštění aplikace .NET Core

  1. v Visual Studio vyberte nástroje > NuGet Správce balíčků > Správce balíčků konzole.

  2. Na příkazovém řádku pomocí následujícího příkazu nainstalujte balíček NuGet ovladače .NET.

    Install-Package CassandraCSharpDriver
    
  3. Spusťte aplikaci stisknutím CTRL + F5. Aplikace se zobrazí v okně konzoly.

    Zobrazení a ověření výstupu

    Stisknutím kláves CTRL + C zastavte provádění programu a zavřete okno konzoly.

  4. Na portálu Azure Portal otevřete Data Explorer, abyste se mohli na tato nová data dotazovat, měnit je a pracovat s nimi.

    Zobrazení dat v Průzkumníku dat

Ověření smluv SLA na webu Azure Portal

Tento Azure Portal monitoruje propustnost Cosmos DB účtu, úložiště, dostupnost, latenci a konzistenci vašeho účtu. Grafy metrik přidružených k Azure Cosmos DB smlouva SLA (SLA) zobrazují hodnotu SLA v porovnání se skutečným výkonem. Díky této metrice je monitorování smluv SLA transparentní.

Kontrola metrik a smluv SLA:

  1. V navigační nabídce vašeho Cosmos DB účtu vyberte Metriky.

  2. Vyberte kartu, například Latence, a vpravo vyberte časový rámec. Porovnejte čáry Actual (Skutečný) a SLA (Sla) v grafech.

    Sada metrik Azure Cosmos DB

  3. Zkontrolujte metriky na ostatních kartách.

Vyčištění prostředků

Až budete s aplikací a Azure Cosmos DB účtem hotovi, můžete odstranit prostředky Azure, které jste vytvořili, abyste se neúčtují další poplatky. Odstranění prostředků:

  1. Na panelu hledání Azure Portal vyhledejte a vyberte skupiny prostředků.

  2. V seznamu vyberte skupinu prostředků, kterou jste vytvořili pro tento rychlý Start.

    Vyberte skupinu prostředků, kterou chcete odstranit.

  3. Na stránce Přehled skupiny prostředků vyberte Odstranit skupinu prostředků.

    Odstranění skupiny prostředků

  4. V dalším okně zadejte název skupiny prostředků, kterou chcete odstranit, a pak vyberte Odstranit.

Další kroky

V tomto rychlém startu jste se naučili vytvořit účet služby Azure Cosmos DB, vytvořit kontejner pomocí Průzkumníka dat a spustit webovou aplikaci. Teď můžete do účtu databáze Cosmos importovat další data.