私はSQL Serverの経験豊富なDBAですが、パーティショニングは初めてで、いくつか質問があります。 SQL Server 2008 R2 Enterprise Editionを使用する。
1日あたり約10 GBずつ増加する大規模な顧客メトリックデータベースを継承しました。このデータベースは現在、1つのファイルグループ(PRIMARY)内の1つの大きなデータファイルで構成されています。すべてのテーブルには、InsertedDate
という日時列があります。暦週ごとに個別のデータファイルを使用して、データをInsertedDate
で水平分割します。
テスト環境で、必要な追加のファイルグループとデータファイルをこのデータベースに追加し、各テーブルのInsertedDate
にクラスター化インデックスを配置して、パーティション関数とパーティション構成を設定しました。 sys.partitions
およびその他のシステムテーブルでは、データが正しいパーティションとデータファイルに物理的に存在することを確認しました。
特に、目標は次のとおりです。
PRIMARY
ファイルグループと現在の日付範囲のファイルグループのみをバックアップすることで、バックアップ時間を短縮します(現在、毎晩フルバックアップを実行しています)。日付の範囲が過去になると、そのパーティションに再度書き込まれることはないため、ファイルグループを読み取り専用に設定し、最後にもう一度バックアップします。
最終的にパーティションを「アウトオブサービス」にすることができます。 3か月が経過すると、古いデータをオンラインに保持する必要がなくなるため、そのデータをオフラインにします(ただし、必要に応じてそのデータを再びオンラインに戻すことができます)。
質問:
1)データベース全体をバックアップせずに、このパーティション化されたデータベースでバックアップを実行するにはどうすればよいですか?個々のファイルグループをバックアップすることはできますが、復元するにはデータベースの残りの部分が必要です。これにより、複数の小さいデータファイルを使用する目的が損なわれます。
2)パーティションをサービスから外すにはどうすればよいですか?切り替えについては読みましたが、同じデータベース内のパーティション間でデータを移動する場合にのみ機能するようです。さまざまなデータを簡単かつ安全にオフラインで(そして必要に応じてオンラインに)戻したい。
質問1)にはお答えできません。
しかし、質問2)に答えるには:
あなたが要求しているものは、「スライディングウィンドウシナリオ」として知られています。
不要になったデータを含むパーティションを削除する場合は、次の手順を実行する必要があります。
MERGE RANGE ...
http://technet.Microsoft.com/en-us/library/aa964122.aspx にあるこの詳細と、パーティショニングに関するホワイトペーパー http:// msdn .Microsoft.com/en-us/library/dd578580%28v = sql.100%29.aspx 。
「2)パーティションのサービスを停止するにはどうすればよいですか?」
これは恐ろしい考えですが、...