How does indexing improve query performance?




Answers were Sorted based on User's Feedback



How does indexing improve query performance? ..

Answer / praveen

By creating index on single or multiple columns, query
takes index access path instead of full table scan. Full
table scan is costilier operation where it has to visit all
rows in the table whereas index operation just accesses the
index sub table with required hash value and joins with the
basetable using rowid. This improves response time and
performance of the query.

Is This Answer Correct ?    28 Yes 3 No

How does indexing improve query performance? ..

Answer / sri krishna

Teradata automatically Creates the Primary index , if not
specified by the DDl for Table .Some of the Other Types of
indexes are
Secondary Index
Partitioned Primary Index
Join Index


Primary Index :- the PI is the way , Teradata Distributes
the Data , Accesses the Data to/from Amps. By Using the
Primary Index with Value or Range of Values in the Where
Clause of the Query , the operation Becomes a Single AMP/
Few amp aperation instead of all amp operation . the Access
path is
Rowhash of the Pi is known --> Amp of the Column along
with rowid of the Column . (1 Amp Ops)

Results
1. Highly Optimised Query Retrival
2. less Cost per Retrival

Secondary Index / Join Indexes :-

Creates a Secondary Index / Joinindex / Hashindex
Subtable , which maps the Column/s of the SI and the PI
Hash /Join(Frequently used Columns in two tables in this
Case ) , The operations , if using these Indexes are
basically 2 or more amp operation .

Results
1. Quicker Query Retrival time than a full table scan .
2. costs less on the Resources than a FTS
3. the Performance is improved if the JI is used by the
Optimizer

cons --

1. Additional Space Req. for the Subtables
2. need to be droped and recreated for Loads to happen
(Multi Load , FastLoad)ect , which is a real PAIN !!!
3.still be a 2 amp operation when compared to PI Retrival
for a SI.


PPI :-

Partitioned Primary Indexes are Created so as to divide the
table onto partitions based on Range or Values as Required .

the data is first Hashed into Amps , then Stored in amps
based on the Partitions !!! which when Retrived for a
single partition / multiple Partitions , will be a all amps
Scan, but not a Full Table Scan !!!! . this is effective
for Larger Tables partitioned on the Date Specially !!!
there is no extra Overhead on the System (no Spl Tables
Created ect )

Is This Answer Correct ?    19 Yes 5 No

How does indexing improve query performance? ..

Answer / yuvaevergreen

PI is very important in TD, because the data distribution
is basically dependent on PI.
1.Data distribution
2.Fastest way to retrieve rows
3.Important for joins

Is This Answer Correct ?    3 Yes 1 No




How does indexing improve query performance? ..

Answer / guru

ONE LINE ANSWER: INdexing acts as SET option (Where clause)
while an query is being executed provided the query
contains these indexes.


Guru,
Advanced Teradata Certified Professional

Is This Answer Correct ?    1 Yes 5 No

Post New Answer



More Teradata Interview Questions

What are the various reporting tools in the market?

0 Answers  


What is collect State in Teradata ? what it use and how it works??

3 Answers   TCS,


Differentiate database data and data warehouse data?

0 Answers  


How is MLOAD Client System restarted after execution?

0 Answers  


Can we collect statistics on multiple columns?

0 Answers  






What do you mean by parsing?

0 Answers  


Can any one explain me the difference between BTEQ and MLOAD,TUMP. All canbe used for same purpose but still differnt methods. why ?

0 Answers  


What is the command in bteq to check for session settings ?

0 Answers  


Suppose i have data like 2009/12/31 555555534 ' ' Generally last 2 records are wrong format it is going to error table but i don't want load error table if any wrong format in Date column Pass "NULL" how can we do it fast load

4 Answers  


How do you define Teradata?

0 Answers  


Why Fload doesn’t support multiset table?

9 Answers  


Can u load same data into multiple tables using multiload? How will be the loading process? Whether it will be serially or parallely?

2 Answers   IBM,






Categories