Nejčastější dotazy ke službě Azure Cosmos DB for NoSQL

PLATÍ PRO: NoSQL

Návody začít vyvíjet ve službě Azure Cosmos DB for NoSQL?

Nejdřív se musíte zaregistrovat k předplatnému Azure. Po registraci předplatného Azure můžete do svého předplatného Azure přidat kontejner API for NoSQL.

Sady SDK (Software Development Kit) jsou k dispozici pro .NET, Python, Node.js, JavaScript, Go a Javu. Vývojáři můžou také použít rozhraní REST API k interakci s prostředky Azure Cosmos DB z více platforem a jazyků.

Existují ukázky Azure Cosmos DB for NoSQL, které vám pomůžou začít?

Projděte si tyto ukázky kódu a šablony pro rychlý start pro rozhraní API pro NoSQL:

Podporuje Azure Cosmos DB for NoSQL data bez schématu?

Ano, rozhraní API pro NoSQL umožňuje aplikacím ukládat libovolné dokumenty JSON jako položky bez definic schématu nebo tipů. Data jsou okamžitě k dispozici pro dotazování pomocí dotazovacího jazyka Azure Cosmos DB for NoSQL.

Podporuje Azure Cosmos DB for NoSQL transakce ACID (atomicita, konzistence, izolace, stálost)?

Ano, rozhraní API pro NoSQL podporuje transakce mezi dokumenty vyjádřené pomocí dávek v sadách SDK nebo jako procedury a triggery uložené v JavaScriptu. Transakce jsou vymezeny na jeden oddíl v rámci každého kontejneru a spouští se sémantika ACID jako "vše nebo nic", izolované od ostatních souběžně spouštěných kódu a uživatelských požadavků. Pokud dojde k výjimkám, celá transakce se vrátí zpět.

Návody vytvořit databázi Azure Cosmos DB for NoSQL?

Databáze můžete vytvářet pomocí jednoho z těchto nástrojů:

Návody nakonfigurovat uživatele a oprávnění nativní pro databázi Azure Cosmos DB for NoSQL?

Uživatele a oprávnění můžete vytvářet pomocí jedné ze sad SDK služby Azure Cosmos DB for NoSQL nebo rozhraní REST API. Další informace najdete v tématu konfigurace uživatelů a tokenů prostředků. Vytváření oprávnění pomocí tokenů prostředků je povoleno na úrovni kontejneru a jeho potomků (například dokumenty, přílohy). Vytvoření oprávnění na úrovni databáze nebo účtu není aktuálně povolené.

Můžu se ověřit ve službě Azure Cosmos DB for NoSQL pomocí stávajících účtů Microsoft Entra ID?

Ano. Azure Cosmos DB podporuje ověřování Microsoft Entra pro správu služby a jejích prostředků (rovina řízení) a spouštění dat, operací a dotazů (rovina dat). Ověřování roviny řízení se provádí pomocí funkce řízení přístupu na základě role v Azure. Můžete použít předkonfigurovanou předdefinovanou roli](.. /.. /role-based-access-control/built-in-roles.md) nebo můžete vytvořit vlastní roli. Pomocí řízení přístupu na základě role v Azure můžete spravovat účty, databáze, kontejnery a metadata. Řídicí rovina zahrnuje operace, mezi které patří mimo jiné tyto příklady.

  • Vytváření, nahrazování nebo odstraňování databází – Vytváření, nahrazování nebo odstraňování kontejnerů – Čtení nebo nahrazení propustnosti databáze – Čtení nebo nahrazení propustnosti kontejneru Další informace najdete v tématu Řízení přístupu na základě řídicí roviny služby Azure Cosmos DB. Ověřování roviny dat používá vlastní rozhraní API pro implementaci řízení přístupu na základě role nativní pro NoSQL. S touto nativní implementací můžete také použít předkonfigurované nebo vlastní role. S nativním řízením přístupu na základě role můžete spouštět dotazy, spravovat položky nebo provádět jiné běžné operace. Rovina dat zahrnuje operace, mezi které patří mimo jiné tyto příklady.
  • Vytváření, nahrazování, aktualizace nebo odstraňování položek – Opravy položek – Provádění dotazů Další informace najdete v tématu Řízení přístupu na základě role v rovině dat ve službě Azure Cosmos DB.

Podporuje Azure Cosmos DB for NoSQL dotazovací jazyk SQL?

jazyk SQL (Structured Query Language) (SQL) je jazyk, který se obvykle používá k dotazování relačních dat. Rozhraní API pro NoSQL má vlastní dotazovací jazyk NoSQL odvozený z SQL. Dotazovací jazyk NoSQL obsahuje podmnožinu dotazovacího jazyka SQL, která je obvykle přidružená k SQL Serveru spolu s různými vylepšeními specifickými pro NoSQL. Dotazovací jazyk NoSQL poskytuje bohaté hierarchické a relační operátory a rozšiřitelnost prostřednictvím uživatelem definovaných funkcí (UDF) založených na JavaScriptu. Gramatika JSON umožňuje modelování dokumentů JSON jako stromů s označenými uzly, které používají techniky automatického indexování služby Azure Cosmos DB i dialekt dotazů SQL služby Azure Cosmos DB. Informace o použití tohoto dotazovacího jazyka najdete v tématu NoSQL Query.

Podporuje Azure Cosmos DB for NoSQL agregační funkce SQL?

Rozhraní API pro NoSQL podporuje agregaci prostřednictvím agregačních funkcí, jako jsou: COUNT, MAXAVGa SUM prostřednictvím dotazovacího jazyka NoSQL.

Jak Azure Cosmos DB for NoSQL poskytuje souběžnost?

Rozhraní API pro NoSQL podporuje optimistické řízení souběžnosti (OCC) prostřednictvím značek entit HTTP nebo Značek ETag. Každé rozhraní API pro prostředek NoSQL má značku ETag a značky ETag se nastaví na serveru při každé aktualizaci dokumentu. Hlavička ETag a aktuální hodnota jsou zahrnuty do všech zpráv odpovědí. Značky ETag lze použít s hlavičkou If-Match , aby server mohl rozhodnout, jestli se má prostředek aktualizovat. Hodnota If-Match je hodnota značky ETag, která se má zkontrolovat. Pokud hodnota ETag odpovídá hodnotě značky ETag serveru, prostředek se aktualizuje. Pokud už není značka ETag aktuální, server odmítne operaci s kódem odpovědi HTTP 412 Pro selhání předběžné podmínky. Klient pak znovu načte prostředek, aby získal aktuální hodnotu značky ETag prostředku. Kromě toho lze značky ETag použít se If-None-Match záhlavím k určení, jestli je potřeba znovu načíst prostředek.

Většina sad API pro sady SDK NoSQL zahrnuje třídy pro správu optimistického řízení souběžnosti.

Jak můžu hromadně vkládat dokumenty do služby Azure Cosmos DB for NoSQL?

K importu velkých sad dat použijte funkci hromadného importu v sadě .NET SDK nebo sadě Java SDK pro rozhraní API for NoSQL. Tato funkce optimalizuje zřízenou propustnost pro import velkých sad dat.

Případně můžete pomocí Apache Sparku importovat data ve velkém měřítku pomocí Pythonu nebo Scaly.

Podporuje Azure Cosmos DB for NoSQL ukládání odkazů na prostředky do mezipaměti?

Ano, protože Azure Cosmos DB for NoSQL je služba RESTful, jsou odkazy na prostředky neměnné a dají se ukládat do mezipaměti. Rozhraní API pro klienty NoSQL může zadat hlavičku If-None-Match pro čtení v jakémkoli dokumentu nebo kontejneru podobném prostředku a potom aktualizovat své místní kopie po změně verze serveru.

Je k dispozici místní instance služby Azure Cosmos DB for NoSQL?

Ano. Emulátor služby Azure Cosmos DB poskytuje vysoce věrnou emulaci služby Azure Cosmos DB. Podporuje funkce, které jsou identické se službou Azure Cosmos DB napříč různými rozhraními API. Tato funkce zahrnuje podporu vytváření položek, dotazování položek, zřizování kontejnerů a škálování kontejnerů. Aplikace můžete vyvíjet a testovat pomocí koncových bodů emulátoru. Potom můžete aplikace nasadit do Azure v globálním měřítku změnou připojovací řetězec z emulátoru na živou službu.

Proč se dlouhé hodnoty s plovoucí desetinou čárkou v položce Azure Cosmos DB for NoSQL zaokrouhlují při použití Průzkumníka dat na portálu?

Toto omezení Data Exploreru představuje omezení Jazyka JavaScript. JavaScript používá čísla formátu s plovoucí desetinnou čárkou s dvojitou přesností, jak je uvedeno v IEEE (Institute of Electrical and Electronics Engineers) 754. Tento datový typ může bezpečně uchovávat čísla mezi -(253 -1) a 253-1 (tj. pouze 9007199254740991).