Diagnose häufiger Probleme bei der Automatisierung dynamischer Tabellen¶
Dieses Thema befasst sich mit Lösungen für die Problembehandlung bei dynamischen Tabellen, die nicht wie erwartet aktualisiert werden:
Einige Aktionen können eingeschränkt sein, einerseits aufgrund von Beschränkungen bei der Verwendung dynamischer Tabellen und andererseits, weil Sie nicht über die erforderlichen Berechtigungen verfügen. Weitere Informationen dazu finden Sie unter Beschränkungen für dynamische Tabellen und Zugriffssteuerung für dynamische Tabellen.
Wenn Sie ein Problem feststellen, das hier nicht aufgeführt ist, wenden Sie sich an den Snowflake-Support.
Problem |
Lösung |
---|---|
Meine dynamische Tabelle verwendet eine vollständige Aktualisierung anstelle einer inkrementellen Aktualisierung. |
Der tatsächliche Aktualisierungsmodus einer dynamischen Tabelle wird zum Zeitpunkt der Erstellung festgelegt und ist danach unveränderlich. Wenn nicht explizit angegeben, ist der Aktualisierungsmodus standardmäßig auf Um eine konsistente Verhaltensweise in allen Snowflake-Releases zu gewährleisten, legen Sie Aktualisierungsmodus aller dynamischen Tabellen explizit fest. Wenn Sie z. B. möchten, dass Ihre dynamischen Tabellen nur inkrementell aktualisiert werden, müssen Sie den Aktualisierungsmodus beim Erstellen der Tabellen explizit auf Wenn Sie eine Rolle mit den erforderlichen Berechtigungen verwenden, können Sie den Aktualisierungsmodus mit einer der folgenden Methoden überprüfen:
|
Die inkrementelle Aktualisierung meiner dynamischen Tabelle ist langsam. |
Die Aktualisierungsleistung einer dynamischen Tabelle hängt von bestimmten Annahmen über den Workload oder die Daten ab, die verarbeitet werden. Verwenden Sie Refresh History, um die Varianz zu sehen oder Ausreißer zu erkennen:
|
Meine dynamische Tabelle führt eine leere Aktualisierung durch, aber ich sehe Kosten. |
Aktualisierungen, die keine neuen Nettozeilen erzeugen (d. h. keine hinzugefügten, aktualisierten oder gelöschten Zeilen), verbrauchen Warehouse-Ressourcen, wenn sie mit Änderungen in einem der Upstream-Objekte verbunden sind, auf die die dynamische Tabelle verweist. Wenn zum Beispiel das zugehörige virtuelle Warehouse angehalten wird und keine Änderungen an den Basisobjekten festgestellt werden, wird das angehaltene virtuelle Warehouse nicht wieder fortgesetzt und es werden keine Credits verbraucht. Dies wird als NO_DATA-Aktualisierung bezeichnet. Werden hingegen Änderungen festgestellt, wird das virtuelle Warehouse automatisch fortgesetzt, um die Aktualisierungen zu verarbeiten, was Warehouse-Ressourcen verbraucht, selbst wenn das Nettoergebnis null Zeilen für die dynamische Tabelle ist. Wenn Sie Kosten sehen, aber keine Änderungen an Ihrer dynamischen Tabelle vorgenommen haben, könnte das an einer Änderung in Ihrer Quelltabelle liegen. Auf der Registerkarte Refresh History in Snowsight können Sie überprüfen, ob virtuelle Warehouses Credits verbraucht haben:
Weitere Informationen dazu finden Sie unter Erläuterungen zu den Kosten von dynamischen Tabellen. |
Meine dynamische Tabelle wird neu initialisiert. |
Ihre dynamische Tabelle wird möglicherweise aus einem der folgenden Gründe neu initialisiert:
Allgemeine Informationen zur Initialisierung finden Sie unter Erläuterungen zur Initialisierung dynamischer Tabellen. |