SlideShare ist ein Scribd-Unternehmen logo
1 von 26
MORE THAN JUST SOME BITS… 
Data Warehousing and Bitmap Indexes 
Dani Schnider, Trivadis AG 
Oracle Open World 2011, 
San Francisco 
BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
1
Dani Schnider 
 Principal Consultant und 
DWH/BI Lead Architect 
bei Trivadis in Zürich 
 Teacher for courses about 
Data Warehousing, SQL 
Optimization and Oracle 
Warehouse Builder 
 Co-author of book «Data 
Warehousing mit Oracle» 
2014 © Trivadis 
2 
Fehlertolerante Ladeprozesse 
18. April 2012
Mit über 600 IT- und Fachexperten bei Ihnen vor Ort 
2014 © Trivadis 
11 Trivadis Niederlassungen mit 
über 600 Mitarbeitenden 
200 Service Level Agreements 
Mehr als 4'000 Trainingsteilnehmer 
Forschungs- und Entwicklungs-budget: 
CHF 5.0 / EUR 4 Mio. 
Finanziell unabhängig und 
nachhaltig profitabel 
Erfahrung aus mehr als 1'900 
Projekten pro Jahr bei über 800 
Kunden 
Stand 12/2012 
Hamburg 
Düsseldorf 
Frankfurt 
Freiburg 
München 
Wien 
Basel 
Bern Zürich 
Lausanne 
3 
Stuttgart 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
3
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
4 
SOME BITS ABOUT 
BITMAP INDEXES 
AND THEIR USAGE IN 
DATA WAREHOUSES
Bitmap Indexes – Concept 
Oracle® Database Concepts 11g Release 2 (11.2) 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
5
Bitmap Indexes – Concept 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
6
Bitmap Indexes – Example 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
7
Comparison B-tree Index / Bitmap Index 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
8
Comparison B-tree Index / Bitmap Index 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
9
Concatenated Bitmap Indexes 
Bitmap Indexes on two or more columns are possible, but not useful 
2014 © Trivadis 
Why? 
 Concatenated bitmap index can be used only when all columns are 
filtered 
 Two or more separate bitmap indexes are more flexible and can be used 
for all combinations 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
10
Index Strategy on Star Schema 
 Dimension Tables: 
 Unique b-tree index on primary key column 
 Bitmap indexes on additional columns (optional) 
 Fact Tables: 
 Bitmap indexes on all dimension key (foreign key) columns 
 Bitmap join indexes on often used filter columns (optional) 
 Usually no primary key on fact tables 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
11
Index Strategy on Star Schema 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
12
Query Optimization on Star Schemas 
 Typical Queries: 
 Filter criteria on (multiple) dimension 
2014 © Trivadis 
tables 
 Facts are selected by join with 
dimensions 
 Problem: 
 Tables with restrictions should be 
read first 
 Only two tables can be joined at a 
time 
 No relationships between dimension 
tables 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
13
Star Transformation – Concept 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
14
Star Transformation – Example 
What is the total revenue for product “Shorts” for all customers in Germany, 
grouped by male and female customers? 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
15
Star Transformation – Example 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
16
Bitmap Join Index – Concept 
 Bitmap index is defined on fact 
2014 © Trivadis 
table 
 Indexed column is part of 
dimension table 
 Possible for star and snowflake 
schemas 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
17
Bitmap Join Index – Example 
Same example with Bitmap Join Indexes 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
18 
Demo
Bitmap Indexes and ETL 
 Bitmap indexes are efficient for set-based ETL 
 Index maintenance is deferred until end of each DML operation 
 Efficient index maintenance for Parallel DML 
 Avoid “hand-made” parallel ETL with multiple sessions 
 Locking behavior of bitmap indexes 
 For large data loads: Rebuild indexes after ETL operation 
 Set all indexes to UNUSABLE 
 Load data into table 
 Rebuild all indexes 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
19
Bitmap Indexes and Partitioning 
 Bitmap Indexes must always be LOCAL 
 Local indexes are recommended in Data Warehouse 
 Only purpose of global indexes in DWH: unique indexes without partition key 
  Restriction of local bitmap indexes is not a problem 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
20
Bitmap Indexes and Compression 
 Bitmap Indexes are always compressed 
 Zeros are compressed, Ones are not compressed 
 Bitmap contains number of zeros to next 1 bit 
 Bitmap Indexes need less disk space than B-tree Indexes 
 Even for columns with high number of distinct keys 
 Detail description see «Bitmap Index Internals», © Julian Dyke 
 http://www.juliandyke.com/Presentations/BitmapIndexInternals.ppt 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
21
Bitmap Indexes and Compression 
 Number of distinct keys has impact on size of index 
 Bitmap index is usually smaller than b-tree index 
 For high number of keys, size of bitmap index increases 
 Size of b-tree index is more or less constant 
 Sort order affects size of bitmap index, but not of b-tree index 
2014 © Trivadis 
350 
300 
250 
200 
150 
100 
50 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
22 
Demo 
0 
10 100 1000 10000 100000 
Bitmap (scattered) Bitmap (sorted) B-tree index
Bitmap Indexes and Compression 
 Enabling table compression 
 When a table is enabled for compression, all bitmap indexes must be disabled 
 Reason: Hakan factor of table 
 Maximum number of rows that can be stored in a table block 
 Hakan factor changes when table is enabled for compression (only first time) 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
23 
Demo
Bitmap Indexes – Conclusion 
 Bitmap Indexes are a powerful Data Warehouse feature 
 Can be combined in ad hoc queries 
 Star Transformation 
 Useful for selective and non-selective columns 
 Bitmap Indexes are useful for large databases 
 Efficient for set-based ETL and Parallel DML 
 Local bitmap indexes on partitioned tables 
 Compression of bitmap indexes 
 There are almost no reasons to use b-tree indexes in a Data Warehouse 
 B-tree indexes are mainly used for Primary Key or Unique Key constraints 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
24
References 
 Oracle® Database Data Warehousing Guide 11g Release 2 (11.2) 
 Oracle Corporation, http://www.oracle.com/pls/db112/ 
 Oracle® Database Concepts 11g Release 2 (11.2) 
 Oracle Corporation, http://www.oracle.com/pls/db112/ 
 Christian Antognini: Troubleshooting Oracle Performance 
 Apress, http://www.apress.com/9781590599174 
 Jonathan Lewis: Cost-Based Oracle Fundamentals 
 Apress, http://www.apress.com/9781590596364 
 Julian Dyke: Bitmap Index Internals 
 http://www.juliandyke.com/Presentations/BitmapIndexInternals.ppt 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
25
THANK YOU. 
Trivadis AG 
Dani Schnider 
Europa-Strasse 5 
CH-8152 Glattbrugg/Zürich 
Switzerland 
Tel. +41 44 808 70 20 
Fax +41 44 808 70 21 
info@trivadis.com 
www.trivadis.com 
BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 
2014 © Trivadis 
Data Warehouseing & Bitmap Indexes 
02.10.2011 
26

Weitere ähnliche Inhalte

Was ist angesagt?

AWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentationAWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentation
Volodymyr Rovetskiy
 
9. Object Relational Databases in DBMS
9. Object Relational Databases in DBMS9. Object Relational Databases in DBMS
9. Object Relational Databases in DBMS
koolkampus
 
Modularized ETL Writing with Apache Spark
Modularized ETL Writing with Apache SparkModularized ETL Writing with Apache Spark
Modularized ETL Writing with Apache Spark
Databricks
 

Was ist angesagt? (20)

Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
 
Open Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and HistogramsOpen Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and Histograms
 
AWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentationAWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentation
 
Oracle SQL Basics
Oracle SQL BasicsOracle SQL Basics
Oracle SQL Basics
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
 
Introduction to Amazon DynamoDB
Introduction to Amazon DynamoDBIntroduction to Amazon DynamoDB
Introduction to Amazon DynamoDB
 
Apache doris (incubating) introduction
Apache doris (incubating) introductionApache doris (incubating) introduction
Apache doris (incubating) introduction
 
Indexes and Indexing in Oracle 12c
Indexes and Indexing in Oracle 12cIndexes and Indexing in Oracle 12c
Indexes and Indexing in Oracle 12c
 
SQL
SQLSQL
SQL
 
Oracle data guard for beginners
Oracle data guard for beginnersOracle data guard for beginners
Oracle data guard for beginners
 
Oraclesql
OraclesqlOraclesql
Oraclesql
 
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | EnglishAWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
 
9. Object Relational Databases in DBMS
9. Object Relational Databases in DBMS9. Object Relational Databases in DBMS
9. Object Relational Databases in DBMS
 
Apache HBase™
Apache HBase™Apache HBase™
Apache HBase™
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB
 
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin AmbardDelta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
 
SQL Views
SQL ViewsSQL Views
SQL Views
 
Advanced sql
Advanced sqlAdvanced sql
Advanced sql
 
Backup and recovery in sql server database
Backup and recovery in sql server databaseBackup and recovery in sql server database
Backup and recovery in sql server database
 
Modularized ETL Writing with Apache Spark
Modularized ETL Writing with Apache SparkModularized ETL Writing with Apache Spark
Modularized ETL Writing with Apache Spark
 

Andere mochten auch

Cuadernos de actividades manual maltrato
Cuadernos de actividades manual maltratoCuadernos de actividades manual maltrato
Cuadernos de actividades manual maltrato
anabg16
 
Esterilizacion y desinfeccion
Esterilizacion y desinfeccion Esterilizacion y desinfeccion
Esterilizacion y desinfeccion
regina_estrella_14
 
StructSure Scaffold Introduces Instant UpRight
StructSure Scaffold Introduces Instant UpRightStructSure Scaffold Introduces Instant UpRight
StructSure Scaffold Introduces Instant UpRight
StructSure
 
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
cotic21700642
 
Designing for privacy in mobile applications
Designing for privacy in mobile applicationsDesigning for privacy in mobile applications
Designing for privacy in mobile applications
Vodafone developer
 
Engineering Drawing: Chapter 09 section
Engineering Drawing: Chapter 09 sectionEngineering Drawing: Chapter 09 section
Engineering Drawing: Chapter 09 section
mokhtar
 
001 sparen mit fonds
001 sparen mit fonds001 sparen mit fonds
001 sparen mit fonds
Udo Scheuss
 

Andere mochten auch (20)

María Cañizares: "Del software libre al open government"
María Cañizares: "Del software libre al open government"María Cañizares: "Del software libre al open government"
María Cañizares: "Del software libre al open government"
 
Cuadernos de actividades manual maltrato
Cuadernos de actividades manual maltratoCuadernos de actividades manual maltrato
Cuadernos de actividades manual maltrato
 
Pago electrónico.
Pago electrónico.Pago electrónico.
Pago electrónico.
 
CRM - Einführung
CRM - EinführungCRM - Einführung
CRM - Einführung
 
Claves Para La Escritura De Un Buen Guion
Claves Para La Escritura De Un Buen GuionClaves Para La Escritura De Un Buen Guion
Claves Para La Escritura De Un Buen Guion
 
Esterilizacion y desinfeccion
Esterilizacion y desinfeccion Esterilizacion y desinfeccion
Esterilizacion y desinfeccion
 
Investir dans les réseaux sociaux? - Conférence Alliance EPFL Mai 2011 - Beno...
Investir dans les réseaux sociaux? - Conférence Alliance EPFL Mai 2011 - Beno...Investir dans les réseaux sociaux? - Conférence Alliance EPFL Mai 2011 - Beno...
Investir dans les réseaux sociaux? - Conférence Alliance EPFL Mai 2011 - Beno...
 
StructSure Scaffold Introduces Instant UpRight
StructSure Scaffold Introduces Instant UpRightStructSure Scaffold Introduces Instant UpRight
StructSure Scaffold Introduces Instant UpRight
 
Wojciech góra
Wojciech góraWojciech góra
Wojciech góra
 
Instrumentos de Financiación del ICO
Instrumentos de Financiación del ICOInstrumentos de Financiación del ICO
Instrumentos de Financiación del ICO
 
Colmercedes, matanza version 1
Colmercedes, matanza version 1Colmercedes, matanza version 1
Colmercedes, matanza version 1
 
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
Zara , Un Imperio De La Ropa (Elena Y Ana Pino)
 
FIWARE Developers Week_IoT Agents with Thinking Things and OMA lightweight M...
 FIWARE Developers Week_IoT Agents with Thinking Things and OMA lightweight M... FIWARE Developers Week_IoT Agents with Thinking Things and OMA lightweight M...
FIWARE Developers Week_IoT Agents with Thinking Things and OMA lightweight M...
 
Camber y caster
Camber y casterCamber y caster
Camber y caster
 
Designing for privacy in mobile applications
Designing for privacy in mobile applicationsDesigning for privacy in mobile applications
Designing for privacy in mobile applications
 
Manual s10-presupuestos-11935
Manual s10-presupuestos-11935Manual s10-presupuestos-11935
Manual s10-presupuestos-11935
 
Engineering Drawing: Chapter 09 section
Engineering Drawing: Chapter 09 sectionEngineering Drawing: Chapter 09 section
Engineering Drawing: Chapter 09 section
 
Continuing airworthiness management organisation
Continuing airworthiness management organisationContinuing airworthiness management organisation
Continuing airworthiness management organisation
 
001 sparen mit fonds
001 sparen mit fonds001 sparen mit fonds
001 sparen mit fonds
 
OmD Nehoroshev test
OmD Nehoroshev testOmD Nehoroshev test
OmD Nehoroshev test
 

Ähnlich wie Data Warehousing and Bitmap Indexes - More than just some bits

Ähnlich wie Data Warehousing and Bitmap Indexes - More than just some bits (20)

Partitioning your Oracle Data Warehouse - Just a simple task?
Partitioning your Oracle Data Warehouse - Just a simple task?Partitioning your Oracle Data Warehouse - Just a simple task?
Partitioning your Oracle Data Warehouse - Just a simple task?
 
DBT ELT approach for Advanced Analytics.pptx
DBT ELT approach for Advanced Analytics.pptxDBT ELT approach for Advanced Analytics.pptx
DBT ELT approach for Advanced Analytics.pptx
 
MicroStrategy Design Challenges - Tips and Best Practices
MicroStrategy Design Challenges - Tips and Best PracticesMicroStrategy Design Challenges - Tips and Best Practices
MicroStrategy Design Challenges - Tips and Best Practices
 
Streaming is a Detail
Streaming is a DetailStreaming is a Detail
Streaming is a Detail
 
Db2 update day 2015 managing db2 with ibm db2 tools svenn aage
Db2 update day 2015   managing db2 with ibm db2 tools svenn aageDb2 update day 2015   managing db2 with ibm db2 tools svenn aage
Db2 update day 2015 managing db2 with ibm db2 tools svenn aage
 
DataWarehouse Explorer
DataWarehouse ExplorerDataWarehouse Explorer
DataWarehouse Explorer
 
IoT Architecture - are traditional architectures good enough or do we need n...
 IoT Architecture - are traditional architectures good enough or do we need n... IoT Architecture - are traditional architectures good enough or do we need n...
IoT Architecture - are traditional architectures good enough or do we need n...
 
Analytics on system z final
Analytics on system z finalAnalytics on system z final
Analytics on system z final
 
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
 
Enabling Self Service BI for OBIEE using Tableau
Enabling Self Service BI for OBIEE using TableauEnabling Self Service BI for OBIEE using Tableau
Enabling Self Service BI for OBIEE using Tableau
 
Zurich Italia - IT Knowledge Base (English)
Zurich Italia - IT Knowledge Base (English)Zurich Italia - IT Knowledge Base (English)
Zurich Italia - IT Knowledge Base (English)
 
Bridging the Last Mile: Getting Data to the People Who Need It (APAC)
Bridging the Last Mile: Getting Data to the People Who Need It (APAC)Bridging the Last Mile: Getting Data to the People Who Need It (APAC)
Bridging the Last Mile: Getting Data to the People Who Need It (APAC)
 
FDMEE Can Do That?
FDMEE Can Do That?FDMEE Can Do That?
FDMEE Can Do That?
 
Denodo as the Core Pillar of your API Strategy
Denodo as the Core Pillar of your API StrategyDenodo as the Core Pillar of your API Strategy
Denodo as the Core Pillar of your API Strategy
 
Webinar on MongoDB BI Connectors
Webinar on MongoDB BI ConnectorsWebinar on MongoDB BI Connectors
Webinar on MongoDB BI Connectors
 
Pivotal Digital Transformation Forum: Data Science Technical Overview
Pivotal Digital Transformation Forum: Data Science Technical OverviewPivotal Digital Transformation Forum: Data Science Technical Overview
Pivotal Digital Transformation Forum: Data Science Technical Overview
 
Self-Service Analytics with Guard Rails
Self-Service Analytics with Guard RailsSelf-Service Analytics with Guard Rails
Self-Service Analytics with Guard Rails
 
451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL Database451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL Database
 
Overcoming Data Gravity in Multi-Cloud Enterprise Architectures
Overcoming Data Gravity in Multi-Cloud Enterprise ArchitecturesOvercoming Data Gravity in Multi-Cloud Enterprise Architectures
Overcoming Data Gravity in Multi-Cloud Enterprise Architectures
 
Nw2008 tips tricks_edw_v10
Nw2008 tips tricks_edw_v10Nw2008 tips tricks_edw_v10
Nw2008 tips tricks_edw_v10
 

Mehr von Trivadis

Mehr von Trivadis (20)

Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...
Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...
Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...
 
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
 
Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)
Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)
Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)
 
Azure Days 2019: Master the Move to Azure (Konrad Brunner)
Azure Days 2019: Master the Move to Azure (Konrad Brunner)Azure Days 2019: Master the Move to Azure (Konrad Brunner)
Azure Days 2019: Master the Move to Azure (Konrad Brunner)
 
Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...
Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...
Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...
 
Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)
Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)
Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)
 
Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...
Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...
Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...
 
Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...
Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...
Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...
 
Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...
Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...
Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...
 
Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...
Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...
Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...
 
TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...
TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...
TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...
 
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
 
TechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - Trivadis
TechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - TrivadisTechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - Trivadis
TechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - Trivadis
 
TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...
TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...
TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...
 
TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...
TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...
TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...
 
TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...
TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...
TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...
 
TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...
TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...
TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...
 
TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...
TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...
TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...
 
TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...
TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...
TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...
 
TechEvent 2019: The sleeping Power of Data; Eberhard Lösch - Trivadis
TechEvent 2019: The sleeping Power of Data; Eberhard Lösch - TrivadisTechEvent 2019: The sleeping Power of Data; Eberhard Lösch - Trivadis
TechEvent 2019: The sleeping Power of Data; Eberhard Lösch - Trivadis
 

Kürzlich hochgeladen

If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
Kayode Fayemi
 

Kürzlich hochgeladen (20)

BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
Air breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animalsAir breathing and respiratory adaptations in diver animals
Air breathing and respiratory adaptations in diver animals
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 

Data Warehousing and Bitmap Indexes - More than just some bits

  • 1. MORE THAN JUST SOME BITS… Data Warehousing and Bitmap Indexes Dani Schnider, Trivadis AG Oracle Open World 2011, San Francisco BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 1
  • 2. Dani Schnider  Principal Consultant und DWH/BI Lead Architect bei Trivadis in Zürich  Teacher for courses about Data Warehousing, SQL Optimization and Oracle Warehouse Builder  Co-author of book «Data Warehousing mit Oracle» 2014 © Trivadis 2 Fehlertolerante Ladeprozesse 18. April 2012
  • 3. Mit über 600 IT- und Fachexperten bei Ihnen vor Ort 2014 © Trivadis 11 Trivadis Niederlassungen mit über 600 Mitarbeitenden 200 Service Level Agreements Mehr als 4'000 Trainingsteilnehmer Forschungs- und Entwicklungs-budget: CHF 5.0 / EUR 4 Mio. Finanziell unabhängig und nachhaltig profitabel Erfahrung aus mehr als 1'900 Projekten pro Jahr bei über 800 Kunden Stand 12/2012 Hamburg Düsseldorf Frankfurt Freiburg München Wien Basel Bern Zürich Lausanne 3 Stuttgart Data Warehouseing & Bitmap Indexes 02.10.2011 3
  • 4. 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 4 SOME BITS ABOUT BITMAP INDEXES AND THEIR USAGE IN DATA WAREHOUSES
  • 5. Bitmap Indexes – Concept Oracle® Database Concepts 11g Release 2 (11.2) 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 5
  • 6. Bitmap Indexes – Concept 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 6
  • 7. Bitmap Indexes – Example 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 7
  • 8. Comparison B-tree Index / Bitmap Index 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 8
  • 9. Comparison B-tree Index / Bitmap Index 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 9
  • 10. Concatenated Bitmap Indexes Bitmap Indexes on two or more columns are possible, but not useful 2014 © Trivadis Why?  Concatenated bitmap index can be used only when all columns are filtered  Two or more separate bitmap indexes are more flexible and can be used for all combinations Data Warehouseing & Bitmap Indexes 02.10.2011 10
  • 11. Index Strategy on Star Schema  Dimension Tables:  Unique b-tree index on primary key column  Bitmap indexes on additional columns (optional)  Fact Tables:  Bitmap indexes on all dimension key (foreign key) columns  Bitmap join indexes on often used filter columns (optional)  Usually no primary key on fact tables 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 11
  • 12. Index Strategy on Star Schema 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 12
  • 13. Query Optimization on Star Schemas  Typical Queries:  Filter criteria on (multiple) dimension 2014 © Trivadis tables  Facts are selected by join with dimensions  Problem:  Tables with restrictions should be read first  Only two tables can be joined at a time  No relationships between dimension tables Data Warehouseing & Bitmap Indexes 02.10.2011 13
  • 14. Star Transformation – Concept 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 14
  • 15. Star Transformation – Example What is the total revenue for product “Shorts” for all customers in Germany, grouped by male and female customers? 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 15
  • 16. Star Transformation – Example 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 16
  • 17. Bitmap Join Index – Concept  Bitmap index is defined on fact 2014 © Trivadis table  Indexed column is part of dimension table  Possible for star and snowflake schemas Data Warehouseing & Bitmap Indexes 02.10.2011 17
  • 18. Bitmap Join Index – Example Same example with Bitmap Join Indexes 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 18 Demo
  • 19. Bitmap Indexes and ETL  Bitmap indexes are efficient for set-based ETL  Index maintenance is deferred until end of each DML operation  Efficient index maintenance for Parallel DML  Avoid “hand-made” parallel ETL with multiple sessions  Locking behavior of bitmap indexes  For large data loads: Rebuild indexes after ETL operation  Set all indexes to UNUSABLE  Load data into table  Rebuild all indexes 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 19
  • 20. Bitmap Indexes and Partitioning  Bitmap Indexes must always be LOCAL  Local indexes are recommended in Data Warehouse  Only purpose of global indexes in DWH: unique indexes without partition key   Restriction of local bitmap indexes is not a problem 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 20
  • 21. Bitmap Indexes and Compression  Bitmap Indexes are always compressed  Zeros are compressed, Ones are not compressed  Bitmap contains number of zeros to next 1 bit  Bitmap Indexes need less disk space than B-tree Indexes  Even for columns with high number of distinct keys  Detail description see «Bitmap Index Internals», © Julian Dyke  http://www.juliandyke.com/Presentations/BitmapIndexInternals.ppt 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 21
  • 22. Bitmap Indexes and Compression  Number of distinct keys has impact on size of index  Bitmap index is usually smaller than b-tree index  For high number of keys, size of bitmap index increases  Size of b-tree index is more or less constant  Sort order affects size of bitmap index, but not of b-tree index 2014 © Trivadis 350 300 250 200 150 100 50 Data Warehouseing & Bitmap Indexes 02.10.2011 22 Demo 0 10 100 1000 10000 100000 Bitmap (scattered) Bitmap (sorted) B-tree index
  • 23. Bitmap Indexes and Compression  Enabling table compression  When a table is enabled for compression, all bitmap indexes must be disabled  Reason: Hakan factor of table  Maximum number of rows that can be stored in a table block  Hakan factor changes when table is enabled for compression (only first time) 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 23 Demo
  • 24. Bitmap Indexes – Conclusion  Bitmap Indexes are a powerful Data Warehouse feature  Can be combined in ad hoc queries  Star Transformation  Useful for selective and non-selective columns  Bitmap Indexes are useful for large databases  Efficient for set-based ETL and Parallel DML  Local bitmap indexes on partitioned tables  Compression of bitmap indexes  There are almost no reasons to use b-tree indexes in a Data Warehouse  B-tree indexes are mainly used for Primary Key or Unique Key constraints 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 24
  • 25. References  Oracle® Database Data Warehousing Guide 11g Release 2 (11.2)  Oracle Corporation, http://www.oracle.com/pls/db112/  Oracle® Database Concepts 11g Release 2 (11.2)  Oracle Corporation, http://www.oracle.com/pls/db112/  Christian Antognini: Troubleshooting Oracle Performance  Apress, http://www.apress.com/9781590599174  Jonathan Lewis: Cost-Based Oracle Fundamentals  Apress, http://www.apress.com/9781590596364  Julian Dyke: Bitmap Index Internals  http://www.juliandyke.com/Presentations/BitmapIndexInternals.ppt 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 25
  • 26. THANK YOU. Trivadis AG Dani Schnider Europa-Strasse 5 CH-8152 Glattbrugg/Zürich Switzerland Tel. +41 44 808 70 20 Fax +41 44 808 70 21 info@trivadis.com www.trivadis.com BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 2014 © Trivadis Data Warehouseing & Bitmap Indexes 02.10.2011 26