Udostępnij za pośrednictwem


Wybieranie magazynu danych analitycznych na platformie Azure

W architekturze big data często istnieje potrzeba magazynu danych analitycznych, który dostarcza przetworzone dane w formacie ustrukturyzowanym, na który można wykonywać zapytania przy użyciu narzędzi analitycznych. Magazyny danych analitycznych, które obsługują wykonywanie zapytań dotyczących zarówno danych ścieżki gorącej, jak i zimnej ścieżki, są zbiorczo określane jako warstwa obsługująca lub magazyn obsługujący dane.

Warstwa obsługująca przetworzone dane zarówno ze ścieżki gorącej, jak i ścieżki zimnej. W architekturze lambda warstwa obsługi jest podzielona na dwie warstwy. Warstwa szybkości przetwarzania zawiera dane przetwarzane stopniowo. Warstwa przetwarzania wsadowego zawiera dane wyjściowe przetworzone wsadowo. Warstwa serwująca wymaga silnego wsparcia dla losowych odczytów przy niskich opóźnieniach. Magazyn danych dla warstwy szybkości powinien również obsługiwać losowe zapisy, ponieważ ładowanie wsadowe danych do tego magazynu powoduje niepożądane opóźnienia. Alternatywnie magazyn danych dla warstwy wsadowej musi obsługiwać zapisy wsadowe, a nie losowe zapisy.

Nie ma jednego najlepszego wyboru zarządzania danymi dla wszystkich zadań magazynu danych. Różne rozwiązania do zarządzania danymi są zoptymalizowane pod kątem różnych zadań. Większość rzeczywistych aplikacji w chmurze i procesów danych big data ma różne wymagania dotyczące magazynu danych i często używa kombinacji rozwiązań magazynu danych.

Nowoczesne rozwiązania analityczne, takie jak Microsoft Fabric, zapewniają kompleksową platformę, która integruje różne usługi i narzędzia danych w celu spełnienia różnych potrzeb analitycznych. Fabric obejmuje usługę OneLake, która jest jednym, ujednoliconym, logicznym jeziorem danych w całej organizacji. Usługa OneLake została zaprojektowana do przechowywania i zabezpieczania wszystkich danych organizacji oraz zarządzania nimi w jednej lokalizacji. Ta elastyczność pozwala organizacji sprostać szerokiemu zakresowi wymagań dotyczących magazynowania i przetwarzania danych.

Wybieranie analitycznego magazynu danych

Istnieje kilka opcji przechowywania danych na platformie Azure, w zależności od potrzeb:

Następujące modele baz danych są zoptymalizowane pod kątem różnych typów zadań:

  • Bazy danych klucz-wartość przechowują jeden serializowany obiekt dla każdej wartości klucza. Są one odpowiednie do zarządzania dużymi ilościami danych podczas pobierania na podstawie określonego klucza bez konieczności wykonywania zapytań o inne właściwości elementu.

  • Bazy danych dokumentowe to bazy danych klucz-wartość, w których wartości to dokumenty. W tym kontekście dokument jest kolekcją nazwanych pól i wartości. Baza danych zwykle przechowuje dane w formacie, takim jak XML, YAML, JSON lub binarny kod JSON, ale może używać zwykłego tekstu. Bazy danych dokumentów mogą wykonywać zapytania dotyczące pól innych niż kluczowe i definiować indeksy pomocnicze, aby zwiększyć wydajność wykonywania zapytań. Ta funkcja sprawia, że baza danych dokumentów jest bardziej odpowiednia dla aplikacji, które muszą pobierać dane na podstawie kryteriów bardziej złożonych niż wartość klucza dokumentu. Można na przykład wykonywać zapytania dotyczące pól, takich jak identyfikator produktu, identyfikator klienta lub nazwa klienta.

  • Bazy danych o magazynowaniu kolumnowym to magazyny danych typu klucz-wartość, które przechowują każdą kolumnę oddzielnie na dysku. Baza danych typu wide column store jest rodzajem bazy danych magazynu kolumn, która przechowuje rodziny kolumn, a nie tylko pojedyncze kolumny. Na przykład baza danych spisu może mieć oddzielną rodzinę kolumn dla każdego z następujących elementów:

    • Imię, środkowe i nazwisko osoby

    • Adres tej osoby

    • Informacje o profilu tej osoby, takie jak data urodzenia lub płeć

    Baza danych może przechowywać każdą rodzinę kolumn w oddzielnej partycji, zachowując jednocześnie wszystkie dane dla jednej osoby powiązanej z tym samym kluczem. Aplikacja może odczytać rodzinę kolumn bez skanowania wszystkich danych dla jednostki.

  • Grafowe bazy danych przechowują informacje jako kolekcję obiektów i relacji. Grafowa baza danych może efektywnie wykonywać zapytania przechodzące przez sieć obiektów i relacje między nimi. Na przykład obiekty mogą być pracownikami w bazie danych zasobów ludzkich i warto ułatwić wykonywanie zapytań, takich jak "znajdowanie wszystkich pracowników, którzy bezpośrednio lub pośrednio pracują dla Scotta".

  • Telemetria i bazy danych szeregów czasowych to kolekcja obiektów, do których można tylko dodawać. Bazy danych telemetrycznych efektywnie indeksują dane w różnych magazynach kolumnowych i strukturach w pamięci. Ta funkcja sprawia, że są one optymalnym wyborem do przechowywania i analizowania ogromnych ilości danych telemetrycznych i danych szeregów czasowych.

Platforma obsługuje różne modele baz danych, w tym klucz-wartość, dokumentowe, kolumnowe, grafowe i telemetryczne bazy danych. Ta elastyczność zapewnia skalowalność dla szerokiego zakresu zadań analitycznych.

Kluczowe kryteria wyboru

Aby uściślić proces wyboru, należy wziąć pod uwagę następujące kryteria:

  • Czy potrzebujesz obsługiwać magazyn, który może służyć jako gorąca ścieżka dla danych? Jeśli tak, zawęź opcje do tych, które są zoptymalizowane pod kątem warstwy obsługującej szybkość.

  • Czy potrzebujesz obsługi masowego przetwarzania równoległego, w którym zapytania są automatycznie dystrybuowane między kilka procesów lub węzłów? Jeśli tak, wybierz opcję, która obsługuje skalowanie w poziomie zapytań.

  • Czy wolisz używać relacyjnego magazynu danych? Jeśli tak, zawęzisz opcje do tych, które mają model relacyjnej bazy danych. Jednak niektóre magazyny nierelacyjne obsługują składnię SQL na potrzeby wykonywania zapytań, a narzędzia, takie jak PolyBase, mogą służyć do wykonywania zapytań dotyczących magazynów danych nierelacyjnych.

  • Czy zbierasz dane szeregów czasowych? Czy używasz danych tylko do dodawania?

Usługa Fabric OneLake obsługuje wiele silników analitycznych, w tym Analysis Services, T-SQL i Apache Spark. Ta obsługa sprawia, że nadaje się do różnych potrzeb dotyczących przetwarzania danych i wykonywania zapytań.

Macierz możliwości

W poniższych tabelach podsumowano kluczowe różnice w możliwościach.

Ogólne możliwości

Zdolność Baza danych SQL Pula SQL usługi Azure Synapse Analytics Pula Spark w usłudze Azure Synapse Analytics Azure Data Explorer (explorator danych Azure) Apache HBase lub Apache Phoenix w usłudze HDInsight Hive LLAP w usłudze HDInsight Usługi analizy Azure Cosmos DB (Usługa bazodanowa firmy Microsoft) Tkanina
Czy usługa zarządzana? Tak Tak Tak Tak Tak 1 Tak 1 Tak Tak Tak
Podstawowy model bazy danych Relacyjne (format magazynu kolumn podczas korzystania z indeksów magazynu kolumn) Tabele relacyjne z przechowywaniem kolumn Szeroki magazyn kolumn Relacyjny (magazyn kolumnowy), telemetria i baza danych czasowych Szeroki magazyn kolumn Hive lub w pamięci Modele semantyczne tabelaryczne Magazyn dokumentów, graf, magazyn klucz-wartość, szeroki magazyn kolumn Ujednolicone jezioro danych, bazy relacyjne, telemetria, szeregi czasowe, magazyn dokumentów, graf, baza klucz-wartość
Obsługa języka SQL Tak Tak Tak Tak Tak (przy użyciu sterownika łączności bazy danych Java Apache Phoenix ) Tak Nie Tak Tak
Zoptymalizowane pod kątem szybkiej obsługi warstwy Tak 2 Tak 3 Tak Tak Tak Tak Nie Tak Tak

[1] Z ręczną konfiguracją i skalowaniem.

[2] Używanie tabel zoptymalizowanych pod kątem pamięci i skrótów lub indeksów nieklastrowanych.

[3] Obsługiwane jako dane wyjściowe usługi Azure Stream Analytics.

Możliwości skalowalności

Zdolność Baza danych SQL Pula SQL usługi Azure Synapse Analytics Pula Spark w usłudze Azure Synapse Analytics Azure Data Explorer (explorator danych Azure) Apache HBase lub Apache Phoenix w usłudze HDInsight Hive LLAP w usłudze HDInsight Usługi analizy Azure Cosmos DB (Usługa bazodanowa firmy Microsoft) Tkanina
Nadmiarowe serwery regionalne w celu zapewnienia wysokiej dostępności Tak Nie Nie Tak Tak Nie Tak Tak Tak
Obsługuje skalowanie zapytań w poziomie Nie Tak Tak Tak Tak Tak Tak Tak Tak
Dynamiczna skalowalność (skalowanie w górę) Tak Tak Tak Tak Nie Nie Tak Tak Tak
Obsługuje buforowanie danych w pamięci Tak Tak Tak Tak Nie Tak Tak Nie Tak

Możliwości zabezpieczeń

Zdolność Baza danych SQL Azure Synapse Analytics Azure Data Explorer (explorator danych Azure) Apache HBase lub Apache Phoenix w usłudze HDInsight Hive LLAP w usłudze HDInsight Usługi analizy Azure Cosmos DB (Usługa bazodanowa firmy Microsoft) Tkanina
Uwierzytelnianie SQL lub Microsoft Entra ID SQL lub Microsoft Entra ID Microsoft Entra ID Lokalny lub Microsoft Entra ID 1 Lokalny lub Microsoft Entra ID 1 Microsoft Entra ID Użytkownicy bazy danych lub Microsoft Entra ID za pomocą kontroli dostępu (zarządzanie tożsamościami i dostępem) Microsoft Entra ID
Szyfrowanie danych w spoczynku Tak 2 Tak 2 Tak Tak 1 Tak 1 Tak Tak Tak
Zabezpieczenia na poziomie wiersza Tak Tak 3 Tak Tak 1 Tak 1 Tak Nie Tak
Obsługuje zapory Tak Tak Tak Tak 4 Tak 4 Tak Tak Tak
Dynamiczne maskowanie danych Tak Tak Tak Tak 1 Tak Nie Nie Tak

Wymaga użycia klastra HDInsight połączonego z domeną.

[2] Wymaga użycia przezroczystego szyfrowania danych do szyfrowania oraz odszyfrowywania danych w stanie spoczynku.

[3] Tylko predykaty filtru. Aby uzyskać więcej informacji, zobacz Zabezpieczenia na poziomie wiersza.

[4] W przypadku użycia w sieci wirtualnej platformy Azure. Aby uzyskać więcej informacji, zobacz Rozszerzanie usługi HDInsight przy użyciu sieci wirtualnej platformy Azure.

Następne kroki