Jak działa usługa Azure Data Explorer
Usługa Azure Data Explorer zapewnia niezrównaną wydajność pozyskiwania i wykonywania zapytań dotyczących danych telemetrycznych, dzienników, zdarzeń, śladów i danych szeregów czasowych. Oferuje zoptymalizowane formaty magazynu, indeksy i wykorzystuje zaawansowane statystyki danych do wydajnego planowania zapytań i wykonywania zapytań skompilowanych just in time.
Magazyn a obliczenia
Usługa Azure Data Explorer oddziela zasoby magazynu i zasobów obliczeniowych. Trwałe dane znajdują się w usłudze Azure Blob Storage, podczas gdy zasoby obliczeniowe mogą przechowywać dane tymczasowe lub działać jako pamięć podręczna dla magazynu trwałego.
Ta separacja zapewnia następujące korzyści:
- Niezależne skalowanie z magazynu i zasobów obliczeniowych.
- Ułatwienia dostępu do identycznych danych w wielu klastrach obliczeniowych. Aby uzyskać więcej informacji, zobacz Udostępnianie danych.
- Optymalizacja jednostki SKU. Aby uzyskać więcej informacji, zobacz Wybieranie jednostki SKU dla klastra.
Magazyn danych
Usługa Azure Data Explorer dzieli wszystkie pozyskane dane na zakresy lub fragmenty danych, które są poziomymi wycinkami tabeli docelowej. Zakres może zaczynać się tak małe, jak pojedynczy rekord. W miarę gromadzenia się danych w tabeli usługa Azure Data Explorer automatycznie scala zakresy, aż do ich wzrostu, aby obejmować miliony rekordów. Każdy zakres jest kodowany i indeksowany niezależnie od innych zakresów. Ta funkcja przyczynia się do przepływności pozyskiwania w skali liniowej.
Zakresy są równomiernie rozmieszczone w węzłach klastra, gdzie są buforowane zarówno na lokalnym dysku SSD, jak i w pamięci. Ta dystrybucja zwiększa możliwości przygotowywania i wykonywania wysoce rozproszonych i równoległych zapytań.
Aby uzyskać więcej informacji na temat magazynu danych, zobacz Omówienie zakresów.
Uwaga
Usługa Azure Data Explorer zachowuje również podstawowe metadane, takie jak schematy tabel i obiekty zasad. Aby uzyskać listę zasad, zobacz Omówienie zasad.
Pamięć podręczna danych
Usługa Azure Data Explorer ma system pamięci podręcznej danych z wieloma hierarchiami, aby zapewnić, że najbardziej odpowiednie dane są buforowane jak najbliżej procesora CPU. System pamięci podręcznej zależy od niezmienności zakresów i działa całkowicie ze skompresowanymi danymi. Aby zwiększyć wydajność zapytań, dane pozostają skompresowane nawet w pamięci RAM i są dekompresowane tylko wtedy, gdy jest to wymagane dla zapytania.
Aby uzyskać więcej informacji na temat buforowania, zobacz Zasady pamięci podręcznej.
Indeksowanie tekstu
Usługa Azure Data Explorer została zaprojektowana tak, aby efektywnie indeksować kolumny typu free-text (ciąg) i JSON-like (dynamiczne) podczas pozyskiwania danych. Indeksy utrzymują poziom szczegółowości, który umożliwia ocenę części zapytania na podstawie indeksu bez skanowania danych.
Ciągła optymalizacja zakresów za pomocą scalania zwiększa kompresję i indeksowanie, zapewniając wydajne przechowywanie i małe opóźnienia zapytań. Gdy zakresy osiągną określony rozmiar, scalane są tylko indeksy w celu zwiększenia wydajności zapytań bez naruszania wydajności.
Aby uzyskać więcej informacji na temat scalania zakresu i indeksu, zobacz Scal zasady.
Magazyn wierszy
Usługa Azure Data Explorer oferuje pośrednie rozwiązanie magazynu nazywane magazynem wierszy. Magazyn wierszy umożliwia efektywne pobieranie małych porcji danych i zapewnia, że te dane są natychmiast dostępne dla zapytań. Po włączeniu pozyskiwania przesyłania strumieniowego w klastrze dane są początkowo pozyskiwane do magazynu wierszy, a następnie przenoszone do zakresów magazynu kolumn.
Aby uzyskać więcej informacji, zobacz Batching vs. streaming ingestion (Pozyskiwanie wsadowe a pozyskiwanie przesyłania strumieniowego).
Kompresja kolumn
Usługa Azure Data Explorer utrzymuje dane w stanie skompresowanym, zmniejszając ilość pamięci wymaganej do przechowywania i przetwarzania danych. To zachowanie skutkuje szybszą wydajnością zapytań i bardziej wydajnym użyciem zasobów systemowych.
Usługa Azure Data Explorer unika kompresji pionowej, która polega na sortowaniu danych w celu poprawy kompresji ze względu na wysoki koszt procesora CPU w scenariuszach danych bez tekstu lub częściowo ustrukturyzowanych. Zamiast tego można określić preferowaną kolejność sortowania danych dla scenariuszy z dominującymi wzorcami zapytań. Ten kompromis określa priorytety szybkiej dostępności danych dla zapytań.
Aby uzyskać więcej informacji na temat określania kolejności sortowania danych, zobacz Zasady kolejności wierszy.
Zapytanie dotyczące danych rozproszonych
Usługa Azure Data Explorer używa rozproszonej technologii zapytań dotyczących danych przeznaczonej do szybkiej analizy ad hoc w dużych zestawach danych bez struktury. Najważniejsze funkcje tej technologii obejmują:
- Dane tymczasowe generowane przez zapytania są przechowywane w zagregowanej pamięci RAM
- Odpowiednie zakresy są oznaczone w planie zapytania, zapewniając izolację migawek
- Szybkie i wydajne zapytania mają priorytet z krótkimi domyślnymi limitami czasu
- Natywna obsługa zapytań między klastrami, które minimalizują wymianę danych między klastrami
- Zapytania są kompilowane just in time w wysoce wydajnym kodzie maszynowym przy użyciu statystyk danych ze wszystkich zakresów i dostosowane do specyfiki kodowania kolumn
Uwaga
Usługa Azure Data Explorer jest przeznaczona do pracy z język zapytań Kusto (KQL) utworzoną niestandardową dla usługi Azure Data Explorer. Ponadto język T-SQL jest obsługiwany.