Sunday, May 22, 2016

No IoT without IPv6

Does your company foresee making big bucks from the Internet of Things? It won’t be happening without widespread adoption of IPv6 first.

Do you think the Internet of Things (IoT) will be the Next Big Thing? It can’t be. Not until we get past the real Next Big Thing: IPv6.

Without the extensive global adoption and successful deployment of IPv6 as the primary version of the Internet Protocol, the IoT won’t be possible. In fact, the future of the Internet itself is at stake. Here are the five reasons why:

1. The IoT will need more IP addresses than IPv4 can provide.
According to Gartner’s estimate, by 2020 there will be more than 26 billion IoT devices connected to the Internet. Cisco is thinking even bigger; it has projected that there will be more than 50 billion devices connected to the Internet by 2020.

Unfortunately, IPv4 is still widely used, and IPv4 has only 4.3 billion possible IP addresses. Now, it’s true that that not every IoT device will need an IP address, but IPv4 can accommodate less than 20% of the devices that Gartner projects for a mere four years from now. Worse, most IPv4 addresses have already been depleted, with the one minor exception worldwide being in Africa. And even Africa’s allocation is projected to be depleted by March 31, 2018.

How much of a difference would IPv6 make? A lot. It has a total of 340 undecillion (that is 340 trillion trillion trillion) addresses. Even with the IoT fulfilling Cisco’s expectations, that should be enough for years to come.

But IPv6 adoption is weak. As of May 14, worldwide IPv6 traffic reaching Google totaled about 11.6%. The adoption rate for the U.S. federal government was about 62% for public-facing websites as of May 16. The good news is that adoption is increasing. Global IPv6 traffic accessing Google was less than 3% in January 2014 ,and only about 35% of the public-facing websites of U.S. federal agencies were using IPv6 back then.

2. Cloud computing also needs more IP addresses than IPv4 can provide.
When Microsoft chose to use IPv4 for the data centers that would support its cloud computing initiative, it had to chase globally after the extremely limited IPv4 addresses available and paid a very high price for them.

Supplies on the secondhand IPv4 exchange market are getting thin, so the price for IPv4 addresses will be going even higher — by some estimates, up to $100 per IPv4 address in the near future. Guess who will ultimately pay for such exorbitant prices. The customers, of course.

3. Adopting an IPv6-only policy can dramatically reduce cybersecurity threats.
This is simple: The moment we turn off IPv4, we will eliminate global cyberattacks and security threats based on the IPv4 stack. It may be that we have lost the battle against the bad actors in the IPv4 stack. But, we may still have a fighting chance to win the war in the IPv6 stack. This may be our best chance to gain the upper hand.

4. IPv4 is only a beta version of the Internet.
According to Vint Cerf, one of the fathers of the Internet and co-inventor of the TCP/IP protocol suite, IPv4 is only “the experimental version of the Internet.” But we have been using this beta version of his Internet protocol since 1983. As Cerf stated, IPv6 is the actual production version of the Internet for the 21st century.

Why have we been using a beta version in our production environment for so long?

5. Adopting IPv6 is a matter of leadership, vision and competitive edge.
Service providers and product manufacturers keep saying that there is no demand for IPv6 from their customers. But it is nonsense to wait for them. The majority of consumers do not know which version of IP is running in their electronic devices, and they don’t care.

What really matters is whether a company’s leadership has the vision to ensure that it retains a competitive edge for its products and services and is situated to thrive in a new era of rapid technological innovations based on IPv6.Companies that say there is no immediate money to be made by transitioning to IPv6 need to ask themselves whether they intend to make money from the IoT. One estimate, from Business Insider, is that the IoT represents at least a $6 trillion opportunity. But the IoT won’t be happening without IPv6.


Friday, May 13, 2016

Exam 70-461 Querying Microsoft SQL Server 2012/2014

Published: June 11, 2012
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: IT professionals
Technology: Microsoft SQL Server 2012/2014
Credit toward certification: MCP, MCSA, MCSE

Skills measured
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

In December 2015, this exam was evaluated for applicability to both SQL Server 2012 and SQL Server 2014. It was determined that no updates to exam objectives were required.

Create database objects (20–25%)
Create and alter tables using T-SQL syntax (simple statements)
Create tables without using the built in tools; ALTER; DROP; ALTER COLUMN; CREATE
Create and alter views (simple statements)
Create indexed views; create views without using the built in tools; CREATE, ALTER, DROP
Design views
Ensure code non regression by keeping consistent signature for procedure, views and function (interfaces); security implications
Create and modify constraints (simple statements)
Create constraints on tables; define constraints; unique constraints; default constraints; primary and foreign key constraints
Create and alter DML triggers
Inserted and deleted tables; nested triggers; types of triggers; update functions; handle multiple rows in a session; performance implications of triggers

Preparation resources
Tables
Views
table_constraint (Transact-SQL)

Work with data (25–30%)
Query data by using SELECT statements
Use the ranking function to select top(X) rows for multiple categories in a single query; write and perform queries efficiently using the new (SQL 2005/8->) code items such as synonyms, and joins (except, intersect); implement logic which uses dynamic SQL and system metadata; write efficient, technically complex SQL queries, including all types of joins versus the use of derived tables; determine what code may or may not execute based on the tables provided; given a table with constraints, determine which statement set would load a table; use and understand different data access technologies; case versus isnull versus coalesce
Implement sub-queries
Identify problematic elements in query plans; pivot and unpivot; apply operator; cte statement; with statement
Implement data types
Use appropriate data; understand the uses and limitations of each data type; impact of GUID (newid, newsequentialid) on database performance, when to use what data type for columns
Implement aggregate queries
New analytic functions; grouping sets; spatial aggregates; apply ranking functions
Query and manage XML data
Understand XML datatypes and their schemas and interop w/, limitations and restrictions; implement XML schemas and handling of XML data; XML data: how to handle it in SQL Server and when and when not to use it, including XML namespaces; import and export XML; XML indexing

Preparation resources

SELECT (Transact-SQL)
INTO clause (Transact-SQL)
FROM (Transact-SQL)

Modify data (20–25%)
Create and alter stored procedures (simple statements)
Write a stored procedure to meet a given set of requirements; branching logic; create stored procedures and other programmatic objects; techniques for developing stored procedures; different types of storeproc result; create stored procedure for data access layer; program stored procedures, triggers, functions with T-SQL
Modify data by using INSERT, UPDATE, and DELETE statements
Given a set of code with defaults, constraints, and triggers, determine the output of a set of DDL; know which SQL statements are best to solve common requirements; use output statement
Combine datasets
Difference between UNION and UNION all; case versus isnull versus coalesce; modify data by using MERGE statements
Work with functions
Understand deterministic, non-deterministic functions; scalar and table values; apply built-in scalar functions; create and alter user-defined functions (UDFs)

Preparation resources
CREATE PROCEDURE (Transact-SQL)
ALTER PROCEDURE (Transact-SQL)
INSERT (Transact-SQL)

Troubleshoot and optimize (25–30%)
Optimize queries
Understand statistics; read query plans; plan guides; DMVs; hints; statistics IO; dynamic vs. parameterized queries; describe the different join types (HASH, MERGE, LOOP) and describe the scenarios they would be used in
Manage transactions
Mark a transaction; understand begin tran, commit, and rollback; implicit vs explicit transactions; isolation levels; scope and type of locks; trancount
Evaluate the use of row-based operations vs. set-based operations
When to use cursors; impact of scalar UDFs; combine multiple DML operations
Implement error handling
Implement try/catch/throw; use set based rather than row based logic; transaction management

Preparation resources
Transaction statements (Transact-SQL)
SET TRANSACTION ISOLATION LEVEL (Transact-SQL)

QUESTION 1
You develop a database for a travel application. You need to design tables and other database objects.
You create the Airline_Schedules table.
You need to store the departure and arrival dates and times of flights along with time zone information.
What should you do?

A. Use the CAST function.
B. Use the DATE data type.
C. Use the FORMAT function.
D. Use an appropriate collation.
E. Use a user-defined table type.
F. Use the VARBINARY data type.
G. Use the DATETIME data type.
H. Use the DATETIME2 data type.
I. Use the DATETIMEOFFSET data type.
J. Use the TODATETIMEOFFSET function.

Answer: I

Explanation:
Reference: http://msdn.microsoft.com/en-us/library/ff848733.aspx
Reference: http://msdn.microsoft.com/en-us/library/bb630289.aspx


QUESTION 2
You develop a database for a travel application. You need to design tables and other database objects. You create a stored procedure. You need to supply the stored procedure with multiple event names and their dates as parameters. What should you do?

A. Use the CAST function.
B. Use the DATE data type.
C. Use the FORMAT function.
D. Use an appropriate collation.
E. Use a user-defined table type.
F. Use the VARBINARY data type.
G. Use the DATETIME data type.
H. Use the DATETIME2 data type.
I. Use the DATETIMEOFFSET data type.
J. Use the TODATETIMEOFFSET function.

Answer: E

QUESTION 3
You administer a Microsoft SQL Server 2012 database that contains a table named OrderDetail. You
discover that the NCI_OrderDetail_CustomerID non-clustered index is fragmented. You need to
reduce fragmentation. You need to achieve this goal without taking the index offline. Which
Transact-SQL batch should you use?

A. CREATE INDEX NCI_OrderDetail_CustomerID ON OrderDetail.CustomerID WITH DROP
EXISTING
B. ALTER INDEX NCI_OrderDetail_CustomerID ON OrderDetail.CustomerID REORGANIZE
C. ALTER INDEX ALL ON OrderDetail REBUILD
D. ALTER INDEX NCI_OrderDetail_CustomerID ON OrderDetail.CustomerID REBUILD

Answer: B


QUESTION 4
You develop a Microsoft SQL Server 2012 database. The database is used by two web applications
that access a table named Products. You want to create an object that will prevent the applications
from accessing the table directly while still providing access to the required data. You need to
ensure that the following requirements are met:
* Future modifications to the table definition will not affect the applications' ability to access data.
* The new object can accommodate data retrieval and data modification.
* You need to achieve this goal by using the minimum amount of changes to the existing
applications.
What should you create for each application?

A. views
B. table partitions
C. table-valued functions
D. stored procedures

Answer: A


QUESTION 5
You develop a Microsoft SQL Server 2012 database. You need to create a batch process that meets
the following requirements:
* Returns a result set based on supplied parameters.
* Enables the returned result set to perform a join with a table.
Which object should you use?

A. Inline user-defined function
B. Stored procedure
C. Table-valued user-defined function
D. Scalar user-defined function

Answer: C

QUESTION 6
You administer a Microsoft SQL Server 2012 database that has multiple tables in the Sales schema.
Some users must be prevented from deleting records in any of the tables in the Sales schema. You
need to manage users who are prevented from deleting records in the Sales schema. You need to
achieve this goal by using the minimum amount of administrative effort. What should you do?

A. Create a custom database role that includes the users. Deny Delete permissions on the Sales
schema for the custom database role.
B. Include the Sales schema as an owned schema for the db_denydatawriter role. Add the users
to the db_denydatawriter role.
C. Deny Delete permissions on each table in the Sales schema for each user.
D. Create a custom database role that includes the users. Deny Delete permissions on each table
in the Sales schema for the custom database role.

Answer: A

QUESTION 7
You work as a database administrator at ABC.com. ABC.com has a SQL Server 2012 database
infrastructure that contains a database named SalesDB.
The SalesDB database is used by an in-house application named ABCApp3. ABC.com users
report that ABCApp3 is functioning sluggishly.
You discover that application consumes considerable memory when it runs single-use dynamic
queries against the SalesDB database. You suspect that these queries are making excessive use
of procedure cache.
How would you reduce procedure cache if you cannot create new indexes on the SalesDB
database?

A. You should replace the queries with recursive stored procedures.
B. You should add make use of the INCLUDE clause in the index.
C. You should make use of the READPAST hint in the queries.
D. You should make use of the READCOMMITTED hint in the queries.
E. You should make use of the optimize for ad hoc workloads option.

Answer: E

Explanation:


QUESTION 8
You work as a database administrator at ABC.com. ABC.com has a SQL Server 2012 database
infrastructure that contains a database named ABCDB.
The ABCDB database is used by an in-house application named ABCApp3 that queries a readonly
table with a clustered index. ABC.com users report that ABCApp3 is functioning sluggishly.
You suspect query the application uses is causing the problem. You analyze the query and
discover that column referenced in the WHERE clause is not part of the clustered index. You also
notice that the query returns five columns, as well as a COUNT (*) clause grouped on the five columns.
How would you improve the efficiency of this query?

A. You should replace the query with recursive stored procedure.
B. You should replace the COUNT (*) clause with a persisted computed column.
C. You should create nonclustered indexes on all columns used in the query.
D. You should create a filtered index on the column used in the WHERE clause.
E. You should add an INCLUDE clause to the clustered index.
F. You should create a columnstore index on all columns used in the query.
G. You should create a unique clustered index on the column used in the WHERE clause.

Answer: F

Explanation:

Monday, May 9, 2016

Exam 70-457 Transition Your MCTS on SQL Server 2008 to MCSA: SQL Server 2012, Part 1

Published: June 11, 2012
Languages: English, Japanese
Audiences: IT professionals
Technology: Microsoft SQL Server 2012
Credit toward certification: MCP, MCSA, MCSE

Skills measured
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Create database objects
Create and alter tables using T-SQL syntax (simple statements)
Create tables without using the built-in tools; ALTER; DROP; ALTER COLUMN; CREATE
Design views
Ensure code non regression by keeping consistent signature for procedure, views, and function (interfaces); security implications
Create and alter DML triggers
Inserted and deleted tables; nested triggers; types of triggers; update functions; handle multiple rows in a session; performance implications of triggers

Preparation resources
Tables
Views
CREATE TRIGGER

Work with data
Query data by using SELECT statements
Use the ranking function to select top(X) rows for multiple categories in a single query; write and perform queries efficiently using the new code items such as synonyms and joins (except, intersect); implement logic which uses dynamic SQL and system metadata; write efficient, technically complex SQL queries, including all types of joins versus the use of derived tables; determine what code may or may not execute based on the tables provided; given a table with constraints, determine which statement set would load a table; use and understand different data access technologies; CASE versus ISNULL versus COALESCE
Implement sub-queries
Identify problematic elements in query plans; pivot and unpivot; apply operator; cte statement; with statement
Implement data types
Use appropriate data; understand the uses and limitations of each data type; impact of GUID (newid, newsequentialid) on database performance, when to use which data type for columns

Preparation resources
SELECT (Transact-SQL)
INTO clause (Transact-SQL)
FROM (Transact-SQL)

Modify data
Create and alter stored procedures (simple statements)
Write a stored procedure to meet a given set of requirements; branching logic; create stored procedures and other programmatic objects; techniques for developing stored procedures; different types of stored procedure results; create a stored procedure for data access layer; program stored procedures, triggers, and functions with T-SQL
Modify data by using INSERT, UPDATE, and DELETE statements
Given a set of code with defaults, constraints, and triggers, determine the output of a set of DDL; know which SQL statements are best to solve common requirements; use output statement
Work with functions
Understand deterministic and non-deterministic functions; scalar and table values; apply built-in scalar functions; create and alter user-defined functions (UDFs)

Preparation resources
CREATE PROCEDURE (Transact-SQL)
ALTER PROCEDURE (Transact-SQL)
INSERT (Transact-SQL)

Troubleshoot and optimize queries
Optimize queries
Understand statistics; read query plans; plan guides; DMVs; hints; statistics IO; dynamic vs. parameterized queries; describe the different join types (HASH, MERGE, LOOP) and describe the scenarios in which they would be used
Manage transactions
Mark a transaction; understand begin tran, commit, and rollback; implicit vs. explicit transactions; isolation levels; scope and type of locks; trancount
Evaluate the use of row-based operations vs. set-based operations
When to use cursors; impact of scalar UDFs; combine multiple DML operations
Implement error handling
Implement try/catch/throw; use set based rather than row based logic; transaction management

Preparation resources
Transaction statements (Transact-SQL)
SET TRANSACTION ISOLATION LEVEL (Transact-SQL)
Cursors

Install and configure SQL Server
Plan installation
Evaluate installation requirements; design the installation of SQL Server and its components (including drives and service accounts); plan scale up vs. scale out basics; plan for capacity, including if/when to shrink, grow, autogrow, and monitor growth; manage the technologies that influence SQL architecture (including service broker, full text, and scale out); design the storage for new databases (drives, filegroups, partitioning); design database infrastructure; configure a SQL Server standby database for reporting purposes; Windows-level security and service level security; Core mode installation; benchmark a server before using it in a production environment (SQLIO, Tests on SQL Instance); choose the right hardware
Install SQL Server and related services
Test connectivity; enable and disable features; install SQL Server database engine and SSIS (not SSRS and SSAS); configure an operating system disk
Implement a migration strategy
Restore vs. detach/attach; migrate security; migrate from a previous version; migrate to new hardware; migrate systems and data from other sources
Configure additional SQL Server components
Set up and configure Analysis Services (AS), Reporting Services (RS), and SharePoint integration in a complex and highly secure environment; configure full-text indexing; SQL Server Integration Services (SSIS) security; filestream; filetable
Manage SQL Server Agent
Create, maintain, and monitor jobs; administer jobs and alerts; automate (setup, maintenance, monitoring) across multiple databases and multiple instances; send to "Manage SQL Server Agent jobs"

Preparation resources
Understanding surface area configuration
Hardware and software requirements for installing SQL Server 2012
Quick-start installation of SQL Server 2012

Maintain instances and databases
Manage and configure databases
Design multiple file groups; database configuration and standardization: autoclose, autoshrink, recovery models; manage file space, including adding new filegroups and moving objects from one filegroup to another; implement and configure contained databases; data compression; configure Transparent Data Encryption (TDE); partitioning; manage log file growth; Database Console Commands (DBCC)
Configure SQL Server instances
Configure and standardize a database including autoclose, autoshrink, recovery models; install default and named instances; configure SQL to use only certain CPUs (for example, affinity masks); configure server level settings; configure many databases/instance, many instances/server, virtualization; configure clustered instances including Microsoft Distributed Transaction Coordinator (MSDTC); memory allocation; database mail; configure SQL Server engine including memory, filffactor, sp_configure, and default options
Implement a SQL Server clustered instance
Install a cluster; manage multiple instances on a cluster; set up subnet clustering; recover from a failed cluster node
Manage SQL Server instances
Install an instance; manage interaction of instances; SQL patch management; install additional instances; manage resource utilization by using Resource Governor; cycle error logs

Preparation resources
ALTER DATABASE file and filegroup options (Transact-SQL)
Contained databases
Data compression

Optimize and troubleshoot SQL Server
Identify and resolve concurrency problems
Examine deadlocking issues using the SQL server logs using trace flags; design reporting database infrastructure (replicated databases); monitor via Dynamic Management Views (DMV) or other Microsoft product; diagnose blocking, live locking, and deadlocking; diagnose waits; performance detection with built-in DMVs; locate and if necessary kill processes that are blocking or claiming all resources
Collect and analyze troubleshooting data
Monitor using Profiler, collect performance data by using System Monitor, collect trace data by using SQL Server Profiler, identify transactional replication problems; identify and troubleshoot data access problems; gather performance metrics; identify potential problems before they cause service interruptions; identify performance problems, use Extended Events (XEvents) and DMVs; create alerts on critical server condition; monitor data and server access by creating audit and other controls; identify IO vs. memory vs. CPU bottlenecks; use the Data Collector tool
Audit SQL Server instances
Implement a security strategy for auditing and controlling the instance; configure an audit; configure server audits; track who modified an object; monitor elevated privileges as well as unsolicited attempts to connect; policy-based management

Preparation resources
Configure login auditing (SQL Server Management Studio)
Data collection
Administer servers by using policy-based management


QUESTION 1
You work as a database developer at ABC.com. ABC.com has a SQL Server 2012 database
named SalesDB that has a table named WeeklySales. The WeeklySales table records the sales
amount for each of ABC.com's 20 sales representatives.
You need to write a Transact-SQL query that ranks the sales representatives by the average sales
amount for the past year. You want the sales representatives with the same average sales amount
to be ranked in the same sequence as they are being processed with no rank being skipped.
Which ranking function should you use?

A. The RANK( ) OVER function.
B. The NTILE( ) OVER function
C. The DENSE_RANK( ) OVER function
D. The ROW_NUMBER( ) OVER function
E. The FORMAT function.

Answer: C

Explanation:


QUESTION 2
You work as a database developer at ABC.com. ABC.com has a SQL Server 2012 database
named SalesDB that has a table named WeeklySales. The WeeklySales table records the sales
amount for each of ABC.com's 20 sales representitives.
You need to write a Transact-SQL query that ranks the sales representatives by the average sales
amount for the past year. You want the sales representatives with the same average sales amount
to have the same rank with the subsequent rank being skipped.
Which ranking function should you use?

A. The RANK( ) OVER function.
B. The NTILE( ) OVER function
C. The DENSE_RANK( ) OVER function
D. The ROW_NUMBER( ) OVER function
E. The FORMAT function.

Answer: C

Explanation:
Ref: http://msdn.microsoft.com/en-us/library/ms189798.aspx


QUESTION 3
You work as a SQL Server 2012 database developer at ABC.com. You are developing a query for
a database driven Web application that allows visitors to vote for the cricket player of the week.
The number of votes is stored in a table named WeeklyVotes that has columns named Week,
PlayerName, Votes.
You need to write a Transact-SQL query that ranks the top 30 cricket players by the average votes
over the last 12 months. You want the top 10 cricket players to have a rank of 1, the next 10 to
have a rank of 2, and the last 10 to have a rank of 3.
Which of the following SELECT statement would you use?
To answer, type the correct code in the answer area.

Answer: SELECT TOP 50 PlayerName,
NTILE (3) OVER (ORDER BY AVG (Votes) DESC) AS AveVotes
FROM WeeklyVotes
GROUP BY PlayerName


QUESTION 4
You work as a database developer at ABC.com. ABC has an in-house application named
ABCApp3 that runs a Transact-SQL query against a SQL Server 2012 database.
You want to run an execution plan against the query that will provide detailed information on
missing indexes.
How would you accomplish this task?

A. You should make use of the READPAST hint in the queries.
B. You should make use of the READCOMMITTED hint in the queries.
C. You should make use of the SET SHOWPLAN_XML ON statement in the query.
D. You should make use of the SET STATISTICS XML ON statement in the query.
E. You should make use of the SET XACT_ABORT OFF statement in the query.
F. You should make use of the SET CONTEXT_INFO statement in the query.

Answer: C

Explanation:


QUESTION 5
You work as a database administrator at ABC.com. ABC.com has a SQL Server 2012 database
infrastructure that contains a database named ABCDB.
The ABCDB database is used by an in-house application named ABCApp3 that queries a readonly
table with a clustered index. ABC.com users report that ABCApp3 is functioning sluggishly.
You suspect query the application uses is causing the problem. You analyze the query and
discover that column referenced in the WHERE clause is not part of the clustered index. You also
notice that the query returns five columns, as well as a COUNT (*) clause grouped on the five
columns.
How would you improve the efficiency of this query?

A. You should replace the query with recursive stored procedure.
B. You should replace the COUNT (*) clause with a persisted computed column.
C. You should create nonclustered indexes on all columns used in the query.
D. You should create a filtered index on the column used in the WHERE clause.
E. You should add an INCLUDE clause to the clustered index.
F. You should create a columnstore index on all columns used in the query.
G. You should create a unique clustered index on the column used in the WHERE clause.

Answer: F

Explanation: