Wprowadzenie
Azure Cosmos DB to w pełni zarządzana baza danych NoSQL firmy Microsoft na platformie Azure. Jako baza danych NoSQL usługa Azure Cosmos DB jest zarówno nierelacyjna, jak i poziomo skalowalna lub skalowana w poziomie. Ta możliwość skalowania w poziomie jest osiągana przez dodanie większej liczby węzłów lub partycji do kontenera.
Ta możliwość skalowania w poziomie umożliwia zwiększanie kontenerów do teoretycznie nieskończonego rozmiaru. W miarę wzrostu rozmiaru kontenera może również obsługiwać rosnącą liczbę żądań, zapewniając taką samą wydajność, niezależnie od wielkości kontenera.
Jednak aby osiągnąć ten poziom skalowalności, użytkownicy muszą zrozumieć pojęcia i techniki unikatowe dla usługi Azure Cosmos DB na potrzeby modelowania i partycjonowania danych. Użytkownicy muszą również zrozumieć pojęcia dotyczące baz danych NoSQL.
Scenariusz
Załóżmy, że jesteś pracownikiem startupu zajmującego się handlem detalicznym, który projektuje bazę danych w celu zarządzania zamówieniami w trybie online. Pracujesz nad propozycją wydajnego projektowania bazy danych przy użyciu usługi Azure Cosmos DB for NoSQL. Otrzymasz model relacji jednostki, od którego będzie można zacząć. Chcesz zapewnić maksymalną skalowalność, wydajność i wydajność oraz osiągnąć to zadanie, aby dane zostały prawidłowo modelowane.
Poniższy diagram relacji jednostki (model ER) zawiera szczegółowe informacje o dziewięciu jednostkach, z których chcesz pracować. Model relacyjny ma dziewięć jednostek we własnych tabelach.
Jak to zrobić?
W tym module użyjemy istniejącego modelu danych relacyjnych i przeprojektujemy go jako bazę danych NoSQL dla naszej aplikacji do handlu elektronicznego. Podczas tego procesu poznasz następujące pojęcia:
- Różnice między relacyjnymi bazami danych a bazami danych NoSQL: poznasz niektóre różnice między bazami danych NoSQL i relacyjnymi bazami danych oraz dlaczego są w ten sposób.
- Używanie wzorców dostępu do danych aplikacji w celu modelowania danych: dowiesz się, jak rozumieć sposób odczytywania i zapisywania danych przez aplikację, co wpływa na sposób modelowania ich dla bazy danych NoSQL.
- Osadzanie i odwoływanie się: dowiesz się, kiedy należy osadzać dane w tym samym dokumencie, a kiedy należy przechowywać dane jako oddzielny dokument.
- Wybieranie klucza partycji: poznasz kluczowe pojęcia potrzebne do wybrania najlepszego klucza partycji w celu uzyskania możliwości skalowania w poziomie i optymalizacji obciążeń, które są duże lub duże ilości operacji odczytu lub zapisu.
- Modelowanie wyszukiwania lub danych referencyjnych: na koniec dowiesz się, jak modelować dane używane jako wyszukiwanie lub odwołanie do innych danych.
Jaki jest główny cel?
Po zakończeniu tego modułu (i modułu towarzyszącego optymalizacja bazy danych przy użyciu zaawansowanych wzorców modelowania dla usługi Azure Cosmos DB) uzyskasz wiedzę i umiejętności dotyczące prawidłowego modelowania i partycjonowania danych dla bazy danych NoSQL wdrożonej w usłudze Azure Cosmos DB.
Po ukończeniu tego modułu będziesz mieć wiedzę dotyczącą następujących kwestii:
- Określanie wzorców dostępu dla danych.
- Stosowanie strategii modelowania danych i partycjonowania w celu obsługi wydajnej i skalowalnej bazy danych NoSQL.