本記事では、OceanBase Cloudコンソールを使用してダイレクトロードポートを有効化/無効化する方法について説明します。
概要
OceanBase Cloudは、ダイレクトロードを通じてデータベースにデータを挿入することをサポートしています。この機能は従来のSQL層インターフェースをバイパスし、データベースのファイルに直接データを書き込むことで、データインポートの効率を向上させます。詳細については、ダイレクトロードの概要を参照してください。
前提条件
ダイレクトロードを使用する際は、以下のチェックを行います。以下のすべての条件を満たしている場合にのみ、ダイレクトロードポートを有効化する操作を実行できます。
クラスタインスタンスに対する読み取りおよび書き込み権限が付与されていること。
現在のクラスタがトランザクション型インスタンスであり、実行中の状態にあること。
現在のテナントが実行中の状態にあること。
メインアドレスのプライベートネットワークアドレスが実行中であること。
ダイレクトロードの有効化
OceanBase Cloudコンソールにログインします。
**インスタンスページで、対象のクラスタインスタンス名をクリックし、インスタンスページ**に移動します。
左側のナビゲーションバーで、**データベースプロキシ**をクリックします。
プロキシ セクションで、有効にする をクリックします。この操作は、ダイレクトロードのポート フィールドの後にあります。
確認ダイアログで、**OK**をクリックします。
データのインポート
最新バージョンのOceanBaseデータロードツールをダウンロードします。
OceanBaseデータロードツールの詳細については、製品紹介を参照してください。
環境変数を確認し、設定します。
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/binJavaおよび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
ダイレクトロード方式でデータをインポートします。
説明
インポートするファイルの内容形式は規格に準拠している必要があります。詳細については、データインポートでサポートされているファイル形式とエンコーディング形式を参照してください。
[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 | OceanBaseデータベース内の指定されたテーブルに対して操作を実行します。例:--table 'example'。 |
| -f | インポート対象ファイル名のプレフィックスを指定します。例えば、このコマンドは、インポート対象データが output1 をプレフィックスとするファイルに保存されていることを示します。 |
| -t | このパラメータは --public-cloud と組み合わせて使用し、OceanBaseデータベースに接続するテナント名を指定します。 |
| --public-cloud | クラウドデータベースOceanBaseからデプロイされたOceanBaseクラスタからデータベースオブジェクトまたはテーブルデータをインポートするために使用します。 |
| --csv | インポート対象のデータファイル形式をCSVと指定します。インポートするデータの実際の形式に応じて、例えば --sql、--par、--orc などを指定できます。 |
| --direct | ダイレクトロードモードの使用を指定します。このパラメータは --rpc-port、--parallel と組み合わせて使用します。 |
| --parallel | ダイレクトロード時のデータ読み込み並列度を指定します。このパラメータはオプションで、デフォルト値は1です。--rpc-port、--direct と組み合わせて使用します。 |
| --rpc-port 3307 | OBServer RPCに接続するポートを指定します。データベース接続ポートは3306(-P3306で指定)ですが、実際のデータインポートは3307ポートのRPCサービスを介して行われ、インポートパフォーマンスが向上します。 |
| -P 3306 | OceanBaseデータベースに接続するホストポートを指定します。 |
ダイレクトロードの無効化
OceanBase Cloudコンソールにログインします。
**インスタンスページで、対象のクラスタインスタンス名をクリックし、インスタンスページ**に移動します。
左側のナビゲーションバーで、**データベースプロキシ**をクリックします。
**データベースプロキシページのメインアドレスのプライベートネットワークアドレス領域で、バイパスインポートポートの右側にある無効化**をクリックします。
注意
ダイレクトロードポートを無効化する前に、そのポートに他のサービスが接続されていないことを確認してください。
確認ダイアログで、**OK**をクリックします。