Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Hledáte databázové řešení pro scénáře ve velkém měřítku s 99,999% smlouvou o úrovni služeb (SLA), okamžitým automatickým škálováním a automatickým převzetím služeb při selhání napříč několika oblastmi? Zvažte Azure Cosmos DB for NoSQL.
Chcete implementovat graf online analytického zpracování (OLAP) nebo migrovat existující aplikaci Apache Gremlin? Zvažte Graph v Microsoft Fabricu.
Azure Cosmos DB pro Apache Gremlin je plně spravovaná databázová služba grafů, která implementuje oblíbenou Apache Tinkerpoparchitekturu grafových výpočtů pomocí dotazovacího jazyka Gremlin. Rozhraní API pro Gremlin poskytuje rychlý způsob, jak začít používat Gremlin se službou, která může růst a škálovat podle potřeby s minimální správou.
V tomto rychlém startu se pomocí konzoly Gremlin připojíte k nově vytvořenému účtu Azure Cosmos DB pro Gremlin.
Požadavky
- Účet Azure s aktivním předplatným.
- Žádné předplatné Azure? Zaregistrujte si bezplatný účet Azure.
-
Hostitel Dockeru
- Nemáte nainstalovaný Docker? Vyzkoušejte tento rychlý start v GitHub Codespaces.
- Rozhraní příkazového řádku Azure (CLI)
Azure Cloud Shell
Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.
Spuštění služby Azure Cloud Shell:
| Možnost | Příklad nebo odkaz |
|---|---|
| Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. |
|
| Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. |
|
| Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. |
|
Použití Azure Cloud Shellu:
Spusťte Cloud Shell.
Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.
Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete + v macOS.
Stisknutím klávesy Enter spusťte kód nebo příkaz.
Vytvoření rozhraní API pro účet Gremlin a relevantní prostředky
Rozhraní API pro účet Gremlin by se mělo vytvořit před použitím konzoly Gremlin. Kromě toho pomáhá mít také databázi a graf na místě.
Vytvořte proměnné prostředí pro accountName, resourceGroupName a umístění.
# Variable for resource group name resourceGroupName="msdocs-cosmos-gremlin-quickstart" location="westus" # Variable for account name with a randomly generated suffix let suffix=$RANDOM*$RANDOM accountName="msdocs-gremlin-$suffix"Pokud jste to ještě neudělali, přihlaste se k Azure CLI pomocí
az login.Slouží
az group createk vytvoření nové skupiny prostředků ve vašem předplatném.az group create \ --name $resourceGroupName \ --location $locationSlouží
az cosmosdb createk vytvoření nového rozhraní API pro účet Gremlin s výchozím nastavením.az cosmosdb create \ --resource-group $resourceGroupName \ --name $accountName \ --capabilities "EnableGremlin" \ --locations regionName=$location \ --enable-free-tier truePoznámka:
Pro každé předplatné Azure můžete mít maximálně jeden účet Azure Cosmos DB úrovně Free a při vytváření tohoto účtu se musíte přihlásit. Pokud se tomuto příkazu nepodaří uplatnit slevu na úroveň Free, znamená to, že u úrovně Free už byl povolený jiný účet v předplatném.
Získejte rozhraní API pro název koncového bodu Gremlin pro účet pomocí
az cosmosdb show.az cosmosdb show \ --resource-group $resourceGroupName \ --name $accountName \ --query "name"Najděte klíč ze seznamu klíčů pro účet pomocí
az-cosmosdb-keys-list.az cosmosdb keys list \ --resource-group $resourceGroupName \ --name $accountName \ --type "keys" \ --query "primaryMasterKey"Poznamenejte si hodnoty NAME a KEY . Tyto přihlašovací údaje použijete později.
Vytvořte databázi s názvem
cosmicworksusingaz cosmosdb gremlin database create.az cosmosdb gremlin database create \ --resource-group $resourceGroupName \ --account-name $accountName \ --name "cosmicworks"Vytvoření grafu pomocí
az cosmosdb gremlin graph create. Pojmenujte grafproducts, nastavte propustnost400na a nakonec nastavte cestu ke klíči oddílu na/categoryhodnotu .az cosmosdb gremlin graph create \ --resource-group $resourceGroupName \ --account-name $accountName \ --database-name "cosmicworks" \ --name "products" \ --partition-key-path "/category" \ --throughput 400
Spuštění a konfigurace konzoly Gremlin pomocí Dockeru
Pro konzolu Gremlin tento rychlý start používá image kontejneru tinkerpop/gremlin-console z Docker Hubu. Tato image zajišťuje, že pro připojení k rozhraní API pro Gremlin používáte odpovídající verzi konzoly (3.4). Po spuštění konzoly se připojte z místního hostitele Dockeru ke vzdálenému rozhraní API pro účet Gremlin.
3.4Stáhněte si verzi image kontejnerutinkerpop/gremlin-console.docker pull tinkerpop/gremlin-console:3.4Vytvořte prázdnou pracovní složku. V prázdné složce vytvořte soubor remote-secure.yaml . Přidejte do souboru tuto konfiguraci YAML.
hosts: [<account-name>.gremlin.cosmos.azure.com] port: 443 username: /dbs/cosmicworks/colls/products password: <account-key> connectionPool: { enableSsl: true, sslEnabledProtocols: [TLSv1.2] } serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV2d0, config: { serializeResultToString: true } }Poznámka:
<account-name>Nahraďte zástupné<account-key>symboly hodnotami NAME a KEY získanými dříve v tomto rychlém startu.Otevřete nový terminál v kontextu pracovní složky, která obsahuje soubor remote-secure.yaml .
Spusťte image kontejneru Dockeru v interaktivním
--interactive --tty() režimu. Ujistěte se, že aktuální pracovní složku připojíte k/opt/gremlin-console/conf/cestě v kontejneru.docker run -it --mount type=bind,source=.,target=/opt/gremlin-console/conf/ tinkerpop/gremlin-console:3.4V kontejneru konzoly Gremlin se připojte ke vzdálenému účtu (API pro Gremlin) pomocí konfiguračního souboru remote-secure.yaml .
:remote connect tinkerpop.server conf/remote-secure.yaml
Vytváření a procházení vrcholů a hran
Teď, když je konzola připojená k účtu, použijte standardní syntaxi Gremlin k vytvoření a procházení vrcholů i hran.
Přidejte vrchol pro produkt s následujícími vlastnostmi:
Hodnota označit productid 68719518371nameKiama classic surfboardprice285.55categorysurfboards:> g.addV('product').property('id', '68719518371').property('name', 'Kiama classic surfboard').property('price', 285.55).property('category', 'surfboards')Důležité
Nezapomeňte na předponu
:>. Předpona THis je nutná ke vzdálenému spuštění příkazu.Přidejte další vrchol produktu s těmito vlastnostmi:
Hodnota označit productid 68719518403nameMontau Turtle Surfboardprice600categorysurfboards:> g.addV('product').property('id', '68719518403').property('name', 'Montau Turtle Surfboard').property('price', 600).property('category', 'surfboards')Vytvořte hranu s názvem
replaces, která definuje vztah mezi těmito dvěma produkty.:> g.V(['surfboards', '68719518403']).addE('replaces').to(g.V(['surfboards', '68719518371']))Spočítejte všechny vrcholy v grafu.
:> g.V().count()Projděte graf a vyhledejte všechny vrcholy, které nahradí
Kiama classic surfboard.:> g.V().hasLabel('product').has('category', 'surfboards').has('name', 'Kiama classic surfboard').inE('replaces').outV()Projděte graf a vyhledejte všechny vrcholy, které
Montau Turtle Surfboardnahradí.:> g.V().hasLabel('product').has('category', 'surfboards').has('name', 'Montau Turtle Surfboard').outE('replaces').inV()
Vyčištění prostředků
Pokud už rozhraní API pro účet Gremlin nepotřebujete, odstraňte odpovídající skupinu prostředků.
Vytvořte proměnnou prostředí pro resourceGroupName , pokud ještě neexistuje.
# Variable for resource group name resourceGroupName="msdocs-cosmos-gremlin-quickstart"Slouží
az group deletek odstranění skupiny prostředků.az group delete \ --name $resourceGroupName
Jak jsme tento problém vyřešili?
Azure Cosmos DB pro Apache Gremlin vyřešila náš problém tím, že nabízí Gremlin jako službu. Díky této nabídce nemusíte vystát vlastní instance serveru Gremlin ani spravovat vlastní infrastrukturu. Ještě více můžete škálovat své řešení podle svých potřeb v průběhu času.
Pokud se chcete připojit k účtu Rozhraní API pro Gremlin, použili tinkerpop/gremlin-console jste image kontejneru ke spuštění konzoly Gremlin způsobem, který nevyžaduje místní instalaci. Pak jste použili konfiguraci uloženou v souboru remote-secure.yaml k připojení ze spuštěného kontejneru, který používá účet API pro Gremlin. Odtud jste spustili několik běžných příkazů Gremlin.