Kiedy należy używać usługi Azure Cosmos DB dla noSQL

Ukończone

Usługa Azure Cosmos DB for NoSQL to w pełni zarządzana usługa bazy danych NoSQL na potrzeby nowoczesnego tworzenia aplikacji. Zapewnia gwarantowane jednocyfrowe czasy odpowiedzi w milisekundach i dostępność 99,999 procent, wspierane przez umowy SLA z automatyczną i natychmiastową skalowalnością.

W przypadku scenariuszy dla przedsiębiorstw usługa Azure Cosmos DB for NoSQL ma kompleksowy zestaw umów dotyczących poziomu usług (SLA) wspieranych finansowo, które obejmują przepływność, spójność, dostępność i opóźnienia.

Typowe przypadki użycia usługi Azure Cosmos DB for NoSQL

Jako szybka baza danych NoSQL z elastycznym interfejsem API usługa Azure Cosmos DB for NoSQL jest dobrze odpowiednia dla aplikacji o wysokiej wydajności z globalnymi ambicjami. Szybkość i elastyczność sprawiają, że usługa Azure Cosmos DB for NoSQL doskonale sprawdza się w przypadku aplikacji internetowych, detalicznych, IoT, gier i aplikacji mobilnych. Usługa Azure Cosmos DB for NoSQL jest dobrym rozwiązaniem dla aplikacji wymagających elastyczności, krótkiego czasu odpowiedzi i transakcji z dużą ilością lub szybkością.

IoT/telemetria

Obciążenia czujników IoT mogą być zróżnicowane i nieprzewidywalne. Obciążenia te wymagają platformy bazy danych, która odpowiada i umożliwia elastyczne skalowanie, aby zaspokoić potrzeby jak największej liczby urządzeń zbierających dane wdrożonych w dowolnym momencie w dowolnym momencie. W wielu przypadkach obciążenia IoT mogą również zapisywać ogromne ilości danych i korzystać z platformy bazy danych zoptymalizowanej pod kątem zapisu. Usługa Azure Cosmos DB for NoSQL jest zoptymalizowana pod kątem obciążeń intensywnie korzystających z zapisu. Operacje na jednym dokumencie są niepodzielne z szybkimi i przewidywalnymi szybkościami zapisu indeksowanego. Usługa Azure Cosmos DB for NoSQL jest również globalnie dystrybuowana i elastyczna, aby zaspokoić potrzeby różnych obciążeń IoT.

Architectural diagram for an IoT workload showing increasing numbers of IoT device sensors sending data to an Azure IoT Hub. Azure Databricks then ingests and aggregates the real-time data in JSON format for storage in Azure Cosmos DB. Finally, Azure Synapse Analytics is used to perform a deeper analysis of the data stored in Azure Cosmos DB.

W tym przykładzie coraz więcej urządzeń IoT wysyła dane czujników do usługi Azure IoT Hub. Usługa Azure Stream Analytics następnie pozyskuje i agreguje dane dla magazynu w usłudze Azure Cosmos DB for NoSQL. Następnie usługa Azure Synapse Analytics wykonuje analizę niemal w czasie rzeczywistym na danych przy użyciu usługi Azure Synapse Link dla usługi Azure Cosmos DB.

Sprzedaż detaliczna/marketing

Usługa Azure Cosmos DB for NoSQL jest doskonałym rozwiązaniem dla obciążeń handlu detalicznego i marketingowego, które mogą doświadczyć dramatycznych i nieoczekiwanych wahań użycia w dowolnym momencie przez cały rok. Elastyczna skala usługi Azure Cosmos DB dla NoSQL zapewnia, że platforma bazy danych może obsługiwać żądania podczas szczytowego użycia i oszczędzać pieniądze w czasie nieokreślonym.

Architectural diagram for a retail workload showing a user browser connecting to the website on Azure App Service supported by an Azure Blob Storage account containing static site data. Behind the scenes, an Azure Cosmos DB for NoSQL account with a container for inventory data and a container for shopping cart data is used by the App Service Web App and an Azure Search instance that builds a searchable catalog by indexing the Azure Cosmos DB for NoSQL account with inventory data.

W tym przykładzie aplikacja internetowa JavaScript oparta na zawartości przechowywanej w usłudze Azure Blob Storage używa usługi Azure Cosmos DB for NoSQL, ponieważ jest ona bazą danych zapasowych. Wiele kont służy do zarządzania różnymi aspektami rozwiązania, takimi jak koszyk zakupów, spis lub wykaz. Następnie rozwiązanie używa usługi Azure Search do indeksowania danych usługi Azure Cosmos DB for NoSQL, zapewniając użytkownikom końcowym zaawansowane środowisko wyszukiwania.

Sieć Web/urządzenia przenośne

Wiele nowoczesnych aplikacji społecznościowych generuje mnóstwo zawartości generowanej przez użytkownika, która jest zróżnicowana w ilości, kształcie i woluminie. Usługa Azure Cosmos DB for NoSQL jest doskonałym kandydatem do tego obciążenia, ponieważ ten interfejs API może przechowywać dane o różnych schematach. Rozważmy interfejs API NoSQL dla danych, które mogą mieć schematy, które zmieniają się lub ewoluują wraz z upływem czasu, gdy inicjatywy firmy rozszerzają się na nowe obszary.

Architectural diagram for a web workload showing a user browser connecting to a URL that is connected to Azure Traffic Manager to determine the correct redirect destination. Then three Azure App Service instances in three Azure regions (North Europe, West US, East US) are connected to a globally distributed Azure Cosmos DB for NoSQL account.

W tym przykładzie użytkownik używa adresu URL w celu uzyskania dostępu do witryny internetowej w przeglądarce. Adres URL wskazuje usługę Azure Traffic Manager, która następnie używa wbudowanego algorytmu do określenia, do którego punktu końcowego usługi aplikacja systemu Azure przekierowuje użytkownika. Ponieważ usługa Azure Cosmos DB for NoSQL jest w stanie dystrybuować globalnie, potrzebne jest tylko jedno konto replikowane w wielu regionach.

Scenariusz modułu

Rozważmy scenariusz od początku tego modułu:

Załóżmy, że pracujesz jako główny deweloper w firmie zajmującej się sprzedażą detaliczną. Twój zespół buduje witrynę sklepu online. Projektujesz nową witrynę sklepu, która będzie dostępna na różnych urządzeniach, w tym na urządzeniach przenośnych. Zespół spodziewa się skokowego zapotrzebowania, gdy witryna sklepu zostanie opublikowana, a różne "wielkie otwarcie" rozpocznie sprzedaż.

Jedną z kluczowych części sukcesu sklepu jest możliwość powiadamiania użytkowników o aktualizacjach wysyłki niezależnie od tego, na jakim urządzeniu składają zamówienie, czy są obecnie używane. Twój zespół ciężko pracował nad zaawansowanym systemem, aby zarządzać szczegółowym śledzeniem stanu zamówienia. Ścisła integracja usługi Azure Cosmos DB z innymi usługami platformy Azure, rozważmy utworzenie rozwiązań, które używają danych zamówienia w usłudze Azure Cosmos DB for NoSQL do wysyłania powiadomień do urządzeń przenośnych użytkownika. Powiadomienia ostrzegają ich, gdy ich pakiet jest dostarczany lub jest obecnie dostarczany.

Architectural diagram for a retail workload showing a growing number of users ordering products and a collection of compute resources handling requests from the storefront instances. Behind the compute resources, Azure Cosmos DB stores purchase data. Then, Azure Synapse Link connects Azure Cosmos DB to Azure Synapse Analytics for deeper analytics. Finally, Azure Functions, triggered off of change feed, processing data events that then trigger an Azure Logic Apps workflow to perform business operations such as notifying the user on their mobile device of new events.

Ten przykład jest podobny do przykładu z wprowadzenia tego modułu. Aby utworzyć pierwszy przykład, twój zespół zdecydował się wprowadzić usługę Azure Cosmos DB for NoSQL jako wybraną bazę danych. Teraz twój zespół może użyć usługi Azure Synapse Link, aby przygotować i zagregować dane w celu dokładniejszej analizy przy użyciu usługi Azure Synapse Analytics. Twój zespół może również używać usług, takich jak Azure Functions, aby reagować na zdarzenia danych za pomocą usługi Azure Cosmos DB, a następnie wyzwalać przepływ pracy usługi Azure Logic Apps, który wysyła powiadomienia do urządzeń przenośnych.