Udostępnij za pośrednictwem


Omówienie modeli danych

Nowoczesne rozwiązania obsługują różne dane, takie jak transakcje, zdarzenia, dokumenty, dane telemetryczne, zasoby binarne i fakty analityczne. Pojedynczy magazyn danych rzadko spełnia wszystkie wzorce dostępu wydajnie. Większość systemów produkcyjnych stosuje wielojęzyczną trwałość danych, co oznacza, że wybierasz wiele modeli magazynowania. W tym artykule scentralizuje kanoniczne definicje podstawowych modeli magazynu danych dostępnych na platformie Azure i udostępnia tabele porównawcze w celu przyspieszenia wyboru modelu przed wybraniem określonych usług.

Aby wybrać modele danych, wykonaj następujące kroki:

  1. Identyfikowanie wzorców dostępu do obciążeń, takich jak odczyty punktów, agregacje, pełny tekst, podobieństwo, skanowanie okien czasowych i dostarczanie obiektów.

  2. Przyporządkuj wzorce do modeli przechowywania danych w poniższych sekcjach.

  3. Utwórz krótką listę usług platformy Azure, które implementują te modele.

  4. Zastosuj kryteria oceny, takie jak spójność, opóźnienie, skala, zarządzanie i koszt.

  5. Łączenie modeli tylko wtedy, gdy wzorce dostępu lub cykle życia wyraźnie się różnią.

Jak korzystać z tego przewodnika

Każda sekcja modelu zawiera zwięzłą definicję, typowe obciążenia, charakterystykę danych, przykładowe scenariusze i linki do reprezentatywnych usług platformy Azure. Każda sekcja zawiera również tabelę, która ułatwia wybór odpowiedniej usługi platformy Azure dla danego przypadku użycia. W niektórych przypadkach możesz użyć innych artykułów, aby dokonywać bardziej świadomych wyborów dotyczących opcji usług platformy Azure. Odpowiednie sekcje modelu odwołują się do tych artykułów.

Dwie tabele porównawcze zawierają podsumowanie cech modelu nierelacyjnego, które ułatwiają szybkie ocenianie opcji bez powtarzania zawartości między sekcjami.

Omówienie klasyfikacji

Kategoria Cel podstawowy Typowe przykłady usług platformy Azure
Relacyjne (OLTP) Spójne operacje transakcyjne Azure SQL Database, Azure Database for PostgreSQL lub Azure Database for MySQL
Nierelacyjne, takie jak dokument, klucz-wartość, rodzina kolumn i graf Elastyczne schematy lub obciążenia skoncentrowane na relacjach Interfejsy API usługi Azure Cosmos DB, usługa Azure Managed Redis, zarządzana baza danych Cassandra lub HBase
Szeregi czasowe Wysoko pozyskane metryki i zdarzenia ze znacznikami czasu Azure Data Explorer
Obiekt i plik Duży magazyn plików binarnych lub częściowo ustrukturyzowanych Azure Blob Storage lub Azure Data Lake Storage
Wyszukiwanie i indeksowanie Indeksowanie pełnotekstowe i wielopolowe, indeksowanie pomocnicze Wyszukiwanie AI platformy Azure
Vector Podobieństwo semantyczne lub przybliżone najbliższego sąsiada (ANN) Warianty usługi Azure AI Search lub Azure Cosmos DB
Analiza, przetwarzanie analityczne online (OLAP), masowe przetwarzanie równoległe (MPP) Agregacja historyczna lub analiza biznesowa (BI) na dużą skalę Microsoft Fabric, Azure Synapse Analytics, Azure Data Explorer, Azure Analysis Services lub Azure Databricks

Uwaga / Notatka

Pojedyncza usługa może udostępniać wiele modeli, nazywanych również modelami wielomodelowymi. Wybierz model najlepiej dopasowany zamiast łączyć modele w sposób, który komplikuje operacje.

Relacyjne magazyny danych

Systemy zarządzania relacyjnymi bazami danych organizują dane w znormalizowane tabele przy użyciu schematu podczas zapisu. Zapewniają integralność i obsługują niepodzielność, spójność, izolację oraz trwałość transakcji (ACID) oraz rozbudowane zapytania SQL.

Mocne strony: Spójność transakcyjna z wieloma wierszami, złożone łączenia, silne ograniczenia relacyjne i dojrzałe narzędzia do raportowania, administrowania i zarządzania.

Zagadnienia dotyczące: Skalowanie w poziomie zwykle wymaga fragmentowania lub partycjonowania, a normalizacja może zwiększyć koszt sprzężenia dla zdenormalizowanych widoków odczytu.

Obciążeń: Zarządzanie zamówieniami, śledzenie zapasów, rejestrowanie rejestru finansowego, rozliczenia i raportowanie operacyjne.

Wybieranie usługi platformy Azure dla relacyjnych magazynów danych

  • SQL Database to zarządzana relacyjna baza danych dla nowoczesnych aplikacji w chmurze korzystających z aparatu programu SQL Server.

  • Usługa Azure SQL Managed Instance to niemal kompletne środowisko programu SQL Server w chmurze idealne do migracji metodą lift-and-shift.

  • Sql Database (Hiperskala) to wysoce skalowalna warstwa SQL przeznaczona dla dużych obciążeń z szybkim skalowaniem automatycznym i szybkimi kopiami zapasowymi.

  • Azure Database for PostgreSQL to zarządzana usługa PostgreSQL, która obsługuje rozszerzenia typu open source i elastyczne opcje wdrażania.

  • Usługa Azure Database for MySQL to zarządzana baza danych MySQL dla aplikacji internetowych i obciążeń typu open source.

  • Sql Database in Fabric to przyjazna dla deweloperów transakcyjna baza danych oparta na usłudze SQL Database, której można użyć do łatwego tworzenia operacyjnej bazy danych w sieci szkieletowej.

Skorzystaj z poniższej tabeli, aby określić, która usługa platformy Azure spełnia wymagania dotyczące przypadków użycia.

Usługa Najlepsze dla Kluczowe funkcje Przykładowy przypadek użycia
SQL Database Aplikacje natywne dla chmury Zarządzane, elastyczne pule, Hiperskala, wbudowana wysoka dostępność, zaawansowane zabezpieczenia Tworzenie nowoczesnej aplikacji typu oprogramowanie jako usługa (SaaS) przy użyciu skalowalnego zaplecza SQL
Zarządzana instancja SQL Starsze aplikacje dla przedsiębiorstw Pełna zgodność z programem SQL Server, obsługa metodą lift-and-shift, sieci wirtualne, zaawansowana inspekcja Migrowanie lokalnej aplikacji programu SQL Server przy użyciu minimalnych zmian kodu
SQL Database (Hyperscale) Globalne rozproszenie Skalowalność odczytu w wielu regionach, replikacja geograficzna, szybkie skalowanie automatyczne Obsługa globalnie rozproszonej aplikacji wymagającej wysokiej przepływności odczytu
Azure Database for PostgreSQL Obciążenia analityczne typu open source PostGIS, Hiperskala, Serwer elastyczny, rozszerzenia open source Tworzenie aplikacji do analizy geoprzestrzennej przy użyciu usług PostgreSQL i PostGIS
Azure Database for MySQL Uproszczone aplikacje internetowe Serwer elastyczny, zgodność typu open source, ekonomiczny Hosting witryny handlu elektronicznego opartego na platformie WordPress
SQL Database w Fabric Obciążenia przetwarzania transakcji online (OLTP) w ekosystemie sieci szkieletowej Zbudowana na silniku bazy danych SQL, skalowalna i zintegrowana z Fabric. Tworzenie aplikacji sztucznej inteligencji na operacyjnym, relacyjnym modelu danych, który obejmuje natywne możliwości wyszukiwania wektorów

Magazyny danych nierelacyjnych

Nierelacyjne bazy danych, nazywane również bazami danych NoSQL, optymalizują pod kątem elastycznych schematów, skalowania w poziomie oraz określonych wzorców dostępu lub agregacji. Zazwyczaj rozluźniają niektóre aspekty zachowania relacyjnego, takie jak sztywność schematu i zakres transakcji, w celu zapewnienia skalowalności lub elastyczności.

Magazyny danych dokumentów

Magazyny danych dokumentów służą do przechowywania częściowo ustrukturyzowanych dokumentów, często w formacie JSON, gdzie każdy dokument zawiera nazwane pola i dane. Dane mogą być prostymi wartościami lub złożonymi elementami, takimi jak listy i zbiory podrzędne. Elastyczność schematu poszczególnych dokumentów umożliwia stopniową ewolucję.

Mocnych: Mapowanie obiektów aplikacji naturalnej, denormalizowane agregacje, indeksowanie wielu pól

Zagadnienia dotyczące: Zwiększanie rozmiaru dokumentu, selektywny zakres transakcyjny, potrzeba starannego projektowania kształtu danych w przypadku zapytań o dużą skalę

Obciążenia: Katalogi produktów, zarządzanie zawartością, bazy danych profili

Wybieranie usługi platformy Azure dla magazynów danych dokumentów

Skorzystaj z poniższej tabeli, aby określić, która usługa platformy Azure spełnia wymagania dotyczące przypadków użycia.

Usługa Najlepsze dla Kluczowe funkcje Przykładowy przypadek użycia
Azure Cosmos DB for NoSQL Niestandardowe modele dokumentów JSON, które obsługują wykonywanie zapytań przypominających język SQL Rozbudowany język zapytań, zapisy w wielu regionach, czas wygaśnięcia (TTL), zestawienie zmian Tworzenie wielodostępnej platformy SaaS obsługującej elastyczne schematy
Usługa Azure Cosmos DB dla bazy danych MongoDB Aplikacje korzystające ze sterowników bazy danych MongoDB lub interfejsów API zorientowanych na dane JSON Dystrybucja globalna, skalowanie automatyczne, natywny protokół przewodowy bazy danych MongoDB Migrowanie aplikacji Node.js z bazy danych MongoDB na platformę Azure
Usługa Azure Cosmos DB w sieci szkieletowej Analiza w czasie rzeczywistym z wykorzystaniem danych NoSQL Automatyczne wyodrębnianie, przekształcanie i ładowanie (ETL) do OneLake poprzez integrację z Fabric Transakcyjne aplikacje, które obejmują pulpity nawigacyjne analityczne w czasie rzeczywistym

Magazyny danych rodziny kolumnowej

Baza danych skupiona na rodzinach kolumn, znana również jako baza danych o szerokiej kolumnie, przechowuje rzadkie dane w wierszach i organizuje kolumny dynamiczne w rodziny kolumn w celu zapewnienia jednoczesnego dostępu. Orientacja kolumny poprawia skanowanie w wybranych zestawach kolumn.

Mocne strony: Wysoka szybkość zapisu, wydajne pobieranie szerokich lub rzadkich zestawów danych, dynamiczne schematy w ramach rodzin danych

Zagadnienia dotyczące: Projektowanie z wyprzedzeniem klucza wiersza i rodziny kolumn, obsługa indeksów wtórnych różni się, elastyczność zapytań jest niższa niż w systemach relacyjnych

Obciążenia: Telemetria Internetu Rzeczy (IoT), personalizacja, preaggregacja analiz, dane masowe w stylu szeregów czasowych, gdy nie używasz dedykowanej bazy danych szeregów czasowych

Wybierz usługę platformy Azure dla magazynów danych rodziny kolumn

Skorzystaj z poniższej tabeli, aby określić, która usługa platformy Azure spełnia wymagania dotyczące przypadków użycia.

Usługa Najlepsze dla Kluczowe funkcje Przykładowy przypadek użycia
Instancja zarządzana Azure dla Apache Cassandra Nowe i zmigrowane obciążenia bazy danych Cassandra Zarządzane, natywne rozwiązanie Apache Cassandra Gromadzenie danych telemetrycznych urządzeń IoT z obsługą zgodności z Cassandra
Baza danych Apache HBase w usłudze HDInsight Ekosystem hadoop, analiza wsadowa Integracja rozproszonego systemu plików Hadoop (HDFS), przetwarzanie wsadowe o dużej skali Przetwarzanie wsadowe danych czujników w zakładzie produkcyjnym
Azure Data Explorer (Kusto) Systemy telemetrii o dużym poborze danych, analiza szeregów czasowych KQL, szybkie zapytania ad hoc, funkcje okna czasowego Analizy w czasie rzeczywistym dla logów i metryk aplikacji

Magazyny danych klucz-wartość

Baza danych klucz-wartość kojarzy każdą wartość danych z unikatowym kluczem. Większość magazynów klucz-wartość obsługuje tylko proste operacje zapytań, wstawiania i usuwania. Aby zmodyfikować wartość częściowo lub całkowicie, aplikacja musi zastąpić istniejące dane dla całej wartości. W większości implementacji odczyt lub zapis pojedynczej wartości to operacja atomowa.

Mocnych: Prostota, małe opóźnienia, skalowalność liniowa

Uwagi: Ograniczona wyrazistość zapytań, przeprojektowanie wymagane do wyszukiwań opartych na wartościach, wysoki koszt nadpisywania dużych wartości

Obciążenia: Buforowanie, sesje, flagi funkcji, profile użytkowników, wyszukiwanie rekomendacji

Wybierz usługę platformy Azure dla magazynów danych klucz-wartość

  • Usługa Azure Managed Redis to zarządzany magazyn danych w pamięci oparty na najnowszej wersji usługi Redis Enterprise, która zapewnia małe opóźnienia i wysoką przepływność.

  • Usługa Azure Cosmos DB for Table to magazyn par klucz-wartość zoptymalizowany pod kątem szybkiego dostępu do ustrukturyzowanych danych NoSQL.

  • Usługa Azure Cosmos DB for NoSQL to magazyn danych dokumentów zoptymalizowany pod kątem szybkiego dostępu do ustrukturyzowanych danych NoSQL i zapewnia skalowalność w poziomie.

Skorzystaj z poniższej tabeli, aby określić, która usługa platformy Azure spełnia wymagania dotyczące przypadków użycia.

Usługa Najlepsze dla Kluczowe funkcje Przykładowy przypadek użycia
Azure Managed Redis Szybkie buforowanie, stan sesji, publikowanie i subskrybowanie Pamięciowy magazyn, opóźnienie poniżej milisekundy, protokół Redis Buforowanie stron produktów dla witryny handlu elektronicznego
Usługa Azure Cosmos DB dla tabeli Migrowanie istniejących obciążeń usługi Azure Table Storage Zgodność interfejsu API usługi Table Storage Przechowywanie preferencji i ustawień użytkownika w aplikacji mobilnej
Azure Cosmos DB for NoSQL Szybkie buforowanie z ogromną skalą i wysoką dostępnością Bez schematu, wiele regionów, skalowanie automatyczne Buforowanie, stan sesji, warstwa obsługi

Bazy danych grafowych

Grafowa baza danych przechowuje informacje jako węzły i krawędzie. Krawędzie definiują relacje, a obie węzły i krawędzie mogą mieć właściwości podobne do kolumn tabeli. Możesz analizować połączenia między jednostkami, takimi jak pracownicy i działy.

Silne strony: Wzorce zapytań relacyjnych, wydajne przechodzenia o zmiennej głębokości

Rozważania: Nadmiar obciążenia przy powierzchownych relacjach, wymaga starannego modelowania pod kątem wydajności, nie nadaje się do zbiorczych skanów analitycznych.

Obciążeń: Sieci społecznościowe, pierścienie oszustw, wykresy wiedzy, zależności łańcucha dostaw

Wybieranie usługi platformy Azure dla magazynów danych grafowych

Użyj rozszerzeń grafu programu SQL Server do przechowywania danych grafu. Rozszerzenie grafu rozszerza możliwości programów SQL Server, SQL Database i SQL Managed Instance w celu umożliwienia modelowania i wykonywania zapytań dotyczących złożonych relacji przy użyciu struktur grafów bezpośrednio w relacyjnej bazie danych.

Magazyny danych szeregów czasowych

Magazyny danych szeregów czasowych zarządzają zestawem wartości zorganizowanych według czasu. Obsługują one funkcje, takie jak zapytania i agregacje oparte na czasie, i są zoptymalizowane pod kątem pozyskiwania i analizowania dużych ilości danych niemal w czasie rzeczywistym.

Mocne strony: Kompresja, wydajność zapytań okiennych, obsługa pozyskiwania poza kolejnością

Zagadnienia dotyczące: Zarządzanie liczebnością tagów, zarządzanie kosztami przechowywania, strategia próbkowania

Obciążeń: Metryki czujników IoT, telemetria aplikacji, monitorowanie, dane przemysłowe

Wybieranie usługi platformy Azure dla magazynów danych szeregów czasowych

Użyj usługi Azure Data Explorer do przechowywania danych szeregów czasowych. Azure Data Explorer to zarządzana, wysokiej wydajności platforma analizy danych big data, która ułatwia analizowanie dużych ilości danych niemal w czasie rzeczywistym.

Składowiska danych obiektowych

Przechowuj duże obiekty binarne lub częściowo ustrukturyzowane i zawierają metadane, które rzadko zmieniają się lub pozostają niezmienne.

Mocne strony: Praktycznie nieograniczona skala, koszt warstwowy, trwałość, możliwość odczytu równoległego

Zagadnienia dotyczące: Operacje całego obiektu, ograniczone zapytania dotyczące metadanych, zachowania dotyczące listy ostatecznej

Obciążenia: Zasoby multimedialne, kopie zapasowe, strefy nieprzetworzone usługi Data Lake, archiwa dzienników

Wybieranie usługi platformy Azure dla magazynów danych obiektów

  • Data Lake Storage to magazyn obiektów zoptymalizowany pod kątem danych big data, który łączy hierarchiczną przestrzeń nazw i zgodność z systemem plików HDFS na potrzeby zaawansowanej analizy i przetwarzania danych na dużą skalę.

  • Blob Storage to skalowalny magazyn obiektów dla danych bez struktury, takich jak obrazy, dokumenty i kopie zapasowe, które obejmują dostęp warstwowy na potrzeby optymalizacji kosztów.

Skorzystaj z poniższej tabeli, aby określić, która usługa platformy Azure spełnia wymagania dotyczące przypadków użycia.

Usługa Najlepsze dla Kluczowe funkcje Przykładowy przypadek użycia
Data Lake Storage Analiza danych big data i dane hierarchiczne HDFS, hierarchiczna przestrzeń nazw zoptymalizowana pod kątem analizy Przechowywanie i wykonywanie zapytań dotyczących petabajtów danych ze strukturą i bez struktury przy użyciu usługi Azure Synapse Analytics lub Azure Databricks
Blob Storage Magazyn obiektów ogólnego przeznaczenia Płaska przestrzeń nazw, prosty interfejs API REST i magazyn warstwowy, który obejmuje gorącą, chłodną i archiwalną. Hostowanie obrazów, dokumentów, kopii zapasowych i zawartości statycznej witryny internetowej

Wyszukiwanie i indeksowanie magazynów danych

Baza danych aparatu wyszukiwania umożliwia aplikacjom wyszukiwanie informacji w zewnętrznych magazynach danych. Baza danych aparatu wyszukiwania może indeksować ogromne ilości danych i zapewniać niemal w czasie rzeczywistym dostęp do tych indeksów.

Mocne strony: Zapytania pełnotekstowe, ocenianie, analiza językowa, dopasowywanie rozmyte

Zagadnienia dotyczące: Docelowa spójność indeksów, oddzielne przetwarzanie danych lub potok indeksowania, koszty aktualizacji dużych indeksów

Obciążeń: Wyszukiwanie witryn lub produktów, wyszukiwanie dzienników, filtrowanie metadanych, odnajdywanie wielu atrybutów

Wybieranie usługi platformy Azure do wyszukiwania magazynów danych

Aby uzyskać więcej informacji, zobacz Wybieranie magazynu danych wyszukiwania na platformie Azure.

Repozytoria danych wyszukiwania wektorowego

Magazyny danych wyszukiwania wektorowego przechowują i pobierają wielowymiarowe wektorowe reprezentacje danych, często generowane przez modele uczenia maszynowego.

Mocnych: Wyszukiwanie semantyczne, algorytmy ANN

Zagadnienia dotyczące: Złożoność indeksowania, obciążenie magazynu, opóźnienie i dokładność, wyzwania związane z integracją

Obciążenia: Semantyczne wyszukiwanie dokumentów, silniki rekomendacji, pobieranie obrazów i wideo, wykrywanie oszustw i anomalii

Wybieranie usługi platformy Azure dla magazynów danych wyszukiwania wektorowego

Aby uzyskać więcej informacji, zobacz Wybieranie usługi platformy Azure na potrzeby wyszukiwania wektorów.

Magazyny danych analitycznych

Magazyny danych analitycznych przechowują big data i utrwalają je w całym cyklu życia potoku analitycznego.

Mocnych: Skalowalne zasoby obliczeniowe i magazynowe, obsługa usług SQL i Spark, integracja z narzędziami analizy biznesowej, szeregami czasowymi i analizą telemetrii

Zagadnienia dotyczące: Koszt i złożoność aranżacji, opóźnienie zapytań dla obciążeń ad hoc, nadzór w wielu domenach danych

Obciążenia: Raportowanie korporacyjne, analiza big data, agregacja telemetryczna, operacyjne pulpity nawigacyjne, potoki przetwarzania danych w nauce

Wybieranie usługi platformy Azure na potrzeby magazynów danych analitycznych

Aby uzyskać więcej informacji, zobacz Wybieranie magazynu danych analitycznych na platformie Azure.

Charakterystyka porównawcza (podstawowe modele nierelacyjne)

Aspekt Dokument Rodzina kolumn (Column family) Klucz-wartość Graph
Normalizacja Zdenormalizowane Zdenormalizowane Zdenormalizowane Znormalizowane relacje
Podejście schematu Schemat podczas odczytywania Zdefiniowane rodziny kolumn, schemat kolumn podczas odczytu Schemat podczas odczytywania Schemat podczas odczytywania
Spójność (typowa) Dostosowywalny dla każdego elementu Dla każdego wiersza lub grupy danych Dla każdego klucza Dla każdej krawędzi lub semantyki przejścia
Zakres atomowości Dokument Wiersz lub kolumna, w zależności od implementacji tabeli Pojedynczy klucz Transakcja grafu (zmienna)
Blokowanie i współbieżność Optymistyczne (ETag) Pesymistyczne lub optymistyczne, w zależności od implementacji Optymistyczny (klucz) Optymistyczne (wzorzec)
Wzorzec dostępu Agregacja (jednostka) Szerokie rzadkie zbiory Wyszukiwanie punktów według klucza Przechodzenie relacji
Indeksowanie Podstawowa i pomocnicza Podstawowa i ograniczona wtórna Podstawowy (klucz) Podstawowa i czasami pomocnicza
Kształt danych Elastyczna hierarchiczna struktura Szeroki tabelaryczny odstęp Nieprzezroczyste wartości Węzły i krawędzie
Rzadkie/Szerokie zastosowanie Tak/Tak Tak/Tak Yes/No Nie/Nie
Typowy rozmiar dat Mały–średni Średni–duży Mały Mały
Wymiar skalowania Liczba partycji Szerokość rodziny partycji i kolumn Przestrzeń kluczy Liczba węzłów lub krawędzi

Cechy porównawcze (wyspecjalizowane modele nierelacyjne)

Aspekt Szeregi czasowe Obiekt (blob) Wyszukiwanie/indeksowanie
Normalizacja Znormalizowana Zdenormalizowane Zdenormalizowane
Schema Schemat podczas odczytu (tagi) Nieprzezroczyste wartości i metadane Schemat podczas zapisu (mapowanie indeksu)
Zakres atomowości Nie dotyczy (dodaj) Object Dla każdej operacji dokumentu lub indeksu
Wzorzec dostępu Skanowanie fragmentów czasu, agregacja okien Operacje całego obiektu Zapytania tekstowe i filtry
Indeksowanie Czas i opcjonalny dodatkowy Tylko klucz (ścieżka) Odwrócone i opcjonalne aspekty
Kształt danych Tabela (sygnatura czasowa, tagi, wartość) Plik binarny lub obiekt blob z metadanymi Tokenizowany tekst i ustrukturyzowane pola
Rejestracja profilu Dołączanie o wysokiej szybkości Zbiorcze lub rzadkie aktualizacje Indeks wsadowy lub strumieniowy
Odczyt profilu Zagregowane zakresy Pobieranie całkowite lub częściowe Sklasyfikowane zestawy wyników
Czynnik wzrostu Współczynnik zdarzeń pomnożony przez przechowywanie Liczba i rozmiar obiektów Indeksowany wolumin dokumentu
Tolerancja jednolitości Ostateczna dla późnych danych Odczyt po zapisie dla każdego obiektu Ostateczna liczba nowych dokumentów

Wybór spośród modeli (heurystyka)

Potrzeba Woleć
Ścisłe transakcje obejmujące wiele jednostek Relacyjne
Zmieniające się kształty agregatów, interfejsy API skoncentrowane na JSON-ie Dokument
Ekstremalnie szybkie wyszukiwania kluczy z niskimi opóźnieniami lub cache'owanie Klucz-wartość
Szerokie, rozrzedliwe, duże dane telemetryczne z dużą liczbą zapisów Rodzina kolumn lub szereg czasowy
Przechodzenie relacji głębokich Graph
Masowe historyczne skanowania analityczne Analiza lub OLAP
Duże nieustrukturyzowane pliki binarne lub strefy jezior danych Object
Pełnotekstowa trafność i filtrowanie Wyszukiwanie i indeksowanie
Metryki znacznika czasu o dużym poborze z zapytaniami z oknami Szeregi czasowe
Szybkie podobieństwo (semantyczne lub wektorowe) Wyszukiwanie wektorowe

Łączenie modeli i unikanie pułapek

Użyj więcej niż jednego modelu, jeśli mają zastosowanie następujące scenariusze:

  • Wzorce dostępu różnią się, takie jak wyszukiwanie punktowe, szerokie skanowanie analityczne oraz wyszukiwanie pełnotekstowe z uwzględnieniem trafności.
  • Cykl życia i przechowywanie różnią się, takie jak niezmienne surowe i opracowane strukturalne.
  • Konflikt opóźnień i wymagań dotyczących przepływności.

Unikaj przedwczesnej fragmentacji.

  • Używaj jednej usługi, gdy nadal spełnia cele dotyczące wydajności, skalowalności i zarządzania.
  • Scentralizowanie współużytkowanej logiki klasyfikacji i unikanie duplikowania potoków przekształcania między magazynami, chyba że jest to konieczne.

Poszukaj następujących typowych antywzorzeców:

  • Wiele mikrousług współużytkuje jedną bazę danych, która tworzy sprzężenie.
  • Zespoły dodają kolejny model bez dojrzałości operacyjnej, na przykład monitorowanie lub tworzenie kopii zapasowych.
  • Indeks wyszukiwania staje się podstawowym magazynem danych, co prowadzi do nieprawidłowego użycia.

Kiedy ponownie ocenić wybór modelu

Sygnał Możliwe działanie
Zwiększanie sprzężeń ad hoc w magazynie dokumentów Wprowadzanie modelu odczytu relacyjnego
Wysokie użycie procesora CPU w indeksie wyszukiwania z powodu agregacji analitycznych Odciążanie silnika analitycznego
Duże zdenormalizowane dokumenty tworzą rywalizację o częściową aktualizację Przekształcanie agregatów lub ich dzielenie
Zapytania dotyczące okien czasowych są powolne w magazynie danych typu kolumna Wdrażanie specjalnie utworzonej bazy danych szeregów czasowych
Opóźnienie wyszukiwania punktów rośnie z głębokością przechodzenia grafu Dodawanie zmaterializowanych widoków pochodnych

Dalsze kroki

Użyj następujących artykułów, aby wybrać wyspecjalizowany magazyn danych:

Dowiedz się więcej o architekturach referencyjnych korzystających z usług platformy Azure w tym artykule: