📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiDB Cloud Lake への Parquet のロード



Parquet とは

Parquet は、データ分析で一般的に使用されるカラム指向のストレージ形式です。複雑なデータ構造をサポートするように設計されており、大規模なデータセットの処理に効率的です。

Parquet ファイルは TiDB Cloud Lake に最も適しています。TiDB Cloud Lake のデータソースとして Parquet ファイルを使用することを推奨します。

Parquet ファイルのロード

Parquet ファイルをロードする一般的な構文は次のとおりです。

COPY INTO [<database>.]<table_name> FROM { internalStage | externalStage | externalLocation } [ PATTERN = '<regex_pattern>' ] FILE_FORMAT = (TYPE = PARQUET)

チュートリアル: Parquet ファイルからのデータのロード

ステップ 1. 内部 stage を作成する

Parquet ファイルを保存するための内部 stage を作成します。

CREATE STAGE my_parquet_stage;

ステップ 2. Parquet ファイルを作成する

次の SQL ステートメントを使用して Parquet ファイルを生成します。

COPY INTO @my_parquet_stage FROM ( SELECT 'Title_' || CAST(number AS VARCHAR) AS title, 'Author_' || CAST(number AS VARCHAR) AS author FROM numbers(100000) ) FILE_FORMAT = (TYPE = PARQUET);

Parquet ファイルが作成されたことを確認します。

LIST @my_parquet_stage;

結果:

┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ name │ size │ md5 │ last_modified │ creator │ ├─────────────────────────────────────────────────────────────────┼────────┼────────────────────────────────────┼───────────────────────────────┼──────────────────┤ │ data_3890e0b1-0233-422c-b506-3a4501602f28_0000_00000000.parquet │ 65443 │ "ab4631846ca8a2beed6a48be75d2acac" │ 2023-12-26 10:28:18.000 +0000 │ NULL │ └──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

データを stage にアンロード (unload) する詳細については、COPY INTO location を参照してください。

ステップ 3. ターゲットテーブルを作成する

CREATE TABLE books ( title VARCHAR, author VARCHAR );

ステップ 4. Parquet から直接コピーする

Parquet ファイルからテーブルに直接データをコピーするには、次の SQL コマンドを使用します。

COPY INTO books FROM @my_parquet_stage PATTERN = '.*[.]parquet' FILE_FORMAT = (TYPE = PARQUET);

結果:

┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ File │ Rows_loaded │ Errors_seen │ First_error │ First_error_line │ ├─────────────────────────────────────────────────────────────────┼─────────────┼─────────────┼──────────────────┼──────────────────┤ │ data_3890e0b1-0233-422c-b506-3a4501602f28_0000_00000000.parquet │ 100000 │ 0 │ NULL │ NULL │ └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

ステップ 5 (任意). SELECT を使用してデータをコピーする

コピー中にデータを変換するなど、より細かく制御したい場合は、SELECT ステートメントを使用します。詳細は SELECT from Parquet を参照してください。

COPY INTO books (title, author) FROM ( SELECT title, author FROM @my_parquet_stage ) PATTERN = '.*[.]parquet' FILE_FORMAT = (TYPE = PARQUET);

このページは役に立ちましたか?