HeatWave

HeatWaveは、きわめて高いパフォーマンスを発揮するように設計された、分散型でスケーラブルな、シェアード・ナッシング、インメモリー、ハイブリッド列を特徴とした問合せ処理エンジンです。MySQL DBシステムにHeatWaveクラスタを追加して、HeatWaveを有効にします。

HeatWaveの概要

HeatWaveによって、分析問合せの処理を高速化するためにHeatWaveクラスタがプロビジョニングされます。

HeatWaveクラスタは、MySQL DBシステム・ノードと2つ以上のHeatWaveノードで構成されます。MySQL DBシステム・ノードには、クラスタの管理、問合せのスケジューリング、およびMySQL DBシステムへの問合せ結果の返送を行うHeatWaveプラグインが含まれています。HeatWaveノードは、データをメモリーに格納して、問合せを処理します。

HeatWaveクラスタを有効にすると、特定の前提条件を満たす問合せが、MySQL DBシステムからHeatWaveクラスタに自動的にオフロードされて、実行が高速化されます。MySQLクライアントまたはアプリケーションから発行した問合せは、MySQL DBシステム・ノードに接続することでHeatWaveクラスタと対話します。HeatWaveクラスタは、結果をMySQL DBシステム・ノード、および問合せを発行したMySQLクライアントまたはアプリケーションに返します。

HeatWaveクラスタをデプロイした後、次を参照してください:

  • HeatWaveユーザー・ガイド: データをロードして問合せを実行する方法について説明します。
  • HeatWave tpchクイックスタート: MySQL DBシステムにHeatWaveクラスタを追加する方法、MySQLシェルのパラレル表インポート・ユーティリティを使用してtpchサンプル・データベースをDBシステムにインポートする方法、データをHeatWaveに手動でロードする方法、および問合せを実行する方法について説明します。
  • HeatWave airportdbクイックスタート: MySQL DBシステムにHeatWaveクラスタを追加する方法、MySQLシェルのダンプ・ロード・ユーティリティを使用してairportdbサンプル・データベースをDBシステムにインポートする方法、自動パラレル・ロードを使用してHeatWaveにデータをロードする方法、および問合せを実行する方法について説明します。

関連トピック

HeatWaveクラスタの追加

コンソールを使用して、MySQL DBシステムにHeatWaveクラスタを追加します。

このタスクでは次が必要です:
  • MySQL.HeatWave.VM.Standard.E3またはMySQL.HeatWave.BM.Standard.E3シェイプを持つDBシステム。10TB以上のデータ・セットの場合は、MySQL.HeatWave.BM.Standard.E3シェイプを使用することをお薦めします。
既存のMySQL DBシステムにHeatWaveクラスタを追加するには、次を実行します:
  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 次のいずれかを行います。
    • DBシステムと同じ行にある「アクション」メニューから、「HeatWaveクラスタの追加」を選択します。
    • DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。「リソース」リストから「HeatWave」を選択します。HeatWaveクラスタ情報」フレームで、HeatWaveクラスタの追加」を選択します。
    • DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。「他のアクション」をクリックし、「HeatWaveクラスタの追加」を選択します。
  3. 「HeatWaveクラスタの追加」パネルで、次を実行します:
    • シェイプの選択: HeatWaveノードのシェイプを選択します。「シェイプの変更」をクリックして、HeatWaveノードのシェイプを選択します。
      ノート

      現在、HeatWaveノードではMySQL.HeatWave.VM.Standard.E3およびMySQL.HeatWave.BM.Standard.E3シェイプがサポートされています。
    • ノード数: 作成するHeatWaveノードの数を指定します。最小1ノードおよび最大64ノードがサポートされています。
    • ノード数の見積り: (オプション)これをクリックして、選択したシェイプおよびデータのサイズに基づいて必要なノード数を見積もります。ノード数の見積りの生成を参照してください。
  4. 「HeatWaveクラスタの追加」をクリックします。

HeatWaveクラスタの編集

コンソールを使用して、HeatWaveクラスタのノード数を変更します。

  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  3. 次のいずれかを行います。
    • DBシステムと同じ行にある「アクション」メニューから、「HeatWaveクラスタの編集」を選択します。
    • DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。「リソース」リストから「HeatWave」を選択します。「HeatWaveクラスタ情報」フレームで、「編集」をクリックします。
    • DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。「他のアクション」をクリックし、「HeatWaveクラスタの編集」を選択します。
  4. 「HeatWaveクラスタの編集」パネルで、HeatWaveクラスタのノード数を変更します。
  5. (オプション)「ノード数の見積り」をクリックして、選択したシェイプおよびデータのサイズに基づいて必要なノード数を見積もります。ノード数の見積りの生成を参照してください。
  6. 「変更の保存」をクリックします。
  7. 変更が完了したら、データをHeatWaveにリロードします。

HeatWaveクラスタの起動、停止または再起動

コンソールを使用して、HeatWaveクラスタを起動、停止または再起動します。

  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  3. DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。
  4. 「リソース」リストで、「HeatWave」をクリックします。
  5. 次のアクションの1つを選択します:
    • 起動: 停止しているHeatWaveクラスタを起動します。HeatWaveクラスタが起動すると、「停止」アクションが有効になり、「起動」オプションが無効になります。
    • 停止: 実行中のHeatWaveクラスタを停止します。HeatWaveクラスタが停止すると、「起動」アクションが有効になります。
      ノート

      HeatWaveクラスタを停止すると、クラスタの課金が停止します。HeatWaveクラスタを再起動すると、課金が再開されます。
    • 再起動: HeatWaveクラスタを停止して再起動します。
      ノート

      停止または再起動アクションを介してHeatWaveクラスタを停止すると、HeatWaveクラスタ・メモリーにロードされたデータは失われます。HeatWaveクラスタを起動または再起動すると、HeatWaveクラスタの障害およびリカバリの概要で説明されているように、HeatWaveHeatWaveリカバリ・メカニズムを使用して以前にロードされたデータを自動的にリロードします。HeatWaveクラスタがオフラインの間にDBシステムで発生したデータ変更は、リロードされるデータに含まれます。

HeatWaveクラスタの削除

コンソールを使用して、HeatWaveクラスタを完全に削除します。

  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  3. DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。
  4. 「リソース」リストで、「HeatWave」をクリックします。
  5. 「HeatWaveクラスタ情報」フレームで、「削除」をクリックします。
  6. 「HeatWaveクラスタの削除」ダイアログ・ボックスで、「HeatWaveクラスタの削除」をクリックします。
    ノート

    HeatWaveクラスタの削除は、HeatWaveクラスタがアタッチしているDBシステムには影響しません。ただし、DBシステムを削除すると、アタッチされているHeatWaveクラスタも削除されます。

HeatWaveクラスタのサイズ変更の概要

HeatWaveクラスタのノードは、停止時間やサービスの中断なく、リアルタイムでサイズ変更(拡大または縮小)できます。

HeatWaveクラスタのノードのサイズ変更には、次の利点があります:

  • 可用性: サイズ変更中の停止時間やサービス中断はなく、引き続きDBシステムで問合せを実行できます。
  • 柔軟性: データのサイズに基づいて、HeatWaveクラスタ・ノードを1から64までの任意の数に拡大または縮小できます。また、選択したシェイプおよびデータのサイズに基づいて、必要なノードの数を見積もることができます。ノード数の見積りの生成を参照してください。
  • バランス: サイズ変更が完了すると、クラスタ内のすべてのノードにデータが分散され、新しい問合せは新しいクラスタ・サイズで実行されます。

HeatWaveクラスタのサイズ変更

コンソールを使用して、HeatWaveクラスタのノードのサイズを変更(拡大または縮小)します。サイズの変更中、引き続きHeatWaveクラスタで問合せを処理でき、ロードされた表はメモリーに保持されます。

既存のDBシステムのHeatWaveクラスタのサイズを変更するには、次を実行します:
ノート

HeatWaveクラスタのサイズ変更中にDML操作が実行されていると、サイズ変更は中止されます。
  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「リスト範囲」からコンパートメントを選択します。
  3. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  4. DBシステムのリストで、DBシステムの名前をクリックします。
  5. 「リソース」で、「HeatWave」をクリックします。
  6. 「HeatWaveクラスタ情報」セクションで、「編集」をクリックします。
  7. 「ノード数」フィールドに、1から64までの値を入力します。
  8. (オプション)「ノード数の見積り」をクリックして、選択したシェイプおよびデータのサイズに基づいて必要なノード数を見積もります。ノード数の見積りの生成を参照してください。
  9. 「変更の保存」をクリックします。

HeatWaveクラスタの障害およびリカバリの概要

HeatWaveはノード・ステータスを定期的にモニターし、60秒経ってもノードからのレスポンスがない場合はノード障害とみなします。ノード障害によってリカバリ・プロセスがトリガーされると、HeatWaveは自動的にノードをオンラインにして、クラスタを修正します。

HeatWaveクラスタの修正後、HeatWaveは以前にロードされたデータのリロードを試行します。デフォルトでは、HeatWaveはHeatWaveストレージ・レイヤーからデータをリロードします。これは、HeatWaveクラスタを初めて有効にしたときに作成されます。リカバリを促進するため、データがHeatWaveにロードされるときと、データ変更がDBシステムからHeatWaveに伝播されるときに、データがオブジェクト・ストレージに永続化されます。なんらかの理由でオブジェクト・ストレージからのデータのリロードが失敗すると、HeatWaveはDBシステムからデータをリロードします。DBシステムからデータをロードする際にはデータをHeatWaveストレージ形式に変換する必要がありますが、オブジェクト・ストレージからデータをロードする際にはその必要がないため、高速です。表をアンロードすると、データはHeatWaveから削除され、またバックグラウンド操作でオブジェクト・ストレージからも削除されます。
ノート

リカバリ中、HeatWaveはデータを自動的にリロードします。ただし、MySQL ServerがSUPER_READ_ONLYモードの場合は、HeatWaveにデータをロードできず、HeatWaveのリカバリは失敗します。MYSQL ServerのリセットによるSUPER_READ_ONLYモードの無効化を参照してください。

HeatWave状態の確認

コンソールを使用して、HeatWaveの状態を確認します。

  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「リスト範囲」からコンパートメントを選択します。
  3. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  4. DBシステムのリストで、DBシステムを見つけて、「HeatWaveの状態」列のアイコンを確認します。アイコンの色と関連するテキストによって、HeatWaveクラスタのステータスが示されます。HeatWaveの状態を参照してください。
  5. HeatWaveノードのステータスを確認するには、DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。「リソース」リストから「HeatWave」を選択し、「HeatWaveノード」フレームの「状態」列を確認します。

HeatWaveの状態

「HeatWaveの状態」列のアイコンでHeatWaveクラスタの状態を確認します。

表15-1 HeatWaveの状態

アイコン HeatWaveの状態 説明
グレー 非アクティブ HeatWaveクラスタの電源が、コンソールまたはAPIの停止または再起動アクションによってオフになっています。
削除済 HeatWaveクラスタは削除され、使用できなくなりました。
失敗 エラー条件のため、HeatWaveクラスタの作成または操作の続行が妨げられました。
作成中 HeatWaveはリソースの予約、起動、およびHeatWaveクラスタの作成を実行中です。プロビジョニングには数分かかる場合があります。クラスタはまだ使用できません。
更新中 HeatWaveクラスタは起動、停止、再起動または更新中です。
削除中 HeatWaveクラスタが、コンソールまたはAPIでの終了アクションによって削除中です。
アクティブ HeatWaveクラスタは正常に作成されました。

HeatWaveのノード数の見積りの概要

コンソールを使用して、ワークロードの実行に必要なHeatWaveノードの数を見積もります。

サービスを起動するときに、HeatWave問合せが実行されるデータベース表をHeatWaveクラスタ・メモリーにロードする必要があります。ワークロードの実行に必要なHeatWaveノードの数は、ロードする表と列のサイズ、およびこのデータに対してメモリー内で達成される圧縮によって異なります。HeatWaveクラスタのプロビジョニングが十分でないと、領域が制限されるために、データのロードや問合せの実行が失敗します。HeatWaveクラスタのプロビジョニングが過剰な場合は、不要なリソースの追加コストが発生します。メモリーにロードしようとするデータベース表に基づいて、機械学習によって必要なHeatWaveノードの数がインテリジェントに見積もられます。

ノード数の見積りの生成

ノード数の見積りは、HeatWaveクラスタをDBシステムに追加している間、またはデータのサイズの増減に応じてノード数を調整する目的で後からいつでも生成できます。

このタスクでは次が必要です:
  • DBシステムに存在するHeatWaveクラスタにロードしようとするデータ。
  • オプションで、DBシステムにログインし、HeatWaveクラスタにロードしようとする表でANALYZE TABLEを実行します。通常、見積りはANALYZE TABLEを実行しなくても有効である必要がありますが、ANALYZE TABLEを実行することで見積りの正確さが可能なかぎり保証されます。
ノード数の見積りを生成するには、次を実行します:
  1. ナビゲーション・メニューを開き、「データベース」を選択します。「MySQL」で、「DBシステム」をクリックします。
  2. 「HeatWave」フィルタで、「アタッチ済」を選択して、HeatWaveクラスタがアタッチされているDBシステムをフィルタします。
  3. DBシステムの名前をクリックして、DB Systemの詳細ページを開きます。
  4. 「リソース」リストで、「HeatWave」をクリックします。
  5. 「HeatWaveクラスタ情報」フレームで、HeatWaveクラスタの追加」または「編集」をクリックします。
  6. HeatWaveクラスタの追加」または「編集」ダイアログ・ボックスで、「ノード数の見積り」をクリックします。
  7. 「ノードの数の見積り」パネルで、「見積りの生成」をクリックします。ノード数の見積りを最近生成した場合は、前の見積りの詳細が表示されます。「見積りの再生成」をクリックして、新しい見積りを作成します。
    データのサイズとプロパティによって異なりますが、処理には数分かかる場合があります。操作が完了すると、次の詳細を含むレスポンスが返されます:
    • 名前: スキーマの名前を指定します。
    • メモリー・サイズの見積り: スキーマに必要な見積りのメモリー容量を指定します。
    • 情報: スキーマ内の表の数と、エラーが発生した表の数を指定します。
  8. ノード数の見積りに含めるスキーマを選択します。
    スキーマの選択を変更すると、「サマリー」の見積りの詳細が自動的に調整されます。
  9. (オプション)スキーマ行を展開すると、個々の表に関する情報が表示されます。見積りに含めない表の選択を解除します。
    ノート

    表に問題がある場合は、「情報」列でエラーが報告されます。たとえば、列データ型がサポートされていない表、主キーがない表、または列が多すぎる表についてエラーが報告されます。エラーがある表は、ノード数の見積りに含まれません。エラーを解決した後でノード数の見積りを再生成できます。ノード数見積りの表エラーを参照してください。
  10. 「サマリー」の見積りの詳細を確認します。ここには次の情報が表示されます:
    • シェイプ: 選択したHeatWaveノード・シェイプを指定します。
    • CPUコア数: 選択したHeatWaveノード・シェイプのCPUコア数を指定します。
    • メモリー・サイズ: 選択したHeatWaveノード・シェイプのメモリー・サイズを指定します。
    • ノード数: データ・サイズと選択したHeatWaveノード・シェイプに基づいて必要と推定されるHeatWaveノード数を指定します。
    • 必要な合計メモリー: データ・サイズに基づいて必要と推定されるHeatWaveクラスタのメモリー容量を指定します。
    • 合計メモリー・サイズ: HeatWaveクラスタの合計メモリー・サイズ(選択したHeatWaveノード・シェイプのメモリー・サイズと「ノード数」を掛けた値)を指定します。
    ノート

    「サマリー」の下に表示されるロード・コマンドは、ノード数の見積りで選択されたスキーマと表に基づいて生成されます。このコマンドは、HeatWaveクラスタのプロビジョニング後に、選択したスキーマおよび表をロードするために使用できます。このコマンドは、DBシステムに接続されているMySQLクライアントから実行できます。
  11. 「ノード数見積りの適用」をクリックします。

ノード数見積りの表エラー

ノード数の見積り中に、特定の条件が満たされていないと、表エラーが発生することがあります。

表15-2 ノード数見積りの表エラー

表エラー 説明
TOO MANY COLUMNS TO LOAD 表の列が多すぎます。列の制限は470です。
ALL COLUMNS MARKED AS NOT SECONDARY ロードする列がありません。表のすべての列がNOT SECONDARYと定義されています。
CONTAINS VARLEN COLUMN WITH >8000 BYTES VARLEN列が8000バイトの制限を超えています。VARLENエンコーディングを参照してください。
ESTIMATION COULD NOT BE CALCULATED 見積りを計算できませんでした。たとえば、VARLEN列の統計が使用できない場合、表の見積りを行うことができません。
UNABLE TO LOAD TABLE WITHOUT PRIMARY KEY 表をHeatWaveにロードするには、主キーを含むように前もって定義する必要があります。

HeatWave情報

「DB Systemの詳細」ページのHeatWaveリソースには、HeatWaveクラスタおよびノードに関連する情報が表示されます。このDBシステムにアタッチされたHeatWaveクラスタを表示および管理できます。

表15-3 HeatWaveクラスタ情報

フィールド 説明
アクション 次のアクションを行うことができます:
クラスタ・サイズ クラスタ内のノード数。
シェイプ HeatWaveクラスタ・ノードで使用されるシェイプ。
状態 HeatWaveクラスタの状態:
  • CREATING: 黄色のアイコン。リソースがHeatWaveクラスタ用に予約されており、クラスタが作成中です。プロビジョニングには数分かかる場合があります。クラスタはまだ使用する準備ができていません。

  • ACTIVE: 緑色のアイコン。HeatWaveクラスタが正常に作成されました。

  • UPDATING: 黄色のアイコン。HeatWaveクラスタが、起動、停止、再起動、または編集後の更新の処理中です。

  • INACTIVE: 灰色のアイコン。HeatWaveクラスタの電源が、コンソールまたはAPIでの停止アクションによってオフになっています。

  • DELETING: オレンジ色のアイコン。HeatWaveクラスタが、コンソールまたはAPIでの終了アクションによって削除中です。

  • DELETED: 灰色のアイコン。HeatWaveクラスタは削除され、使用できなくなりました。

  • FAILED: 赤色のアイコン。エラー条件のため、HeatWaveクラスタの作成または操作の続行が妨げられました。

作成日時 HeatWaveクラスタが作成された日時。
最終更新 HeatWaveクラスタが最後に更新された日時。

表15-4 HeatWaveノード

説明
ノードID HeatWaveノードの名前。
状態 HeatWaveノードの現在の状態:
  • CREATING: 黄色のアイコン。リソースがHeatWaveノード用に予約されており、ノードが作成中です。プロビジョニングには数分かかる場合があります。ノードはまだ使用する準備ができていません。

  • ACTIVE: 緑色のアイコン。HeatWaveノードが正常に作成されました。

  • UPDATING: 黄色のアイコン。HeatWaveノードの起動、停止、再起動または更新の処理中です。

  • INACTIVE: 灰色のアイコン。HeatWaveノードの電源が、コンソールまたはAPIでの停止または再起動アクションによってオフになっています。

  • DELETING: オレンジ色のアイコン。HeatWaveノードが、コンソールまたはAPIでの終了アクションによって削除中です。

  • DELETED: 灰色のアイコン。HeatWaveノードは削除され、使用できなくなりました。

  • FAILED: 赤色のアイコン。エラー条件のため、HeatWaveノードの作成または操作の続行が妨げられました。

作成日時 HeatWaveノードが作成された日時。