Jak pozyskiwać dane historyczne do Azure Data Explorer

Typowy scenariusz podczas dołączania do Azure Data Explorer polega na pozyskiwaniu danych historycznych, czasami nazywanych wypełnianiem kopii zapasowych. Proces obejmuje importowanie danych z istniejącego systemu magazynowania do tabeli, która jest kolekcją obszarów.

Pozyskiwanie danych historycznych przy użyciu właściwości pozyskiwania creationTime w celu ustawienia czasu tworzenia zakresów do czasu utworzenia danych. Użycie czasu tworzenia jako kryterium partycjonowania pozyskiwania może wpływać na starzenie się danych zgodnie z politykami pamięci podręcznej i przechowywania, a także zwiększyć wydajność filtrów czasu.

Domyślnie czas tworzenia zakresów jest ustawiany na czas pozyskiwania danych, co może nie generować oczekiwanego zachowania. Załóżmy na przykład, że masz tabelę z okresem przechowywania w pamięci podręcznej wynoszącym 30 dni i okresem przechowywania wynoszącym dwa lata. W normalnym przepływie dane pobierane w miarę ich generowania są przechowywane tymczasowo przez 30 dni, a następnie przenoszone do chłodnego magazynu danych. Po dwóch latach, na podstawie czasu tworzenia, starsze dane są usuwane jeden dzień naraz. Jednak jeśli pozyskujesz dwa lata danych historycznych, gdzie domyślnie czas tworzenia jest oznaczany jako moment pozyskiwania danych. To zachowanie może nie wygenerować żądanego wyniku, ponieważ:

  • Wszystkie dane ląduje w pamięci podręcznej i pozostają tam przez 30 dni, używając większej ilości pamięci podręcznej niż oczekiwano.
  • Starsze dane nie są usuwane jeden dzień naraz; w związku z tym dane są przechowywane w klastrze dłużej niż jest to konieczne, a po dwóch latach wszystkie zostaną usunięte jednocześnie.
  • Dane, wcześniej pogrupowane według daty w systemie źródłowym, mogą być teraz połączone w grupy w tym samym obszarze, co prowadzi do nieefektywnych zapytań.

Diagram przedstawiający oczekiwany i rzeczywisty wynik pozyskiwania danych historycznych przy użyciu domyślnego czasu tworzenia.

Z tego artykułu dowiesz się, jak partycjonować dane historyczne:

  • Użycie właściwości creationTime podczas procesu pozyskiwania (zalecane)

    Jeśli to możliwe, pozyskiwanie danych historycznych przy użyciu właściwości pozyskiwania, za pomocącreationTime której można ustawić czas tworzenia zakresów, wyodrębniając je ze ścieżki pliku lub obiektu blob. Jeśli struktura folderów nie używa wzorca daty utworzenia, zmień strukturę pliku lub ścieżki obiektu blob, aby odzwierciedlić czas tworzenia. Korzystając z tej metody, wprowadzasz dane do tabeli z prawidłowym czasem tworzenia, a pamięć podręczna i okresy przechowywania są zastosowane poprawnie.

    Uwaga

    Domyślnie zakresy są partycjonowane według czasu tworzenia (pozyskiwania) i w większości przypadków nie ma potrzeby ustawiania zasad partycjonowania danych.

  • Stosowanie zasad partycjonowania po zaimportowaniu danych

    Jeśli nie możesz użyć właściwości creationTime pozyskiwania, na przykład gdy pozyskujesz dane przy użyciu łącznika Azure Cosmos DB, gdzie nie można kontrolować czasu tworzenia, lub jeśli nie można ponownie skonstruować struktury folderów, możesz dokonać repartycjonowania tabeli po pozyskaniu danych, aby osiągnąć ten sam efekt przy użyciu polityki partycjonowania. Jednak ta metoda może wymagać metody prób i błędów w celu zoptymalizowania parametrów polityki i jest mniej wydajna niż użycie właściwości pozyskiwania creationTime. Użyj tej metody tylko wtedy, gdy użycie właściwości pozyskiwania creationTime nie jest możliwe.

Wymagania wstępne

Pozyskiwanie danych historycznych

Partycjonuj dane historyczne, używając właściwości importowania podczas wczytywania creationTime. Jeśli nie możesz użyć tej metody, możesz ponownie podzielić tabelę po zaimportowaniu danych przy użyciu polityki partycjonowania.

LightIngest przydaje się do ładowania danych historycznych z istniejącego systemu magazynu do Azure Data Explorer. Chociaż możesz utworzyć własne polecenie przy użyciu listy argumentów wiersza polecenia, w tym artykule pokazano, jak automatycznie wygenerować to polecenie za pomocą kreatora importu danych. Oprócz utworzenia polecenia można użyć tego procesu, aby utworzyć nową tabelę i utworzyć mapowanie schematu. To narzędzie wywnioskowuje mapowanie schematu z zestawu danych.

Miejsce docelowe

  1. W internetowym interfejsie użytkownika Azure Data Explorer wybierz pozycję Query z menu po lewej stronie.

  2. Kliknij prawym przyciskiem myszy bazę danych, w której chcesz pozyskać dane, a następnie wybierz pozycję LightIngest.

    Zrzut ekranu internetowego interfejsu użytkownika Azure Data Explorer pokazujący menu więcej opcji bazy danych.

    Okno Importowanie danych otworzy się z wybraną kartą Miejsce docelowe. Pola Klaster i Baza danych są wypełniane automatycznie.

  3. Wybierz tabelę docelową. Aby pozyskać dane do nowej tabeli, wybierz pozycję Nowa tabela, a następnie wprowadź nazwę tabeli.

    Uwaga

    Nazwy tabel mogą zawierać maksymalnie 1024 znaki, w tym spacje, znaki alfanumeryczne, łączniki i podkreślenia. Znaki specjalne nie są obsługiwane.

    Zrzut ekranu karty docelowej pokazujący docelową bazę danych i tabelę.

  4. Wybierz pozycję Dalej: Źródło.

Źródło

  1. W obszarze Wybierz źródło wybierz pozycję Dodaj adres URL lub Wybierz kontener.

    • Po dodaniu adresu URL, w sekcji Link do źródła, określ klucz konta lub URL SAS do kontenera. Adres URL SAS można utworzyć ręcznie lub automatycznie.

    • Po wybraniu kontenera z konta magazynu wybierz subskrypcję magazynu, konto magazynu i kontener z menu rozwijanych.

      Zrzut ekranu przedstawiający okno dialogowe do wybierania kontenera z subskrypcji i konta magazynu.

    Uwaga

    Maksymalny rozmiar pliku obsługiwany podczas przyjmowania/importowania wynosi 6 GB. Zaleca się wczytywanie plików o wielkości od 100 MB do 1 GB.

  2. Wybierz pozycję Ustawienia zaawansowane, aby zdefiniować dodatkowe ustawienia procesu pozyskiwania przy użyciu LightIngest.

    Zrzut ekranu przedstawiający wybór ustawień zaawansowanych dla przetwarzania pozyskiwania danych z użyciem narzędzia LightIngest.

  3. W okienku Konfiguracja zaawansowana zdefiniuj ustawienia LightIngest zgodnie z poniższą tabelą.

    Zrzut ekranu przedstawiający okienko konfiguracji zaawansowanej z dodatkowymi ustawieniami przetwarzania danych z wykorzystaniem narzędzia LightIngest.

    Właściwości opis
    Wzorzec czasu tworzenia Określ wzorzec, aby zastąpić atrybut czasu wczytywania danych dla utworzonego obszaru, na przykład, aby zastosować datę na podstawie struktury folderów kontenera. Zobacz również Wzorzec czasu tworzenia.
    Wzorzec nazwy obiektu blob Określ wzorzec używany do identyfikowania plików do importu. Pobierz wszystkie pliki zgodne ze wzorcem nazwy obiektu blob w danym kontenerze. Obsługuje symbole wieloznaczne. Ujmij wzorzec w cudzysłowach podwójnych.
    Tag Tag przypisany do pozyskanych danych. Tag może być dowolnym ciągiem.
    Ograniczanie ilości plików Określ liczbę plików do przetworzenia. Pobiera pierwsze n pliki, które są zgodne ze wzorcem nazwy obiektu blob, do określonej liczby.
    Nie czekaj na zakończenie przetwarzania Jeśli jest ustawione, obiekty blob są kolejkowane do pozyskiwania bez monitorowania procesu pozyskiwania. Jeśli nie zostanie ustawiona, funkcja LightIngest będzie nadal sondować stan pozyskiwania do momentu ukończenia pozyskiwania.
    Wyświetlanie tylko wybranych elementów Wyświetl listę plików w kontenerze, ale nie importuje ich.
  4. Wybierz pozycję Gotowe , aby powrócić do karty Źródło .

    1. Opcjonalnie wybierz Filtry plików, aby filtrować dane do pobierania tylko plików w określonej ścieżce folderu lub z określonym rozszerzeniem pliku.

      Zrzut ekranu przedstawiający filtrowanie danych na zakładce źródła ekranu wczytywania nowych danych.

      Domyślnie jeden z plików w kontenerze jest losowo wybierany i używany do generowania schematu dla tabeli.

    2. Opcjonalnie w obszarze Plik definiujący schemat określ plik do użycia.

  5. Wybierz pozycję Dalej: Schemat , aby wyświetlić i edytować konfigurację kolumny tabeli.

Schemat

Karta schematu zawiera podgląd danych.

Aby wygenerować polecenie LightIngest, wybierz pozycję Dalej: Rozpocznij ładowanie.

Opcjonalnie możesz:

  • Zmień automatycznie wnioskowany format danych, wybierając żądany format z menu rozwijanego.
  • Zmień automatycznie wnioskowaną nazwę mapowania. Można użyć znaków alfanumerycznych i podkreśleń. Spacje, znaki specjalne i łączniki nie są obsługiwane.
  • W przypadku korzystania z istniejącej tabeli można zachować bieżący schemat tabeli, jeśli schemat tabeli jest zgodny z wybranym formatem.
  • Wybierz pozycję Przeglądarka poleceń, aby wyświetlić i skopiować polecenia automatyczne wygenerowane na podstawie danych wejściowych.
  • Edytuj kolumny. W obszarze Podgląd częściowych danych wybierz menu rozwijane kolumn, aby zmienić różne aspekty tabeli.

Zmiany, które można wprowadzić w tabeli, zależą od następujących parametrów:

  • Typ tabeli jest nowy lub istniejący
  • Typ mapowania to nowy lub istniejący
Typ tabeli Typ mapowania Dostępne korekty
Nowa tabela Nowe mapowanie Zmień typ danych, Zmień nazwę kolumny, Nowa kolumna, Usuń kolumnę, Aktualizuj kolumnę, Sortuj rosnąco, Sortuj malejąco
Istniejąca tabela Nowe mapowanie Nowa kolumna (na której można następnie zmienić typ danych, zmienić nazwę i zaktualizować)
Aktualizuj kolumnę, Sortuj rosnąco, Sortuj malejąco
Istniejące mapowanie Sortuj rosnąco, Sortuj malejąco

Uwaga

Podczas dodawania nowej kolumny lub aktualizowania kolumny można zmienić przekształcenia mapowania. Aby uzyskać więcej informacji, zobacz Przekształcenia mapowania

Wczytywanie

  1. Gdy tabela, mapowanie i polecenie LightIngest wyświetlają zielone znaczniki wyboru, wybierz ikonę kopiowania w prawym górnym rogu pola wygenerowane polecenie, w celu skopiowania wygenerowanego polecenia LightIngest.

    Zrzut ekranu przedstawiający kartę Podsumowanie z wygenerowanymi poleceniami. Polecenie można skopiować przy użyciu ikony kopiowania powyżej wygenerowanego pola polecenia.

    Uwaga

    Jeśli jest to wymagane, możesz pobrać narzędzie LightIngest, wybierając pozycję Pobierz lightingest.

  2. Aby ukończyć proces pozyskiwania, należy uruchomić program LightIngest przy użyciu skopiowanego polecenia.