Principy distribuovaných databází NoSQL
PLATÍ PRO: NoSQL MongoDB Cassandra Skřítek Stůl
Azure Cosmos DB je globálně distribuovaná databázová platforma pro noSQL i relační databáze libovolného škálování. Tento článek se zabývá distribuovanými databázemi NoSQL v kontextu různých možností rozhraní API NoSQL služby Azure Cosmos DB.
Další informace o dalších možnostech úložiště dat v Azure najdete v tématu Volba 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í přísné sémantiky ACID. Tento přístup je výhodný 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 slíbí vysokou konzistenci, z hlediska souběžnosti, latence a dostupnosti je to těžké kompromisy. Toto omezení je v zásadě omezení architektury a vynutí jakýkoli tým s vysokou transakční úlohou najít alternativní řešení, jako je ruční distribuce nebo horizontální dělení dat napříč mnoha různými databázemi nebo databázovými uzly. Tato alternativní řešení můžou být časově náročná a náročná na implementaci.
Databáze NoSQL
Databáze NoSQL odkazují na databáze navržené tak, aby zjednodušily horizontální škálování úpravou konzistence, aby se minimalizovaly kompromisy mezi souběžností, latencí a dostupností. Databáze NoSQL nabízejí konfigurovatelné úrovně konzistence, aby se data mohly škálovat napříč mnoha uzly a nabízejí rychlost nebo dostupnost, které jsou lépe namapované na potřeby vaší aplikace.
Distribuované databáze
Distribuované databáze odkazují na databáze, které se škálují napříč mnoha různými instancemi nebo umístěními. I když je řada databází NoSQL navržená pro škálování, ne všechny jsou nutně distribuované databáze. Ještě více vyžaduje mnoho databází NoSQL čas a úsilí k distribuci mezi redundantní uzly kvůli místní redundanci nebo globálně pro geografickou redundanci. Požadavky na plánování, implementaci a sítě pro globálně distribuovanou databázi mohou být složité.
Azure Cosmos DB
S distribuovanou databází, která je také databází NoSQL, se vysoké transakční úlohy náhle snadněji sestavují a spravují. Azure Cosmos DB je databázová platforma, která nabízí distribuovaná rozhraní API pro data v noSQL i relačních variantách. Konkrétně řada rozhraní API NoSQL nabízí různé možnosti konzistence, které umožňují doladit úroveň konzistence nebo dostupnosti, která splňuje vaše požadavky na aplikace z reálného světa. Databázi je možné nakonfigurovat tak, aby nabízela vysokou konzistenci s kompromisy pro rychlost a dostupnost. Podobně může být vaše databáze nakonfigurovaná tak, aby nabízela nejlepší výkon s předvídatelnými kompromisy k 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?