Translation not up to date
The translation of this page does not represent the latest version. For the latest updates, see the English version of the documentation.
Last updated: 04 lip 2023
Początkowe fragmenty przepływu prowadzące z węzłów importowania danych są głównymi celami dla generowania kodu SQL. W przypadku napotkania węzła, którego nie można skompilować do języka SQL, dane są wyodrębniane z bazy danych, a następnie wykonywane jest przetwarzanie.
Podczas przygotowywania przepływu i przed jego uruchomieniem proces generowania kodu SQL odbywa się w następujący sposób:
- Zmiana kolejności oprogramowania przepływa do kolejnych węzłów w "strefie SQL", w której można je bezpiecznie wykonać.
- Praca z węzłów importu w kierunku węzłów końcowych powoduje, że wyrażenia SQL są konstruowane przyrostowo. Ta faza jest zatrzymana w przypadku napotkania węzła, który nie może zostać przekształcony w kod SQL lub gdy węzeł końcowy (na przykład węzeł tabeli lub węzeł wykresu) jest przekształcany w kod SQL. Na końcu tej fazy każdy węzeł jest oznaczany etykietą z instrukcją SQL, jeśli węzeł i jego poprzedzające elementy mają równoważny kod SQL.
- Praca z węzłów o najbardziej skomplikowanych odpowiednikach SQL z powrotem w kierunku węzłów importu, SQL jest sprawdzana pod względem ważności. Kod SQL, który został pomyślnie sprawdzony zostaje wybrany do wykonania.
- Węzły, dla których wszystkie operacje wygenerowały kod SQL, są podświetlone ikoną SQL umieszczoną obok węzła na kanwie przepływu. W zależności od wyników użytkownik może chcieć dalej reorganizować przepływ, tam gdzie jest to właściwe, aby w pełni wykorzystać możliwości wykonania bazy danych.
Gdzie występują ulepszenia?
SQL pushback poprawia wydajność w wielu operacjach na danych:
- Łączenia (scalanie według klucza). Operacje łączenia mogą zwiększyć optymalizację w bazach danych.
- Agregacja. Węzły agregacji, rozkładu i sieciowy używają agregacji do opracowania wyników. Podsumowane dane używają znacznie mniej pasma niż oryginalne dane.
- Wybór. Wybór rekordów na podstawie określonych kryteriów ogranicza liczbę rekordów.
- Sortowanie. Sortowanie rekordów zużywa dużo zasobów i jest wykonywane bardziej wydajnie w bazie danych.
- Wyprowadzanie pól. Nowe zmienne są generowane wydajniej w bazie danych.
- Rzutowanie pola. Oprogramowanie wyodrębnia tylko te pola, które są wymagane do późniejszego przetwarzania z bazy danych, co minimalizuje wymagania dotyczące przepustowości i pamięci. Podobnie jest w przypadku zbędnych pól w plikach tekstowych: chociaż oprogramowanie musi czytać zbędne pola, to nie przydziela im żadnej pamięci.
- Ocenianie. Kod SQL można wygenerować na podstawie drzew decyzyjnych, zestawów reguł, regresji liniowej oraz modeli wygenerowanych na podstawie czynników.