Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Seite enthält Referenzdokumentation für abfragebasierte Connectors in Lakeflow Connect, einschließlich Konfigurationsparametern, Cursorspaltenanforderungen, Syntax der Löschnachverfolgung und Fehlerbedingungen.
Pipelinekonfiguration
Die folgenden Parameter werden für abfragebasierte Connectors unterstützt. Legen Sie diese Werte im ingestion_definition Block Der Pipelinekonfiguration fest.
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
connection_name |
Schnur | Erforderlich für fremdverbindungsingestion | Der Name der Verbindung, die Authentifizierungsanmeldeinformationen für die Quelldatenbank speichert. Ist ingest_from_uc_foreign_catalog dies trueder Wert , geben Sie nicht an connection_name. |
ingest_from_uc_foreign_catalog |
boolean | Erforderlich für die Aufnahme fremder Kataloge | Legen Sie fest, dass true sie aus einem fremden Katalog aufgenommen werden soll, der von lakehouse Federation unterstützt wird. Wenn true, geben Sie nicht an connection_name. |
source_catalog |
Schnur | Ja | Der Katalog im Quellsystem (oder der Fremdkatalogname, falls ingest_from_uc_foreign_catalog vorhanden true). |
source_schema |
Schnur | Ja | Das Schema im Quellsystem, aus dem aufgenommen werden soll. |
source_table |
Schnur | Erforderlich für Objekte auf Tabellenebene | Die Tabelle im Quellschema, die aufgenommen werden soll. |
cursor_column |
Schnur | Erforderlich für fremdverbindungsingestion | Der Name der Cursorspalte, die für die inkrementelle Nachverfolgung verwendet werden soll. Muss eine monoton ansteigende Spalte sein. Siehe Cursorspaltenanforderungen. |
cursor_columns |
Eine Liste von Zeichenfolgen | Erforderlich für die Aufnahme fremder Kataloge | Eine Liste mit dem Cursorspaltennamen. Es wird nur eine Spalte unterstützt. |
primary_keys |
Eine Liste von Zeichenfolgen | Erforderlich, es sei denn, der Verlaufsverfolgungsmodus (SCD) ist APPEND_ONLY (Fremdkatalogaufnahme) |
Die Primärschlüsselspalten, die zum Identifizieren von Zeilen für Zusammenführungsvorgänge verwendet werden. Erforderlich für SCD_TYPE_1 und SCD_TYPE_2 Modi. |
deletion_condition |
Schnur | No | Ein SQL-Ausdruck, der für Zeilen ausgewertet wird true , die weiche Löschungen darstellen. Nur mithilfe der API konfigurierbar. Siehe Löschbedingung. |
hard_deletion_sync_min_interval_in_seconds |
Integer | No | Das mindeste Intervall in Sekunden zwischen den Momentaufnahmen des Primärschlüssels zum Erkennen von endgültigen Löschungen. Wenn sie nicht festgelegt ist, ist die Nachverfolgung des endgültigen Löschens deaktiviert. Dieser Parameter wird in diesem Fall scd_typeSCD_TYPE_2nicht unterstützt. Sie kann nur mithilfe der API (Beta) konfiguriert werden. Weitere Informationen finden Sie unter "Nachverfolgung des endgültigen Löschens". |
scd_type |
Schnur | No | Der Verlaufsverfolgungsmodus (History Tracking, SCD) für die Zieltabelle. Unterstützte Werte: SCD_TYPE_1 (Standard), SCD_TYPE_2, APPEND_ONLY. |
destination_catalog |
Schnur | Ja | Der Katalog, in den die Zieltabelle geschrieben werden soll. |
destination_schema |
Schnur | Ja | Das Schema, in das die Zieltabelle geschrieben werden soll. |
destination_table |
Schnur | No | Der Name der Zieltabelle Wenn nicht angegeben, wird standardmäßig der Quelltabellenname angegeben. Siehe Name einer Zieltabelle. |
Anforderungen für Cursorspalten
Die Cursorspalte verfolgt den inkrementellen Fortschritt zwischen Pipelineläufen. Der Connector speichert den maximalen Cursorwert nach jeder erfolgreichen Ausführung und verwendet ihn als untere Begrenzungsfilter für die nächste Ausführung.
Anforderungen:
- Sie müssen eine einzelne Cursorspalte angeben. Sie können nicht mehrere Spalten als zusammengesetzten Cursor angeben. Wenn Sie mehrere angeben, schlägt die Pipeline mit
INVALID_CURSOR_COLUMNS. - Die Cursorspalte muss monoton vergrößert werden. Werte dürfen nie verkleinert werden. Zeilen mit Cursorwerten an oder unterhalb der gespeicherten Wassermarke werden bei nachfolgenden Läufen nicht wieder aufgenommen.
- Zeilen mit einer NULL-Cursorspalte werden nicht aufgenommen.
Unterstützte Spaltentypen:
- Zeitstempel oder Datumstypen (empfohlen)
- Numerische Typen (ganze Zahl, lange ganze Zahl, Dezimalzahl und Double)
- Binäre Typen (codiert als Binäre Zahlen)
- Zeichenfolgentypen
Löschbedingung
Mit dem deletion_condition Parameter können abfragebasierte Connectors weiche Löschungen erkennen. Dieses Feature kann nur mithilfe der API konfiguriert werden.
Der Wert ist ein SQL-Ausdruck, der für Zeilen ausgewertet true wird, die in der Zieltabelle als gelöscht behandelt werden sollen. Der Connector wertet diesen Ausdruck während jeder Pipelineausführung aus.
Syntax:
"deletion_condition": "<sql-expression>"
Beispiele:
"deletion_condition": "deleted_at IS NOT NULL"
"deletion_condition": "is_deleted = 1"
"deletion_condition": "status = 'DELETED'"
Wenn eine Zeile dem deletion_conditionentspricht, entfernt der Verbinder die entsprechende Zeile aus der Zieltabelle (für SCD_TYPE_1) oder markiert sie als gelöscht (für SCD_TYPE_2).
Nachverfolgung des endgültigen Löschens
Der hard_deletion_sync_min_interval_in_seconds Parameter ermöglicht abfragebasierte Connectors die Erkennung von endgültigen Löschungen – Zeilen, die physisch aus der Quelltabelle entfernt wurden. Dieses Feature befindet sich in Der Betaversion und kann nur mithilfe der API konfiguriert werden.
Die Nachverfolgung des endgültigen Löschens funktioniert, indem regelmäßig eine Momentaufnahme der Primärschlüssel in der Quelltabelle erstellt und mit der Zieltabelle verglichen wird. Zeilen, die im Ziel vorhanden sind, aber nicht in der Quellmomentaufnahme vorhanden sind, werden als gelöscht behandelt.
Der Wert legt das Mindestintervall in Sekunden zwischen Momentaufnahmen fest. Dieser Wert fungiert als untere Grenze: Wenn die Pipeline weniger häufig ausgeführt wird als dieses Intervall, richtet sich die Synchronisierung der endgültigen Löschung an der tatsächlichen Aufnahmehäufigkeit, anstatt häufiger auszuführen. Durch das Aktualisieren dieses Parameters wird keine vollständige Momentaufnahme ausgelöst.
Hinweis
Für die Nachverfolgung von endgültigen Löschungen muss primary_keys die Tabelle konfiguriert werden. Es wird nicht unterstützt, wenn scd_type dies der Wert ist SCD_TYPE_2.
Syntax:
"hard_deletion_sync_min_interval_in_seconds": <integer>
Beispiel:
"hard_deletion_sync_min_interval_in_seconds": 86400
In diesem Beispiel wird ein Hard-Delete-Scan nicht mehr als einmal alle 24 Stunden (86400 Sekunden) ausgelöst.
Fehlerbedingungen
Der häufigste Fehler ist INVALID_CURSOR_COLUMNS. Dies tritt auf, wenn die Cursorspalte nicht ordnungsgemäß konfiguriert ist. Informationen zur Problembehandlung finden Sie unter "Ungültige Cursorspalten ".