12.7 ストレージと Cluster のチューニング
ストレージと Cluster の調整は、ワークロード測定、障害復旧目標、ノード別リソース使用量に基づいて行います。 固定のハードウェア仕様や任意の設定値を、すべての環境に当てはめないでください。
ストレージとチェックポイント
同じ時間範囲で次を比較します。
- 入力 rows/s とサーバー処理応答の遅延
- クエリ応答時間と読み出し量
- デバイス別 IOPS、スループット、キュー、遅延
- チェックポイントの開始・終了と所要時間
- メモリ・スワップの変化
- 障害後に許容する復旧時間
iostat -x 1 5
df -hチェックポイント間隔と I/O 関連設定の現在値を 設定リファレンスで確認します。 1項目ずつ変更し、再起動の要否とロールバック値を記録します。
パスと容量
- データ、バックアップ、エクスポートのパスの所有者と空き容量を確認します。
- 同じ物理デバイス上でパスを分けただけで I/O が分散するとは限りません。
- 稼働中のデータファイルを手動で移動しないでください。
- 保持ポリシーとバックアップ領域の増加を併せて計算します。
- ファイルシステム・マウント設定の変更は、サポート範囲と復旧手順を検証します。
古いデータの削除に、内部パーティションテーブル名を直接使わないでください。タイプ別の
DELETE ... BEFORE、保持ポリシー、バックアップポリシーなど、公開 SQL と運用機能を使用します。
Cluster の測定
クライアント、Broker、Warehouse、Coordinator の指標を分けて確認します。
| 区間 | 確認項目 |
|---|---|
| クライアント → Broker | 接続、往復通信、バッチサイズ |
| Broker | セッション、ルーティング、CPU・ネットワーク |
| Warehouse | ノード別の入力・クエリ・ディスクの偏り |
| ノード間通信 | 帯域幅、パケット損失、遅延 |
| Coordinator | ノード状態と disk-full ポリシー |
特定ノードに負荷が集中した場合は、タグ・キー分布、ルーティング、Warehouse グループ、ノード別の
ストレージとネットワークを確認します。TAG_PARTITION_COUNT を Cluster のノード分散制御に使わないでください。
設定変更の原則
- 名前、許容範囲、デフォルト値は、インストール済みバージョンのリファレンスで確認します。
- 任意の推奨値ではなく、現在の基準値と目標を記録します。
- バッファを増やす場合、スループットに加えてメモリとテールレイテンシーを測定します。
- 複製設定の変更前に、正常時と障害時の復旧時間を比較します。
- disk-full の上下しきい値にヒステリシスを設け、実際の増設・整理手順と結び付けます。
- Edition 別の非サポート機能はサポート範囲で確認します。
変更チェックリスト
- ノード・区間別のボトルネックの根拠があるか。
- 現在値と出典を記録したか。
- 検証環境で正常・障害シナリオを測定したか。
- ノード別のデプロイ順序と再起動の要否を確認したか。
- 結果が悪い場合に戻す値と手順があるか。
- 変更後にバックアップ・復旧も検証したか。
最終更新日