Begrenzung der Abfragetextgröße

Snowflake empfiehlt, die Größe des Abfragetextes (d. h. SQL-Anweisungen), der pro Anweisung über Snowflake-Clients übermittelt wird, auf 1 MB zu begrenzen. Größere Abfragen werden normal verarbeitet, aber Sie können die größeren Abfragen nicht erneut ausführen oder wiederholen, da Snowflake Abfragen, die pro Anweisung größer als 1 MB sind, abschneidet, bevor sie in den Metadatenspeicher übernommen werden.

Diese Begrenzung umfasst alle Literale wie Zeichenfolge- oder Binärliterale, die Teil der Anweisung sind, egal ob als Teil einer WHERE-Klausel, SET-Klausel (in einer UPDATE-Anweisung) usw.

Diese Begrenzung gilt auch für das Binden von Werten in Clientanwendungen, die Snowflake-Konnektoren und -Treiber verwenden, z. B. den JDBC-Treiber.

Wenn mehrere SQL-Anweisungen zu einer einzigen Zeichenfolge kombiniert werden (durch Semikolons getrennt), gilt die Längenbegrenzung für die gesamte Zeichenfolge und nicht für einzelne Anweisungen in der Zeichenfolge.

Wenn Daten im Batch verarbeitet werden, z. B. mit der JDBC-Methode PreparedStatement.addBatch(), muss der gesamte Batch innerhalb der Begrenzung liegen.

Bemerkung

Snowflake komprimiert Daten beim Senden zwischen Client und Server. Die Begrenzung gilt für die Größe nach der Komprimierung. Da das Komprimierungsverhältnis für Daten jedoch stark variiert, ist es am sichersten, die unkomprimierte Größe innerhalb der Begrenzung zu halten.

Laden Sie Daten, die die Begrenzung überschreiten, aus den Datendateien wie unter Daten in Snowflake laden beschrieben.