Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 silników baz danych stosuje blokady i zatrzaski w celu wymuszenia ś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ść, wymaga dużych kompromisów 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 z dużym obciążeniem transakcyjnym znalezienie obejść, takich jak ręczne rozdzielanie lub fragmentowanie danych w wielu różnych bazach danych lub węzłach baz danych. Te obejścia mogą być czasochłonne i trudne do zaimplementowania.
Bazy danych NoSQL
Bazy danych NoSQL są to bazy danych zaprojektowane w celu uproszczenia skalowania w poziomie przez dostosowanie zasad spójności, minimalizując kompromisy dotyczące 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 to bazy danych skalowane w wielu różnych instancjach 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, aby rozdystrybuować je na redundantne węzły dla lokalnej nadmiarowości lub globalnie dla zapewnienia odpornoś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ść kosztem szybkości i dostępności. Podobnie można skonfigurować bazę danych tak, aby zapewnić najlepszą wydajność przy przewidywalnych kompromisach dotyczących 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?