Opis rozproszonych baz danych NoSQL
DOTYCZY: NoSQL MongoDB Kasandra Gremlin Stół
Azure Cosmos DB to globalnie rozproszona platforma baz danych zarówno dla baz danych NoSQL, jak 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ń związanych z utrzymaniem 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óźnień 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 dystrybuowanie 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 zaprojektowanych w celu uproszczenia skalowania w poziomie przez dostosowanie spójności w celu zminimalizowania kompromisów w celu zapewnienia współbieżności, opóźnień i dostępności. Bazy danych NoSQL oferują 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 muszą być rozproszone bazy danych. Co więcej, wiele baz danych NoSQL wymaga czasu i nakładu pracy 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 kompilowania 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ą 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óźnień 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?