Azure SQL Database でテンポラル テーブルの一般提供を開始

執筆者: Borko Novakovic (Senior Program Manager, SQL Server Team)

このポストは、10 月 12 日に投稿された Temporal Tables are generally available in Azure SQL Database の翻訳です。

 

テンポラル テーブルを使用すると、カスタム コードを作成せずに Azure SQL Database で完全なデータの変更履歴を直接追跡できます。このテンポラル テーブルでは、過去の任意の時点のデータを確認したり、履歴データの保持期間を制御する宣言型クリーンアップ ポリシーを使用したりできます。

テンポラル テーブルの用途

ある重要な情報が 1 日前、1 か月前、1 年前にどのような状態であったか、年初から現在までにどのような変更が行われたか、特定期間中にどのような傾向が支配的であったかなどの基礎的な調査を行う機会は少なくありません。しかし、データベースで適切な機能がサポートされていないと、このような調査は非常に困難です。
テンポラル テーブルを使用すると、日々書き換えられるデータの変化から重要なインサイトを得られるアプリケーションを生産的に開発することができます。
テンポラル テーブルは次のような場合に効果的です。

  1. アプリケーションでのデータ監査の支援
  2. 継続的にデータを監視して、傾向の分析や異常の検出を行う
  3. 変化が緩慢なディメンション パターンを手軽に実装
  4. 人為的な、またはアプリケーションによる予期しないデータ エラーが発生した場合に行の修復をきめ細かく行う

簡易保持ポリシーを利用して履歴データを管理

履歴データを保持すると、特に保持期間が長い場合はデータベース サイズが大きくなります。このため、履歴データの保持ポリシーは各テンポラル テーブルのライフサイクルを計画、管理するうえで重要な要素となります。Azure SQL Database のテンポラル テーブルの保持メカニズムは非常に簡単で、下図のようにテーブルの作成時、またはテーブル スキーマの変更時に 1 つのパラメーターを設定するだけで保持ポリシーを適用できます。

 ALTER TABLE [WebSiteClicks]
SET
(
SYSTEM_VERSIONING = ON
(
HISTORY_TABLE = dbo. WebSiteClicks_History,
HISTORY_RETENTION_PERIOD = 3 MONTHS
)
);

保持ポリシーはいつでも変更可能で、即時適用されます。

テンポラル テーブルのメリット

データの変化を追跡する必要がある場合にテンポラル テーブルを使用すると、あらゆるカスタム ソリューションで多くのメリットが得られます。テンポラル テーブルは、オブジェクトの作成やスキーマの変更、データの変更、特定時点の分析、データ エイジングなど、開発ライフサイクルの各段階の作業を簡略化できます。

Temporal Benefits

次のステップ

自社アプリケーションにテンポラル テーブルを統合する方法については、こちらのドキュメントにある手順ごとのガイドをご覧ください。テンポラル保持を行う場合は、Azure.com の「保持ポリシーを使用したテンポラル履歴の管理 (英語)」の記事をお読みください。
Channel 9 ではお客様の事例 (英語)デモを交えたライブ プレゼンテーション (英語) を公開していますので、こちらもご覧ください。詳細については、MSDN のドキュメントを参照してください。