How does indexing improve query performance?
Answers were Sorted based on User's Feedback
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 |
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 |
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 ? | 4 Yes | 1 No |
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 |
Explain how spool space is used.
what is identity columns in teradata
1. generally how many node system will be used by the client. 2. while running mload if the job is aborted/failed at any phase what we have to look after to run the job successfully? 3.i wanted to know how to write the fastload script for table creation as well as table loading in a single script?
what is use of PI(primary index) AND SI(secondary index)
Fast Load Script is failed and error tables are available then how do you restart?
Hi frnds...can any one help me regarding this que.. We have column in a table name it as C1 WHICH CONTAIN ALPHANUMERIC AND NUMERIC VALUES. C1 2A 2B 2V 2H 1 2 3 4 5 i want to retrive numeric values like 1,2,3,4,5 How we can get Plz let me know.Thanks in advance
What are the joins in teradata?
What is meant by a node?
How to relege locks in fastload and multiload? example?
What EXPLAIN does in Teradata, what is High confidence, Low confidence and No confidence.. And How we improve the query performance .
How to improve the query performance without taking the collect statistics? In explain plan i have 'NO CONFIDENT'.
Explain the advantages of partitioned primary index in a query?