Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A CREATE FLOW utasítással folyamatokat vagy visszatöltéseket hozhat létre egy csővezeték tábláihoz.
Szemantika
CREATE FLOW flow_name [COMMENT comment] AS
{
AUTO CDC INTO target_table create_auto_cdc_flow_spec |
INSERT INTO [ONCE] target_table BY NAME query
}
Paraméterek
flow_name
A létrehozandó folyamat neve.
MEGJEGYZÉS
A folyamat opcionális leírása.
-
Egy
AUTO CDC ... INTOutasítás, amely meghatározza a folyamatot egycreate_auto_cdc_flow_spec. Tartalmaznia kell vagy egyAUTO CDC ... INTOutasítást, vagy egyINSERT INTOutasítást. Akkor használhatóAUTO CDC ... INTO, ha a forrás lekérdezés változásadat-szemantikát használ.További információ: AUTO CDC INTO (adattovábbítási csatornák).
target_table
A frissíteni kívánt táblázat. Ennek streamelésre alkalmas táblának kell lennie.
INSERT BE
A céltáblába való beszúrásra szánt táblalekérdezést definiál. Ha a
ONCEbeállítás nincs megadva, a lekérdezésnek streamelési lekérdezésnek kell lennie. A STREAM kulcsszóval stream-szemantikát használhat a forrásból való olvasáshoz. Ha az olvasás egy meglévő rekord módosítását vagy törlését tapasztalja, hibaüzenet jelenik meg. A legbiztonságosabb, ha statikus vagy csak hozzáfűző forrásokból olvas. A módosítási véglegesítéseket tartalmazó adatok betöltéséhez használhatja a Pythont és aSkipChangeCommitshibák kezelésére szolgáló lehetőséget.INSERT INTOkölcsönösen kizárja aAUTO CDC ... INTO. Akkor használhatóAUTO CDC ... INTO, ha a forrásadatok módosítási adatrögzítési (CDC) funkciót tartalmaznak. AINSERT INTOelemet akkor használja, ha a forrásban nem szerepel.További információért az adatfolyamokról, tekintse meg a Folyamatokkal történő adatátalakítást.
EGYSZER
Igény szerint a folyamatot egyszeri folyamatként, például visszatöltésként definiálhatja. A
ONCEhasználata kétféleképpen változtatja meg a folyamatot:- A forrás
queryvagycreate_auto_cdc_flow_specnem egy folyamatos tábla. - A folyamat alapértelmezés szerint egyszer fut. Ha a folyamat teljes frissítéssel frissül, a
ONCEfolyamat újrafut az adatok újbóli létrehozásához.
- A forrás
Példák
-- EXAMPLE 1:
-- Create a streaming table, and add two flows that append data to it:
CREATE OR REFRESH STREAMING TABLE users;
-- first flow into target_table:
CREATE FLOW users_flow AS
INSERT INTO users
SELECT * FROM stream(raw_data.users);
-- second flow into target_table:
CREATE FLOW backfill_users AS
INSERT INTO ONCE users
SELECT * FROM user_backfill_table;
-- EXAMPLE 2:
-- Create a streaming table, and add a flow that applies CDC changes to it:
CREATE OR REFRESH STREAMING TABLE admins_cdc_target_table;
-- first flow into target_table:
CREATE FLOW admin_cdc_flow AS
AUTO CDC INTO admins_cdc_target_table
FROM stream(cdc_data.admins)
KEYS (userId)
APPLY AS DELETE WHEN
operation = "DELETE"
SEQUENCE BY sequenceNum
COLUMNS * EXCEPT (operation, sequenceNum)
STORED AS SCD TYPE 2;