何百万ものレコードを含む 2 つのテーブル (SQL 2008 を使用して保存) のビューがあります。
CREATE VIEW VwSalesAge
AS
SELECT
Transactions.ID
,Transactions.Amount
,Customer.ID
,Customer.Name
,Customer.Age
FROM Transactions
INNER JOIN Customer
ON Transactions.CustomerID=Customer.ID
今、物理テーブルを使用してこの情報を保存し、次のようなさらに小さなクエリで大きなテーブルをスキャンしないようにします
SELECT *
FROM VsSalesAge
WHERE Customer.ID = 123
したがって、パフォーマンスの点でどちらが最良のアプローチですか。
- 両方のテーブルで変更データ キャプチャを使用し、変更を特定して新しいテーブル 'TbSalesAge' に適用します。
- 物理テーブルの代わりにマテリアライズド ビューを使用する
- 他の方法(説明してください...)
PS: リアルタイム レプリカは必要ありません