Opis rozproszonych baz danych NoSQL

DOTYCZY: Nosql Mongodb Cassandra Gremlin Tabeli

Azure Cosmos DB to globalnie rozproszona platforma baz danych dla baz danych NoSQL i relacyjnych baz danych w dowolnej skali. W tym artykule omówiono rozproszone bazy danych NoSQL w kontekście różnych opcji interfejsu API NoSQL usługi Azure Cosmos DB.

Aby uzyskać więcej informacji na temat innych opcji magazynu danych na platformie Azure, zobacz wybieranie odpowiedniego magazynu danych w Centrum architektury platformy Azure.

Wyzwania

Jednym z wyzwań podczas konserwacji systemu bazy danych jest to, że wiele aparatów baz danych stosuje blokady i zatrzaski w celu wymuszania ścisłej semantyki ACID. Takie podejście jest korzystne w scenariuszach, w których bazy danych wymagają wysokiej spójności stanu danych niezależnie od sposobu uzyskiwania do niego dostępu. Chociaż takie podejście obiecuje wysoką spójność, sprawia, że duże kompromisy w odniesieniu do współbieżności, opóźnienia i dostępności. To ograniczenie jest zasadniczo ograniczeniem architektury i wymusi na każdym zespole duże obciążenie transakcyjne, aby znaleźć obejścia, takie jak ręczne dystrybucje lub fragmentowanie danych w wielu różnych bazach danych lub węzłach bazy danych. Te obejścia mogą być czasochłonne i trudne do zaimplementowania.

Bazy danych NoSQL

Bazy danych NoSQL odwołują się do baz danych, które zostały zaprojektowane w celu uproszczenia skalowania w poziomie przez dostosowanie spójności w celu zminimalizowania kompromisów na współbieżność, opóźnienie i dostępność. Bazy danych NoSQL oferowały konfigurowalne poziomy spójności, dzięki czemu dane mogą być skalowane w wielu węzłach i oferują szybkość lub dostępność, które są lepiej mapowane na potrzeby aplikacji.

Rozproszone bazy danych

Rozproszone bazy danych odwołują się do baz danych skalowanych w wielu różnych wystąpieniach lub lokalizacjach. Chociaż wiele baz danych NoSQL jest przeznaczonych do skalowania, nie wszystkie są koniecznie rozproszonymi bazami danych. Jeszcze więcej, wiele baz danych NoSQL wymaga czasu i wysiłku w celu dystrybucji między nadmiarowością lokalną lub globalnie w celu zapewnienia nadmiarowości geograficznej. Wymagania dotyczące planowania, implementacji i sieci dla globalnie rozproszonej bazy danych mogą być złożone.

Azure Cosmos DB

W przypadku rozproszonej bazy danych, która jest również bazą danych NoSQL, duże obciążenia transakcyjne nagle stały się łatwiejsze do tworzenia i zarządzania. Azure Cosmos DB to platforma bazy danych, która oferuje rozproszone interfejsy API danych zarówno w wariantach NoSQL, jak i relacyjnych. W szczególności wiele interfejsów API NoSQL oferuje różne opcje spójności, które umożliwiają precyzyjne dostosowanie poziomu spójności lub dostępności spełniającej rzeczywiste wymagania aplikacji. Bazę danych można skonfigurować tak, aby zapewnić wysoką spójność dzięki kompromisom w celu przyspieszenia i dostępności. Podobnie bazę danych można skonfigurować tak, aby zapewnić najlepszą wydajność z przewidywalnymi kompromisami w celu spójności i opóźnienia replikowanych danych. Usługa Azure Cosmos DB automatycznie i dynamicznie dystrybuuje dane między wystąpieniami lokalnymi lub globalnie. Usługa Azure Cosmos DB może również zapewnić gwarancje ACID i skalować przepływność w celu mapowania na wymagania aplikacji.

Następne kroki

Chcesz rozpocząć pracę z usługą Azure Cosmos DB?