Principy distribuovaných databází NoSQL

PLATÍ PRO: NoSQL MongoDB Cassandra Gremlin Tabulka

Azure Cosmos DB je globálně distribuovaná databázová platforma pro noSQL i relační databáze libovolného měřítka. Tento článek se zabývá distribuovanými databázemi NoSQL v kontextu různých možností rozhraní NoSQL API služby Azure Cosmos DB.

Další informace o dalších možnostech úložiště dat v Azure najdete v tématu Výběr správného úložiště dat v Centru architektury Azure.

Výzvy

Jednou z výzev při údržbě databázového systému je, že mnoho databázových strojů používá zámky a západky k vynucení striktní sémantiky ACID. Tento přístup je užitečný ve scénářích, kdy databáze vyžadují vysokou konzistenci stavu dat bez ohledu na to, jak se k datům přistupuje. I když tento přístup slibuje vysokou konzistenci, představuje velké kompromisy, pokud jde o souběžnost, latenci a dostupnost. Toto omezení je v podstatě omezení architektury a přinutí všechny týmy s vysokým transakčním zatížením najít alternativní řešení, jako je ruční distribuce nebo horizontální dělení dat v mnoha různých databázích nebo databázových uzlech. Tato alternativní řešení mohou být časově náročná a náročná na implementaci.

Databáze NoSQL

Databáze NoSQL označují databáze, které byly navrženy tak, aby zjednodušily horizontální škálování úpravou konzistence tak, aby se minimalizovaly kompromisy se souběžností, latencí a dostupností. Databáze NoSQL nabízejí konfigurovatelné úrovně konzistence, aby se data škálovala napříč mnoha uzly a nabízela rychlost nebo dostupnost, která se lépe mapuje na potřeby vaší aplikace.

Distribuované databáze

Distribuované databáze označují databáze, které se škálují napříč mnoha různými instancemi nebo umístěními. I když je mnoho databází NoSQL navržených pro škálování, ne všechny jsou nutně distribuované databáze. Mnoho databází NoSQL navíc vyžaduje čas a úsilí k distribuci mezi redundantní uzly kvůli místní redundanci nebo globálně kvůli geografické redundanci. Požadavky na plánování, implementaci a sítě pro globálně distribuovanou databázi můžou být složité.

Azure Cosmos DB

S distribuovanou databází, která je také databází NoSQL, se vysoké transakční úlohy najednou snadněji sestavují a spravují. Azure Cosmos DB je databázová platforma, která nabízí distribuovaná datová rozhraní API ve variantách NoSQL i relačních variantách. Konkrétně mnoho rozhraní API NoSQL nabízí různé možnosti konzistence, které umožňují jemně vyladit úroveň konzistence nebo dostupnosti, která vyhovuje vašim skutečným požadavkům aplikací. Vaše databáze by mohla být nakonfigurovaná tak, aby nabízela vysokou konzistenci a kompromisy s rychlostí a dostupností. Podobně můžete databázi nakonfigurovat tak, aby nabízela nejlepší výkon s předvídatelnými kompromisy proti konzistenci a latenci replikovaných dat. Azure Cosmos DB automaticky a dynamicky distribuuje vaše data mezi místní instance nebo globálně. Azure Cosmos DB může také poskytovat záruky ACID a škálovat propustnost pro mapování na požadavky vaší aplikace.

Další kroky

Chcete začít se službou Azure Cosmos DB?