Dodawanie transformacji SQL
Do zadań transformacji można dołączać tabele oparte na języku SQL. Transformacja SQL umożliwia wprowadzenie zapytania SQL SELECT do potoku w celu zdefiniowania złożonych lub prostych transformacji. Możesz także użyć Asystenta SQL, aby wygenerować zapytanie z promptu tekstowego za pomocą generatywnej sztucznej inteligencji. Możesz także używać makr, aby dostosować zapytanie do wykonania, jeśli wykonywane jest ładowanie początkowe lub ładowanie przyrostowe.
Aby uzyskać więcej informacji na temat tworzenia zadania transformacji, zobacz Przekształcanie danych.
Dodawanie transformacji SQL
Aby dodać transformację SQL w zadaniu transformacji danych:
-
W sekcji Przekształcenie wybierz zestawy danych, które mają zostać włączone do zapytania, i kliknij Dodaj transformację SQL.
Ustaw nazwę transformacji w polu Nazwa. Więcej informacji na temat pozostałych ustawień zawiera temat Ustawienia.
Kliknij przycisk Dodaj, gdy wszystko będzie gotowe do utworzenia transformacji SQL.
Wyświetli się okno Edytuj transformację SQL.
-
Napisz zapytanie, aby zwrócić tabelę opartą na SQL w okienku zapytania.
Więcej informacji zawiera temat Edytowanie zapytania SQL.
-
Kliknij Uruchom zapytanie.
Spowoduje to pobranie metadanych i podglądu danych.
-
Przejrzyj parametry w Parameters.
Więcej informacji zawiera temat Parametry.
-
Ustaw klucz podstawowy w Metadata.
Więcej informacji zawiera temat Metadane.
-
Jeśli wyniki zapytania będą zadowalające, kliknij Save and close. Zestaw danych jest teraz dodany do listy celów i możesz wyświetlić jego podgląd.
Edytowanie zapytania SQL
Wpisz zapytanie, które zwróci tabelę opartą na SQL w okienku zapytania. Zapytanie może odczytywać tylko wybrane źródłowe zestawy danych, ale możesz dodać więcej źródłowych zestawów danych za pomocą opcji Dodaj.
-
Możesz utworzyć instrukcję, aby załadować zestaw danych z Obiektów. Kliknij
, a następnie Wygeneruj instrukcję Select w edytorze.
-
Możesz skopiować nazwę zestawu danych do schowka, klikając
, a następnie Kopiuj.
-
Kliknij >, aby przenieść zestaw danych lub nazwę kolumny do edytora.
-
Kliknij
, aby wyszukać i zamienić tekst w edytorze.
Jeśli używane jest ładowanie przyrostowe, możesz użyć makr, aby dostosować zapytanie do wykonania, jeśli wykonywane jest ładowanie początkowe lub ładowanie przyrostowe.
Więcej informacji zawiera temat Używanie makr w celu dostosowania zapytania do typu ładowania.
Skróty klawiaturowe
-
Ctrl+F Wyszukaj i zamień
-
Ctrl+/ Skomentuj/odkomentuj bieżącą linię
-
Ctrl+Enter Uruchom zapytanie
-
Ctrl+Z Cofnij
-
Ctrl+Y Ponów
Podgląd wyników
Możesz wyświetlić podgląd wyników, korzystając z próbki danych w Results.
Aby móc przeglądać dane, musisz mieć przypisane następujące role:
-
Może przeglądać dane w przestrzeni, w której znajduje się połączenie.
-
Może wyświetlać w przestrzeni, w której znajduje się projekt.
Wyświetlane są wyniki wykorzystujące próbkę danych. Ustawienie Liczba wierszy umożliwia określenie, ile wierszy danych należy uwzględnić w próbce.
-
Kliknij Last executed query, aby zobaczyć czas ostatniego uruchomienia i czas trwania ostatnio wykonanego zapytania.
Filtrowanie wyników
Możesz filtrować wyniki według jednej lub wielu kolumn.
-
Kliknij
w pierwszej kolumnie, aby filtrować, a następnie Filtruj.
Wybierz operatora do użycia i wartość, według której chcesz filtrować.
Możesz dodać więcej filtrów kolumn, klikając Dodaj filtr.
Filtr wpłynie tylko na istniejące dane przykładowe.
Sortowanie wyników
Próbkę danych można sortować według określonej kolumny.
-
Kliknij
na kolumnie, według której chcesz sortować, a następnie Sortuj rosnąco lub Sortuj malejąco.
Sortowanie wpłynie tylko na istniejące dane przykładowe. Jeżeli użyto filtru do uwzględniania tylko zamówień z 2024 roku i odwrócono kolejność sortowania, dane przykładowe będą nadal zawierać tylko zamówienia z 2024 roku.
Zarządzanie wyświetlanymi kolumnami
Możesz wybrać, które kolumny mają być wyświetlane w wynikach. Wybrany element nie jest zapisywany po zapisaniu transformacji.
-
Ukryj kolumnę, klikając
na kolumnie, a następnie Ukryj kolumnę.
-
Zarządzaj wyświetlaniem wszystkich kolumn, klikając
na dowolnej kolumnie, a następnie Wyświetlane kolumny.
Parametry
Kliknij Parametry, aby zmienić parametry w zapytaniu SELECT. Parametry należy zamapować na obiekty źródłowe lub docelowe.
Parametry są automatycznie mapowane, gdy:
-
Użyj Wygeneruj instrukcję Select w edytorze w Obiektach.
-
Kliknij >, aby przenieść nazwę zestawu danych lub kolumny do edytora.
-
Nazwa parametru pasuje do nazwy tabeli spośród tabel w Obiektach.
Możesz mapować do następujących obiektów
-
Struktury historii typu 2 (_history)
-
Obecne struktury
-
Obiekty docelowe
Obiekty docelowe można mapować tylko wtedy, gdy parametr jest zdefiniowany w makrze przyrostowym.
Metadane
Możesz edytować ustawienia metadanych w Metadata.
-
Ustaw klucze główne w kolumnie Klucz.
-
Określ, czy kolumna ma dopuszczać wartość null w kolumnie Nullowalne.
-
Wybierz kolumnę i kliknij Edytuj, aby ustawić nazwę kolumny, klucz, dopuszczalność wartość null i typ danych.
Uruchamianie zapytania
Możesz uruchomić zapytanie w dowolnym momencie podczas tworzenia, klikając Run query. Przy pierwszym uruchomieniu zapytania zostaną pobrane metadane. Po uruchomieniu zapytania możesz przejść do Metadata i ustawić klucz podstawowy, który jest wymagany do ukończenia transformacji.
Używanie makr w celu dostosowania zapytania do typu ładowania
Jeśli używane jest ładowanie przyrostowe, możesz użyć makr, aby dostosować zapytanie do wykonania, jeśli wykonywane jest ładowanie początkowe lub ładowanie przyrostowe.
Wybierz makro i dodaj zapytanie w odpowiedniej klauzuli.
-
Q_RUN_INCREMENTALdodaje klauzulę, w której można umieścić zapytanie wykonywane tylko wtedy, gdy będzie wykonywane ładowanie przyrostowe.
-
Q_RUN_INITIAL_LOAD dodaje klauzulę, w której można umieścić zapytanie wykonywane dopiero po wykonaniu początkowego ładowania.
Nie musisz podawać pełnego zapytania w każdym makrze. Możesz dostosować lub dodać kod w zależności od zastosowania.
Zastosowanie: filtr przyrostowy wykorzystujący zakres dat:
W tym przypadku zestaw danych dotyczących zamówień trzeba przekształcić za pomocą niestandardowego kodu SQL. Ponieważ jest to duży zestaw danych, należy uwzględnić filtrowanie przyrostowe, aby mieć pewność, że ładowanie przyrostowe będzie obejmować tylko zamówienia z ostatnich 12 godzin.
To jest zapytanie podstawowe:
To jest filtr do zastosowania podczas przebiegu przyrostowego, w którym uwzględniane są tylko zamówienia dodane w ciągu ostatnich 12 godzin:
To jest pełne zapytanie z użyciem makra filtrującego i nazwami tabel zastąpionymi notacją ${TABLE}:
Wynikiem tego jest początkowe zapytanie ładowania:
I zapytanie ładowania przyrostowego:
Zastosowanie: filtr przyrostowy przy użyciu danych w miejscu docelowym:
W tym przypadku zestaw danych dotyczących zamówień trzeba przekształcić za pomocą niestandardowego kodu SQL. Ponieważ zamówienia to duży zestaw danych, należy uwzględnić filtrowanie przyrostowe, aby mieć pewność, że ładowanie przyrostowe będzie obejmować rekordy szczegółów zamówień, które są nowsze niż dane w tabeli docelowej. Chcesz także zaznaczyć, czy wiersz został przetworzony przez ładowanie początkowe, czy ładowanie przyrostowe.
To jest zapytanie podstawowe:
Jest to filtr, który należy zastosować podczas przebiegu przyrostowego. „ORDERS_DERIVED” to nazwa docelowego zestawu danych.
To jest pełne zapytanie z użyciem makra filtrującego i nazwami tabel zastąpionymi notacją ${TABLE}. LOADED_BY ma wartość INIT, jeśli ładowanie jest początkowe, i INCR, jeśli ładowanie jest przyrostowe:
Wynikiem tego jest początkowe zapytanie ładowania:
I zapytanie ładowania przyrostowego:
Ustawienia
Kliknij , aby edytować ustawienia transformacji SQL.
W polu Nazwa wpisz nazwę docelowego zestawu danych.
W polu Opis możesz dodać dłuższy opis.
W sekcji Materializacja wybierz, czy przekształcony wynik powinien zostać zmaterializowany, czy nie. Możesz zdecydować się na dziedziczenie tego ustawienia z ustawień zadania danych.
-
Ustawienie Wł. spowoduje utworzenie tabel i obsługę powiązanego przetwarzania ELT.
-
Opcja Wył. spowoduje utworzenie widoków, które dokonują transformacji na bieżąco.
W polu Magazyn danych historycznych (typ 2) wybierz, czy chcesz przechowywać dane historyczne. Możesz zdecydować się na dziedziczenie tego ustawienia z ustawień zadania danych. To ustawienie wymaga, aby Materializacja była włączona.
Ładowanie przyrostowe pozwala dostosować zapytanie do przyrostowego ładowania danych przez zastosowanie filtrów lub innych warunków w celu zmniejszenia zestawu danych przetwarzanych za pomocą makr. Ładowanie przyrostowe jest dostępne tylko wtedy, gdy dane są materializowane w postaci tabel.
-
Kiedy ładowanie przyrostowe jest włączone
Pierwsze wykonanie zadania spowoduje wstępne załadowanie, wstawiając wszystkie wyniki zapytania do tabeli docelowej. Kolejne wykonania zadania będą dokonywać ładowań przyrostowych z wykorzystaniem filtrów lub określonych warunków zdefiniowanych dla przetwarzania przyrostowego. Podczas ładowania przyrostowego zadanie będzie przetwarzać dane jedynie w formie aktualizacji lub wstawiania, a usuwanie nie jest zarządzane.
-
Kiedy ładowanie przyrostowe jest wyłączone
Pierwsze wykonanie zadania spowoduje wstępne załadowanie, wstawiając wszystkie wyniki zapytania do tabeli docelowej. Kolejne wykonania będą przetwarzać wszystkie wyniki zapytania, porównując je z tabelą docelową i przetwarzając rekordy, które są nowe, zmienione lub usunięte.
Najlepsze praktyki
-
Gdy dodajesz transformację SQL, klucz główny nie jest definiowany automatycznie. Dodaj klucz do zestawu danych w zakładce Zestaw danych.
-
Nie twórz ręcznie nagłówków kolumn w przekształconych danych wyjściowych.
-
Unikaj używania SELECT z *, ponieważ może to powodować zwracanie różnych kolumn przy każdym uruchomieniu zapytania. Jeśli nastąpiła zmiana w schemacie, zmień odpowiednio zapytanie i ponownie wykonaj operację Opisz tabelę. Następnie możesz edytować kolumny i dostosowywać tabele.