Table Upsert (krok)
Łączy wstawianie i aktualizację w jednej operacji, opartej na jednej lub wielu kolumnach wskazanych jako klucz dopasowania. Dla każdego wiersza źródła: jeśli w tabeli docelowej istnieje pasujący wiersz (te same wartości klucza), zostaje zaktualizowany; w przeciwnym razie wstawiany jest nowy wiersz.
Użyj tego, gdy masz przyrostowy strumień danych zawierający zarówno nowe rekordy, jak i zmiany istniejących — aktualizacje sprzedaży, zmiany rekordów pracowników lub dowolny scenariusz „zawsze odzwierciedlaj najnowszy stan”. Kolumny dopasowania wybieraj ostrożnie: wiersze o tych samych wartościach klucza, ale różniące się w pozostałych, zostaną nadpisane, więc zły wybór klucza może po cichu uszkodzić dane.
Parametry upsert
Dział zatytułowany „Parametry upsert”
Aby ustalić tabelę źródłową i docelową, najpierw wybierz tabelę danych, z której mają być wyodrębniane dane, z listy rozwijanej Tabela źródłowa. Następnie wybierz istniejącą tabelę jako tabelę docelową z listy rozwijanej Tabela docelowa.
Wybór danych tabeli źródłowej
Dział zatytułowany „Wybór danych tabeli źródłowej”
Data Mapper służy do mapowania kolumn z danych źródłowych na docelową tabelę danych.
Sprawdzanie i wypełnianie mappera
Dział zatytułowany „Sprawdzanie i wypełnianie mappera”Przycisk menu Sprawdź źródło udostępnia dodatkowe sposoby mapowania kolumn ze źródła na cel:
- Wypełnij obie tabele mapowania: Propaguje wszystkie wartości z źródłowej tabeli danych do docelowej tabeli danych. Dzieje się tak domyślnie.
- Wypełnij tylko tabelę mapowania źródła: Mapuje wyłącznie wszystkie wartości w źródłowej tabeli danych. Jest to przydatne przy modyfikowaniu istniejącego przepływu pracy, gdy zmieniła się struktura kolumn źródła.
- Wypełnij tylko tabelę mapowania celu: Propaguje wszystkie wartości wyłącznie do docelowej tabeli danych.
Jeśli opcje kolumn źródłowych i docelowych nie wystarczają, do docelowej tabeli danych można dodać kolumny na kilka sposobów:
- Propaguj wszystko wstawi wszystkie kolumny źródłowe do docelowej tabeli danych, niezależnie od tego, czy już istniały.
- Propaguj zaznaczone wstawi tylko zaznaczone kolumny źródłowe.
- Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Wstaw wiersz, aby wstawić wiersz bezpośrednio nad aktualnie zaznaczonym wierszem.
- Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Dołącz wiersz, aby wstawić wiersz na dole (z prawej strony) docelowej tabeli danych.
Usuwanie kolumn
Dział zatytułowany „Usuwanie kolumn”Aby usunąć kolumny z docelowej tabeli danych, zaznacz wybrane kolumny, następnie kliknij prawym przyciskiem myszy i wybierz Usuń.
Zmiana kolejności kolumn
Dział zatytułowany „Zmiana kolejności kolumn”Aby zmienić kolejność kolumn w docelowej tabeli danych, zaznacz wybrane kolumny. Możesz użyć jednej z opcji:
- Strzałki przenoszenia zbiorczego: wybierz żądaną opcję przenoszenia za pomocą strzałek w prawym górnym rogu
- Menu kontekstowe: kliknij prawym przyciskiem myszy i wybierz Przenieś na początek, Przenieś w górę, Przenieś w dół lub Przenieś na koniec.
Ograniczanie wyniku wyłącznie do unikalnych rekordów
Dział zatytułowany „Ograniczanie wyniku wyłącznie do unikalnych rekordów”Aby zwrócić tylko unikalne opcje, wybierz opcję menu Unikalne. Spowoduje to wyświetlenie zestawu pól wyboru dla każdej kolumny źródła. Wystarczy zaznaczyć pole obok odpowiedniej kolumny, aby zwrócić tylko unikalne wyniki.
W zależności od sytuacji warto rozważyć użycie podsumowania.
Proces wyboru unikalnych rekordów zachowuje pierwszy znaleziony unikalny rekord, a pozostałe odrzuca. Jeśli ważna jest spójność między uruchomieniami, warto zastosować sortowanie danych.
Klucz aktualizacji
Dział zatytułowany „Klucz aktualizacji”Siatka kolumn docelowych ma kolumnę Klucz aktualizacji, tuż za nazwą kolumny docelowej. Zaznacz ją przy kolumnach, które razem identyfikują wiersz: wiersz źródłowy, którego wartości klucza pasują do wiersza już istniejącego w tabeli docelowej, aktualizuje ten wiersz, a każdy inny wiersz źródłowy jest wstawiany.
Każda kolumna jest domyślnie zaznaczona, więc odznacz kolumny, które nie są częścią klucza. Kolumna bez ustawienia klucza aktualizacji — dodana właśnie przez wypełnienie lub zapisana przez API bez niego — jest traktowana jako klucz. Co najmniej jedna kolumna musi pozostać zaznaczona.
Filtry danych źródłowych
Dział zatytułowany „Filtry danych źródłowych”
Aby zapewnić maksymalną elastyczność, filtry danych są dostępne zarówno dla danych źródłowych, jak i docelowych. W przypadku większych zbiorów danych szczególnie korzystne może być odfiltrowanie wierszy już na źródle, aby pozostałe operacje były wykonywane na mniejszym zbiorze danych.
Wybierz podzbiór danych
Ten typ filtru umożliwia filtrowanie przychodzących danych źródłowych na podstawie określonych warunków.
Zastosuj filtr wtórny do danych wynikowych
Ten typ filtru umożliwia zastosowanie filtru do danych wynikowych po transformacji na podstawie określonych warunków. Możliwość zastosowania filtru do wyniku po transformacji pozwala na wykluczenia oparte na wynikach złożonych obliczeń, podsumowań lub funkcji okienkowych.
Końcowe wycinanie tabeli danych (limit)
Wycinanie wierszy umożliwia ograniczenie liczby wierszy w zbiorze wynikowym na podstawie zakresu i punktu początkowego.
Składnia filtrów
Składnia filtrów korzysta z Python SQLAlchemy, czyli tej samej składni, która obowiązuje w innych wyrażeniach.
Przykłady i funkcje wyrażeń znajdziesz w obszarze Wyrażenia.
Co jest sprawdzane przy zapisie
Dział zatytułowany „Co jest sprawdzane przy zapisie”- Co najmniej jeden klucz aktualizacji. W przeciwnym razie zapis jest odrzucany z komunikatem At least one target column must be marked as Update Key.
- Mapowanie zgadza się z istniejącą tabelą docelową. Gdy tabela docelowa już istnieje, krok musi zmapować każdą z jej kolumn, nie mapować żadnej kolumny, której tabela nie ma, i nadać każdej kolumnie typ tabeli, aby upsert nie mógł usunąć kolumny tabeli wraz z danymi ani zmienić typu kolumny. Typy liczbowy i walutowy są traktowane jako ten sam typ. Odrzucenie wymienia każdą różnicę, na przykład The target columns must match the existing target table ‘customers’. The table has columns the step doesn’t map: region. Tabela docelowa, która jeszcze nie istnieje, lub nazwana za pomocą zmiennej, jest sprawdzana podczas uruchomienia kroku.
- Puste mapowanie jest uzupełniane za Ciebie. Zapis z wybraną tabelą źródłową, ale bez kolumn źródłowych lub docelowych, uzupełnia pustą stronę na podstawie źródła, tak jak zrobiłoby to Wypełnij obie tabele mapowania.