ウェブインターフェイスを使用したデータのロード

Snowsight または Classic Console を使用して、構造化データ(例: CSV、 TSV)または半構造化データ(例: JSON、Avro、 ORC、Parquet、または XML)を含むファイルをロードできます。

ウェブインターフェイスを使用して、最大サイズ250MBのファイルからデータをロードします。より大きなファイルまたは多数のファイルをロードするには、Snowflakeクライアント SnowSQL を使用します。詳細については、 ローカルファイルシステムからの一括ロード をご参照ください。

このトピックの内容:

Snowsight を使ったデータの読み込み

次のシナリオでは、 Snowsight を使用してファイルをロードできます。

  • ローカルマシンまたはステージから既存のテーブルにファイルまたは複数のファイルをロードします。

  • ローカルファイルまたはステージングされたファイルのロード時に新しいテーブルを作成します。 Snowsight は INFER_SCHEMA テーブル関数を使用して、ファイルのメタデータスキーマを自動的に検出し、列定義を取得して、新しいテーブルを生成します。この機能は XML ファイルをサポートしていません。

最大250 MB までの個別ファイルからデータをロードできます。

アクセス制御権限

Snowsight はデータベース、スキーマ、テーブルに権限を付与するためのデータベースロールの使用をサポートしていません。アカウントロールを使って、 Snowsight を操作します。詳細については、 ロールのタイプ をご参照ください。

Snowsight を使ったデータの読み込み

Snowsight を使ってデータを読む込むには、少なくとも次の権限を持つロールが必要です。

オブジェクト

権限

メモ

データベース

USAGE

スキーマ

USAGE

ステージ

USAGE

ステージからファイルを読み込む際に必要です。

ファイル形式

USAGE

という名前のファイル形式 を使用する場合に必要です。

テーブル

OWNERSHIP

Snowsight を使用してデータ読み込み中に新しいテーブルを作成する

Snowsight を使ってデータを読む込む際に新しいテーブルを作成するには、少なくとも次の権限を持つロールが必要です。

オブジェクト

権限

メモ

データベース

USAGE

スキーマ

CREATE TABLE

ステージ

USAGE

テーブル

OWNERSHIP

既存のテーブルにファイルをロードする

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで Data » Add Data を選択します。

  3. Add Data ページで、 Load data into a Table を選択します。

    Load Data into Table ダイアログが表示されます。

  4. Load Data into Table ダイアログで、テーブルを作成するデータベースとスキーマを選択または作成します。

  5. ローカルマシン、 Drag and drop to upload files 、または Add from stage からファイルを追加する場合は Browse を選択します。

    Add from stage を選択すると、ステージエクスプローラーが表示されます。ステージエクスプローラーでは、ステージやサブフォルダに移動し、ステージから特定のフォルダやファイルを選択することができます。ステージ上の特定のファイルを選択せずに Add を選択すると、ステージ上のすべてのファイルとフォルダを含むルートステージが追加されます。

    ステージフォルダに表示できるファイル数の上限は250です。

  6. ファイルを追加したら、 Next を選択します。テーブルスキーマのダイアログが表示されます。

  7. テーブルスキーマのダイアログで、以下を実行します。

    • ファイル形式 を現在のデータベースから選択します。

    • カスタマイズするファイル型を選択し、データファイルの関連設定を選択します。

    • (オプション)ロード中にエラーが発生した場合の処理を選択します。デフォルトでは、データはファイルからロードされません。

    • Match by column names オプションのいずれかを選択し、ソースファイルとターゲットテーブルを自動的に一致させます。デフォルトのオプションは case insensitive です。

      スキーマ検出とビジュアル列マッピングは、 XML をサポートしていないことに注意してください。

    • テーブルスキーマのダイアログの右側にある Edit Schema タブを選択します。ソースファイルとターゲットテーブルの不一致を見ることができます。必要に応じて調整します。

    • Table Preview タブを選択すると、入力されたソースファイルのデータがターゲットテーブルでどのように表示されるかをプレビューできます。

  8. Load を選択します。

    Snowsightはファイルをロードし、テーブルに正常に挿入された行の数を表示します。

ファイルのロード時にテーブルを作成する

次の手順で、ファイルをロードする際に新しいテーブルを作成できます。

注釈

この機能は、区切りファイル、 JSON、Parquet、Avro、 ORC ファイルをサポートしています。XML ファイルはサポートしていません。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで Create » Table » From File を選択します。

    Load Data into Table ダイアログが表示されます。

  3. Load Data into Table ダイアログで、テーブルを作成するデータベースとスキーマを選択または作成します。

  4. ローカルマシン、 Drag and drop to upload files 、または Add from stage からファイルを追加する場合は Browse を選択します。

    Add from stage を選択すると、ステージエクスプローラーが表示されます。ステージエクスプローラーでは、ステージやサブフォルダに移動し、ステージから特定のフォルダやファイルを選択することができます。ステージ上の特定のファイルを選択せずに Add を選択すると、ステージ上のすべてのファイルとフォルダを含むルートステージが追加されます。

    ステージフォルダに表示できるファイル数の上限は250であることに注意してください。

  5. 新しいテーブルの名前を入力し、 Next を選択します。

    Snowsight はファイルのメタデータスキーマを検出し、 INFER_SCHEMA 関数で特定されたファイルフォーマットと列定義を返します。

  6. 推測されるファイル形式、データ型、列名、列データのサンプルを確認します。すべての情報が正確であることを確認し、必要に応じて更新します。

  7. Load を選択します。

    Snowsightはファイルをロードし、ファイル用の新しいテーブルを作成します。

従来のコンソールを使用したデータのロード

Classic Console は、限られた量のデータを小さなファイルセットからテーブルにロードするためのウィザードを提供します。ウィザードは、 SQL を使用する場合と同じ PUT および COPY 操作を実行しますが、2つのフェーズ(ファイルのステージングとデータのロード)を1つの操作に結合し、ロードの完了後にステージングされたファイルすべてを削除します。

ローカルマシン上のファイル、またはSnowflake、Amazon S3、Google Cloud Storage、Microsoft Azureにある既存のクラウドストレージの場所ですでにステージングされているファイルから、データをロードできます。

データをロードするための前提条件

Classic Console を使用してデータのロードを開始する前に、次を実行します。

  • データファイルの場所を特定します。次のいずれかからデータをロードできます。

    • ローカルマシン。

    • 内部または外部ステージ。

    • まだ外部ステージとしてSnowflakeに追加されていない、Amazon S3、Google Cloud Storage、またはMicrosoft Azure上のクラウドストレージの場所。

  • データファイルのサイズを決定します。読む込むことができる各ファイルは最大250 MBです。より大きなファイルまたは多数のファイルをロードする場合は、代わりにSnowflakeクライアント SnowSQL を使用します。 ローカルファイルシステムからの一括ロード をご参照ください。

データのロードに使用するロールには、適切な権限が必要です。

  • データをロードするには、データをロードするテーブルが含まれるデータベースおよびスキーマに対する USAGE 権限がロールに必要です。

  • データのロード時にステージを作成するには、データベーススキーマに対する CREATE STAGE 権限がロールに必要です。

  • データのロード時にファイル形式を作成するには、データベーススキーマに対する CREATE FILE FORMAT 権限がロールに必要です。

データのロードを開始する

特定のテーブルにファイルのロードを開始するには、次を実行します。

  1. Databases データベースタブ を選択します。

  2. 特定のデータベースとスキーマを選択します。

  3. Tables タブを選択します。

  4. データをロードするテーブルを見つけます。

  5. 次のいずれかを実行して、特定のテーブルにデータのロードを開始します。

    • テーブルの行を選択し、 Load Data を選択します。

    • テーブル名を選択してテーブルの詳細ページを開き、 Load Table を選択します。

    Load Data ウィザードが開きます。

  6. テーブルにデータをロードするために使用するウェアハウスを選択します。ドロップダウンには、 USAGE 権限のあるウェアハウスが含まれます。

  7. Next を選択します。

ロードするデータを選択する

データのロード元として選択した場所に応じて、関連するステップに従います。複数の場所からデータをロードする場合は、 Load Data ウィザードを複数回使用します。

自分のコンピューターからデータをロードするには、

  1. Load files from your computer オプションを選択し、 Select Files を選択してロードするファイルを閲覧します。

  2. 1つ以上のローカルデータファイルを選択し、 Open を選択します。

  3. Next を選択します。

既存のステージからデータをロードするには、

  1. Load files from external stage オプションを選択します。

  2. Stage ドロップダウンリストから、既存のステージを選択します。

  3. (オプション)ステージ内のファイルへのパスを指定します。

  4. Next を選択します。

ステージを作成する(例: 外部クラウドストレージからデータをロードする)には、

  1. Load files from external stage オプションを選択します。

  2. Stage ドロップダウンリストの横にある + を選択します。

  3. 使用するファイルのある、サポートされているクラウドストレージサービスを選択します。

  4. Next を選択します。

  5. フィールドに入力してステージを説明します。詳細については、 CREATE STAGE をご参照ください。

  6. Finish を選択します。

    新しいステージは、 Stage ドロップダウンリストから自動的に選択されます。

  7. (オプション)ステージ内のファイルへのパスを指定します。

  8. Next を選択します。

データのロードを終了する

ロードするファイルを選択したら、テーブルへのデータのロードを完了します。

注釈

データのロードが完了したときにウェアハウスが実行されていない場合は、データのロード前にウェアハウスが再開されるまで(最大5分)待つ必要があります。

データのロードを完了するには、次を実行します。

  1. ドロップダウンリストから既存の名前付きファイル形式を選択するか、形式を作成します。

    ファイル形式を作成するには、

    1. ドロップダウンリストの横にある + を選択します。

    2. データファイルの形式に合わせて、フィールドに入力します。オプションの説明については、 CREATE FILE FORMAT をご参照ください。

    3. Finish を選択します。

    新しい名前付きファイル形式は、ドロップダウンリストから自動的に選択されます。

  2. データのロード時に発生するエラーをどのように処理するかを決定します。

    • エラーが発生した場合にデータのロードを停止する場合は、 Load を選択します。

    • エラーを別の方法で処理したい場合は、

      1. Next を選択します。

      2. エラーの処理方法を説明するオプションを選択します。オプションの詳細については、 COPY INTO <テーブル>ON_ERROR セクションをご参照ください。

      3. Load を選択します。

    Snowflakeは、選択したウェアハウスを使用して、選択したテーブルにデータをロードします。

  3. OK を選択して、 Load Data ウィザードを閉じます。