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 do tworzenia nowoczesnych aplikacji sztucznej inteligencji. Zapewnia gwarantowane jednocyfrowe czasy odpowiedzi w milisekundach, 99,999 procent dostępności i możliwości bazy danych wektorów, 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 i indeksowaniem wektorowym oraz funkcjami wyszukiwania usługa Azure Cosmos DB for NoSQL jest dobrze odpowiednia dla wielu typów i rozmiarów aplikacji. Od bardzo małej skali do aplikacji o wysokiej wydajności z globalnymi ambicjami. Szybkość i elastyczność sprawiają, że usługa Azure Cosmos DB for NoSQL doskonale nadaje się do generowania sztucznej inteligencji, internetu, handlu detalicznego, IoT, gier i aplikacji mobilnych. Usługa Azure Cosmos DB for NoSQL jest dobrym rozwiązaniem dla aplikacji wymagających elastyczności, niskich kosztów, krótkich czasów odpowiedzi oraz możliwości skalowania do ogromnej ilości lub szybkości.

Generatywna AI

Generowanie aplikacji sztucznej inteligencji może być zróżnicowane i nieprzewidywalne. Obciążenia te wymagają platformy bazy danych, która jest opłacalna, elastyczna i skalowalna. Użytkownicy mogą przechowywać wektory bezpośrednio w swoich dokumentach przy użyciu tradycyjnych danych bez schematu i wektorów o wysokim wymiarach jako innych właściwości. Ta kolokacja danych i wektorów umożliwia efektywne indeksowanie i wyszukiwanie, ponieważ wektory są przechowywane w tej samej jednostce logicznej, co dane, które reprezentują. Utrzymywanie wektorów i danych razem upraszcza zarządzanie danymi, architektury aplikacji sztucznej inteligencji i wydajność operacji opartych na wektorach.

Diagram architektury obciążenia generowania sztucznej inteligencji przedstawiający wielodostępną aplikację agenta sztucznej inteligencji dla użytkowników końcowych. Nowe lub zaktualizowane dane są pozyskiwane za pomocą zestawienia zmian, wektoryzowanego i przechowywanego. Użytkownicy korzystają z agentów sztucznej inteligencji, którzy wykonują wyszukiwanie wektorów i generują odpowiedzi z historią czatu przechowywaną w usłudze Azure Cosmos DB.

W tym przykładzie klienci przyjmują dane transakcyjne i operacyjne i wektoryzują je do wyszukiwania wektorowego przez wielu agentów sztucznej inteligencji obsługujących klientów. Źródło zmian usługi Azure Cosmos DB służy do obsługi pozyskiwania i wektoryzacji nowych lub zaktualizowanych danych, dzięki czemu są one dostępne niemal w czasie rzeczywistym dla użytkowników. Klienci korzystający z tych agentów generują monity i zakończenia, które są również przechowywane jako historia czatów w usłudze Azure Comsos DB i używane do udostępniania semantycznej pamięci podręcznej w celu zwiększenia kosztów i wydajności.

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.

Diagram architektury dla obciążenia handlu detalicznego przedstawiający przeglądarkę użytkownika łączącą się z witryną internetową w usłudze aplikacja systemu Azure Service obsługiwaną przez konto usługi Azure Blob Storage zawierające dane witryny statycznej. W tle konto usługi Azure Cosmos DB for NoSQL z kontenerem dla danych spisu i kontenerem danych koszyka zakupów jest używane przez aplikację internetową usługi App Service i wystąpienie usługi Azure Search, które tworzy katalog z możliwością wyszukiwania przez indeksowanie konta usługi Azure Cosmos DB for NoSQL przy użyciu danych spisu.

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.

Diagram architektury dla obciążenia internetowego przedstawiający przeglądarkę użytkownika łączącą się z adresem URL połączonym z usługą Azure Traffic Manager w celu określenia prawidłowego miejsca docelowego przekierowania. Następnie trzy wystąpienia usługi aplikacja systemu Azure w trzech regionach świadczenia usługi Azure (Europa Północna, Zachodnie stany USA, Wschodnie stany USA) są połączone z globalnie rozproszonym kontem usługi Azure Cosmos DB for NoSQL.

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ół tworzy witrynę sklepu online z obsługą agentów sztucznej inteligencji, aby zapewnić użytkownikom bogate środowisko pracy. 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.

Diagram architektury obciążenia detalicznego przedstawiający rosnącą liczbę użytkowników, którzy zamawiają produkty i kolekcję zasobów obliczeniowych obsługujących żądania z wystąpień sklepu. Za zasobami obliczeniowymi usługa Azure Cosmos DB przechowuje dane zakupu. Następnie usługa Azure Synapse Link łączy usługę Azure Cosmos DB z usługą Azure Synapse Analytics w celu uzyskania dokładniejszej analizy. Na koniec usługa Azure Functions, wyzwolona ze źródła zmian, przetwarza zdarzenia danych, które następnie wyzwalają przepływ pracy usługi Azure Logic Apps w celu wykonywania operacji biznesowych, takich jak powiadamianie użytkownika na urządzeniu przenośnym o nowych zdarzeniach.

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.