SlideShare a Scribd company logo
1 of 19
Download to read offline
Improved Query Performance
With Variant Indexes
paper by Patrick O’Neil & Dallan Quass
Presented by V B Wickramasinghe - 148245F
Overview
•What are database indexes?
•Value-List Index (B+
tree)
•Bitmap Indexes
•Projection Indexes
•Bit-Sliced Indexes
•Comparison of Index Types for different queries.
•Conclusion
What are database indexes?
“A database index is a data structure that improves the speed of data retrieval
operations on a database table at the cost of additional writes and the use of
more storage space to maintain the extra copy of data.”
- Wikipedia
Value-List Index (B+ tree)
Used to retrieve rows of a table with specified values involving one or more
indexed columns.
Leaf values of the B+ tree consists of a sequence of entries for index key
values. Each key value entry references the set of rows with that value.
----usually B+ trees references each row as RID(Row ID)
Problem-
In indexes with a relatively small number of key values compared to
the number of rows, most key values will have large number of
associated RID’s
Bitmap Indexes
•Bitmap is an alternate method of representing RID in a Value-List index A
“Bitmap B” is defined on table T as a sequence of M bits, where for each row
with ordinal number j, we set the jth
bit in B if that row satisfies the property of
the index.
Bitmap Indexes (contd..)
Bitmap Index Performance :-
• boolean operations such as AND, OR, and Not are extremely fast for
Bitmaps
--- AND
for ( I=0 ; I < len(B1) ; I++)
B3[I] = B1[I] & B2[I];
--- OR
for ( I=0 ; I < len(B1) ; I++)
B3[I] = B1[I] || B2[I];
---NOT
for ( I=0 ; I < len(B1) ; I++)
B3[I] = ~B1[I] & EBM[I];
These loops to calculate AND,OR, or NOT are extremely fast compared
to same done on RID lists as long as the Bitmaps involved have reasonably
high density.
Advantaged of Bitmap Indexes
•Fast operations
—The most common operations are the bitwise logical operations
—They are well supported by hardware
•Easy to compress, potentially small index size.
•Each individual bitmap is small and frequently used ones can be cached in memory.
•Efficient for read-mostly data: data produced from scientific experiments can be appended in large groups.
•Bitmaps are more space efficient than RID lists in a Value-List index.
•Disk savings are enormous in case when Bitmaps are dense i.e number of one bits as a proportion of all bits in a
Bitmap are large.
Projection Index
A projection index for column duplicates all column values for lookup by ordinal
number .
Projection Index (contd..)
----projection index turns out to be quite useful in cases where column values must be retrieved for all
rows of the foundset, where the foundset is dense enough such that several column values would
probably be found on the same disk page of the projection index, but rows themselves being larger,
would appear on several different pages
----faster to retrieve a foundset of column value from projection index
than from rows themselves
Bit-sliced Index
A Bit-Sliced index for a column creates Bitmaps for significant bits in
the column value,
Bnn
– bitmap representing set of non null values in the indexed column
Comparison of Indexes evaluating Single-Column Sum
Aggregates
Plan 1 : Direct access to the rows to calculate the Sum
-- costs includes I/O cost and CPU cost for getting proper row and
column value from buffer resident page.
Plan 2 : Calculating Sum through a Projection Index
Plan 3 : Calculating the Sum through a Bitmap Index
if (COUNT (Bf
AND Bnn
) = = 0)
Return null;
SUM = 0.0;
for each non-null value v in the index for C {
Designate the set of rows with value v as Bv
SUM += v * COUNT(Bf
AND BV
);
}
Return SUM;
Comparison of Indexes evaluating Single-Column Sum
Aggregates
Plan 4 : Calculating the SUM through a Bit-Sliced Index
if (COUNT (Bf
AND Bnn
) = = 0)
Return null;
SUM = 0.0;
for i = 0 to N
SUM += 2i
* COUNT(Bi
AND Bf
);
Return SUM;
Comparison of Indexes evaluating Single-Column Sum
Aggregates
Evaluating Range Predicates
SELECT target-list FROM T WHERE C-range AND <condition>
Plan 1 : Evaluating the Range using the Projection Index :-
--- we create BF
in a straightforward way by accessing each C value
in the index corresponding to an ordinal row number in Bf
and testing
whether it lies with the specified range
Plan 2 : Evaluating range predicates using Value-List index :-
Br
= empty set;
for each entry v in the index for C that satisfies the range specified
Designate the set of rows with the value v as Bv
Br
= Br
OR Bv
BF
= Bf
AND Br
Evaluating OLAP-style Queries
Data warehouses are often built to support OLAP. OLAP query performance depends on creating a
set of summary tables to efficiently evaluate an expected set of queries. This approach is possible
only when the expected set of queries is known in advance. Specifically, the OLAP Approach
addresses queries that group by different combination columns, known as dimensions. But when ad-
hoc queries must be issued that selects the rows on the criteria that are not part of the dimensional
scheme, summary tables that don’t foresee such selection cannot be used and in
such cases other indexes on the base data must be used.
➢ Join Indexes and Bitmap-Join-Indexes are tried to address this problem.
Join Indexes
A join index is an index on one table that involves a column value from different table through a
commonly encountered join.
but, if there are numerous columns used for restrictions in each dimension table, then the number of
star join indexes needed to be able to combine any single column choice from each dimension table is
a product of the number of columns in each dimension. There will be a combinatorial
explosion of join indexes in terms of the number of useful columns.
✓ bitmap join index addresses this problem
Bitmap Join Index
It is an index on a table T based on a single column of a table S, where S commonly joins with T in a
specified way.
Obviously the number of indexes of this kind increases linearly with the number of useful columns in
the dimension tables, but the speed of combining Bitmapped indexes to create ad-hoc combinations
takes care of the problem of explosion of star join indexes.
Segmentation: It is one of the methods used for speed up the query with one or more group-by
attributes.
Clustering: This is clustering for the finely divided fact table F to improve the performance. Not only
queries on fact tables, it also improves group-by queries on the dimensions.
Improved Grouping Efficiency Using Segmentation &
Clustering
● Read-mostly environment of data warehousing has made it feasible to use
more complex index structures to speed up the evaluation of queries.
● The paper shows how ad-hoc OLAP style queries involving aggregation
and grouping can be efficiently evaluated using indexing and clustering.
● The paper also introduces a new index type, Groupset indexes, that are
especially well-suited for evaluating OLAP type of query.
Conclusion

More Related Content

What's hot

Algorithms for Query Processing and Optimization of Spatial Operations
Algorithms for Query Processing and Optimization of Spatial OperationsAlgorithms for Query Processing and Optimization of Spatial Operations
Algorithms for Query Processing and Optimization of Spatial OperationsNatasha Mandal
 
Practical dimensions
Practical dimensionsPractical dimensions
Practical dimensionstholem
 
Datastructures using c++
Datastructures using c++Datastructures using c++
Datastructures using c++Gopi Nath
 
Subgraph matching with set similarity in a
Subgraph matching with set similarity in aSubgraph matching with set similarity in a
Subgraph matching with set similarity in aNexgen Technology
 
105575916 maths-edit-new
105575916 maths-edit-new105575916 maths-edit-new
105575916 maths-edit-newhomeworkping7
 
Data warehouse 5: Data Reconciliation and Transformation in Data Warehouse
Data warehouse 5: Data Reconciliation and Transformation in Data WarehouseData warehouse 5: Data Reconciliation and Transformation in Data Warehouse
Data warehouse 5: Data Reconciliation and Transformation in Data WarehouseVaibhav Khanna
 
Data Mining: Mining ,associations, and correlations
Data Mining: Mining ,associations, and correlationsData Mining: Mining ,associations, and correlations
Data Mining: Mining ,associations, and correlationsDataminingTools Inc
 
K mer index of dna sequence based on hash
K mer index of dna sequence based on hashK mer index of dna sequence based on hash
K mer index of dna sequence based on hashijcsa
 
Efficient top k retrieval on massive data
Efficient top k retrieval on massive dataEfficient top k retrieval on massive data
Efficient top k retrieval on massive dataPvrtechnologies Nellore
 
Comparative study of Bitmap indexing and B Tree.
Comparative study of Bitmap indexing and B Tree.Comparative study of Bitmap indexing and B Tree.
Comparative study of Bitmap indexing and B Tree.Sudhanshu Deshmukh
 
cis98010
cis98010cis98010
cis98010perfj
 
Introduction of data structure
Introduction of data structureIntroduction of data structure
Introduction of data structureeShikshak
 
Arithmetic and RISC pipeline
Arithmetic and RISC pipelineArithmetic and RISC pipeline
Arithmetic and RISC pipelineManviGautam2
 
Data warehouse 14 data reconciliation tools
Data warehouse 14 data reconciliation toolsData warehouse 14 data reconciliation tools
Data warehouse 14 data reconciliation toolsVaibhav Khanna
 

What's hot (18)

Algorithms for Query Processing and Optimization of Spatial Operations
Algorithms for Query Processing and Optimization of Spatial OperationsAlgorithms for Query Processing and Optimization of Spatial Operations
Algorithms for Query Processing and Optimization of Spatial Operations
 
What's new in Calc and Chart
What's new in Calc and ChartWhat's new in Calc and Chart
What's new in Calc and Chart
 
Practical dimensions
Practical dimensionsPractical dimensions
Practical dimensions
 
Datastructures using c++
Datastructures using c++Datastructures using c++
Datastructures using c++
 
Subgraph matching with set similarity in a
Subgraph matching with set similarity in aSubgraph matching with set similarity in a
Subgraph matching with set similarity in a
 
Data visualization pyplot
Data visualization pyplotData visualization pyplot
Data visualization pyplot
 
HDF-EOS Vector Data
HDF-EOS Vector DataHDF-EOS Vector Data
HDF-EOS Vector Data
 
105575916 maths-edit-new
105575916 maths-edit-new105575916 maths-edit-new
105575916 maths-edit-new
 
Data warehouse 5: Data Reconciliation and Transformation in Data Warehouse
Data warehouse 5: Data Reconciliation and Transformation in Data WarehouseData warehouse 5: Data Reconciliation and Transformation in Data Warehouse
Data warehouse 5: Data Reconciliation and Transformation in Data Warehouse
 
Data Mining: Mining ,associations, and correlations
Data Mining: Mining ,associations, and correlationsData Mining: Mining ,associations, and correlations
Data Mining: Mining ,associations, and correlations
 
K mer index of dna sequence based on hash
K mer index of dna sequence based on hashK mer index of dna sequence based on hash
K mer index of dna sequence based on hash
 
Efficient top k retrieval on massive data
Efficient top k retrieval on massive dataEfficient top k retrieval on massive data
Efficient top k retrieval on massive data
 
Comparative study of Bitmap indexing and B Tree.
Comparative study of Bitmap indexing and B Tree.Comparative study of Bitmap indexing and B Tree.
Comparative study of Bitmap indexing and B Tree.
 
cis98010
cis98010cis98010
cis98010
 
Introduction of data structure
Introduction of data structureIntroduction of data structure
Introduction of data structure
 
Arithmetic and RISC pipeline
Arithmetic and RISC pipelineArithmetic and RISC pipeline
Arithmetic and RISC pipeline
 
Graphing ppt
Graphing pptGraphing ppt
Graphing ppt
 
Data warehouse 14 data reconciliation tools
Data warehouse 14 data reconciliation toolsData warehouse 14 data reconciliation tools
Data warehouse 14 data reconciliation tools
 

Similar to Improved Query Performance With Variant Indexes - review presentation

The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)theijes
 
Comparison between cube techniques
Comparison between cube techniquesComparison between cube techniques
Comparison between cube techniquesijsrd.com
 
Column store databases approaches and optimization techniques
Column store databases  approaches and optimization techniquesColumn store databases  approaches and optimization techniques
Column store databases approaches and optimization techniquesIJDKP
 
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...IOSR Journals
 
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...Spark Summit
 
Data preprocessing in Data Mining
Data preprocessing in Data MiningData preprocessing in Data Mining
Data preprocessing in Data MiningDHIVYADEVAKI
 
Data preperation
Data preperationData preperation
Data preperationFraboni Ec
 
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...ImXaib
 
Data preparation
Data preparationData preparation
Data preparationTony Nguyen
 

Similar to Improved Query Performance With Variant Indexes - review presentation (20)

Open Source Datawarehouse
Open Source DatawarehouseOpen Source Datawarehouse
Open Source Datawarehouse
 
9223301.ppt
9223301.ppt9223301.ppt
9223301.ppt
 
Indexing
IndexingIndexing
Indexing
 
11885558.ppt
11885558.ppt11885558.ppt
11885558.ppt
 
Dbms schemas for decision support
Dbms schemas for decision supportDbms schemas for decision support
Dbms schemas for decision support
 
The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)
 
19CS3052R-CO1-7-S7 ECE
19CS3052R-CO1-7-S7 ECE19CS3052R-CO1-7-S7 ECE
19CS3052R-CO1-7-S7 ECE
 
Comparison between cube techniques
Comparison between cube techniquesComparison between cube techniques
Comparison between cube techniques
 
Data Mining
Data MiningData Mining
Data Mining
 
Column store databases approaches and optimization techniques
Column store databases  approaches and optimization techniquesColumn store databases  approaches and optimization techniques
Column store databases approaches and optimization techniques
 
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...
K Means Clustering Algorithm for Partitioning Data Sets Evaluated From Horizo...
 
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
Cost-Based Optimizer Framework for Spark SQL: Spark Summit East talk by Ron H...
 
Data preprocessing in Data Mining
Data preprocessing in Data MiningData preprocessing in Data Mining
Data preprocessing in Data Mining
 
Data preperation
Data preperationData preperation
Data preperation
 
Data preperation
Data preperationData preperation
Data preperation
 
Data preperation
Data preperationData preperation
Data preperation
 
Data preparation
Data preparationData preparation
Data preparation
 
Data preparation
Data preparationData preparation
Data preparation
 
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...
prvg4sczsginx3ynyqlc-signature-b84f0cf1da1e7d0fde4ecfab2a28f243cfa561f9aa2c9b...
 
Data preparation
Data preparationData preparation
Data preparation
 

More from Vimukthi Wickramasinghe

Exploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewExploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewVimukthi Wickramasinghe
 
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Vimukthi Wickramasinghe
 
Application Performance & Flexibility on Exokernel Systems paper review
Application Performance & Flexibility on Exokernel Systems paper reviewApplication Performance & Flexibility on Exokernel Systems paper review
Application Performance & Flexibility on Exokernel Systems paper reviewVimukthi Wickramasinghe
 
A parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesA parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesVimukthi Wickramasinghe
 

More from Vimukthi Wickramasinghe (8)

Beanstalkg
BeanstalkgBeanstalkg
Beanstalkg
 
pgdip-project-report-final-148245F
pgdip-project-report-final-148245Fpgdip-project-report-final-148245F
pgdip-project-report-final-148245F
 
Factored Operating Systems paper review
Factored Operating Systems paper reviewFactored Operating Systems paper review
Factored Operating Systems paper review
 
Exploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper reviewExploring Strategies for Training Deep Neural Networks paper review
Exploring Strategies for Training Deep Neural Networks paper review
 
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
Learning New Semi-Supervised Deep Auto-encoder Features for Statistical Machi...
 
Application Performance & Flexibility on Exokernel Systems paper review
Application Performance & Flexibility on Exokernel Systems paper reviewApplication Performance & Flexibility on Exokernel Systems paper review
Application Performance & Flexibility on Exokernel Systems paper review
 
A parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slidesA parallel gpu version of the traveling salesman problem slides
A parallel gpu version of the traveling salesman problem slides
 
Smart mrs bi project-presentation
Smart mrs bi project-presentationSmart mrs bi project-presentation
Smart mrs bi project-presentation
 

Recently uploaded

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...RajaP95
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 

Recently uploaded (20)

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 

Improved Query Performance With Variant Indexes - review presentation

  • 1. Improved Query Performance With Variant Indexes paper by Patrick O’Neil & Dallan Quass Presented by V B Wickramasinghe - 148245F
  • 2. Overview •What are database indexes? •Value-List Index (B+ tree) •Bitmap Indexes •Projection Indexes •Bit-Sliced Indexes •Comparison of Index Types for different queries. •Conclusion
  • 3. What are database indexes? “A database index is a data structure that improves the speed of data retrieval operations on a database table at the cost of additional writes and the use of more storage space to maintain the extra copy of data.” - Wikipedia
  • 4. Value-List Index (B+ tree) Used to retrieve rows of a table with specified values involving one or more indexed columns. Leaf values of the B+ tree consists of a sequence of entries for index key values. Each key value entry references the set of rows with that value. ----usually B+ trees references each row as RID(Row ID) Problem- In indexes with a relatively small number of key values compared to the number of rows, most key values will have large number of associated RID’s
  • 5. Bitmap Indexes •Bitmap is an alternate method of representing RID in a Value-List index A “Bitmap B” is defined on table T as a sequence of M bits, where for each row with ordinal number j, we set the jth bit in B if that row satisfies the property of the index.
  • 6. Bitmap Indexes (contd..) Bitmap Index Performance :- • boolean operations such as AND, OR, and Not are extremely fast for Bitmaps --- AND for ( I=0 ; I < len(B1) ; I++) B3[I] = B1[I] & B2[I]; --- OR for ( I=0 ; I < len(B1) ; I++) B3[I] = B1[I] || B2[I]; ---NOT for ( I=0 ; I < len(B1) ; I++) B3[I] = ~B1[I] & EBM[I]; These loops to calculate AND,OR, or NOT are extremely fast compared to same done on RID lists as long as the Bitmaps involved have reasonably high density.
  • 7. Advantaged of Bitmap Indexes •Fast operations —The most common operations are the bitwise logical operations —They are well supported by hardware •Easy to compress, potentially small index size. •Each individual bitmap is small and frequently used ones can be cached in memory. •Efficient for read-mostly data: data produced from scientific experiments can be appended in large groups. •Bitmaps are more space efficient than RID lists in a Value-List index. •Disk savings are enormous in case when Bitmaps are dense i.e number of one bits as a proportion of all bits in a Bitmap are large.
  • 8. Projection Index A projection index for column duplicates all column values for lookup by ordinal number .
  • 9. Projection Index (contd..) ----projection index turns out to be quite useful in cases where column values must be retrieved for all rows of the foundset, where the foundset is dense enough such that several column values would probably be found on the same disk page of the projection index, but rows themselves being larger, would appear on several different pages ----faster to retrieve a foundset of column value from projection index than from rows themselves
  • 10. Bit-sliced Index A Bit-Sliced index for a column creates Bitmaps for significant bits in the column value, Bnn – bitmap representing set of non null values in the indexed column
  • 11. Comparison of Indexes evaluating Single-Column Sum Aggregates Plan 1 : Direct access to the rows to calculate the Sum -- costs includes I/O cost and CPU cost for getting proper row and column value from buffer resident page. Plan 2 : Calculating Sum through a Projection Index Plan 3 : Calculating the Sum through a Bitmap Index if (COUNT (Bf AND Bnn ) = = 0) Return null; SUM = 0.0; for each non-null value v in the index for C { Designate the set of rows with value v as Bv SUM += v * COUNT(Bf AND BV ); } Return SUM;
  • 12. Comparison of Indexes evaluating Single-Column Sum Aggregates Plan 4 : Calculating the SUM through a Bit-Sliced Index if (COUNT (Bf AND Bnn ) = = 0) Return null; SUM = 0.0; for i = 0 to N SUM += 2i * COUNT(Bi AND Bf ); Return SUM;
  • 13. Comparison of Indexes evaluating Single-Column Sum Aggregates
  • 14. Evaluating Range Predicates SELECT target-list FROM T WHERE C-range AND <condition> Plan 1 : Evaluating the Range using the Projection Index :- --- we create BF in a straightforward way by accessing each C value in the index corresponding to an ordinal row number in Bf and testing whether it lies with the specified range Plan 2 : Evaluating range predicates using Value-List index :- Br = empty set; for each entry v in the index for C that satisfies the range specified Designate the set of rows with the value v as Bv Br = Br OR Bv BF = Bf AND Br
  • 15. Evaluating OLAP-style Queries Data warehouses are often built to support OLAP. OLAP query performance depends on creating a set of summary tables to efficiently evaluate an expected set of queries. This approach is possible only when the expected set of queries is known in advance. Specifically, the OLAP Approach addresses queries that group by different combination columns, known as dimensions. But when ad- hoc queries must be issued that selects the rows on the criteria that are not part of the dimensional scheme, summary tables that don’t foresee such selection cannot be used and in such cases other indexes on the base data must be used. ➢ Join Indexes and Bitmap-Join-Indexes are tried to address this problem.
  • 16. Join Indexes A join index is an index on one table that involves a column value from different table through a commonly encountered join. but, if there are numerous columns used for restrictions in each dimension table, then the number of star join indexes needed to be able to combine any single column choice from each dimension table is a product of the number of columns in each dimension. There will be a combinatorial explosion of join indexes in terms of the number of useful columns. ✓ bitmap join index addresses this problem
  • 17. Bitmap Join Index It is an index on a table T based on a single column of a table S, where S commonly joins with T in a specified way. Obviously the number of indexes of this kind increases linearly with the number of useful columns in the dimension tables, but the speed of combining Bitmapped indexes to create ad-hoc combinations takes care of the problem of explosion of star join indexes.
  • 18. Segmentation: It is one of the methods used for speed up the query with one or more group-by attributes. Clustering: This is clustering for the finely divided fact table F to improve the performance. Not only queries on fact tables, it also improves group-by queries on the dimensions. Improved Grouping Efficiency Using Segmentation & Clustering
  • 19. ● Read-mostly environment of data warehousing has made it feasible to use more complex index structures to speed up the evaluation of queries. ● The paper shows how ad-hoc OLAP style queries involving aggregation and grouping can be efficiently evaluated using indexing and clustering. ● The paper also introduces a new index type, Groupset indexes, that are especially well-suited for evaluating OLAP type of query. Conclusion