📣
TiDB Cloud Premium はパブリックプレビュー中です。エンタープライズワークロード向けの無制限のスケーリング、即時の弾力性、高度なセキュリティを提供します。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiDB Cloud StarterまたはEssentialからデータをエクスポートする



TiDB Cloudを使用すると、 TiDB Cloud StarterまたはEssentialクラスターからローカルファイルまたは外部ストレージサービスにデータをエクスポートできます。エクスポートしたデータは、バックアップ、移行、データ分析などの用途に使用できます。

mysqldumpや TiDB Dumplingなどのツールを使用してデータをエクスポートすることもできますが、 TiDB Cloudが提供するエクスポート機能は、クラスターからデータをエクスポートするためのより便利で効率的な方法を提供します。これには、次のような利点があります。

  • 利便性: エクスポート サービスは、クラスターからデータをエクスポートするためのシンプルで使いやすい方法を提供するため、追加のツールやリソースは必要ありません。
  • 分離: エクスポート サービスは個別のコンピューティング リソースを使用するため、オンライン サービスで使用されるリソースからの分離が保証されます。
  • 一貫性: エクスポート サービスは、ロックを発生させることなくエクスポートされたデータの一貫性を確保するため、オンライン サービスには影響しません。

注記:

現在、最大エクスポートサイズは1 TiBです。より多くのデータをエクスポートする場合、またはより高速なエクスポートをご希望の場合は、 TiDB Cloudサポートお問い合わせください。

エクスポート場所

次の場所にデータをエクスポートできます。

  • TiDB Cloud Starter の場合:

    • ローカルファイル
    • Amazon S3
    • Google Cloud Storage
    • Azure Blob Storage
    • Alibaba Cloud Object Storage Service (OSS)
  • TiDB Cloud Essential の場合:

    • Amazon S3
    • Azure Blob Storage
    • Alibaba Cloud Object Storage Service (OSS)

注記:

エクスポートするデータのサイズが大きい場合(100 GiB 以上)は、外部ストレージにエクスポートすることをお勧めします。

ローカルファイル

TiDB Cloud Starter インスタンスからローカル ファイルにデータをエクスポートするには、データTiDB Cloudコンソールを使用するまたはTiDB Cloud CLIを使用するエクスポートし、エクスポートしたデータをTiDB Cloud CLI を使用してダウンロードする必要があります。

データをローカル ファイルにエクスポートする場合、次の制限があります。

  • TiDB Cloudコンソールを使用してエクスポートされたデータをダウンロードすることはサポートされていません。
  • エクスポートされたデータはTiDB Cloudのステージングエリアに保存され、2日後に有効期限が切れます。エクスポートしたデータは期限内にダウンロードする必要があります。
  • ステージング領域のストレージスペースがいっぱいの場合、データをローカル ファイルにエクスポートすることはできません。

アマゾンS3

Amazon S3 にデータをエクスポートするには、次の情報を提供する必要があります。

  • URI: s3://<bucket-name>/<folder-path>/
  • 次のいずれかのアクセス資格情報:
    • アクセスキー : アクセス キーにs3:PutObjects3:ListBucket権限があることを確認します。
    • ロールARN : ロールARN(Amazonリソースネーム)にs3:PutObjects3:ListBucket権限があることを確認してください。このロールARNはAWSでホストされているクラスターでのみサポートされることに注意してください。

詳細についてはAmazon S3 アクセスを構成する参照してください。

Googleクラウドストレージ

Google Cloud Storage にデータをエクスポートするには、次の情報を提供する必要があります。

  • URI: gs://<bucket-name>/<folder-path>/
  • アクセス認証情報: バケットのBase64エンコードされたサービスアカウントキー 。サービスアカウントキーにstorage.objects.create権限があることを確認してください。

詳細についてはGCS アクセスを構成する参照してください。

Azure BLOB ストレージ

Azure Blob Storage にデータをエクスポートするには、次の情報を提供する必要があります。

  • URI: azure://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/またはhttps://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/
  • アクセス資格情報: Azure Blob Storage コンテナーの共有アクセス署名(SAS)トークン 。SAS トークンに、 ContainerObjectリソースに対するReadWrite権限があることを確認してください。

詳細についてはAzure Blob Storage アクセスを構成する参照してください。

アリババクラウドOSS

Alibaba Cloud OSS にデータをエクスポートするには、次の情報を提供する必要があります。

  • URI: oss://<bucket-name>/<folder-path>/
  • アクセス資格情報:Alibaba Cloudアカウントのアクセスキーペアペアにoss:PutObjectoss:GetBucketInfo権限があることを確認してください。

詳細についてはAlibaba Cloud Object Storage Service (OSS) アクセスを構成する参照してください。

エクスポートオプション

データフィルタリング

  • TiDB Cloudコンソールは、選択したデータベースとテーブルを含むデータのエクスポートをサポートしています。
  • TiDB Cloud CLI は、SQL ステートメントとテーブルフィルターを使用したデータのエクスポートをサポートしています。

データ形式

次の形式でデータをエクスポートできます。

  • SQL : SQL 形式でデータをエクスポートします。
  • CSV : CSV形式でデータをエクスポートします。以下のオプションを指定できます。
    • delimiter : エクスポートデータで使用する区切り文字を指定します。デフォルトの区切り文字は"です。
    • separator : エクスポートデータのフィールド区切りに使用する文字を指定します。デフォルトの区切り文字は,です。
    • header : エクスポートデータにヘッダー行を含めるかどうかを指定します。デフォルト値はtrueです。
    • null-value : エクスポートデータ内の NULL 値を表す文字列を指定します。デフォルト値は\Nです。
  • Parquet : Parquet 形式でデータをエクスポートします。これは TiDB Cloud Starter データのエクスポートにのみ適用されます。

スキーマとデータは、次の命名規則に従ってエクスポートされます。

アイテム圧縮されていない圧縮
データベーススキーマ{データベース}-schema-create.sql{データベース}-schema-create.sql.{圧縮タイプ}
テーブルスキーマ{データベース}.{テーブル}-schema.sql{データベース}.{テーブル}-schema.sql.{圧縮タイプ}
データ{データベース}.{テーブル}.{0001}.{csvparquet

データ圧縮

次のアルゴリズムを使用して、エクスポートされた CSV および SQL データを圧縮できます。

  • gzip (デフォルト): エクスポートされたデータをgzipで圧縮します。
  • snappy : エクスポートされたデータをsnappyで圧縮します。
  • zstd : エクスポートされたデータをzstdで圧縮します。
  • none : エクスポートしたdataを圧縮しません。

次のアルゴリズムを使用して、エクスポートされた Parquet データを圧縮できます。

  • zstd (デフォルト): Parquet ファイルをzstdで圧縮します。
  • gzip : Parquet ファイルをgzipで圧縮します。
  • snappy : Parquet ファイルをsnappyで圧縮します。
  • none : Parquet ファイルを圧縮しません。

データ変換

データを Parquet 形式にエクスポートする場合、TiDB と Parquet 間のデータ変換は次のようになります。

TiDB Cloud Serverlessの型Parquet プリミティブ型Parquet 論理型
VARCHARBYTE_ARRAYString(UTF8)
TIMEBYTE_ARRAYString(UTF8)
TINYTEXTBYTE_ARRAYString(UTF8)
MEDIUMTEXTBYTE_ARRAYString(UTF8)
TEXTBYTE_ARRAYString(UTF8)
LONGTEXTBYTE_ARRAYString(UTF8)
SETBYTE_ARRAYString(UTF8)
JSONBYTE_ARRAYString(UTF8)
DATEBYTE_ARRAYString(UTF8)
CHARBYTE_ARRAYString(UTF8)
VECTORBYTE_ARRAYString(UTF8)
DECIMAL(1<=p<=9)INT32DECIMAL(p,s)
DECIMAL(10<=p<=18)INT64DECIMAL(p,s)
DECIMAL(p>=19)BYTE_ARRAYString(UTF8)
ENUMBYTE_ARRAYString(UTF8)
TIMESTAMPINT64TIMESTAMP(unit=MICROS,isAdjustedToUTC=false)
DATETIMEINT64TIMESTAMP(unit=MICROS,isAdjustedToUTC=false)
YEARINT32/
TINYINTINT32/
UNSIGNED TINYINTINT32/
SMALLINTINT32/
UNSIGNED SMALLINTINT32/
MEDIUMINTINT32/
UNSIGNED MEDIUMINTINT32/
INTINT32/
UNSIGNED INTFIXED_LEN_BYTE_ARRAY(9)DECIMAL(20,0)
BIGINTFIXED_LEN_BYTE_ARRAY(9)DECIMAL(20,0)
UNSIGNED BIGINTBYTE_ARRAYString(UTF8)
FLOATFLOAT/
DOUBLEDOUBLE/
BLOBBYTE_ARRAY/
TINYBLOBBYTE_ARRAY/
MEDIUMBLOBBYTE_ARRAY/
LONGBLOBBYTE_ARRAY/
BINARYBYTE_ARRAY/
VARBINARYBYTE_ARRAY/
BITBYTE_ARRAY/

データをローカルファイルにエクスポートする

    1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

      ヒント:

      左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

    2. ターゲット TiDB Cloud Starter インスタンスの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

    3. インポートページで、右上隅の「データのエクスポート先」をクリックし、ドロップダウンリストから「ローカルファイル」を選択します。以下のパラメータを入力します。

      • タスク名: エクスポートタスクの名前を入力します。デフォルト値はSNAPSHOT_{snapshot_time}です。

      • エクスポートされたデータ: エクスポートするデータベースとテーブルを選択します。

      • データ形式: SQLCSV 、またはParquet を選択します。

      • 圧縮: GzipSnappyZstd 、またはNoneを選択します。

      ヒント:

      TiDB Cloud Starter インスタンスでこれまでにデータのインポートもエクスポートもしたことがない場合は、ページの下部にある[ここをクリックしてデータをエクスポートします...]をクリックしてデータをエクスポートする必要があります。

    4. [エクスポート]をクリックします。

    5. エクスポート タスクが成功したら、エクスポート タスクの詳細に表示されるダウンロード コマンドをコピーし、 TiDB Cloud CLIでコマンドを実行してエクスポートされたデータをダウンロードできます。

    1. エクスポート タスクを作成します。

      ticloud serverless export create -c <cluster-id>

      出力からエクスポート ID が取得されます。

    2. エクスポート タスクが成功したら、エクスポートされたデータをローカル ファイルにダウンロードします。

      ticloud serverless export download -c <cluster-id> -e <export-id>

      ダウンロード コマンドの詳細については、 ticloud サーバーレスエクスポートのダウンロード参照してください。

    Amazon S3にデータをエクスポートする

      1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

        ヒント:

        左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

      2. ターゲット クラスターの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

      3. インポートページで、右上隅の「データのエクスポート先」をクリックし、ドロップダウンリストから「Amazon S3」を選択します。以下のパラメータを入力します。

        • タスク名: エクスポートタスクの名前を入力します。デフォルト値はSNAPSHOT_{snapshot_time}です。
        • エクスポートされたデータ: エクスポートするデータベースとテーブルを選択します。
        • データ形式: SQLCSV 、またはParquet を選択します。
        • 圧縮: GzipSnappyZstd 、またはNoneを選択します。
        • フォルダー URI : s3://<bucket-name>/<folder-path>/形式で Amazon S3 の URI を入力します。
        • バケット アクセス: 次のアクセス資格情報のいずれかを選択し、資格情報を入力します。
          • AWS ロール ARN : バケットへのアクセス権を持つロール ARN を入力します。AWS CloudFormation を使用してロール ARN を作成することをお勧めします。詳細については、 Amazon S3 アクセスを構成する参照してください。
          • AWS アクセスキー: バケットにアクセスする権限を持つアクセスキー ID とアクセスキーシークレットを入力します。
      4. [エクスポート]をクリックします。

      ticloud serverless export create -c <cluster-id> --target-type S3 --s3.uri <uri> --s3.access-key-id <access-key-id> --s3.secret-access-key <secret-access-key> --filter "database.table" ticloud serverless export create -c <cluster-id> --target-type S3 --s3.uri <uri> --s3.role-arn <role-arn> --filter "database.table"
      • s3.uri : s3://<bucket-name>/<folder-path>/形式の Amazon S3 URI。
      • s3.access-key-id : バケットにアクセスする権限を持つユーザーのアクセス キー ID。
      • s3.secret-access-key : バケットにアクセスする権限を持つユーザーのアクセス キー シークレット。
      • s3.role-arn : バケットにアクセスする権限を持つロール ARN。

      Google Cloud Storage にデータをエクスポートする

        1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

          ヒント:

          左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

        2. ターゲット TiDB Cloud Starter インスタンスの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

        3. インポートページで、右上隅の「データのエクスポート先」をクリックし、ドロップダウンリストから「Google Cloud Storage」を選択します。以下のパラメータを入力します。

          • タスク名: エクスポートタスクの名前を入力します。デフォルト値はSNAPSHOT_{snapshot_time}です。
          • エクスポートされたデータ: エクスポートするデータベースとテーブルを選択します。
          • データ形式: SQLCSV 、またはParquet を選択します。
          • 圧縮: GzipSnappyZstd 、またはNoneを選択します。
          • フォルダ URI : Google Cloud Storage の URI をgs://<bucket-name>/<folder-path>/形式で入力します。
          • バケット アクセス: バケットにアクセスする権限を持つ Google Cloud 認証情報ファイルをアップロードします。
        4. [エクスポート]をクリックします。

        ticloud serverless export create -c <cluster-id> --target-type GCS --gcs.uri <uri> --gcs.service-account-key <service-account-key> --filter "database.table"
        • gcs.uri : gs://<bucket-name>/<folder-path>/形式の Google Cloud Storage バケットの URI。
        • gcs.service-account-key : base64 でエンコードされたサービス アカウント キー。

        Azure Blob Storage にデータをエクスポートする

          1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

            ヒント:

            左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

          2. ターゲット クラスターの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

          3. インポートページで、右上隅の「データのエクスポート先」をクリックし、ドロップダウンリストから「Azure Blob Storage」を選択します。以下のパラメータを入力します。

            • タスク名: エクスポートタスクの名前を入力します。デフォルト値はSNAPSHOT_{snapshot_time}です。
            • エクスポートされたデータ: エクスポートするデータベースとテーブルを選択します。
            • データ形式: SQLCSV 、またはParquet を選択します。
            • 圧縮: GzipSnappyZstd 、またはNoneを選択します。
            • フォルダー URI : azure://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/形式で Azure Blob Storage の URI を入力します。
            • SASトークン: コンテナへのアクセス権を持つSASトークンを入力します。2でSASトークンを作成することをお勧めします。詳細については、 Azure Blob Storage アクセスを構成する Azure ARM テンプレートしてください。
          4. [エクスポート]をクリックします。

          ticloud serverless export create -c <cluster-id> --target-type AZURE_BLOB --azblob.uri <uri> --azblob.sas-token <sas-token> --filter "database.table"
          • azblob.uri : (azure|https)://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/形式の Azure Blob Storage の URI。
          • azblob.sas-token : Azure Blob Storage のアカウント SAS トークン。

          Alibaba Cloud OSSへのデータのエクスポート

            1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

              ヒント:

              左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

            2. ターゲット クラスターの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

            3. 「インポート」ページで、右上隅の「データのエクスポート先」をクリックし、ドロップダウンリストから「Alibaba Cloud OSS」を選択します。

            4. 次のパラメータを入力してください。

              • タスク名: エクスポートタスクの名前を入力します。デフォルト値はSNAPSHOT_{snapshot_time}です。
              • エクスポートされたデータ: エクスポートするデータベースとテーブルを選択します。
              • データ形式: SQLCSV 、またはParquet を選択します。
              • 圧縮: GzipSnappyZstd 、またはNoneを選択します。
              • フォルダー URI : データをエクスポートする Alibaba Cloud OSS URI をoss://<bucket-name>/<folder-path>/形式で入力します。
              • AccessKey IDAccessKey Secret : バケットにアクセスする権限を持つ AccessKey ID と AccessKey Secret を入力します。
            5. [エクスポート]をクリックします。

            ticloud serverless export create -c <cluster-id> --target-type OSS --oss.uri <uri> --oss.access-key-id <access-key-id> --oss.access-key-secret <access-key-secret> --filter "database.table"
            • oss.uri : データをエクスポートする Alibaba Cloud OSS URI ( oss://<bucket-name>/<folder-path>/形式)。
            • oss.access-key-id : バケットにアクセスする権限を持つユーザーの AccessKey ID。
            • oss.access-key-secret : バケットにアクセスする権限を持つユーザーの AccessKey シークレット。

            エクスポートタスクをキャンセルする

            進行中のエクスポート タスクをキャンセルするには、次の手順を実行します。

              1. TiDB Cloudコンソールにログインし、プロジェクトのクラスターページに移動します。

                ヒント:

                左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。

              2. ターゲット クラスターの名前をクリックして概要ページに移動し、左側のナビゲーション ペインで[データ] > [インポート]クリックします。

              3. [インポート]ページで[エクスポート]をクリックして、エクスポート タスク リストを表示します。

              4. キャンセルするエクスポート タスクを選択し、 [アクション]をクリックします。

              5. ドロップダウンリストから「キャンセル」を選択します。キャンセルできるのは、実行中のエクスポートタスクのみです。

              ticloud serverless export cancel -c <cluster-id> -e <export-id>

              エクスポート速度

              エクスポート速度はクラスタープランによって異なります:

              • TiDB Cloud Starter:

                • 使用制限を 0 に設定すると、エクスポート速度は最大 25 MiB/s になります。
                • 支出限度額が 0 より大きい場合、エクスポート速度は最大 100 MiB/s になります。
              • TiDB Cloud Essential : 最大 100 MiB/秒。

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