Najlepsze rozwiązania dotyczące biblioteki Kusto Ingest

Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer

W tym artykule opisano najlepsze rozwiązania dotyczące pozyskiwania danych za pomocą biblioteki Kusto Ingest.

Preferuj bezpośrednie pozyskiwanie w kolejce

W przypadku scenariuszy produkcyjnych należy użyć klienta pozyskiwania w kolejce. Aby uzyskać więcej informacji, zobacz Pozyskiwanie w kolejce i Pozyskiwanie bezpośrednie.

Używanie pojedynczego wystąpienia klienta pozyskiwania

Implementacje klienta pozyskiwania Kusto są bezpieczne wątkowo i wielokrotnego użytku. Dla każdej docelowej bazy danych należy użyć pojedynczego wystąpienia klienta w kolejce lub bezpośredniego pozyskiwania klienta na proces. Uruchomienie wielu wystąpień może przeciążyć bazę danych, co powoduje, że nie odpowiada lub wolno odpowiada na prawidłowe żądania.

Ograniczanie stanu operacji śledzenia

W przypadku dużych strumieni danych ogranicz użycie pozytywnych powiadomień dla żądań pozyskiwania. Nadmierne śledzenie może prowadzić do zwiększonego opóźnienia pozyskiwania, a nawet całkowitego braku reakcji. Aby uzyskać więcej informacji, zobacz Stan operacji.

Optymalizowanie pod kątem przepływności

Podczas planowania potoku pozyskiwania należy wziąć pod uwagę następujące czynniki, ponieważ mogą one mieć znaczący wpływ na przepływność pozyskiwania.

Współczynnik opis
Rozmiar danych Pozyskiwanie jest bardziej wydajne, gdy odbywa się w dużych fragmentach. Zalecamy wysyłanie danych w partiach od 100 MB do 1 GB (nieskompresowane).
Format danych Preferuj formaty danych, takie jak CSV lub dowolny rozdzielany format tekstu, taki jak PSV lub TSV, a także Parquet, JSON lub AVRO, które są zoptymalizowane pod kątem maksymalnej przepływności. Aby uzyskać więcej informacji, zobacz Formaty danych obsługiwane do pozyskiwania.
Szerokość tabeli Pozyskiwanie tylko niezbędnych danych. Każda kolumna musi być zakodowana i indeksowana, co oznacza, że szersze tabele mogą mieć niższą przepływność. Kontrolowanie, które pola są pozyskiwane, udostępniając mapowanie pozyskiwania.
Lokalizacja danych źródłowych Unikaj odczytu między regionami, aby przyspieszyć pozyskiwanie.
Ładowanie bazy danych Gdy baza danych ma duże obciążenie zapytań, pozyskiwanie danych trwa dłużej.

Uwaga

Klient pozyskiwania w kolejce dzieli duże zestawy danych na fragmenty i agreguje je, co jest przydatne, gdy dane nie mogą być wsadowe przed pozyskiwaniem.

Optymalizowanie pod kątem kosztów

Używanie bibliotek klienta Kusto do pozyskiwania danych do bazy danych pozostaje najtańszą i najbardziej niezawodną opcją. Zachęcamy naszych klientów do przejrzenia metod pozyskiwania, aby zoptymalizować koszt i skorzystać z cennika usługi Azure Storage, dzięki czemu transakcje obiektów blob będą znacznie opłacalne.

W przypadku ekonomicznego pozyskiwania:

  • Ogranicz liczbę pozyskanych fragmentów danych, takich jak pliki, obiekty blob i strumienie.
  • Pozyskiwanie dużych fragmentów z maksymalnie 1 GB nieskompresowanych danych.
  • Wybierz przetwarzanie wsadowe.
  • Podaj dokładny, nieskompresowany rozmiar danych, aby uniknąć dodatkowych transakcji magazynu.
  • Unikaj ustawienia FlushImmediately na true.
  • Unikaj wysyłania małych ilości danych z tagami ingest-byzakresu lub drop-by .

Uwaga

Nadmierne wykorzystanie dwóch ostatnich metod może zakłócić agregację danych, prowadzić do dodatkowych transakcji magazynu i zaszkodzić pozyskiwaniu i wydajności zapytań.