すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for OceanBase (Deprecated):ダイレクトロード

最終更新日:Mar 11, 2025

このトピックでは、ApsaraDB for OceanBase コンソールでダイレクトロードを有効および無効にする方法について説明します。

概要

OceanBase Database では、ダイレクトロードを使用してデータベースにデータを挿入できます。ダイレクトロード機能は、従来の SQL レイヤー API を回避し、データベース内のファイルに直接データを書き込むことで、データインポート効率を向上させます。詳細については、「概要」をご参照ください。

前提条件

ダイレクトロードを有効にする前に、次の条件が満たされていることを確認してください。

  • 現在のクラスタが実行中状態であること。

  • 現在のテナントが実行中状態であること。

  • OceanBase Database Proxy (ODP) のバージョンが V4.3.0 以降であること。

    説明

    ODP のバージョンが要件を満たしていない場合は、OceanBase テクニカルサポートに連絡してアップグレードを依頼してください。

  • プライマリアドレスのプライベートアドレスが実行中状態であること。

ダイレクトロードを有効にする

  1. ApsaraDB for OceanBase コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、[インスタンス] をクリックします。

  3. インスタンスリストで、ターゲット クラスタインスタンスの名前をクリックして、[クラスタインスタンスワークスペース] ページに移動します。

  4. 左側のナビゲーションウィンドウで、[データベースプロキシ] をクリックします。

  5. プロキシアドレスリストで、[有効化] をクリックして、プライマリアドレスのプライベートアドレスに対してダイレクトロードを有効にします。

  6. 表示される確認ウィンドウで、[OK] をクリックします。

データをインポートする

  1. 最新バージョンの obloader & obdumper をダウンロードします。

    詳細については、「はじめに」をご参照ください。

  2. 環境変数を表示および設定します。

    1. Java および PATH 環境変数を表示します。

      [root@iZbxxxx rpc]# env | grep JAVA
      JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-2.0.3.al8.x86_64
      [root@iZbxxxx rpc]# env | grep PATH
      PATH=/root/ob-loader-dumper-4.3.0-RELEASE/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    2. Java および PATH 環境変数を設定します。

      [root@iZbxxxx rpc]# export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-2.0.3.al8.x86_64
      [root@iZbxxxx rpc]# export PATH=/root/ob-loader-dumper-4.3.0-RELEASE/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:$PATH
  3. ダイレクトロードモードでデータをインポートします。

    説明

    インポートされるファイルの内容の形式は、関連する仕様を満たしている必要があります。データの準備はできていますか? に基づいて、ファイル内のデータ形式を識別してください。

    [root@iZbxxxx rpc]# obloader -h<host> -u<user_name> -p<pass_word> -D <db_name> --table '<table_name>' -f output1 -t <tenant_name> --public-cloud --csv --direct --rpc-port 3307 -P3306

    パラメーター

    説明

    -h

    OceanBase データベースのホストアドレス。

    -u

    OceanBase データベースに接続するためのユーザー名、テナント名、およびクラスタ名。 <user>@<tenant>#<cluster> 形式 (例: -u user@tenant#cluster)。

    -p

    OceanBase データベースに接続するためのパスワード。

    -D

    データベースオブジェクト定義とテーブルデータをインポートする OceanBase データベースの名前。

    --table

    データをインポートするテーブル (例: --table 'example')。

    -f

    インポートするファイルの名前のプレフィックス。たとえば、前のコマンドでは、インポートするデータは output1 というプレフィックスが付いたファイルに格納されています。

    -t

    接続する OceanBase Database のテナント名。このパラメーターは、--public-cloud パラメーターと組み合わせて使用​​します。

    --public-cloud

    ApsaraDB for OceanBase クラスタからデータベースオブジェクト定義またはテーブルデータをインポートします。

    --csv

    CSV ファイルからデータをインポートします。実際の状況に応じて、--sql--par--orc など、別のファイル形式を指定できます。

    --direct

    ダイレクトロードモードでデータをインポートします。このパラメーターは、--rpc-port および --parallel パラメーターと組み合わせて使用​​します。

    --parallel

    ダイレクトロードモードでデータをロードするための並列度 (DOP)。デフォルト値は 1 です。このパラメーターはオプションであり、--rpc-port および --direct と組み合わせて使用​​します。

    --rpc-port 3307

    OceanBase データベースに接続するための RPC ポート。

    データベースに接続するためのポートは 3306 (-P 3306 で指定) ですが、インポートパフォーマンスを向上させるために、ポート 3307 の RPC サービスを使用してデータがインポートされます。

    -P 3306

    OceanBase データベースに接続するためのホストポート。

ダイレクトロードを無効にする

  1. ApsaraDB for OceanBase コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、[インスタンス] をクリックします。

  3. インスタンスリストで、ターゲット クラスタインスタンスの名前をクリックして、[クラスタインスタンスワークスペース] ページに移動します。

  4. 左側のナビゲーションウィンドウで、[データベースプロキシ] をクリックします。

  5. プロキシアドレスリストで、[無効化] をクリックして、プライマリアドレスのプライベートアドレスに対してダイレクトロードを無効にします。

  6. 表示される確認ウィンドウで、[OK] をクリックします。