サーバーレス SQL プールでの CREATE EXTERNAL TABLE AS SELECT (CETAS) に関する問題Azure Synapseトラブルシューティングする
適用対象: Azure Synapse Analytics
Azure Synapse サーバーレス SQL プールの CREATE EXTERNAL TABLE AS SELECT (CETAS とも呼ばれます) ステートメントは、外部テーブルを作成し、クエリ結果を Azure Storage BLOB またはAzure Data Lake Storage Gen2にエクスポートするために使用されます。 このガイドは、CETAS を使用したデータのエクスポートに関してよく寄せられる質問のベスト プラクティスと回避策を実装するのに役立ちます。
よく寄せられる質問
質問 | Recommendation |
---|---|
結果を 1 つのファイルにエクスポートできますか? | いいえ。 サーバーレス SQL クエリ エンジンの非常に並列でスケーラブルな性質のため、サーバーレス SQL では、CETAS を使用してクエリ結果をストレージに保存するときにファイルの数を制御することはできません。 回避 策: 別の方法として、Spark ノートブックを使用してストレージにデータをエクスポートすることもできます。 1 つの CSV ファイルと Parquet ファイルにデータをエクスポートする方法については、「ストレージ アカウントに CSV ファイルと Parquet ファイルを作成する」を参照してください。 |
最初のエクスポート後にエクスポートされたデータを変更できますか? | いいえ。 結果が格納されると、外部テーブルのデータは変更できません。 CETAS は、最初の実行で作成された基になるデータを上書きしません。 回避 策: 別の方法として、別のフォルダーに書き込む新しい外部テーブルを作成することもできます。 |
サポートされているエクスポート ファイル形式は何ですか? | 現在サポートされているのは PARQUET と DELIMITEDTEXT のみです。 DELIMITEDTEXT 形式の Gzip 圧縮はサポートされていません。 詳細については、 サーバーレス SQL プールの CETAS を参照してください。 |
ストレージに接続できないのはなぜですか? | - サーバーレス SQL プールのストレージ アクセスの制御に関するページで指定されているように、ソースストレージアカウントと移行先ストレージ アカウントの両方に適切な資格情報が作成されていることを確認します。 - ソースと宛先のストレージ アカウントに対する適切な アクセス許可 があることを確認します。 |
CETAS ステートメントのパフォーマンスを高める方法 | - 移行先のストレージ アカウントがサーバーレス SQL プール エンドポイントと同じリージョンにあることを確認します。 Azure portalでは、ストレージ アカウントまたはワークスペースの [概要] ウィンドウにストレージ アカウントとワークスペースリージョンがあります。 - CETAS でサポートされているデータ型を使用してください。 |