Najlepsze rozwiązania dotyczące biblioteki Kusto Ingest
W tym artykule wyjaśniono najlepsze rozwiązania dotyczące pozyskiwania danych za pomocą biblioteki Kusto Ingest.
Preferuj pozyskiwanie bezpośrednio w kolejce
W przypadku scenariuszy produkcyjnych użyj klienta pozyskiwania w kolejce. Aby uzyskać więcej informacji, zobacz Pozyskiwanie w kolejce i Bezpośrednie pozyskiwanie.
Używanie pojedynczego wystąpienia klienta pozyskiwania
Implementacje klientów kusto ingest są bezpieczne wątkowo i wielokrotnego użytku. Dla każdego klastra docelowego należy użyć pojedynczego wystąpienia klienta pozyskiwania w kolejce lub bezpośredniego na proces. Uruchomienie wielu wystąpień może przeciążyć klaster, powodując brak odpowiedzi lub powolne odpowiadanie na prawidłowe żądania.
Stan operacji śledzenia limitu
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 odpowiedzi klastra. 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.
Czynnik | Opis |
---|---|
Rozmiar danych | Pozyskiwanie danych jest bardziej wydajne, gdy odbywa się to w dużych fragmentach. Zalecamy wysyłanie danych w partiach od 100 MB do 1 GB (bez kompresji). |
Format danych | Plik CSV jest najszybszym formatem pozyskiwania. W przypadku tej samej ilości danych kod JSON może trwać 2 razy lub 3 razy dłużej. Aby uzyskać więcej informacji, zobacz Formaty danych obsługiwane na potrzeby pozyskiwania. |
Szerokość tabeli | Pozyskiwanie tylko niezbędnych danych. Każda kolumna musi być zakodowana i zindeksowana, co oznacza, że szersze tabele mogą mieć niższą przepływność. Kontroluj, które pola są pozyskiwane, dostarczając mapowanie pozyskiwania. |
Lokalizacja danych źródłowych | Unikaj odczytu między regionami, aby przyspieszyć pozyskiwanie. |
Ładowanie klastra | Gdy klaster ma duże obciążenie zapytań, pozyskiwanie 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ć dzielone na partie przed pozyskiwaniem.
Optymalizowanie pod kątem kosztów
Używanie bibliotek klienta Kusto do pozyskiwania danych do klastra pozostaje najtańszą i najbardziej niezawodną opcją. Zachęcamy naszych klientów do przejrzenia metod pozyskiwania, aby zoptymalizować koszt i skorzystać z cen 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 ustawiania
FlushImmediately
wartości .true
- Unikaj wysyłania małych ilości danych z tagami
ingest-by
zakresu lubdrop-by
.
Uwaga
Nadmierne wykorzystanie ostatnich dwóch metod może zakłócić agregację danych, prowadzić do dodatkowych transakcji magazynu oraz zaszkodzić pozyskiwaniu i wydajności zapytań.
Zawartość pokrewna
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla