Hologres の計算グループインスタンスは、時間ベースのスケーリングプランをサポートしています。これにより、サービスのトラフィックピークに基づいて計算リソースを自動的にスケーリングできます。この機能により、インスタンスの安定性が向上し、リソース使用率が高まり、コストが削減されます。このトピックでは、時間ベースのスケーリング機能の使用方法について説明します。
利用シーン
計算グループインスタンスを使用するシナリオを考えます。データ中台チームが、大規模な抽出、変換、ロード (ETL) ジョブ、大規模なオフラインデータインポート、分レベルのニアリアルタイムインポート、およびリアルタイムデータインポートに `init_warehouse` 計算グループを使用します。ビジネスチーム A は warehouse 1 を使用してデータをクエリし、ビジネスチーム B は warehouse 2 を使用してデータをクエリします。時間ベースのスケーリング機能の利用シーンとして、以下が考えられます。
分レベルのニアリアルタイムおよびリアルタイムのデータインポート:これらのタスクには `init_warehouse` 計算グループを使用できます。データ量が一日を通して安定している場合は、時間ベースのスケーリングを設定する必要はありません。書き込みトラフィックに明確な日次ピークがあり、通常は最大 16 時間続く場合は、時間ベースのスケーリングプランを設定して、ピーク期間中に弾性リソースを追加できます。
ビジネスチームのデータクエリ:異なるビジネスチームに異なるセカンダリ計算グループを使用して、ワークロードを分離できます。クエリリクエストの量が安定している場合は、時間ベースのスケーリングを設定する必要はありません。日々のクエリ量が周期的に変化する場合は、時間ベースのスケーリングプランを設定して、ピーク期間中に弾性リソースを追加できます。
大規模な ETL ジョブと大規模なオフラインデータインポート:これらのタスクには Serverless リソースを使用することを推奨します。Serverless Computing は、予約なしで追加の計算リソースを提供します。この機能により、インスタンスの安定性が大幅に向上し、メモリ不足 (OOM) エラーが削減されます。タスクが使用するリソースに対してのみ料金が発生します。詳細については、「Serverless Computing」をご参照ください。この機能の使用方法については、「Serverless Computing 利用ガイド」をご参照ください。
用語集
インスタンスレベルおよび計算グループレベルの計算リソースの定義に関する詳細については、「用語集」をご参照ください。
次の図は、インスタンスの例を示しています。リソースの詳細は次のとおりです。
カテゴリ | リソース詳細 |
インスタンス | 予約済みリソース:96 CU。64 CU は割り当て済み、32 CU は未割り当て。 |
弾性リソース:32 CU。 | |
合計計算リソース:96 + 32 = 128 CU。 | |
計算グループ init_warehouse | 予約済みリソース:32 CU。弾性リソース:16 CU。合計計算リソース:48 CU。 |

課金
インスタンスの予約済みリソース:これらは、計算グループインスタンス専用の計算リソースです。インスタンスの課金方法 (サブスクリプションまたは従量課金) に基づいて課金されます。
インスタンスの弾性リソース:これらは、時間ベースのスケーリング機能によって追加される追加の計算リソースです。課金計算式は次のとおりです:
コスト = 実際の弾性リソース使用量 (CU 時間) × リソース単価。リソース単価の詳細については、「課金の概要」をご参照ください。請求は 1 時間ごとに決済されます。システムは請求書を生成し、ご利用のアカウントから料金を自動的に差し引きます。説明システムはインスタンスの弾性リソース使用量を毎分記録します。1 時間ごとに、システムは合計使用量を計算し、単位を変換してその時間の請求書を生成し、ご利用のアカウントから料金を自動的に差し引きます。
インスタンスの弾性リソースは、インスタンスの未割り当ての予約済みリソースとは独立しています。時間ベースのスケーリング機能は、利用可能な未割り当てリソースを使用するのではなく、新しい計算リソースを追加します。
制限事項
時間ベースのスケーリング機能は、計算グループインスタンスでのみサポートされています。汎用インスタンスや読み取り専用セカンダリインスタンスではサポートされていません。
時間ベースのスケーリング機能は、Hologres V2.2.21 以降でサポートされています。
リージョン別の提供状況:
時間ベースのスケーリング機能はパブリックプレビュー中です。試用を申請するには、Alibaba Cloud アカウントを使用して Hologres 時間ベースのスケーリング パブリックプレビュー申請フォームに記入してください。
リージョン
時間ベースのスケーリングのサポート状況
注意事項
中国 (杭州)、中国 (上海)、中国 (北京)、中国 (深セン)
サポート
申請が承認されると、この機能を直接使用できます。
China (Shanghai) Finance Cloud、China (Beijing) Gov Cloud、China (Shenzhen) Finance Cloud、日本 (東京)、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)
サポート対象外
トライアルを申請することはできません。
中国 (成都)、中国 (香港)、シンガポール、ドイツ (フランクフルト)、米国 (シリコンバレー)、米国 (バージニア)、UAE (ドバイ)
チケットを送信して申請
この機能を使用するには、次の手順で申請してください:
Hologres 時間ベースのスケーリング パブリックプレビュー申請フォームに記入します。
追加の申請には、チケットを起票してください。
注意事項
時間ベースのスケーリング機能の使用に必要な権限:
Alibaba Cloud アカウント、または `AliyunHologresWarehouseFullAccess` 権限が付与された Resource Access Management (RAM) ユーザーを使用する必要があります。この権限には、Hologres コンソールへの読み取り専用アクセスと、時間ベースのスケーリング機能の設定権限が含まれます。権限の付与方法の詳細については、「RAM ユーザーへの権限付与」をご参照ください。
アカウントには、インスタンスに対する `Superuser` 権限も必要です。この権限の付与方法の詳細については、「インスタンスの開発者権限を RAM ユーザーに付与する」をご参照ください。
計算グループのスケールインまたはスケールアウトは、クエリと書き込みに影響を与える可能性があります:
Hologres V2.2 では、時間ベースのスケーリング機能を使用して計算グループでスケジュールされたスケールアウトおよびスケールイン操作を実行すると、計算グループへのクエリと書き込みが約 15 秒間中断されます。
Hologres V3.0 以降では、計算グループのスケールアウト中にクエリと書き込みは影響を受けませんが、計算グループのステータスは「処理中」に変わります。スケールイン中は、クエリと書き込みが約 15 秒間中断されます。
Hologres V3.1 以降では、スケールイン中に計算グループ内のほとんどのクエリと書き込みは影響を受けません。ただし、スケールインがトリガーされたときに大規模なクエリまたは書き込みが実行中で、タスクが 60 分以上実行される場合、タスクはスケールイン開始から 60 分後にエラーを報告します。
スケーリングプランが計算グループに設定された後:
計算グループを停止、削除、またはスケールインすることはできません。
計算グループのスケールアウトは Hologres コンソールからのみ実行できます。手動で
hg_alter_warehouseコマンドを実行して計算グループをスケールアウトすることはできません。計算グループの作成は Hologres コンソールからのみ実行できます。手動で
hg_create_warehouseコマンドを実行して計算グループを作成することはできません。
時間ベースの弾性リソースは従量課金の計算リソースです。リソースプロビジョニングの成功は保証されません。失敗したイベントに対して CloudMonitor アラートを設定してください。詳細については、「時間ベースのスケーリングの監視とアラート」をご参照ください。
利用ガイド
計算グループリソースの管理
計算グループ管理 ページに移動します。
Hologres コンソールにログインします。トップメニューバーで、リージョンを選択します。
左側のナビゲーションウィンドウで [インスタンスリスト] をクリックします。対象の インスタンスの ID をクリックして、インスタンス詳細ページに移動します。
インスタンス詳細ページの左側のナビゲーションウィンドウで、計算グループ管理 をクリックします。
計算グループインスタンスのリソース使用量を確認します。
[計算グループリソース管理] タブで、計算グループインスタンスのリソース使用量を確認できます。これには、インスタンスの予約済みリソース (割り当て済みおよび未割り当ての両方) とインスタンスの弾性リソースが含まれます。
計算グループリソースを管理します。
[計算グループの作成] をクリックします。[計算グループの作成] ダイアログボックスで、[計算グループ名] を入力し、[計算グループリソース] の数を指定して新しい計算グループを作成します。
[ステータス] が [実行中] の計算グループに対して、[設定の変更]、[再起動]、[停止]、および [リバランス] 操作を実行できます。リバランスの詳細については、「シャードのリバランス」をご参照ください。
説明インスタンスのデフォルト計算グループである `init_warehouse` を [停止] することはできません。
計算グループのスケーリングプラン
スケーリングプランの時系列グラフの表示
計算グループ管理 ページに移動し、計算グループのスケーリングプラン タブをクリックします。
[インスタンス/計算グループの選択] ドロップダウンリストからインスタンスまたは計算グループを選択して、そのスケーリングプランの時系列グラフを表示します。時系列グラフには、プランによってスケジュールされた将来のスケールアウトおよびスケールイン操作が表示されます。過去のリソース監視メトリックは表示されません。
計算グループのスケーリングプランの設定
[計算グループのスケーリングプラン] タブで、対象の計算グループの左側にある
をクリックし、次に [期間の追加] をクリックします。毎日の有効期間の開始時刻と終了時刻、および弾性計算リソースの量を設定します。操作列の [保存] をクリックして設定を適用します。既存のスケーリングプランを [編集] または [削除] できます。
弾性計算リソースの量は、予約済み計算リソースの量を超えることはできません。
各計算グループは、最大 5 つの弾性期間をサポートします。
スケーリングプランを削除すると、リソースが変更されなくても計算グループのステータスは「処理中」に変わります。この間、計算グループへの読み取りと書き込みは影響を受けません。
スケーリングプランを保存する際、変更が現在の時間に割り当てられている弾性リソースに影響する場合、変更はすぐに有効になり、Hologres は計算グループをスケーリングします。次の例でこの動作を説明します:
例 1
現在の時刻が 16:00 で、64 CU の予約済みリソースを持つ計算グループ A に新しいスケーリングプランを追加するとします。
プランでは、有効期間を 15:00 から 18:00、弾性計算リソースを 32 CU と指定します。プランを保存すると、計算グループ A の合計計算リソースはすぐに 96 CU にスケールアウトします。
例 2
現在の時刻が 16:00 で、64 CU の予約済みリソースを持つ計算グループ A の既存のスケーリングプランを変更するとします。
変更前:有効期間は 15:00–18:00、弾性計算リソースは 32 CU。
変更後:有効期間は 17:00–18:00、弾性計算リソースは 32 CU。
変更を保存すると、計算グループ A の合計計算リソースはすぐに 96 CU から 64 CU にスケールインします。
時間ベースのスケーリングの監視とアラート
スケーリングプランの実行は、次の方法で監視できます。
スケーリングプランの実行ログ
[計算グループ管理] ページに移動し、[弾性イベント実行ログ] タブをクリックします。
時間範囲を選択して、過去のスケーリングプランの実行履歴を表示します。履歴には、実行時間、計算グループ、実行ステータス、イベントタイプ、予約済み計算リソース、およびターゲットの弾性計算リソースが含まれます。
メトリック
Hologres コンソールでは、Warehouse_timed_elastic_cores(Count) メトリックを表示できます。これは、インスタンスに対して時間ベースのスケーリングによって追加されたコア数です。必要に応じて、このメトリックのアラートルールを設定できます。詳細については、「Hologres コンソールでのメトリックの監視」をご参照ください。
CloudMonitor イベント
Hologres スケーリングプランによって実行されるスケールアウトおよびスケールイン操作のイベントは、CloudMonitor に記録されます。
CloudMonitor イベントセンターに移動します。[システムイベント] ページの [イベント監視] セクションで、プロダクトとして Hologres を選択します。その後、時間ベースのスケーリングイベントを監視できます。
イベント名
Instance:Warehouse:TimedElastic:Start:計算グループの時間ベースのスケーリング操作の開始イベント。イベント名
Instance:Warehouse:TimedElastic:Finish:計算グループの時間ベースのスケーリング操作の完了イベント。イベント名
Instance:Warehouse:TimedElastic:Failed:計算グループの時間ベースのスケーリング操作の失敗イベント。
CloudMonitor イベントに基づいて、通知、アラート、その他の操作を設定できます。詳細については、「システムイベントを使用したアラート」をご参照ください。
以下は、失敗したスケーリングイベントの詳細の例です:
{ "Status": "Failed", "InstanceName": "<instance_id>", "ResourceId": "<instance_resource_id>", "Content": { "ScaleType": "ScaleDown", "ScheduleId": "xxxxxx", "TimedElasticCPU": 0, "WarehouseId": "2", "WarehouseName": "<warehouse_name>" }, "Product": "hologres", "Time": 1722852008000, "Level": "WARN", "RegionId": "<region>", "Id": "<event_id>", "GroupId": "0", "Name": "Instance:Warehouse:TimedElastic:Failed" }
ActionTrail
Hologres コンソールで実行された操作 (スケーリングプランの編集など) や、プランによって実行されたスケーリング操作は ActionTrail に記録されます。詳細については、「イベント監査ログ」をご参照ください。