Thursday, May 27, 2010

Teradata Interview Questions and Answers

What is explain and how does it work?
The EXPLAIN facility is a teradata extension that provides you with an "ENGLISH" translation of the steps choosen by the optimizer to execute an SQL

statement.It may be used oin any valid teradata database with a preface called "EXPLAIN".

The following is an example:-

EXPLAIN select last_name,first_name FROM employees;

The EXPLAIN parses the SQL statement but does not execute it.

This provides the designer with an "execution stratergy".

The execution stratergy provides what an optimizer does but not why it choses them.

The EXPLAIN facility is used to analyze all joins and complex queries.


What is an optimization and performance tuning and how does it really work in practical projects?
Performance tuning and optimization of a query involves collecting statistics on join columns, avoiding cross product join, selection of appropriate primary

index (to avoid skewness in storage) and using secondary index.

Avoiding NUSI is advisable.


What is the difference between Global temporary tables and Volatile temporary tables?
Global Temporary tables (GTT) -
1. When they are created, its definition goes into Data Dictionary.
2. When materialized data goes in temp space.
3. thats why, data is active upto the session ends, and definition will remain there upto its not dropped using Drop table statement.
If dropped from some other session then its should be Drop table all;
4. you can collect stats on GTT.

Volatile Temporary tables (VTT) -
1. Table Definition is stored in System cache
2. Data is stored in spool space.
3. thats why, data and table definition both are active only upto session ends.
4. No collect stats for VTT.


How teradata makes sure that there are no duplicate rows being inserted when its a SET table?
Teradata will redirect the new inserted row as per its PI to the target AMP (on the basis of its row hash value), and if it find same row hash value in that

AMP (hash synonyms) then it start comparing the whole row, and find out if duplicate.
If its a duplicate it silently skips it without throwing any error.


Fload, Mload and error tables:
[How many error tables are there in fload and what are their significance/use?
Can we see the data of error tables?
How many error tables are their in mload and what is there use?
When mload job fails, can we access mload tables? If yes then how?]


load uses 2 error tables

Error table 1: where format of data is not correct.

Error table 2: violations of UPI

Mload also uses 2 error tables (ET and UV), 1 work table and 1 log table

1. ET TABLE - Data error

MultiLoad uses the ET table, also called the Acquisition Phase error table, to store data errors found during the acquisition phase of a MultiLoad import


2. UV TABLE - UPI violations

MultiLoad uses the UV table, also called the Application Phase error table, to store data errors found during the application phase of a MultiLoad import or

delete task


Mload loads the selected records in the work table


A log table maintains record of all checkpoints related to the load job, it is essential/madatory to specify a log table in mload job. This table will be

useful in case you have a job abort or restart due to any reason.


What are the enhanced features in Teradata V2R5 and V2R6?

V2R6 included the feature of replica in which copy of data base are available on another system.meam V2R6 provide the additional data protaction as

comprison to V2R5 while if data from one system has been vanishes.

After creating tables dynamically in the Teardata, where is the GRANT table option usually done ? When tables are newly created, what is the default role and


What the default privileges which get assigned ?
The GRANT option for any particular table depends on the privilages of the user. If it is an admin user you can grant privilages at any point of time.

The deafult roles associated with the newly created tables depend on he schema in which they are created.


What is cliques? What is Vdisk and how it will communicate with physical data storage at the time of data retrieval through AMP ?
A clique is a set of Teradata nodes that share a common set of disk arrays. Cabling a subset of nodes to the same disk arrays creates a clique.

Each AMP vproc must have access to an array controller, which in turn accesses the physical disks. AMP vprocs are associated with one or more ranks
(or mirrored pairs) of data. The total disk space associated with an AMP is called a vdisk. A vdisk may have up to three ranks. Hence Vdisk will communicate

with physical storage through array controllers.


What is basic teradata query language?
BTEQ(Basic teradata query)

It allows us to write SQL statements along with BTEQ commands. We can use BTEQ for importing,exporting and reporting purposes.

The commands start with a (.) dot and can be terminated by using (;), it is not mandatory to use (;). SQL statements doesnt start with a dot , but (;) is

compulsary to terminate the SQL statement.

BTEQ will assume any thing written with out a dot as a sql statement and requires a (;) to terminate it.


How many codd's rules are satisfied by teradata database?
There are 12 codd's rules applied to the teradata database


What is the difference between Multiload & Fastload interms of Performance?
If you want to load, empty table then you use the fastload, so it will very usefull than the mutiload..because fastload performs the loading of the data in

2phase..and it noneed a work table for loading the data.., so it is faster as well as it follows the below steps to load the data in the table

Phase1-It moves all the records to all the AMP first without any hashing
Phase2-After giving endloading command, Amp will hashes the record and send it to the appropriate AMPS .


It does the loading in the 5 phases
Phase1:It will get the import file and checks the script
Phase2:It reads the record from the base table and store in the work table
Phase3:In this Application phase it locks the table header
Phase4:In the DML opreation will done in the tables
Phase 5: In this table locks will be released and work tables will be dropped.


Does SDLC changes when you use Teradata instead of Oracle?

If the teradata is going to be only a data base means It won’t change the System development life cycle (SDLC)
If you are going to use the teradata utilities then it will change the Architecture or SDLC
If your schema is going to be in 3NF then there won’t be huge in change


Which two statements are true about a foreign key?
Each Foreign Key must exist as a Primary Key.
Foreign Keys can change values over time.
first : True
second : False
1. Foreign Keys can change values over time.
2. Each Foreign Key must exist as a Primary Key.


What are two examples of an OLTP environment?
# Transactions take a matter of seconds or less.
# Many transactions involve a small amount of data.

On Line Banking
On Line Reservation (Transportation like Rail, Air etc.)

1- ATM
2- POS

OLTP is typified by a small number of rows (or records) or a few of many possible tables being accessed in a matter of seconds or less. Very little I/O

processing is required to complete the transaction. For eg.

1. This type of transaction takes place when we take out money at an ATM. Once our card is validated, a debit transaction takes place against our current

balance to reflect the amount of cash withdrawn.

2. This type of transaction also takes place when we deposit money into a checking account and the balance gets updated.

We expect these transactions to be performed quickly. They must occur in real time.
Post a Comment

Receive All Free Updates Via Facebook.