SQL Server Architecture Interview Preparation Guide
Download PDF

SQL Server Architecture frequently Asked Questions by expert members with experience in MS SQL Server architecture. These interview questions and answers on SQL Server Architecture will help you strengthen your technical skills, prepare for the interviews and quickly revise the concepts. So get preparation for the SQL Server Architecture job interview

20 MS SQL Server Architecture Questions and Answers:

Table of Contents

MS SQL Server Architecture Interview Questions and Answers
MS SQL Server Architecture Interview Questions and Answers

1 :: MS SQL Server architecture Job Interview Questions!

What are database files and file groups?
What are page splits?
Where does SQL server store data?
What are Collation?

2 :: Explain What are Page Splits?

When there is not enough room on a page for a new row, a Server splits the page, allocates a new page, and moves some rows to the new page

3 :: Do you know what is RAID and what are different types of RAID configurations?

RAID stands for Redundant Array of Independent Disks. RAID defines data storage schemes to divide and replicate data among various disks so that data reliability and I/O performance can be increased.

The basic configurations of RAID are:

LEVEL 0 : Striped set without parity/Non-Redundant Array
LEVEL 1 : Mirrored set without parity
LEVEL 2 : Redundancy through Hamming code
LEVEL 3 : Striped set with dedicated parity/Bit interleaved parity
LEVEL 4 : Block level parity
LEVEL 5 : Striped set with distributed parity
LEVEL 6 : Striped set with dual distributed Parity

4 :: What is database architecture?

Database architecture describes the design of the database. It explains how the data is stored. The data of the server is stored in databases. This database is further split into one or more discs. The database can be considered to have two layers. Physical layer, which is a transparent layer for the database administrators to work on. Other users typically work on the user view layer. Tables, views, procedures forms this view

5 :: Explain what are the database objects?

Database objects such as tables, primary key, and foreign key describe the structure of the content of a database. These objects also represent the properties of a server. Server side objects are objects that reside on the server but not in the database. Typical examples of server side objects include, logins, user defined error messages etc. The database objects are contained in the database project while the server objects are contained in the server project. These objects are defined in a .sql file. Most of these objects are defined in a separate file depending on the scenario. E.g it is necessary to specify columns in the same file where the table is defined

6 :: What are logical database components?

The logical components are usually used to connect to the database. Any object that a user can use to access or connect to the database is a logical component. Triggers, tables, procedures, views, keys etc are typical examples

7 :: Do you know what are pages and Extents?

A page is a unit of data storage in SQL. The size of a page is 8Kb. A page has a header and a body. Different types of pages are: Date, text, index , page free space etc. The data rows are put on the page serially after the header.

Extents are units in which space is allocated to tables and indexes. An extent is 8 continuous pages. SQL Server has two types of extents: uniform and mixed extent. For efficient allocation, the SQL server does not allocate whole extents to tables with small amounts of data

8 :: Please illustrate physical database architecture?

The physical database architecture describes how the database and files are organized in a SQL server.

Pages and extents: these describe how the data is stored

Physical Database Files and File groups :- describes the operating system files used to store data and logs.

Space Allocation and Reuse :- Describes the algorithms used for space allocation.

Table and Index Architecture :- Describes the way pages for tables can be indexed

9 :: What is the difference between CUBE operator and ROLLUP operator?

CUBE generates a result set that represents aggregates for all combinations of values in the selected columns.

ROLLUP generates a result set that represents aggregates for a hierarchy of values in the selected columns.

10 :: Do you know what are the restrictions applicable while creating views?

Views can be created referencing tables and views only in the current database.
A view name must not be the same as any table owned by that user.
You can build views on other views and on procedures that reference views.
Rules or DEFAULT definitions can't be associated with views.
Only INSTEAD OF triggers can be associated with views.
The query that defines the view cannot include the ORDER BY, COMPUTE, or COMPUTE BY clauses or the INTO keyword.
You cannot define full-text index definitions for views.
You cannot create temporary views
You cannot create views on temporary tables.

11 :: Explain what are the restrictions that views have to follow?

Since a view is a virtual table – columns of the view cannot be renamed. To change anything in the view, the view must be dropped and create again.
The select statement on the view cannot contain ORDER BY or INTO TEMP
When a table or view is dropped, any views in the same database are also dropped.
It is not possible to create an index on a view
It is not possible to use DELETE to update a view that is defined as a join.

12 :: Can you explain what are the restrictions applicable while creating views?

Restrictions applicable while creating views:

A view cannot be indexed.
A view cannot be Altered or renamed. Its columns cannot be renamed.
To alter a view, it must be dropped and re-created.
ANSI_NULLS and QUOTED_IDENTIFIER options should be turned on to create a view.
All tables referenced in a view must be part of the same database.
Any user defined functions referenced in a view must be created with SCHEMABINDING option.
Cannot use ROWSET, UNION, TOP, ORDER BY, DISTINCT, COUNT(*), COMPUTE, COMPUTE BY in views.

13 :: Explain the truncate command?

Truncate command is used to remove all rows of the column.
The removed records are not recorded in the transaction log.
It is the fast way to remove all the records from the table.
The records once removed can’t be rolled back.
It can’t activate trigger.
It resets the identity of the column.

14 :: Explain the Microsoft SQL Server delete command?

Delete command removes records one at a time and logs into the transaction log.
It can be used with or without where clause.
The records can be rolled back.
It activates trigger.
It doesn’t reset the identity of the column.

15 :: What is Master Database?

Master database is system database. It contains information about server’s configuration. It is a very important database and important to backup Master database. Without Master database, server can't be started.

16 :: What is MSDB Database?

It stores information related to database backups, DTS packages, Replication, SQL Agent information, SQL Server jobs.

17 :: What is TEMPDB Database?

It stores temporary objects like temporary tables and temporary stored procedure.

18 :: What is Model Database?

It is a template database used in the creation of new database.

19 :: Please explain that what are the basic functions for master, msdb, model, tempdb and resource databases?

Master database is used to store information of all the databases on the SQL server. The server cannot start if the database is not configured properly.

The msdb database stores information regarding database backups, SQL Agent information, DTS packages, SQL Server jobs, and some replication information such as for log shipping.

The tempdb is used to store temporary objects such as global and local temporary tables and stored procedures.

The model is essentially a template database used in the creation of any new user database created in the instance.

The resoure Database is a read-only database that contains all the system objects that are included with SQL Server. SQL Server system objects, such as sys.objects, are physically persisted in the Resource database, but they logically appear in the sys schema of every database. The Resource database does not contain user data or user metadata.

20 :: What do you know about system database?

The system database contains information/metadata for all database present on an SQL Server instance. The system database stores information regarding logins, configuration settings, connected servers etc. It also holds various extended stored procedures to access external processes and applications.

Major system databases :

Master: Core system database to mange Sql Server instance.
Resource: Responsible for physically storing all system objects.
TempDB: This is a temporary database used to store temporary, tables, cursors, indexes, variables etc.
Model: This acts as a template database for all user created databases.
MSDB: Database to manage SQL Server agent configurations.
Distribution: Database primarily used for SQL Server replication.
ReportServer: Main database for reporting services to store metadata and other object definitions.
ReportServerTempDB: Acts as a temporary storage for reporting services.