Fehlersuche bei der Verwendung von Apache Iceberg™-Tabellen mit Snowflake Open Catalog in Snowflake¶
Die folgenden Szenarios können Ihnen bei der Behebung von Problemen helfen, die bei der Verwendung von Apache Iceberg™-Tabellen mit Snowflake Open Catalog in Snowflake auftreten können.
Sie können keine Katalogintegration für Open Catalog erstellen¶
Dieser Abschnitt beschreibt die Problembehandlung bei der Erstellung einer Katalogintegration für Open Catalog.
Identifizieren Sie zur Fehlerbehebung die Fehlermeldung, die Sie in der SQL-Ausgabe erhalten haben, als die Erstellung Ihrer Katalogintegration fehlgeschlagen ist.
Fehler |
|
|---|---|
Ursache |
Der |
Lösung |
Aktualisieren Sie Wichtig
|
Fehler |
|
|---|---|
Ursache |
Das OAuth-Token, das Sie in der Katalogintegration angegeben haben, ist ungültig. |
Lösung |
Vergewissern Sie sich, dass die für |
Sie können keine von Snowflake verwaltete Tabelle erstellen¶
In diesem Abschnitt wird die Fehlerbehebung bei der Erstellung einer von Snowflake verwalteten Tabelle beschrieben.
Um das Problem zu beheben, identifizieren Sie die Fehlermeldung, die Sie in der SQL-Ausgabe erhalten haben, als die Erstellung Ihrer Tabelle fehlgeschlagen ist.
Fehler |
|
|---|---|
Ursache |
Die Katalogrolle für den externen Katalog, mit dem Sie eine Verbindung herstellen möchten, hat nicht die erforderlichen Berechtigungen, um Benachrichtigungen an Open Catalog zu senden. |
Lösung |
Aktualisieren Sie die Katalogrolle, indem Sie der Katalogrolle für Ihren externen Katalog alle folgenden Berechtigungen erteilen:
Wo Sie die Katalogrolle aktualisieren, hängt davon ab, ob die darin enthaltenen Berechtigungen auf Katalog-, Namespace- oder Tabellenebene angewendet werden. Siehe die für Ihre Katalogrolle anwendbare Prozedur: |
Fehler |
|
|---|---|
Ursache |
Der AWS IAM-Benutzer für Ihren externen Katalog kann nicht die Rolle einnehmen, die die Berechtigung zum Zugriff auf S3 hat. |
Lösung |
Ändern Sie das Richtliniendokument in AWS, damit der IAM-Benutzer für Ihr Open Catalog-Konto die Rolle übernehmen kann, die die Berechtigung zum Zugriff auf Ihren S3-Bucket hat. Um das Richtliniendokument zu ändern, müssen Sie die IAM-Rolle in AWS aktualisieren. Details finden Sie unter AWS IAM Den Benutzer für Ihr Snowflake Open Catalog-Konto abrufen und dann Dem IAM-Benutzer Berechtigungen für den Zugriff auf Bucket-Objekte erteilen. Denken Sie daran, dass das Richtliniendokument den IAM ARN-Benutzer und die externe ID sowohl für Ihr externes Volume als auch für Ihren externen Katalog in Open Catalog enthalten muss. Beachten Sie im folgenden Beispiel-Richtliniendokument die folgenden Werte:
|
Fehler |
|
|---|---|
Ursache |
Sie versuchen, eine von Snowflake verwaltete Tabelle mit einem internen Katalog in Open Catalog zu synchronisieren. Sie können eine von Snowflake verwaltete Tabelle nur in Open Catalog mit einem externen Katalog synchronisieren. |
Lösung |
Sie können einen bestehenden internen Katalog nicht in einen externen Katalog aktualisieren, sondern müssen einen neuen externen Katalog erstellen:
|
Fehler |
|
|---|---|
Ursache |
Der Pfad zur Metadatendatei für die Tabelle, die Sie erstellen möchten, ist nicht in der Liste der zulässigen Speicherorte für Ihren externen Cloudanbieter enthalten. Daher kann Open Catalog nicht auf die Metadatendatei für die Tabelle zugreifen. |
Lösung |
Stellen Sie sicher, dass der Speicherort der Metadatendatei unter dem Pfad des standardmäßigen Speicherorts für den Katalog liegt, den der Service-Administrator in Open Catalog erstellt hat, oder dass er unter einem der zusätzlichen zulässigen Speicherorte liegt, falls zutreffend. Eine Liste der zulässigen Speicherorte erhalten Sie, wenn Sie den Katalog in Open Catalog auswählen und das Feld Standorte aufrufen. |
Sie können eine Iceberg-Tabelle nicht ändern, wenn Sie den Parameter CATALOG_SYNC angeben¶
In diesem Abschnitt wird beschrieben, wie Sie den Parameter CATALOG_SYNC ändern können, um Fehler zu beheben.
Identifizieren Sie zur Fehlerbehebung die Fehlermeldung, die Sie in der SQL-Ausgabe erhalten haben, als Ihre Tabellenänderung fehlgeschlagen ist.
Fehler |
|
|---|---|
Ursache |
Die Katalogrolle für den externen Katalog, mit dem Sie eine Verbindung herstellen möchten, hat nicht die erforderlichen Berechtigungen, um Benachrichtigungen an Open Catalog zu senden. |
Lösung |
Erteilen Sie der Katalogrolle für Ihren externen Katalog alle der folgenden Berechtigungen:
Wo Sie die Katalogrolle aktualisieren, hängt davon ab, ob ihre Berechtigungen auf Katalog-, Namespace- oder Tabellenebene angewendet werden. Siehe die für Ihre Katalogrolle anwendbare Prozedur: |
Fehler |
|
|---|---|
Ursache |
Der AWS IAM-Benutzer für Ihren externen Katalog hat keine Berechtigung für den Zugriff auf S3-Bucket-Objekte. |
Lösung |
Ändern Sie das Richtliniendokument in AWS, damit der IAM-Benutzer für Ihr Open Catalog Konto auf Objekte in Ihrem S3-Bucket zugreifen kann. Um das Richtliniendokument zu ändern, müssen Sie die IAM-Rolle in AWS aktualisieren. Details finden Sie unter AWS IAM Den Benutzer für Ihr Polaris Open Catalog-Konto abrufen und dann Dem IAM-Benutzer Berechtigungen für den Zugriff auf Bucket-Objekte erteilen. Denken Sie daran, dass das Richtliniendokument den IAM ARN-Benutzer und die externe ID sowohl für Ihr externes Volume als auch für Ihren externen Katalog in Open Catalog enthalten muss. Beachten Sie im folgenden Beispiel-Richtliniendokument die folgenden Werte:
|
Fehler |
|
|---|---|
Ursache |
Sie versuchen, eine von Snowflake verwaltete Iceberg-Tabelle mit einer Katalogintegration für einen internen Katalog in Open Catalog zu synchronisieren. Sie können eine von Snowflake verwaltete Iceberg-Tabelle nur mit einem externen Katalog in Open Catalog synchronisieren. |
Lösung |
Sie können einen bestehenden internen Katalog nicht in einen externen Katalog aktualisieren, sondern müssen einen neuen externen Katalog erstellen:
|
Fehler |
|
|---|---|
Ursache |
Der Pfad zur Metadatendatei für die Tabelle, die Sie erstellen möchten, ist nicht in der Liste der zulässigen Speicherorte für Ihren externen Cloudanbieter enthalten. Daher kann Open Catalog nicht auf die Metadatendatei für die Tabelle zugreifen. |
Lösung |
Stellen Sie sicher, dass der Speicherort der Metadatendatei unter dem Pfad des standardmäßigen Speicherorts für den Katalog liegt, den der Service-Administrator in Open Catalog erstellt hat, oder dass er unter einem der zusätzlichen zulässigen Speicherorte liegt, falls zutreffend. Eine List der zulässigen Speicherorte erhalten Sie, wenn Sie den Katalog in Open Catalog auswählen und das Feld Locations aufrufen. |