You are a SQL Server 2008 developer. You create an online transaction processing (OLTP)
database by using SQL Server 2008 in an enterprise environment. The database contains a
table named SalesDetails. Each record in the table contains data in any one of the following
pairs of nullable columns: ·InternetSalesTargets and InternetSales ·ResellerSalesTargets
and ResellerSales ·ForeignSalesTargets and ForeignSales The table also contains three
NOT NULL key columns. A large number of records are inserted on a daily basis into the
SalesDetails table. Summary reports are generated from the SalesDetails table. Each report
is based on aggregated data from any one of the pairs of nullable columns. You need to
design a view or views to meet the following requirements: ·The SalesDetails table cannot
be directly modified. ·The performance of the reports is maximized. ·The amount of storage
space for each report is minimized. What should you do?
A.
Create multiple Report tables from the SalesDetails table so that each Report table
contains aggregated data of only the columns required by the respective report. Create
views on top of each of the Report tables.
B.
Create multiple indexed views from the SalesDetails table so that each view contains
aggregated data of only the columns required by the respective report.
C.
Create an indexed view from the SalesDetails table that contains aggregated data of all
the columns required by all the reports.
D.
Perform a quick transfer of aggregated new records to a staging table at the end of each
month. Create an indexed view from the staging table that contains aggregated data of all
the columns required by all the reports.
Explanation: