SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
BASLE BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA
HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH
Designing for Performance:
Database Related Worst Practices
Christian Antognini
SOUG Day, 2 March 2016, Baden (CH)
@ChrisAntognini
Designing for Performance: Database Related Worst Practices2 3/2/2016
Senior principal consultant, trainer and partner
at Trivadis in Zurich (CH)
christian.antognini@trivadis.com
http://antognini.ch
Focus: get the most out of Oracle Database
Logical and physical database design
Query optimizer
Application performance management
Author of Troubleshooting Oracle Performance (Apress, 2008/14)
OakTable Network, Oracle ACE Director
Agenda
Designing for Performance: Database Related Worst Practices3 3/2/2016
1. Introduction
2. Worst Practices
3. Core Messages
Designing for Performance: Database Related Worst Practices4 3/2/2016
Introduction
Where Does This Information Come From?
Designing for Performance: Database Related Worst Practices5 3/2/2016
Personal experience!
I spent most of the last 15 years troubleshooting performance problems.
Hundreds of different projects and applications
A number of industries were involved
According to my experience, most of the database design related
performance problems are caused by a limited number of issues.
In this presentation I cover the top 10
Even though some of them may seem very basic, do not underestimate the number
of systems that are now running and suffering because of them!
Why It’s Important?
Designing for Performance: Database Related Worst Practices6 3/2/2016
Many performance problems can be
avoided with sound planning and
design.
Do the right thing!
There is a widespread lack of
knowledge in our industry!
The same mistakes are made again
and again.
“To err is human, to persist in it, is
diabolical” – Seneca
Designing for Performance: Database Related Worst Practices7 3/2/2016
Source: @peter_berner
It’s not Premature Optimization!
Designing for Performance: Database Related Worst Practices8 3/2/2016
“Premature optimization is the root of all evil” – Donald Knuth
The misconception based on that particular quote is that a developer, initially,
should ignore optimization altogether.
In my opinion, this interpretation is wrong!
My take:
Developers should avoid micro optimizations that have local impact.
Developers should care about optimizations that have global impact, like the design
of a system, the algorithms used to implement the required functionality, or in which
layer a specific processing should be performed.
Designing for Performance: Database Related Worst Practices9 3/2/2016
Worst Practices
Lack of Logical Database Design
Designing for Performance: Database Related Worst Practices10 3/2/2016
Once upon a time, it was considered obvious that one should have a data
architect involved in every development project.
Today, unfortunately, too often I see projects in which no formal database
design is done.
The database is considered a dumb device.
The logical database design depends on the target database engine.
Schema-on-write vs schema-on-read
Implementing Generic Tables
Designing for Performance: Database Related Worst Practices11 3/2/2016
In the quest of flexibility, generic database designs are implemented.
Entity-attribute-value models
XML- and JSON-based designs
Flexibility is tied to performance!
In some situations suboptimal performance might be good enough.
In other situations it might be catastrophic.
Not Using Constraints to Enforce Data Integrity
Designing for Performance: Database Related Worst Practices12 3/2/2016
Constraints are not only fundamental to guarantee data integrity, but they are
also extensively used by query optimizers during the generation of execution
plans.
Cons of checking the constraints at the application level:
More code being written and tested
Potential problems with data integrity
Greater consumption of resources (not always)
Leads to less scalable locking schemes (not always)
Lack of Physical Database Design
Designing for Performance: Database Related Worst Practices13 3/2/2016
It is not uncommon to see projects where the logical design is directly
mapped to the physical design.
The physical database design depends on target database engine.
Heap tables, clustered tables, IOT
Many type of indexes exist
Data partitioning
Do not forget to define and implement a data-archiving concept.
Not Choosing the Right Data Type
Designing for Performance: Database Related Worst Practices14 3/2/2016
In recent years, I have witnessed a disturbing trend in physical database
design: wrong datatype selection.
E.g. VARCHAR2 instead of DATE or TIMESTAMP
There are four main problems related to wrong datatype selection:
Wrong or lacking validation of data
Loss of information
Things do not work as expected
Query optimizer anomalies
Not Using Bind Variables Correctly
Designing for Performance: Database Related Worst Practices15 3/2/2016
From a performance point of view, bind variables introduce both an
advantage and a disadvantage.
Only applies to database engines having a cursor cache.
The advantage of using bind variables is that they allow the sharing of
cursors.
The disadvantage of using bind variables in WHERE clauses, and only in
WHERE clauses, is that crucial information is sometimes hidden from the
query optimizer.
From a security point of view, bind variables prevent the risks associated with
SQL injection.
Not Using Advanced Database Features
Designing for Performance: Database Related Worst Practices16 3/2/2016
High-end database engines provide many advanced features that can
drastically reduce development costs while boosting performance.
E.g. data-centric processing should take place as closely as possible to the data
Leverage your investment by taking advantage of those features as much as
possible.
Most of the time, database-independent applications are not required.
I would recommend to develop a database-independent application only when there
are very good reasons for doing it.
Companies are more likely to change the whole application before changing just the
database engine.
Performing Unnecessary Commits
Designing for Performance: Database Related Worst Practices17 3/2/2016
Commits are operations that call for serialization.
Every operation that leads to serialization inhibits scalability.
Serialization is unwanted and should be minimized as much as possible.
Steadily Opening and Closing Database Connections
Designing for Performance: Database Related Worst Practices18 3/2/2016
Opening a database connection that in turn starts an associated process or
thread on the database server is not a lightweight operation.
Do not underestimate the amount of time and resources required.
A worst-case scenario that I sometimes observe is a web application that opens and
closes a database connection for every request that involves a database access.
Using a pool of connections is of paramount importance.
Opening Too Many Database Connections
Designing for Performance: Database Related Worst Practices19 3/2/2016
A database connection that has an associated process or thread on the
database server is not a lightweight resource.
A processor core cannot efficiently handle many concurrent processes or
threads.
Using a pool of connections of limited size is of paramount importance.
Designing for Performance: Database Related Worst Practices20 3/2/2016
Core Messages
Designing for Performance: Database Related Worst Practices21 3/2/2016
Let’s Face it, Information Technology Is Expensive!
Simple solutions
for simple problems,
elegant solutions
for complex problems.
One Size Fits All?
Designing for Performance: Database Related Worst Practices22 3/2/2016
Use the right tool
for the right job.
Designing for Performance: Database Related Worst Practices23 3/2/2016
Performance Is Not an Option
Optimal performance is not simply a product one can buy
but rather the results of an accurate planning and
a correct implementation.
Questions and Answers
Christian Antognini
Senior Principal Consultant
christian.antognini@trivadis.com
3/2/2016 Designing for Performance: Database Related Worst Practices24

Weitere ähnliche Inhalte

Was ist angesagt?

Revolutionising Storage for your Future Business Requirements
Revolutionising Storage for your Future Business RequirementsRevolutionising Storage for your Future Business Requirements
Revolutionising Storage for your Future Business RequirementsNetApp
 
Building Robust Production Data Pipelines with Databricks Delta
Building Robust Production Data Pipelines with Databricks DeltaBuilding Robust Production Data Pipelines with Databricks Delta
Building Robust Production Data Pipelines with Databricks DeltaDatabricks
 
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...Consolidate More: High Performance Primary Deduplication in the Age of Abunda...
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...Hitachi Vantara
 
Data Fabric: NetApp's Vision for the Future of Data Management
Data Fabric: NetApp's Vision for the Future of Data ManagementData Fabric: NetApp's Vision for the Future of Data Management
Data Fabric: NetApp's Vision for the Future of Data ManagementNetApp
 
Reduce Costs and Complexity with Backup-Free Storage
Reduce Costs and Complexity with Backup-Free StorageReduce Costs and Complexity with Backup-Free Storage
Reduce Costs and Complexity with Backup-Free StorageHitachi Vantara
 
Reducing the Total Cost of Ownership of Big Data- Impetus White Paper
Reducing the Total Cost of Ownership of Big Data- Impetus White PaperReducing the Total Cost of Ownership of Big Data- Impetus White Paper
Reducing the Total Cost of Ownership of Big Data- Impetus White PaperImpetus Technologies
 
A-B-C Strategies for File and Content Brochure
A-B-C Strategies for File and Content BrochureA-B-C Strategies for File and Content Brochure
A-B-C Strategies for File and Content BrochureHitachi Vantara
 
Big Data – Shining the Light on Enterprise Dark Data
Big Data – Shining the Light on Enterprise Dark DataBig Data – Shining the Light on Enterprise Dark Data
Big Data – Shining the Light on Enterprise Dark DataHitachi Vantara
 
The Analytics Data Store: Information Supply Framework
The Analytics Data Store: Information Supply FrameworkThe Analytics Data Store: Information Supply Framework
The Analytics Data Store: Information Supply FrameworkMartyn Richard Jones
 
NetApp enterprise All Flash Storage
NetApp enterprise All Flash StorageNetApp enterprise All Flash Storage
NetApp enterprise All Flash StorageDavid Mallenco
 
Data Warehouse in Cloud
Data Warehouse in CloudData Warehouse in Cloud
Data Warehouse in CloudPawan Bhargava
 
Simplify Data Center Monitoring With a Single-Pane View
Simplify Data Center Monitoring With a Single-Pane ViewSimplify Data Center Monitoring With a Single-Pane View
Simplify Data Center Monitoring With a Single-Pane ViewHitachi Vantara
 
OpenStack at the speed of business with SolidFire & Red Hat
OpenStack at the speed of business with SolidFire & Red Hat OpenStack at the speed of business with SolidFire & Red Hat
OpenStack at the speed of business with SolidFire & Red Hat NetApp
 
NetApp FlashAdvantage 3-4-5
NetApp FlashAdvantage 3-4-5NetApp FlashAdvantage 3-4-5
NetApp FlashAdvantage 3-4-5NetApp
 
The Architecture of Decoupling Compute and Storage with Alluxio
The Architecture of Decoupling Compute and Storage with AlluxioThe Architecture of Decoupling Compute and Storage with Alluxio
The Architecture of Decoupling Compute and Storage with AlluxioAlluxio, Inc.
 
The Benefits of Data Fabric
The Benefits of Data FabricThe Benefits of Data Fabric
The Benefits of Data FabricNetApp
 
Tcod a framework for the total cost of big data - december 6 2013 - winte...
Tcod   a framework for the total cost of big data  - december 6 2013  - winte...Tcod   a framework for the total cost of big data  - december 6 2013  - winte...
Tcod a framework for the total cost of big data - december 6 2013 - winte...Richard Winter
 
Breakout: Hadoop and the Operational Data Store
Breakout: Hadoop and the Operational Data StoreBreakout: Hadoop and the Operational Data Store
Breakout: Hadoop and the Operational Data StoreCloudera, Inc.
 
In memory computing
In memory computingIn memory computing
In memory computingGagan Reddy
 

Was ist angesagt? (20)

Revolutionising Storage for your Future Business Requirements
Revolutionising Storage for your Future Business RequirementsRevolutionising Storage for your Future Business Requirements
Revolutionising Storage for your Future Business Requirements
 
Building Robust Production Data Pipelines with Databricks Delta
Building Robust Production Data Pipelines with Databricks DeltaBuilding Robust Production Data Pipelines with Databricks Delta
Building Robust Production Data Pipelines with Databricks Delta
 
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...Consolidate More: High Performance Primary Deduplication in the Age of Abunda...
Consolidate More: High Performance Primary Deduplication in the Age of Abunda...
 
Microsoft Dryad
Microsoft DryadMicrosoft Dryad
Microsoft Dryad
 
Data Fabric: NetApp's Vision for the Future of Data Management
Data Fabric: NetApp's Vision for the Future of Data ManagementData Fabric: NetApp's Vision for the Future of Data Management
Data Fabric: NetApp's Vision for the Future of Data Management
 
Reduce Costs and Complexity with Backup-Free Storage
Reduce Costs and Complexity with Backup-Free StorageReduce Costs and Complexity with Backup-Free Storage
Reduce Costs and Complexity with Backup-Free Storage
 
Reducing the Total Cost of Ownership of Big Data- Impetus White Paper
Reducing the Total Cost of Ownership of Big Data- Impetus White PaperReducing the Total Cost of Ownership of Big Data- Impetus White Paper
Reducing the Total Cost of Ownership of Big Data- Impetus White Paper
 
A-B-C Strategies for File and Content Brochure
A-B-C Strategies for File and Content BrochureA-B-C Strategies for File and Content Brochure
A-B-C Strategies for File and Content Brochure
 
Big Data – Shining the Light on Enterprise Dark Data
Big Data – Shining the Light on Enterprise Dark DataBig Data – Shining the Light on Enterprise Dark Data
Big Data – Shining the Light on Enterprise Dark Data
 
The Analytics Data Store: Information Supply Framework
The Analytics Data Store: Information Supply FrameworkThe Analytics Data Store: Information Supply Framework
The Analytics Data Store: Information Supply Framework
 
NetApp enterprise All Flash Storage
NetApp enterprise All Flash StorageNetApp enterprise All Flash Storage
NetApp enterprise All Flash Storage
 
Data Warehouse in Cloud
Data Warehouse in CloudData Warehouse in Cloud
Data Warehouse in Cloud
 
Simplify Data Center Monitoring With a Single-Pane View
Simplify Data Center Monitoring With a Single-Pane ViewSimplify Data Center Monitoring With a Single-Pane View
Simplify Data Center Monitoring With a Single-Pane View
 
OpenStack at the speed of business with SolidFire & Red Hat
OpenStack at the speed of business with SolidFire & Red Hat OpenStack at the speed of business with SolidFire & Red Hat
OpenStack at the speed of business with SolidFire & Red Hat
 
NetApp FlashAdvantage 3-4-5
NetApp FlashAdvantage 3-4-5NetApp FlashAdvantage 3-4-5
NetApp FlashAdvantage 3-4-5
 
The Architecture of Decoupling Compute and Storage with Alluxio
The Architecture of Decoupling Compute and Storage with AlluxioThe Architecture of Decoupling Compute and Storage with Alluxio
The Architecture of Decoupling Compute and Storage with Alluxio
 
The Benefits of Data Fabric
The Benefits of Data FabricThe Benefits of Data Fabric
The Benefits of Data Fabric
 
Tcod a framework for the total cost of big data - december 6 2013 - winte...
Tcod   a framework for the total cost of big data  - december 6 2013  - winte...Tcod   a framework for the total cost of big data  - december 6 2013  - winte...
Tcod a framework for the total cost of big data - december 6 2013 - winte...
 
Breakout: Hadoop and the Operational Data Store
Breakout: Hadoop and the Operational Data StoreBreakout: Hadoop and the Operational Data Store
Breakout: Hadoop and the Operational Data Store
 
In memory computing
In memory computingIn memory computing
In memory computing
 

Andere mochten auch

Manage OVM Server Sparc
Manage OVM Server SparcManage OVM Server Sparc
Manage OVM Server SparcTrivadis
 
Centros turisticos de Cajamarca
Centros turisticos de CajamarcaCentros turisticos de Cajamarca
Centros turisticos de Cajamarcajulio mendoza
 
Reflexión del pero fiel
Reflexión del pero fielReflexión del pero fiel
Reflexión del pero fieldavidgt98
 
Ficha autoevaluacion trabajo final
Ficha autoevaluacion trabajo finalFicha autoevaluacion trabajo final
Ficha autoevaluacion trabajo finaljulio mendoza
 
Conocimientos previos proyecto los juegos populares.
Conocimientos previos proyecto los juegos populares. Conocimientos previos proyecto los juegos populares.
Conocimientos previos proyecto los juegos populares. BEGOÑA
 
Costs-of-Exclusion-and-Gains-of-Inclusion-Report
Costs-of-Exclusion-and-Gains-of-Inclusion-ReportCosts-of-Exclusion-and-Gains-of-Inclusion-Report
Costs-of-Exclusion-and-Gains-of-Inclusion-ReportCaryl Garcia
 
Rafael rodriguez mapa_mental
Rafael rodriguez mapa_mentalRafael rodriguez mapa_mental
Rafael rodriguez mapa_mentalfabiasanchez
 
Single Sign-On for APEX apps (Important: latest version on edocr!)
Single Sign-On for APEX apps (Important: latest version on edocr!)Single Sign-On for APEX apps (Important: latest version on edocr!)
Single Sign-On for APEX apps (Important: latest version on edocr!)Niels de Bruijn
 
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...Trivadis
 
Banking license and payment banks
Banking license and payment banksBanking license and payment banks
Banking license and payment banksadi9977
 
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...Trivadis
 
Role of New Payment banks and Small banks - Part - 6
Role of New Payment banks and Small banks - Part - 6Role of New Payment banks and Small banks - Part - 6
Role of New Payment banks and Small banks - Part - 6Resurgent India
 
Payment banks
Payment banksPayment banks
Payment banksHome
 
INDIAN FINANCIAL SYSTEM - REFORMS
INDIAN FINANCIAL SYSTEM - REFORMSINDIAN FINANCIAL SYSTEM - REFORMS
INDIAN FINANCIAL SYSTEM - REFORMSRahul Jain
 

Andere mochten auch (17)

Reflexion modulo 3
Reflexion modulo 3Reflexion modulo 3
Reflexion modulo 3
 
Manage OVM Server Sparc
Manage OVM Server SparcManage OVM Server Sparc
Manage OVM Server Sparc
 
halaman 8
halaman 8halaman 8
halaman 8
 
Centros turisticos de Cajamarca
Centros turisticos de CajamarcaCentros turisticos de Cajamarca
Centros turisticos de Cajamarca
 
Prueba
PruebaPrueba
Prueba
 
Reflexión del pero fiel
Reflexión del pero fielReflexión del pero fiel
Reflexión del pero fiel
 
Ficha autoevaluacion trabajo final
Ficha autoevaluacion trabajo finalFicha autoevaluacion trabajo final
Ficha autoevaluacion trabajo final
 
Conocimientos previos proyecto los juegos populares.
Conocimientos previos proyecto los juegos populares. Conocimientos previos proyecto los juegos populares.
Conocimientos previos proyecto los juegos populares.
 
Costs-of-Exclusion-and-Gains-of-Inclusion-Report
Costs-of-Exclusion-and-Gains-of-Inclusion-ReportCosts-of-Exclusion-and-Gains-of-Inclusion-Report
Costs-of-Exclusion-and-Gains-of-Inclusion-Report
 
Rafael rodriguez mapa_mental
Rafael rodriguez mapa_mentalRafael rodriguez mapa_mental
Rafael rodriguez mapa_mental
 
Single Sign-On for APEX apps (Important: latest version on edocr!)
Single Sign-On for APEX apps (Important: latest version on edocr!)Single Sign-On for APEX apps (Important: latest version on edocr!)
Single Sign-On for APEX apps (Important: latest version on edocr!)
 
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...
Trivadis TechEvent 2016 Der Trivadis Weg mit der Cloud von Florian van Keulen...
 
Banking license and payment banks
Banking license and payment banksBanking license and payment banks
Banking license and payment banks
 
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...
Trivadis TechEvent 2016 Introduction to Lagom - another microservice-based fr...
 
Role of New Payment banks and Small banks - Part - 6
Role of New Payment banks and Small banks - Part - 6Role of New Payment banks and Small banks - Part - 6
Role of New Payment banks and Small banks - Part - 6
 
Payment banks
Payment banksPayment banks
Payment banks
 
INDIAN FINANCIAL SYSTEM - REFORMS
INDIAN FINANCIAL SYSTEM - REFORMSINDIAN FINANCIAL SYSTEM - REFORMS
INDIAN FINANCIAL SYSTEM - REFORMS
 

Ähnlich wie Designing for performance: Database Related Worst Practices

Designing for Performance: Database Related Worst Practices
Designing for Performance: Database Related Worst PracticesDesigning for Performance: Database Related Worst Practices
Designing for Performance: Database Related Worst PracticesChristian Antognini
 
Software Modeling And Analysis Project
Software Modeling And Analysis ProjectSoftware Modeling And Analysis Project
Software Modeling And Analysis ProjectPam Fenno
 
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...Thomas Rones
 
Key aspects of big data storage and its architecture
Key aspects of big data storage and its architectureKey aspects of big data storage and its architecture
Key aspects of big data storage and its architectureRahul Chaturvedi
 
Database System For Sl Consulting
Database System For Sl ConsultingDatabase System For Sl Consulting
Database System For Sl ConsultingMary Gregory
 
Big Data Analytics: Architectural Perspective
Big Data Analytics: Architectural PerspectiveBig Data Analytics: Architectural Perspective
Big Data Analytics: Architectural PerspectiveSumit Kalra
 
Database Management System ( Dbms )
Database Management System ( Dbms )Database Management System ( Dbms )
Database Management System ( Dbms )Kimberly Brooks
 
Advanced Database Systems CS352Unit 2 Individual Project.docx
Advanced Database Systems CS352Unit 2 Individual Project.docxAdvanced Database Systems CS352Unit 2 Individual Project.docx
Advanced Database Systems CS352Unit 2 Individual Project.docxnettletondevon
 
Thinking Outside the Cube: How In-Memory Bolsters Analytics
Thinking Outside the Cube: How In-Memory Bolsters AnalyticsThinking Outside the Cube: How In-Memory Bolsters Analytics
Thinking Outside the Cube: How In-Memory Bolsters AnalyticsInside Analysis
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...Christoph Adler
 
The Evolution of a Scrappy Startup to a Successful Web Service
The Evolution of a Scrappy Startup to a Successful Web ServiceThe Evolution of a Scrappy Startup to a Successful Web Service
The Evolution of a Scrappy Startup to a Successful Web ServicePoornima Vijayashanker
 
Performance tuning in ranker
Performance tuning in rankerPerformance tuning in ranker
Performance tuning in rankerEosSoftware
 
An Introduction To Postgresql Monitoring And Statistics
An Introduction To Postgresql Monitoring And StatisticsAn Introduction To Postgresql Monitoring And Statistics
An Introduction To Postgresql Monitoring And StatisticsAmanda Crow
 
Discussion 1Knowledge-centric organizations have incorporated mo
Discussion 1Knowledge-centric organizations have incorporated moDiscussion 1Knowledge-centric organizations have incorporated mo
Discussion 1Knowledge-centric organizations have incorporated moVinaOconner450
 
Discuss the concept of strategic business–IT alignment and how it .docx
Discuss the concept of strategic business–IT alignment and how it .docxDiscuss the concept of strategic business–IT alignment and how it .docx
Discuss the concept of strategic business–IT alignment and how it .docxlynettearnold46882
 
Big data - what, why, where, when and how
Big data - what, why, where, when and howBig data - what, why, where, when and how
Big data - what, why, where, when and howbobosenthil
 
how_can_businesses_address_storage_issues_using_mongodb.pdf
how_can_businesses_address_storage_issues_using_mongodb.pdfhow_can_businesses_address_storage_issues_using_mongodb.pdf
how_can_businesses_address_storage_issues_using_mongodb.pdfsarah david
 
How To Buy Data Warehouse
How To Buy Data WarehouseHow To Buy Data Warehouse
How To Buy Data WarehouseEric Sun
 
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICSUSING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICSHCL Technologies
 

Ähnlich wie Designing for performance: Database Related Worst Practices (20)

Designing for Performance: Database Related Worst Practices
Designing for Performance: Database Related Worst PracticesDesigning for Performance: Database Related Worst Practices
Designing for Performance: Database Related Worst Practices
 
Software Modeling And Analysis Project
Software Modeling And Analysis ProjectSoftware Modeling And Analysis Project
Software Modeling And Analysis Project
 
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...
BIAM 410 Final Paper - Beyond the Buzzwords: Big Data, Machine Learning, What...
 
BusinessIntelligence
BusinessIntelligenceBusinessIntelligence
BusinessIntelligence
 
Key aspects of big data storage and its architecture
Key aspects of big data storage and its architectureKey aspects of big data storage and its architecture
Key aspects of big data storage and its architecture
 
Database System For Sl Consulting
Database System For Sl ConsultingDatabase System For Sl Consulting
Database System For Sl Consulting
 
Big Data Analytics: Architectural Perspective
Big Data Analytics: Architectural PerspectiveBig Data Analytics: Architectural Perspective
Big Data Analytics: Architectural Perspective
 
Database Management System ( Dbms )
Database Management System ( Dbms )Database Management System ( Dbms )
Database Management System ( Dbms )
 
Advanced Database Systems CS352Unit 2 Individual Project.docx
Advanced Database Systems CS352Unit 2 Individual Project.docxAdvanced Database Systems CS352Unit 2 Individual Project.docx
Advanced Database Systems CS352Unit 2 Individual Project.docx
 
Thinking Outside the Cube: How In-Memory Bolsters Analytics
Thinking Outside the Cube: How In-Memory Bolsters AnalyticsThinking Outside the Cube: How In-Memory Bolsters Analytics
Thinking Outside the Cube: How In-Memory Bolsters Analytics
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
 
The Evolution of a Scrappy Startup to a Successful Web Service
The Evolution of a Scrappy Startup to a Successful Web ServiceThe Evolution of a Scrappy Startup to a Successful Web Service
The Evolution of a Scrappy Startup to a Successful Web Service
 
Performance tuning in ranker
Performance tuning in rankerPerformance tuning in ranker
Performance tuning in ranker
 
An Introduction To Postgresql Monitoring And Statistics
An Introduction To Postgresql Monitoring And StatisticsAn Introduction To Postgresql Monitoring And Statistics
An Introduction To Postgresql Monitoring And Statistics
 
Discussion 1Knowledge-centric organizations have incorporated mo
Discussion 1Knowledge-centric organizations have incorporated moDiscussion 1Knowledge-centric organizations have incorporated mo
Discussion 1Knowledge-centric organizations have incorporated mo
 
Discuss the concept of strategic business–IT alignment and how it .docx
Discuss the concept of strategic business–IT alignment and how it .docxDiscuss the concept of strategic business–IT alignment and how it .docx
Discuss the concept of strategic business–IT alignment and how it .docx
 
Big data - what, why, where, when and how
Big data - what, why, where, when and howBig data - what, why, where, when and how
Big data - what, why, where, when and how
 
how_can_businesses_address_storage_issues_using_mongodb.pdf
how_can_businesses_address_storage_issues_using_mongodb.pdfhow_can_businesses_address_storage_issues_using_mongodb.pdf
how_can_businesses_address_storage_issues_using_mongodb.pdf
 
How To Buy Data Warehouse
How To Buy Data WarehouseHow To Buy Data Warehouse
How To Buy Data Warehouse
 
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICSUSING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
 

Mehr von Trivadis

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 ...Trivadis
 
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...Trivadis
 
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)Trivadis
 
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)Trivadis
 
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...Trivadis
 
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)Trivadis
 
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...Trivadis
 
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...Trivadis
 
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? (...Trivadis
 
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...Trivadis
 
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...Trivadis
 
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...Trivadis
 
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 - TrivadisTrivadis
 
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...Trivadis
 
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 ...Trivadis
 
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...Trivadis
 
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...Trivadis
 
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 -...Trivadis
 
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;...Trivadis
 
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 - TrivadisTrivadis
 

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

Dynamics of Professional Presentationpdf
Dynamics of Professional PresentationpdfDynamics of Professional Presentationpdf
Dynamics of Professional Presentationpdfravleel42
 
Communication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxCommunication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxkb31670
 
The Real Story Of Project Manager/Scrum Master From Where It Came?!
The Real Story Of Project Manager/Scrum Master From Where It Came?!The Real Story Of Project Manager/Scrum Master From Where It Came?!
The Real Story Of Project Manager/Scrum Master From Where It Came?!Loay Mohamed Ibrahim Aly
 
Communication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxCommunication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxkb31670
 
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8Access Innovations, Inc.
 
Burning Issue presentation of Zhazgul N. , Cycle 54
Burning Issue presentation of Zhazgul N. , Cycle 54Burning Issue presentation of Zhazgul N. , Cycle 54
Burning Issue presentation of Zhazgul N. , Cycle 54ZhazgulNurdinova
 
Machine learning workshop, CZU Prague 2024
Machine learning workshop, CZU Prague 2024Machine learning workshop, CZU Prague 2024
Machine learning workshop, CZU Prague 2024Gokulks007
 
Juan Pablo Sugiura - eCommerce Day Bolivia 2024
Juan Pablo Sugiura - eCommerce Day Bolivia 2024Juan Pablo Sugiura - eCommerce Day Bolivia 2024
Juan Pablo Sugiura - eCommerce Day Bolivia 2024eCommerce Institute
 

Kürzlich hochgeladen (8)

Dynamics of Professional Presentationpdf
Dynamics of Professional PresentationpdfDynamics of Professional Presentationpdf
Dynamics of Professional Presentationpdf
 
Communication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxCommunication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptx
 
The Real Story Of Project Manager/Scrum Master From Where It Came?!
The Real Story Of Project Manager/Scrum Master From Where It Came?!The Real Story Of Project Manager/Scrum Master From Where It Came?!
The Real Story Of Project Manager/Scrum Master From Where It Came?!
 
Communication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptxCommunication Accommodation Theory Kaylyn Benton.pptx
Communication Accommodation Theory Kaylyn Benton.pptx
 
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8
ISO 25964-1Working Group ISO/TC 46/SC 9/WG 8
 
Burning Issue presentation of Zhazgul N. , Cycle 54
Burning Issue presentation of Zhazgul N. , Cycle 54Burning Issue presentation of Zhazgul N. , Cycle 54
Burning Issue presentation of Zhazgul N. , Cycle 54
 
Machine learning workshop, CZU Prague 2024
Machine learning workshop, CZU Prague 2024Machine learning workshop, CZU Prague 2024
Machine learning workshop, CZU Prague 2024
 
Juan Pablo Sugiura - eCommerce Day Bolivia 2024
Juan Pablo Sugiura - eCommerce Day Bolivia 2024Juan Pablo Sugiura - eCommerce Day Bolivia 2024
Juan Pablo Sugiura - eCommerce Day Bolivia 2024
 

Designing for performance: Database Related Worst Practices

  • 1. BASLE BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH Designing for Performance: Database Related Worst Practices Christian Antognini SOUG Day, 2 March 2016, Baden (CH)
  • 2. @ChrisAntognini Designing for Performance: Database Related Worst Practices2 3/2/2016 Senior principal consultant, trainer and partner at Trivadis in Zurich (CH) christian.antognini@trivadis.com http://antognini.ch Focus: get the most out of Oracle Database Logical and physical database design Query optimizer Application performance management Author of Troubleshooting Oracle Performance (Apress, 2008/14) OakTable Network, Oracle ACE Director
  • 3. Agenda Designing for Performance: Database Related Worst Practices3 3/2/2016 1. Introduction 2. Worst Practices 3. Core Messages
  • 4. Designing for Performance: Database Related Worst Practices4 3/2/2016 Introduction
  • 5. Where Does This Information Come From? Designing for Performance: Database Related Worst Practices5 3/2/2016 Personal experience! I spent most of the last 15 years troubleshooting performance problems. Hundreds of different projects and applications A number of industries were involved According to my experience, most of the database design related performance problems are caused by a limited number of issues. In this presentation I cover the top 10 Even though some of them may seem very basic, do not underestimate the number of systems that are now running and suffering because of them!
  • 6. Why It’s Important? Designing for Performance: Database Related Worst Practices6 3/2/2016 Many performance problems can be avoided with sound planning and design. Do the right thing! There is a widespread lack of knowledge in our industry! The same mistakes are made again and again. “To err is human, to persist in it, is diabolical” – Seneca
  • 7. Designing for Performance: Database Related Worst Practices7 3/2/2016 Source: @peter_berner
  • 8. It’s not Premature Optimization! Designing for Performance: Database Related Worst Practices8 3/2/2016 “Premature optimization is the root of all evil” – Donald Knuth The misconception based on that particular quote is that a developer, initially, should ignore optimization altogether. In my opinion, this interpretation is wrong! My take: Developers should avoid micro optimizations that have local impact. Developers should care about optimizations that have global impact, like the design of a system, the algorithms used to implement the required functionality, or in which layer a specific processing should be performed.
  • 9. Designing for Performance: Database Related Worst Practices9 3/2/2016 Worst Practices
  • 10. Lack of Logical Database Design Designing for Performance: Database Related Worst Practices10 3/2/2016 Once upon a time, it was considered obvious that one should have a data architect involved in every development project. Today, unfortunately, too often I see projects in which no formal database design is done. The database is considered a dumb device. The logical database design depends on the target database engine. Schema-on-write vs schema-on-read
  • 11. Implementing Generic Tables Designing for Performance: Database Related Worst Practices11 3/2/2016 In the quest of flexibility, generic database designs are implemented. Entity-attribute-value models XML- and JSON-based designs Flexibility is tied to performance! In some situations suboptimal performance might be good enough. In other situations it might be catastrophic.
  • 12. Not Using Constraints to Enforce Data Integrity Designing for Performance: Database Related Worst Practices12 3/2/2016 Constraints are not only fundamental to guarantee data integrity, but they are also extensively used by query optimizers during the generation of execution plans. Cons of checking the constraints at the application level: More code being written and tested Potential problems with data integrity Greater consumption of resources (not always) Leads to less scalable locking schemes (not always)
  • 13. Lack of Physical Database Design Designing for Performance: Database Related Worst Practices13 3/2/2016 It is not uncommon to see projects where the logical design is directly mapped to the physical design. The physical database design depends on target database engine. Heap tables, clustered tables, IOT Many type of indexes exist Data partitioning Do not forget to define and implement a data-archiving concept.
  • 14. Not Choosing the Right Data Type Designing for Performance: Database Related Worst Practices14 3/2/2016 In recent years, I have witnessed a disturbing trend in physical database design: wrong datatype selection. E.g. VARCHAR2 instead of DATE or TIMESTAMP There are four main problems related to wrong datatype selection: Wrong or lacking validation of data Loss of information Things do not work as expected Query optimizer anomalies
  • 15. Not Using Bind Variables Correctly Designing for Performance: Database Related Worst Practices15 3/2/2016 From a performance point of view, bind variables introduce both an advantage and a disadvantage. Only applies to database engines having a cursor cache. The advantage of using bind variables is that they allow the sharing of cursors. The disadvantage of using bind variables in WHERE clauses, and only in WHERE clauses, is that crucial information is sometimes hidden from the query optimizer. From a security point of view, bind variables prevent the risks associated with SQL injection.
  • 16. Not Using Advanced Database Features Designing for Performance: Database Related Worst Practices16 3/2/2016 High-end database engines provide many advanced features that can drastically reduce development costs while boosting performance. E.g. data-centric processing should take place as closely as possible to the data Leverage your investment by taking advantage of those features as much as possible. Most of the time, database-independent applications are not required. I would recommend to develop a database-independent application only when there are very good reasons for doing it. Companies are more likely to change the whole application before changing just the database engine.
  • 17. Performing Unnecessary Commits Designing for Performance: Database Related Worst Practices17 3/2/2016 Commits are operations that call for serialization. Every operation that leads to serialization inhibits scalability. Serialization is unwanted and should be minimized as much as possible.
  • 18. Steadily Opening and Closing Database Connections Designing for Performance: Database Related Worst Practices18 3/2/2016 Opening a database connection that in turn starts an associated process or thread on the database server is not a lightweight operation. Do not underestimate the amount of time and resources required. A worst-case scenario that I sometimes observe is a web application that opens and closes a database connection for every request that involves a database access. Using a pool of connections is of paramount importance.
  • 19. Opening Too Many Database Connections Designing for Performance: Database Related Worst Practices19 3/2/2016 A database connection that has an associated process or thread on the database server is not a lightweight resource. A processor core cannot efficiently handle many concurrent processes or threads. Using a pool of connections of limited size is of paramount importance.
  • 20. Designing for Performance: Database Related Worst Practices20 3/2/2016 Core Messages
  • 21. Designing for Performance: Database Related Worst Practices21 3/2/2016 Let’s Face it, Information Technology Is Expensive! Simple solutions for simple problems, elegant solutions for complex problems.
  • 22. One Size Fits All? Designing for Performance: Database Related Worst Practices22 3/2/2016 Use the right tool for the right job.
  • 23. Designing for Performance: Database Related Worst Practices23 3/2/2016 Performance Is Not an Option Optimal performance is not simply a product one can buy but rather the results of an accurate planning and a correct implementation.
  • 24. Questions and Answers Christian Antognini Senior Principal Consultant christian.antognini@trivadis.com 3/2/2016 Designing for Performance: Database Related Worst Practices24