Przewodniki po funkcjach

Studio projektowania

Studio projektowania to flagowa funkcja platformy DataFlow AI — wizualny, oparty na węzłach edytor, w którym budujesz potoki ETL/ELT dla majątku danych Polkomtela. Jego definiującą cechą jest edycja trójtrybowa: ten sam potok danych można edytować jako wizualny DAG, jako SQL lub jako Python, a wszystkie trzy tryby pozostają zsynchronizowane przez jedną kanoniczną definicję potoku w YAML.

Wizualne płótno DAG Studia projektowania
Studio projektowania w trybie wizualnym — płótno DAG React Flow z paletą komponentów po lewej, węzłami źródła / filtra / wyrażenia / celu połączonymi na płótnie oraz inspektorem właściwości po prawej.

Nowy tutaj? Zacznij od obrazu w prostym języku

Jeśli nigdy wcześniej nie budowałeś potoku danych, nie martw się — ta sekcja wyjaśnia wszystko od podstaw.

Czym jest potok danych? Potok danych to zautomatyzowany przepis na przenoszenie danych. Pobiera dane z jednego miejsca (powiedzmy bazy danych sprzedaży), porządkuje je i umieszcza gotowy wynik w jakimś użytecznym miejscu (powiedzmy w hurtowni raportowej). Gdy napiszesz przepis, platforma uruchamia go za Ciebie — co noc, co godzinę lub na żądanie — bez konieczności, by ktoś go nadzorował.

Czym jest ETL? ETL oznacza Extract, Transform, Load (wyodrębnij, przekształć, załaduj) — trzy rzeczy, które robi potok danych:

  • Extract — kopiuje surowe dane z systemu źródłowego.
  • Transform — czyści je, przekształca i łączy (usuwa złe wiersze, naprawia formaty, łączy tabele, ukrywa prywatne szczegóły).
  • Load — zapisuje gotowe dane w hurtowni docelowej, gdzie analitycy i pulpity mogą z nich korzystać.

Czym jest węzeł? Węzeł to jedna ramka na ekranie, która wykonuje jedno zadanie. Węzeł źródłowy wczytuje dane; węzeł transformacji je zmienia; węzeł docelowy (zwany też ujściem) je wypisuje. Budujesz potok danych, przeciągając te ramki na płótno i rysując strzałki między nimi.

Czym jest DAG? Kiedy łączysz węzły strzałkami, rysujesz DAG — skierowany graf acykliczny (Directed Acyclic Graph). „Skierowany" oznacza, że strzałki wskazują w jedną stronę (dane płyną do przodu, nigdy do tyłu). „Acykliczny" oznacza, że strzałki nigdy nie zapętlają się na siebie. W codziennych terminach: DAG to schemat blokowy dla Twoich danych, a platforma odmówi uruchomienia takiego, który zapętla się w kółko.

Pomyśl o całości jako o linii montażowej: dane wchodzą po lewej stronie, przechodzą przez stacje, z których każda wykonuje jedno zadanie, a gotowy produkt wychodzi po prawej stronie.

Nie musisz pisać kodu

Studio projektowania działa metodą przeciągnij i upuść. Możesz zbudować kompletny, gotowy do produkcji potok danych bez wpisywania ani jednej linii SQL lub Pythona. Tryby SQL i Python istnieją dla inżynierów, którzy wolą kod — ale są opcjonalne. Analityk biznesowy może zbudować wszystko wizualnie lub po prostu opisać, czego chce, AI Copilotowi i pozwolić mu naszkicować potok danych.


Co robi Studio projektowania

Studio projektowania pozwala skomponować potok danych jako skierowany graf acykliczny (DAG) węzłów — źródeł, transformacji, kontroli jakości i celów — połączonych krawędziami, które przenoszą dane. Cokolwiek zbudujesz, jest utrwalane jako natywna dla Git definicja YAML, więc każda akcja jest wersjonowalna. („YAML" to po prostu zwykły tekstowy format pliku, który rejestruje, co zawiera Twój potok danych — rzadko musisz na niego patrzeć, ale to właśnie on sprawia, że każda zmiana jest śledzalna i odwracalna.)

Trzy tryby edycji operują na tym jednym YAML-u:

  • Wizualny — płótno przeciągnij i upuść React Flow (xyflow).
  • SQL — edytor Monaco pokazujący potok danych jako połączone w łańcuch CTE.
  • Python — edytor Monaco pokazujący potok danych jako kod DataFlow SDK.

Edytuj w dowolnym trybie, a YAML się zaktualizuje; pozostałe dwa tryby ponownie wyprowadzają swoją reprezentację z niego.

Trasy: /design-studio (nowy potok), /design-studio?pipeline={id} (edycja), /design-studio?template={id} (utworzenie z szablonu). Plik wejściowy: src/pages/DesignStudio.tsx.

Kto z niego korzysta

PersonaJak go używa
Inżynier danychPełna moc — budowa DAG metodą przeciągnij i upuść, tryby SQL/Python, kontrola wdrożeń
Analityk biznesowyProwadzona, wspomagana AI budowa — często z szablonu lub poprzez AI Copilot

Układ ekranu

Studio projektowania to czteropanelowy obszar roboczy. Każdy panel jest skalowalny przez przeciągnięcie jego separatora, a rozmiary paneli są utrwalane do localStorage pod dataflow:studio:panels.

+==========================================================================+
| TOP TOOLBAR  [<] | Visual SQL Python | wf_SAP_Replika* | Validate Run Deploy|
+==========+===============================================+===============+
|          |                                               |               |
| LEFT     |              CENTER CANVAS                    |  RIGHT PANEL  |
| PANEL    |                                               |               |
|          |   React Flow DAG  (Visual mode)               |  Properties   |
| Component|        -- or --                               |  Inspector    |
| Palette  |   Monaco editor   (SQL / Python mode)          |  (selected    |
|          |                                               |   node config)|
| 240px    |              flex-1                           |   320px       |
+----------+-----------------------------------------------+---------------+
| BOTTOM PANEL   [Data Preview] [Console] [Test Results]   (collapsible)    |
+==========================================================================+
PanelRozmiar domyślnyPrzełącznik
Lewy — Paleta komponentów240px (200–400)Ctrl+B
Prawy — Inspektor właściwości320px (280–500)Ctrl+Shift+B
Dolny — Podgląd / Konsola240px (120–480)Ctrl+J
Środkowy — Płótno / Edytorflex-1

Podwójne kliknięcie separatora resetuje ten panel do rozmiaru domyślnego.


Górny pasek narzędzi

Pasek narzędzi jest podzielony na trzy sekcje.

+==========================================================================+
| [<] Back | [Visual][SQL][Python] | wf_SAP_Replika_l_BIURO... [*] [pencil] |
| [Undo][Redo][Zoom-][Zoom+][Fit]  | [Validate]  [Run v]  [Deploy v]  [...] |
+==========================================================================+
Element sterującyCo robi
Wstecz [<]Powraca do listy /pipelines
Przełącznik trybuPrzełącza między trybami Visual / SQL / Python
Nazwa potokuEdytowalna w miejscu; * oznacza niezapisane zmiany; plakietka statusu pokazuje wersję roboczą/aktywną/wstrzymaną/błąd
Cofnij / PonówPrzechodzi przez historię edycji (Ctrl+Z / Ctrl+Shift+Z)
Pomniejsz/Powiększ / Dopasuj widokElementy sterujące powiększeniem płótna
ValidateUruchamia walidację potoku; wyniki trafiają do dolnej karty Test Results
Run (przycisk dzielony)Uruchom / Uruchom od wybranego węzła / Uruchom z parametrami / Uruchomienie próbne
Deploy (przycisk dzielony)Wdrożenie do Dev / Staging / Prod
Menu ...Zapisz, Zapisz jako, Zatwierdź do Git, Eksportuj/Importuj YAML, Ustawienia potoku, Usuń

Paleta komponentów (lewy panel)

Paleta to przeszukiwalna biblioteka węzłów (Ctrl+K przenosi fokus na pole wyszukiwania) zorganizowana w pięć zwijanych kategorii. Każda pozycja pokazuje ikonę, etykietę, krótki opis oraz kolor kategorii.

KategoriaLiczbaPrzykłady
Sources14Teradata, Snowflake, Databricks, SAP HANA, MSSQL, Oracle, Sybase, PostgreSQL, Kafka, GCS, Excel, CSV, JSON, XML
Transforms12Filter, Expression, Aggregate, Join, Lookup, Sort, Union, Deduplicate, Pivot, Unpivot, Python UDF, SQL Transform
Targets14Ten sam zestaw konektorów co Sources — dwukierunkowy
Quality5Schema Validation, Null Check, Range Check, Format Check, Custom Rule
AI3AI Transform, AI Mapping, AI Suggestion

Wyszukiwanie filtruje według etykiety, opisu i nazwy kategorii. Obok pola wyszukiwania jest przycisk AI, który otwiera AI Copilot z kontekstem „Dodaj komponent do mojego potoku." Każdą pozycję palety można przeciągnąć na płótno lub kliknąć dwukrotnie, aby automatycznie umieścić ją poniżej ostatnio wybranego węzła.

Co robi każdy węzeł transformacji — w prostych słowach

Węzły transformacji to „stacje" na Twojej linii montażowej. Oto, do czego służy każdy z nich, wraz z codziennym przykładem.

TransformacjaCo robiRzeczywisty przykład
FilterZachowuje tylko wiersze pasujące do warunku; resztę odrzucaZachowaj tylko klientów, gdzie STATUS = 'ACTIVE', odrzuć konta testowe
ExpressionOblicza lub przeformatowuje kolumny, jeden wiersz na razDodaj kolumnę LOAD_DATE ustawioną na dzisiejszą datę; przekształć numer telefonu do standardowego formatu
AggregatePodsumowuje wiele wierszy w mniejszą liczbę wierszy („GROUP BY")Zamień miliony rekordów połączeń w jedną liczbę całkowitych minut na region
JoinŁączy dwa zbiory danych w jeden przez dopasowanie wspólnego kluczaDopasuj każdego klienta do jego rekordów rozliczeniowych za pomocą identyfikatora klienta
LookupWzbogaca każdy wiersz, wyszukując dodatkową wartość z innej tabeliDodaj nazwę regionu do każdej sprzedaży, wyszukując kod pocztowy sklepu
SortZmienia kolejność wierszy według jednej lub więcej kolumnPosortuj zamówienia od najnowszych według daty zamówienia
UnionUkłada wiersze z kilku zbiorów danych jeden na drugimPołącz sprzedaż tegoroczną i zeszłoroczną w jedną tabelę
DeduplicateUsuwa zduplikowane wiersze, tak aby każdy pojawiał się tylko razUsuń tego samego klienta wprowadzonego dwukrotnie
Pivot / UnpivotObraca tabelę — zamienia wiersze w kolumny lub kolumny w wierszeZamień 12 wierszy miesięcznych sum w jeden wiersz z 12 kolumnami miesięcy
Python UDFUruchamia Twój własny kod Pythona dla logiki, której wbudowane węzły nie mogą wyrazićUruchom model uczenia maszynowego oceniający odejście dla każdego klienta
SQL TransformUruchamia ręcznie napisaną instrukcję SQL względem danych z poprzedzających węzłówZłożone obliczenie wielotabelowe, które wolisz wyrazić w SQL

Węzły jakości (Schema Validation, Null Check, Range Check, Format Check, Custom Rule) nie zmieniają danych — one je kontrolują i podnoszą flagę, jeśli coś jest nie tak. Umieszczenie jednego zaraz po węźle źródłowym to dobry nawyk: wyłapuje złe dane, zanim rozprzestrzenią się przez resztę Twojego potoku.


Płótno (tryb wizualny)

Środkowe płótno to edytor DAG React Flow.

FunkcjaSzczegół
PrzesuwaniePrzeciągnij puste płótno
PowiększenieKółko przewijania lub Ctrl+= / Ctrl+-, zakres 25%–200%
Wielokrotny wybórShift+klik lub zaznaczenie gumką
Przyciąganie do siatkiSiatka 20px, przełączana z paska narzędzi
MinimapaPrawy dolny róg
Automatyczny układUkład Dagre od góry do dołu
Menu kontekstoweKliknięcie prawym przyciskiem na płótnie lub na węźle

System projektowania węzłów

Węzły mają szerokość 220px i są oznaczone kolorem według kategorii:

KategoriaKolorPlakietka
SourcesNiebieskiSRC
TransformsFioletowyTRF
TargetsPomarańczowyTGT
QualitySzmaragdowyQA
AIBursztynowyAI

Każdy węzeł niesie 8-pikselową kropkę statusu (lewy górny róg), plakietkę kategorii (prawy górny róg) oraz plakietkę liczby wierszy (na dole). Stany węzła: bezczynny, wybrany (3-pikselowa ramka + pierścień poświaty), najechany, uruchomiony (pulsująca ramka), sukces (zielony znak wyboru), błąd (czerwona ramka + poświata) oraz wyłączony (50% przezroczystości z paskowaną nakładką).

Porty to 12-pikselowe kółka — wejścia na górnej krawędzi, wyjścia na dolnej krawędzi. Podczas przeciągania połączenia prawidłowe porty docelowe zmieniają kolor na niebieski i powiększają się; nieprawidłowe porty zmieniają kolor na czerwony.

Krawędzie używają stylu smoothstep, animują się podczas uruchomień i wyświetlają pigułkę z liczbą wierszy w swoim punkcie środkowym. Najechanie na krawędź pokazuje X usuwania.

Potok ze źródłem SAP HANA otwarty w Studiu projektowania
Rzeczywisty potok — wf_SAP_Replika — otwarty w Studiu projektowania. DAG zaczyna się węzłem źródłowym SAP HANA, przechodzi przez transformację filtra i wyrażenia oraz ląduje w celu Teradata, z każdym węzłem oznaczonym kolorem według kategorii.

Inspektor właściwości (prawy panel)

Gdy węzeł jest wybrany, prawy panel pokazuje cztery karty.

KartaZawartość
GeneralPola konfiguracji specyficzne dla typu (połączenie, schemat, tabela, tryb zapisu itd.)
SchemaTabela kolumn wyjściowych węzła, z elementami sterującymi Infer Schema / Edit Schema / dodaj kolumnę
PreviewKompaktowy podgląd 20 wierszy danych wyjściowych węzła
AdvancedIdentyfikator węzła, silnik wykonawczy, równoległość, limit czasu, liczba ponowień/opóźnienie, obsługa błędów, właściwości niestandardowe, tagi, notatki

Na przykład karta General źródła SAP HANA zawiera Display Name, Connection, Schema, Table/View, opcjonalny Custom SQL, Extract Mode (full / incremental / cdc), Watermark Column oraz Fetch Size. Cel Teradata dodaje Write Mode (insert / upsert / merge / replace / append), Key Columns, Pre-SQL/Post-SQL oraz Batch Size.

Gdy żaden węzeł nie jest wybrany, panel zaprasza do wybrania węzła lub otwarcia Ustawień potoku.

Panel konfiguracji Inspektora właściwości dla wybranego węzła
Inspektor właściwości dla wybranego węzła. Karta General udostępnia konfigurację specyficzną dla typu — połączenie, schemat, tabelę, tryb wyodrębniania i kolumnę znacznika wodnego — a karty Schema, Preview i Advanced obsługują kolumny wyjściowe, podgląd 20 wierszy danych oraz ustawienia wykonania.

Dolny panel

Zwijany panel (Ctrl+J) z trzema kartami:

KartaZawartość
Data PreviewWirtualizowana tabela TanStack z przykładowymi wierszami w wybranym węźle
ConsoleStrumień dzienników oznaczony kolorami — INFO szary, WARN bursztynowy, ERROR czerwony, OK zielony
Test ResultsLista PASS/FAIL na każdą kontrolę walidacji, z elementem ponownego uruchomienia

Edytor SQL

Przełączenie na tryb SQL zastępuje płótno edytorem Monaco. Potok danych jest renderowany jako seria połączonych w łańcuch CTE:

-- Pipeline: wf_SAP_Replika_l_BIURO_SPRZEDAZY_PLK
-- Dialect: Teradata

WITH source_sap_hana AS (
    SELECT * FROM sap_hana_plk.BIURO_SPRZEDAZY
),
filtered AS (
    SELECT * FROM source_sap_hana WHERE STATUS = 'ACTIVE'
),
enriched AS (
    SELECT *,
           CURRENT_TIMESTAMP AS LOAD_DATE,
           'SAP_HANA_PLK' AS SOURCE_SYSTEM
    FROM filtered
)
INSERT INTO teradata_dwh_mona.STG_BIURO_SPRZEDAZY_PLK
SELECT * FROM enriched;

Pasek narzędzi edytora SQL udostępnia listę rozwijaną Dialect (ANSI, Teradata, Snowflake, Databricks, PostgreSQL, MSSQL) oraz przyciski Format, Validate i Explain. IntelliSense automatycznie uzupełnia tabele, kolumny i funkcje specyficzne dla dialektu; AI Copilot oferuje szare sugestie w postaci tekstu-widma, które akceptujesz klawiszem Tab.


Edytor Python

Przełączenie na tryb Python pokazuje potok danych jako kod DataFlow SDK:

from dataflow import Pipeline
from dataflow.connectors import SAPHana, Teradata
from dataflow.transforms import Filter, Expression

pipeline = Pipeline(name="wf_SAP_Replika_l_BIURO_SPRZEDAZY_PLK",
                    schedule="0 */2 * * *")

source = pipeline.add_source(
    SAPHana(connection="sap_hana_plk", schema="BIURO_SPRZEDAZY",
            mode="incremental", watermark_column="LAST_MODIFIED"))

filtered = source.pipe(Filter(condition="STATUS = 'ACTIVE'"))
enriched = filtered.pipe(Expression(columns={
    "LOAD_DATE": "CURRENT_TIMESTAMP",
    "SOURCE_SYSTEM": "'SAP_HANA_PLK'"}))

enriched.write_to(Teradata(connection="teradata_dwh_mona",
                           table="STG_BIURO_SPRZEDAZY_PLK",
                           mode="merge", keys=["ID"], push_down=True))

Pasek narzędzi edytora Python oferuje Format (reguły Black), Lint i Run Cell, a także autouzupełnianie DataFlow SDK oraz sugestie AI w postaci tekstu-widma.


Przewodnik — zbuduj swój pierwszy potok, krok po kroku

To kompletny, przyjazny dla początkujących przewodnik. Cel: zbudować potok, który kopiuje dane sprzedaży z SAP HANA do hurtowni Teradata, odrzucając wiersze testowe i stemplując każdy wiersz datą załadowania. Wykonuj go kliknięcie po kliknięciu — zajmuje to około dziesięciu minut.

Zanim zaczniesz: potwierdź, że administrator obszaru roboczego zarejestrował już potrzebne Ci połączenia (tutaj połączenie źródłowe SAP HANA i połączenie docelowe Teradata). Połączenie to zapisane, wielokrotnie używalne logowanie do systemu zewnętrznego. Jeśli połączenia brakuje, zapytaj administratora — nie możesz tworzyć połączeń ze Studia projektowania.

  1. Otwórz Studio projektowania. Na pulpicie głównym kliknij Nowy potok w pasku szybkich akcji. Otwiera się puste płótno.
  2. Nazwij potok. Kliknij nazwę potoku w górnym pasku narzędzi (zaczyna się jako „Untitled") i wpisz jasną nazwę, na przykład wf_Sales_Daily_Load. Jasne nazwy znacznie ułatwiają późniejsze rozwiązywanie problemów.
  3. Dodaj źródło. W lewej Palecie komponentów otwórz kategorię Sources, znajdź SAP HANA i przeciągnij ją na płótno. Pojawia się niebieska ramka.
  4. Skonfiguruj źródło. Z wybranym węzłem SAP HANA spójrz na prawy Inspektor właściwości → kartę General. Wybierz Connection z listy rozwijanej, wybierz Schema i Table (na przykład BIURO_SPRZEDAZY) i ustaw Extract Mode na incremental, aby potok pobierał tylko nowe wiersze przy każdym uruchomieniu, zamiast ponownie odczytywać wszystko.
  5. Dodaj filtr. Z kategorii Transforms palety przeciągnij węzeł Filter na płótno, na prawo od źródła.
  6. Połącz źródło z filtrem. Najedź na dolną krawędź węzła SAP HANA, aż pojawi się małe kółko (port wyjściowy). Kliknij i przeciągnij od tego kółka do portu wejściowego na górnej krawędzi węzła Filter. Strzałka wskakuje na miejsce — dane teraz płyną ze źródła do filtra.
  7. Skonfiguruj filtr. Wybierz węzeł Filter i w karcie General wpisz warunek STATUS = 'ACTIVE'. To zachowuje sprzedaż na żywo i odrzuca wiersze testowe.
  8. Dodaj wyrażenie. Przeciągnij węzeł Expression na prawo od filtra i połącz Filter → Expression w ten sam sposób. W jego karcie General dodaj nową kolumnę o nazwie LOAD_DATE z wartością CURRENT_TIMESTAMP. Każdy wiersz będzie teraz nosił chwilę, w której został załadowany.
  9. Dodaj cel. Z kategorii Targets przeciągnij węzeł Teradata na płótno i połącz Expression → Teradata.
  10. Skonfiguruj cel. Wybierz węzeł Teradata. Wybierz Connection, ustaw docelową Table i wybierz Write Mode — wybierz upsert dla codziennego załadowania (aktualizuje wiersze, które już istnieją, i wstawia nowe). Ustaw Key Columns (na przykład ID), aby platforma wiedziała, jak dopasować istniejące wiersze.
  11. Zwaliduj. Kliknij Validate w pasku narzędzi. Dolna karta Test Results wymienia wszelkie problemy — brakujące wymagane pole, rozłączony węzeł lub niezgodność schematu. Napraw wszystko oznaczone na czerwono.
  12. Podejrzyj dane. Kliknij prawym przyciskiem dowolny węzeł i wybierz Preview Data, aby zobaczyć do 20 przykładowych wierszy w tym punkcie potoku. To najszybszy sposób na potwierdzenie, że Filter lub Expression robi to, czego oczekujesz.
  13. Uruchom go raz. Kliknij Run. Pojawia się nakładka wykonania, węzły animują się, a karta Console strumieniuje linie dziennika na żywo. Poczekaj, aż każdy węzeł zmieni kolor na zielony.
  14. Zaplanuj go. Otwórz menu ...Pipeline Settings i ustaw harmonogram, na przykład 0 2 * * * (codziennie o 2:00). Zobacz tabelę cron w sekcji FAQ poniżej, jeśli wyrażenia cron są dla Ciebie nowe.
  15. Wdróż. Kliknij Deploy i wybierz środowisko — zacznij od Dev, a następnie awansuj do Staging i Prod, gdy mu zaufasz. Harmonogram staje się aktywny dopiero po wdrożeniu potoku.

To wszystko — zbudowałeś, przetestowałeś, zaplanowałeś i wdrożyłeś działający potok.

Automatyczny zapis ma Twoje plecy

Studio projektowania automatycznie zapisuje Twoją pracę co 30 sekund, a Twoja sesja logowania trwa 8 godzin. Nie utracisz na wpół zbudowanego potoku, jeśli przeglądarka się zamknie — ale i tak kliknij Save (Ctrl+S), zanim odejdziesz.


Ścieżki kliknięć

Zbuduj potok wizualnie

  1. Otwórz Studio projektowania (np. poprzez Nowy potok na pulpicie głównym).
  2. Z lewej Palety komponentów przeciągnij węzeł źródłowy — powiedzmy Teradata — na płótno. (Lub kliknij go dwukrotnie, aby automatycznie umieścić.)
  3. Przeciągnij od portu wyjściowego węzła źródłowego do portu wejściowego węzła transformacji, aby utworzyć krawędź.
  4. Wybierz każdy węzeł i skonfiguruj go w karcie General prawego panelu.
  5. Przeciągnij węzeł Target na płótno i połącz ostatnią transformację z nim.
  6. Kliknij Validate w pasku narzędzi — wyniki pojawiają się w dolnej karcie Test Results.
  7. Kliknij Run — pojawia się nakładka wykonania, statusy węzłów animują się, a karta Console strumieniuje dzienniki.
  8. Gdy uruchomienie się powiedzie, kliknij Deploy → Deploy to Staging.

Napisz potok SQL

  1. W pasku narzędzi kliknij SQL w przełączniku trybu — płótno staje się edytorem Monaco.
  2. Wybierz docelowy Dialect (np. Teradata) z listy rozwijanej.
  3. Napisz lub edytuj SQL z połączonymi w łańcuch CTE; akceptuj sugestie AI w postaci tekstu-widma klawiszem Tab.
  4. Kliknij Format, aby znormalizować SQL, a następnie Validate, aby sprawdzić składnię względem systemów docelowych.
  5. Opcjonalnie kliknij Explain, aby wyświetlić szacowany plan wykonania.
  6. Przełącz z powrotem na tryb Visual w dowolnym momencie — DAG ponownie wyprowadza się z Twojego SQL.

Zaplanuj potok

  1. Mając otwarty potok, kliknij menu ... w pasku narzędzi.
  2. Wybierz Pipeline Settings.
  3. Ustaw harmonogram (wyrażenie cron, np. 0 */2 * * * dla co dwie godziny).
  4. Zapisz potok (Ctrl+S lub ...Save).
  5. Kliknij Deploy i wybierz środowisko docelowe — harmonogram staje się aktywny po wdrożeniu potoku.

Sprawdź dane w węźle

  1. Kliknij prawym przyciskiem dowolny węzeł na płótnie.
  2. Wybierz Preview Data.
  3. Dolny panel otwiera się na karcie Data Preview z przykładowymi wierszami i profilowaniem dla tego węzła.

Utwórz potok z szablonu

  1. Otwórz galerię szablonów potoków i kliknij Use Template na karcie.
  2. Trafiasz na /design-studio?template={id} ze Studiem wstępnie wypełnionym tym szablonem.
  3. Dostosuj połączenia i konfigurację, a następnie wykonaj Validate, Run i Deploy.

Trzy tryby nigdy się nie rozchodzą

Ponieważ tryby Visual, SQL i Python wyprowadzają się z jednej kanonicznej definicji YAML, możesz płynnie przechodzić między nimi. Zmiana w dowolnym trybie aktualizuje YAML; pozostałe tryby renderują się ponownie z niego przy następnym przełączeniu.


Wskazówki i dobre praktyki

Kilka nawyków sprawia, że potoki są niezawodne, tanie i łatwe do debugowania.

  • Jeden potok, jedno zadanie. Utrzymuj każdy potok skoncentrowany na pojedynczym logicznym zadaniu. Unikaj „megapotoków" z 50+ węzłami — podziel pracę na mniejsze potoki, które przekazują sobie dane przez tabele pomostowe. Płótno pozostaje płynne do około 100 węzłów, ale mniejsze jest łatwiejsze do ogarnięcia.
  • Zawsze ładuj przyrostowo. Ustaw węzły źródłowe w tryb incremental i dodaj filtr daty, aby każde uruchomienie pobierało tylko nowe wiersze. Ponowne skanowanie ogromnej tabeli co noc jest wolne i kosztowne.
  • Dodaj bramkę jakości wcześnie. Umieść węzeł jakości (taki jak Null Check) zaraz po źródle. Wyłapanie złych danych przy drzwiach powstrzymuje ich zanieczyszczanie wszystkiego w dół potoku.
  • Nazywaj węzły jasno. src_sap_crm_customers mówi Ci znacznie więcej w pliku dziennika niż source1. Dobre nazwy sprawiają też, że diagnostyka AI Copilota jest ostrzejsza.
  • Nigdy nie zaszywaj wartości na sztywno. Używaj parametrów potoku dla dat, nazw tabel i różnic między środowiskami, zamiast wpisywać je w wyrażeniach.
  • Ustaw realistyczny limit czasu. W Pipeline Settings ustaw limit czasu na mniej więcej dwukrotność oczekiwanego czasu uruchomienia, aby naprawdę zacięte uruchomienie zostało automatycznie anulowane, ale normalna wolna noc nie.
  • Testuj przed zaplanowaniem. Uruchom potok ręcznie co najmniej raz i sprawdź liczbę wierszy wyjściowych oraz próbkę tabeli docelowej przed włączeniem harmonogramu cron.
  • Waliduj przed wdrożeniem. Traktuj przycisk Validate jako obowiązkowy — a Uruchomienie próbne jako dobry pomysł — przed awansowaniem do Staging lub Prod.

Częste pytania

Czy muszę znać SQL, aby korzystać ze Studia projektowania? Nie. Wizualny tryb przeciągnij i upuść buduje kompletne potoki bez kodu. Tryby SQL i Python to opcjonalne udogodnienia dla inżynierów, którzy je preferują.

Co oznacza „trójtrybowy"? Ten sam potok można edytować na trzy sposoby — jako diagram wizualny, jako SQL lub jako Python — i wszystkie trzy zawsze się zgadzają, ponieważ są różnymi widokami jednej definicji bazowej. Edytuj w trybie, który pasuje do zadania; przełączaj swobodnie.

Czym jest „tryb zapisu" i który wybrać? Tryb zapisu mówi celowi, jak dodać Twoje dane:

Tryb zapisuCo robiKiedy go używać
append / insertDodaje nowe wiersze obok istniejącychDzienniki zdarzeń, gdzie wiersze nigdy nie są aktualizowane
overwrite / replaceUsuwa wszystko, a następnie zapisuje od nowaMałe tabele referencyjne przebudowywane przy każdym uruchomieniu
upsert / mergeAktualizuje wiersze, które już istnieją, wstawia noweZwykły wybór dla codziennych załadowań hurtowni

Jak zaplanować potok i czym jest wyrażenie cron? Wyrażenie cron to pięciopolowy kod, który mówi „uruchom według tego harmonogramu". Otwórz Pipeline Settings → Schedule i wprowadź jedno:

Wyrażenie cronZnaczenie
0 2 * * *Codziennie o 02:00
0 6 * * 1-5W dni robocze o 06:00
0 0 1 * *1. dnia każdego miesiąca o północy
0 */4 * * *Co 4 godziny
30 8,20 * * *O 08:30 i 20:30 codziennie

Domyślną strefą czasową jest Europe/Warsaw, a polskie święta państwowe można ustawić jako dni wykluczenia, aby uruchomienie je pomijało.

Mój potok zapisał się, ale przycisk Run jest wyszarzony — dlaczego? Możesz zapisać potok, który nadal ma błędy walidacji, ale nie możesz go uruchomić, dopóki nie zostaną naprawione. Kliknij Validate i rozwiąż każdy czerwony znacznik w karcie Test Results.

Czy dwie osoby mogą edytować ten sam potok jednocześnie? Tak — płótno obsługuje współpracującą edycję w czasie rzeczywistym, więc widzicie swoje zmiany na żywo.

Jak cofnąć błąd? Naciśnij Ctrl+Z (cofnij) lub Ctrl+Shift+Z (ponów). Studio przechowuje głęboką historię edycji. Dla starszych wersji użyj menu ... → historia wersji, aby porównać i przywrócić.

Gdzie trafia mój potok, gdy go zapisuję? Do repozytorium kontroli wersji Git jako plik YAML. Każdy zapis jest śledzoną zmianą, więc zawsze możesz zobaczyć, co się zmieniło, i cofnąć się.


Za kulisami

ZagadnienieAPI / moduł
CRUD i uruchamianie potokuapi/pipelines.ts (PipelineDto)
Wsparcie AIapi/textToSql.ts, api/copilot.ts
Wnioskowanie schematu i autouzupełnianieapi/catalog.ts (usługa metadanych)
Kontrola wersjiapi/git.ts — YAML jest utrwaloną formą kanoniczną

Waliduj przed wdrożeniem

Przycisk Deploy awansuje potok do prawdziwego środowiska. Zawsze najpierw uruchom Validate (a najlepiej Uruchomienie próbne), aby błędy połączeń, schematu i reguł jakości pojawiły się w karcie Test Results, zanim dotrą do Staging lub Prod.

Poprzednia
Pulpit główny