Database Rotation
Database Rotation は、テーブルサイズの増加を管理し、古いデータをアーカイブします。
インスタンスデータは急速に増加し、これらのテーブルのサイズが大きくなるにつれて管理が必要になります。データベースローテーションはインスタンスのパフォーマンスを維持し、3 つのテクニックを利用して、増加するデータセットのクエリに関連するリスクを回避します。これらのテクニックは、セット全体を個々のテーブルに分割して大量のデータを管理するという概念に基づいています。このタスクが実行された後、各テクニックにより異なる方法でデータが処理されます。
- テーブルローテーションは、少数のテーブル間でローテーションし、古いテーブルを削除して新しいデータを再利用することで機能します。
- テーブル拡張は、定期的に新しいテーブルを開始し、古いテーブルを簡単にアーカイブしてシステムから削除できるようにすることで機能します。
- テーブルシャーディングは、レコードをドキュメント ID で単一のテーブルにグループ化できるようにすることで機能します。
| 機能 | テーブルの適用先 |
|---|---|
| テーブルローテーション | syslog
|
| テーブル拡張 |
|
テーブルローテーションと拡張
テーブルローテーションモジュールを使用すると、新しいテーブルローテーション、新しいテーブル拡張、新しいテーブルシャードを定義したり、既存のテーブルを変更したりすることができます。インスタンスのテーブルローテーションのリストにアクセスするには、次の場所に移動します。
- 名前:テーブル名から自動生成されます
- 期間:関数の全体的な時間パラメーター
- 初期化済み:機能をアクティブ (true) または非アクティブ (false) に設定します
- ローテーション:期間内に作成されるテーブルの数
- タイプ:拡張 (アーカイブ)、ローテーション (削除)、またはシャード (ドキュメント ID) 機能を示します
新しいローテーションを定義すると、スケジュールが作成され、その後、新しいデータがローテーショングループのテーブルのいずれかに書き込まれます。グループには、元のテーブルといくつかの追加のテーブルが含まれていることがわかります。ローテーションを削除すると、追加のテーブルとすべてのデータが削除されるため、データが必要な場合はローテーションを削除しないでください。