RDS MySQL Cluster Edition インスタンスに DuckDB 分析読み取り専用ノードを追加して、トランザクションワークロードと並行してリアルタイムの分析機能を有効にします。
前提条件
DuckDB 分析読み取り専用ノードを追加する前に、プライマリインスタンスが次の要件を満たしていることを確認してください。
|
制限 |
要件 |
|
製品シリーズ |
Cluster Edition |
|
データベースのバージョン |
MySQL 8.0、5.7 |
|
ストレージタイプ |
高性能クラウドディスク、ESSD クラウドディスク |
|
ストレージ容量 |
10 GB 以上 32,000 GB 以下 |
|
無効 |
|
|
無効。DuckDB ノードの追加と MGR の有効化は両立しません。 |
|
|
InnoDB ノード |
インスタンスには、少なくとも 1 つの InnoDB スタンバイノードが必要です。 |
課金
DuckDB 分析読み取り専用ノードは、製品シリーズ、インスタンスタイプ、ストレージタイプ、およびストレージ容量に基づいて、標準の読み取り専用インスタンスと同様に課金されます。実際の費用は購入ページに表示されます。
無料トライアルとハンズオン体験
無料トライアルとハンズオン体験の詳細については、「DuckDB 分析読み取り専用インスタンスの概要」をご参照ください。
注意事項
-
作成時間:DuckDB 分析読み取り専用ノードを作成すると、システムはプライマリインスタンスから新しいノードにすべてのデータを同期し、データを自動的に列指向ストレージ形式に変換します。このプロセスは、通常の InnoDB ノードを作成するよりも時間がかかります。所要時間は、プライマリインスタンスのデータ量によって異なります。
-
レプリケーション:データは、DuckDB 分析読み取り専用ノードとプライマリインスタンス間で非同期にレプリケートされます。
-
外部キー制約:作成プロセス中に、システムはテーブルスキーマから外部キーを自動的に削除します。つまり、DuckDB 分析読み取り専用ノードは外部キー制約を強制しません。
-
高可用性と災害対策:
-
DuckDB 分析読み取り専用ノードは、プライマリインスタンスのリーダー選出プロセスには参加しません。
-
DuckDB 分析読み取り専用ノードは、プライマリおよびスタンバイ InnoDB ノードの災害対策ノードとして使用することはできません。
-
-
スキーマの制限:
-
utf8またはutf8mb4の文字セットを持つテーブルのみサポートされます。 -
パーティションテーブルはサポートされていません。
-
ビジネスプライマリキーのないテーブルはサポートされていません。ビジネスプライマリキーは、
Primary Keyまたは非 NULL 列のUNIQUE制約です。
説明これらの条件を満たさないテーブルの場合、DuckDB 分析読み取り専用ノードは InnoDB ストレージエンジンを使用します。これらのテーブルのデータには通常どおりアクセスしてクエリを実行できます。次の SQL ステートメントを実行して、インスタンス内の互換性のない可能性のあるテーブルを見つけることができます。
SELECT table_schema, table_name, engine FROM information_schema.tables WHERE table_schema NOT IN ('mysql', 'sys', 'information_schema', 'performance_schema') AND engine = 'InnoDB'; -
-
互換性:SQL 構文、関数、およびその他の機能との互換性の詳細については、「DuckDB 分析インスタンスの互換性に関する注意事項」をご参照ください。
DuckDB 分析読み取り専用ノードの追加
対象の RDS MySQL Cluster Edition インスタンスに、いつでも DuckDB 分析読み取り専用ノードを追加できます。このプロセスは、プライマリインスタンスのワークロードには影響しません。
手順
-
RDS コンソールにログインします。左側のナビゲーションペインで、インスタンス をクリックします。上部メニューで、リージョンを選択します。次に、対象のインスタンスの ID をクリックします。
-
DuckDB 分析読み取り専用ノードを追加するには、次のいずれかの方法を使用します。
-
方法 1:[インスタンス] ページで、対象のインスタンスを見つけ、操作 列で、詳細 > DuckDB 読み取り専用ノードの作成 を選択します。
-
方法 2:インスタンスの詳細ページで、右上の DuckDB 読み取り専用ノードの作成 をクリックします。
-
方法 3:インスタンスの詳細ページの インスタンストポロジ管理 > データベースノード セクションで、ノードの追加と削除 をクリックします。表示されたダイアログボックスで、DuckDB 分析読み取り専用ノードの追加 を選択し、次へ をクリックします。
-
-
DuckDB 分析読み取り専用ノードを設定します。次の表に、主要なパラメーターを示します。
パラメーター
説明
[課金方法]
サブスクリプションと従量課金の両方がサポートされています。サーバーレスはサポートされていません。
[エディション]
[ベーシックエディション]、[高可用性エディション]。
[ストレージタイプ]
プライマリインスタンスと同じです。
[制品タイプ]
[SE] のみサポートされます。
[プライマリノードのゾーン]
プライマリインスタンスと同じリージョン内のアベイラビリティゾーンのみ選択できます。
[デプロイ方法]
-
[シングルゾーンデプロイ]:DuckDB 分析読み取り専用インスタンスのプライマリノードとスタンバイノードは、同じアベイラビリティゾーンに配置されます。
-
[マルチゾーンデプロイ]:DuckDB 分析読み取り専用インスタンスのプライマリノードとスタンバイノードは、同じリージョン内の異なるアベイラビリティゾーンに配置され、追加費用なしでクロス AZ 災害対策を実現します。このオプションを選択した場合は、スタンバイノードのアベイラビリティゾーンも設定する必要があります。
[インスタンスタイプ]
専用インスタンスタイプと汎用インスタンスタイプがサポートされています。詳細については、「DuckDB 分析読み取り専用インスタンスのインスタンスタイプ」をご参照ください。
[データベースプロキシ]
無料の [一般型] データベースプロキシを有効にすると、自動化されたハイブリッドトランザクション/分析処理 (HTAP) クエリスプリッティングが有効になります。プロキシは、オンライン分析処理 (OLAP) クエリを DuckDB 分析読み取り専用ノードにルーティングし、オンライントランザクション処理 (OLTP) クエリをプライマリインスタンスまたは他の読み取り専用インスタンスにルーティングします。
[容量]
分析読み取り専用ノードのストレージ容量は、プライマリインスタンスのストレージ容量の少なくとも半分である必要があります。
-
-
[次へ:インスタンスの設定] をクリックします。インスタンスのネットワークとリソースグループを設定します。次の表に、主要なパラメーターを示します。
パラメーター
説明
[VPC]
プライマリインスタンスの Virtual Private Cloud (VPC) がデフォルトで設定されており、変更できません。
[プライマリノードの VSwitch]
デフォルトの vSwitch を使用するか、必要に応じて選択します。
[リソースグループ]
デフォルトでプライマリインスタンスのリソースグループが設定されており、変更できません。
-
[次へ:注文の確認] をクリックします。
-
パラメーター を確認し、購入プラン を選択し、今すぐ支払い をクリックして支払いを完了します。
サブスクリプションの課金方法を選択した場合は、期間 も選択する必要があります。自動更新 を選択して、更新忘れによるサービスの中断を防ぐことを推奨します。
-
しばらくすると、インスタンス ページにプライマリインスタンスが表示されます。インスタンス ID の左側にあるドロップダウン矢印をクリックして、プライマリインスタンスの下にある DuckDB 分析読み取り専用ノードを表示します。
DuckDB 分析読み取り専用ノードへの接続
次のいずれかの方法を使用して、DuckDB 分析読み取り専用ノードに接続します。
(推奨) データベースプロキシ経由での接続
同時実行性の高いオンライントランザクション処理 (OLTP) と複雑なオンライン分析処理 (OLAP) を組み合わせたワークロードには、データベースプロキシを使用して 自動化された HTAP クエリスプリッティングを有効にします。プロキシは各 SQL クエリのコストを推定し、OLAP クエリを DuckDB 分析読み取り専用ノードに、OLTP クエリをプライマリインスタンスまたは他の読み取り専用インスタンスにルーティングするため、アプリケーションレベルのリクエストルーティングが不要になります。
-
RDS MySQL Cluster Edition インスタンスに DuckDB 分析読み取り専用ノードを追加します。
プライマリインスタンスに対して汎用データベースプロキシを有効にします。
-
プライマリインスタンスの自動化された HTAP クエリスプリッティングを有効にします。
-
プロキシエンドポイントを使用してデータベースに接続します。データベースプロキシは、推定されたクエリ実行コストに基づいて、リクエストを最適なインスタンスに自動的にルーティングします。
直接接続
DuckDB 分析読み取り専用ノードには、専用エンドポイントがあります。ワークロードが完全に OLAP クエリで構成されている場合は、このエンドポイントを使用してノードに直接接続します。
-
RDS コンソールにログインします。左側のナビゲーションペインで、インスタンス をクリックします。上部メニューで、リージョンを選択します。
-
インスタンス ページで、プライマリインスタンスを見つけます。インスタンス ID の左側にあるドロップダウン矢印をクリックして、プライマリインスタンスの下にある DuckDB 分析読み取り専用ノードを表示します。
-
DuckDB 分析読み取り専用ノード ID をクリックして、詳細ページに移動します。 セクションで、接続の詳細を表示 をクリックしてエンドポイントを取得します。
デフォルトでは、RDS インスタンスは内部エンドポイントを提供します。インターネット経由でインスタンスにアクセスする必要がある場合は、まずパブリックエンドポイントを申請し、次にDuckDB 分析読み取り専用ノードに接続する必要があります。
DuckDB ノード設定の変更
インスタンスタイプ (vCPU とメモリ) やストレージ容量など、DuckDB 分析読み取り専用ノードの設定はいつでも調整できます。DuckDB 分析読み取り専用ノードの詳細ページに移動します。基本情報 タブの 設定情報 セクションで、設定を変更する をクリックします。詳細については、「設定の変更」をご参照ください。