SlideShare a Scribd company logo
1 of 38
Download to read offline
BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF
HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH
From Block to Lock
Lock modes from theory to practice
Tobias Deml
About…
From Block to Lock2 12.11.2015
Consultant, Trivadis GmbH, Munich
Since more then 6 years working in Oracle environment
– Development
– Administration
– Consulting
Focus areas
– Performancetuning
– High Availability
– Migrations
Our company.
From Block to Lock3 12.11.2015
Trivadis is a market leader in IT consulting, system integration, solution engineering
and the provision of IT services focusing on and
technologies
in Switzerland, Germany, Austria and Denmark. We offer our services in the following
strategic business fields:
Trivadis Services takes over the interacting operation of your IT systems.
O P E R A T I O N
COPENHAGEN
MUNICH
LAUSANNE
BERN
ZURICH
BRUGG
GENEVA
HAMBURG
DÜSSELDORF
FRANKFURT
STUTTGART
FREIBURG
BASEL
VIENNA
With over 600 specialists and IT experts in your region.
From Block to Lock4 12.11.2015
14 Trivadis branches and more than
600 employees
200 Service Level Agreements
Over 4,000 training participants
Research and development budget:
CHF 5.0 million
Financially self-supporting and
sustainably profitable
Experience from more than 1,900
projects per year at over 800
customers
Agenda
From Block to Lock5 12.11.2015
1. Theoretical baselines
2. Different types of locks
3. Analysis
4. Locks and foreign key constraints
5. Conclusion
The known scenario
From Block to Lock6 12.11.2015
„We have a lock
in our database!“
From Block to Lock7 12.11.2015
Are these locks really needed?
RDBMS
From Block to Lock8 12.11.2015
Relational database management system
Theoretical baselines
– „A Relational Model of Data for Large Shared Data Banks“
– Mathematician and Physicist Edgar F. Codd
Definition of several rules for structured storage of data
Integrity, Consistency and Concurrency
From Block to Lock9 12.11.2015
Referential integrity
– Relations between different database objects (constraints)
Consistency
– Reflecting the right revision of the data
Concurrency
– Changing data from different directions simultaneously
Variation of locks
From Block to Lock10 12.11.2015
DML Locks
 Row Locks (TX)
 Table Locks (TM)
 Row Shared (SS/RS)
 Row Exclusive (SX/RX)
 Shared (S)
 Shared Row Exclusive
(SSX/SRX)
 Exclusive (X)
DDL Locks
 Exclusive
 Share
 Breakable Parse Lock
System Locks
 Latches
 Mutexes
 Internal
From Block to Lock11 12.11.2015
DML Locks
Row Locks (TX)
From Block to Lock12 12.11.2015
Blockage of one or more rows of a table (DML operation)
Exclusive
Always accompanied with a regarding table lock
Released by ending of the transaction
Table Locks (TM) I
From Block to Lock13 12.11.2015
Blockage of a table
Triggered by user or caused implicitly
Row Shared Lock (SS/RS)
– least restrictive lock
– protects against DDL operation on the table
Row Exclusive Table Lock (SX/RX)
– indicates that a DML is executed
– able to modify a row
Table Locks (TM) II
From Block to Lock14 12.11.2015
Shared Table Lock (S)
– DML operations just allowed if at most one S-Lock is set.
– no other data adjustment possible
Shared Row Table Exclusive Lock (SSX/SRX)
– more restrictive then S-Lock
Exclusive Lock (X)
– most restrictive table lock
– querying of data still possible
Table Locks (TM)
From Block to Lock15 12.11.2015
RS RX S SRX X
Select Y Y Y Y Y
Insert Y Y N N N
Update Y Y N N N
Delete Y Y N N N
Select… for Update Y Y N N N
Table Lock (RS) Y Y Y Y N
Table Lock (RX) Y Y N N N
Table Lock (S) Y N Y N N
Table Lock (SRX) Y N N N N
Table Lock (X) N N N N N
From Block to Lock16 12.11.2015
DDL Locks
DDL Locks I
From Block to Lock17 12.11.2015
protects the definition in data dictionary
blockage never extended
automatically release after finishing the DDL operation
Exclusive DDL Lock
– locks the definition of an object exclusively
– prevents from modification or dropping
– e.g. during ALTER TABLE statement
DDL Locks II
From Block to Lock18 12.11.2015
Share DDL Lock
– locks the definition of an object shared
– prohibits from dropping
– e.g. during CREATE PROCEDURE statement
Breakable Parse Lock
– hold references to all related objects in the Shared Area
– can be broken by every conflicting DDL operation
From Block to Lock19 12.11.2015
System Locks
System Locks I
From Block to Lock20 12.11.2015
Latches
– regulates multiuser access to shared structures
– locks a group of objects
– protect memory from corruption
– preventing from following situations:
> Concurrent modification by different sessions
> Reading uncommitted data
> Aging out memory while access
System Locks II
From Block to Lock21 12.11.2015
Mutexes
– behavior is similar to a latch
– locks a single object not a group of those
– more efficient then a latch, factor depends on the OS
Internal Locks
> Dictionary cache locks
> File and log management locks
> Tablespace and undo segment locks
From Block to Lock22 12.11.2015
Deadlocks
Deadlocks
From Block to Lock23 12.11.2015
Concurrency between two or more sessions
Automatically solved by the oracle instance
Analysis of the deadlock trace file
Deadlocks
From Block to Lock24 12.11.2015
General information
Deadlocks
From Block to Lock25 12.11.2015
Information about the killed session
Deadlocks
From Block to Lock26 12.11.2015
Information about the killed sessions
Deadlocks
From Block to Lock27 12.11.2015
Deadlock graph
From Block to Lock28 12.11.2015
Locks and Foreign Keys
Locks and Foreign Keys
From Block to Lock29 12.11.2015
From Block to Lock30 12.11.2015
DEMO 
Locks and Foreign Keys
From Block to Lock31 12.11.2015
ensure the integrity between tables
preventing the violation using locks and error messages
Indexing the foreign key is often the right way,
but should never be the rule!
From Block to Lock32 12.11.2015
Analysis
Views in data dictionary
From Block to Lock33 12.11.2015
GV$LOCK
GV$LOCK_TYPE
GV$LOCKED_OBJECT
GV$LATCH
GV$WAIT_CHAINS
DBA_DML_LOCKS
DBA_BLOCKERS
DBA_WAITERS
General lock overview
From Block to Lock34 12.11.2015
Entire SQL statement:
https://tddba.wordpress.com/scripts/
Conclusion
From Block to Lock35 12.11.2015
Locks are needed to ensure basic database functionality
Prepare your environment for minimal concurrency
Preventive is better then reactive tuning
Know what to do when it's time to do!
From Block to Lock36 12.11.2015
Further information…
https://docs.oracle.com/database/121/CNCPT/consist.htm#CNCPT020
https://docs.oracle.com/database/121/SQLRF/ap_locks001.htm#SQLRF55502
https://docs.oracle.com/database/121/REFRN/GUID-87D76889-832C-4BFC-B8B0-154A22721781.htm#REFRN30121
Any Question…?
Tobias Deml
Consultant
Tel. +49 89 992 759 324
Tobias.Deml@trivadis.com
12.11.2015 From Block to Lock37
@TobiasDemlDBA
tddba.wordpress.com
© Trivadis – Das Unternehmen38 12.11.2015
Trivadis at the DOAG 2015
Level 3 - right next to the escalator
We look forward to your visit.
Because with Trivadis you always win.

More Related Content

Similar to From Block to Lock Tobias Deml

The nightmare of locking, blocking and deadlocking. SQLSaturday #257, Verona
The nightmare of locking, blocking and deadlocking. SQLSaturday #257, VeronaThe nightmare of locking, blocking and deadlocking. SQLSaturday #257, Verona
The nightmare of locking, blocking and deadlocking. SQLSaturday #257, VeronaBoris Hristov
 
Introduction to data vault ilja dmitrijev
Introduction to data vault   ilja dmitrijevIntroduction to data vault   ilja dmitrijev
Introduction to data vault ilja dmitrijevIlja Dmitrijevs
 
Welcome to the nightmare of locking, blocking and isolation levels!
Welcome to the nightmare of locking, blocking and isolation levels!Welcome to the nightmare of locking, blocking and isolation levels!
Welcome to the nightmare of locking, blocking and isolation levels!Boris Hristov
 
Intro to tsql unit 12
Intro to tsql   unit 12Intro to tsql   unit 12
Intro to tsql unit 12Syed Asrarali
 
SQL locks-presentation
SQL locks-presentationSQL locks-presentation
SQL locks-presentationNuzhat Bhat
 
Locking unit 1 topic 3
Locking unit 1 topic 3Locking unit 1 topic 3
Locking unit 1 topic 3avniS
 
Get the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW versionGet the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW versionLudovico Caldara
 
Database security
Database securityDatabase security
Database securityJaved Khan
 
Data warehouse 2.0 and sql server architecture and vision
Data warehouse 2.0 and sql server architecture and visionData warehouse 2.0 and sql server architecture and vision
Data warehouse 2.0 and sql server architecture and visionKlaudiia Jacome
 
Infrascale-Overview-Flipbook-Dec-2014
Infrascale-Overview-Flipbook-Dec-2014Infrascale-Overview-Flipbook-Dec-2014
Infrascale-Overview-Flipbook-Dec-2014Angela Vengel
 
Oracle Key Vault Data Subsetting and Masking
Oracle Key Vault Data Subsetting and MaskingOracle Key Vault Data Subsetting and Masking
Oracle Key Vault Data Subsetting and MaskingDLT Solutions
 
DBMS_unit-5-2022-23.pptx
DBMS_unit-5-2022-23.pptxDBMS_unit-5-2022-23.pptx
DBMS_unit-5-2022-23.pptxADITIRAMTEKE1
 
Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Ludovico Caldara
 
A Lightweight Formal Encoding for a Constraint Language DSML Component
A Lightweight Formal Encoding for a Constraint Language DSML ComponentA Lightweight Formal Encoding for a Constraint Language DSML Component
A Lightweight Formal Encoding for a Constraint Language DSML ComponentMarc Pantel
 
Oracle Active Data Guard and Global Data Services in Action!
Oracle Active Data Guard and Global Data Services in Action!Oracle Active Data Guard and Global Data Services in Action!
Oracle Active Data Guard and Global Data Services in Action!Ludovico Caldara
 
The Nightmare of Locking, Blocking and Isolation Levels!
The Nightmare of Locking, Blocking and Isolation Levels!The Nightmare of Locking, Blocking and Isolation Levels!
The Nightmare of Locking, Blocking and Isolation Levels!Boris Hristov
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 

Similar to From Block to Lock Tobias Deml (20)

The nightmare of locking, blocking and deadlocking. SQLSaturday #257, Verona
The nightmare of locking, blocking and deadlocking. SQLSaturday #257, VeronaThe nightmare of locking, blocking and deadlocking. SQLSaturday #257, Verona
The nightmare of locking, blocking and deadlocking. SQLSaturday #257, Verona
 
Introduction to data vault ilja dmitrijev
Introduction to data vault   ilja dmitrijevIntroduction to data vault   ilja dmitrijev
Introduction to data vault ilja dmitrijev
 
Welcome to the nightmare of locking, blocking and isolation levels!
Welcome to the nightmare of locking, blocking and isolation levels!Welcome to the nightmare of locking, blocking and isolation levels!
Welcome to the nightmare of locking, blocking and isolation levels!
 
Intro to tsql unit 12
Intro to tsql   unit 12Intro to tsql   unit 12
Intro to tsql unit 12
 
SQL locks-presentation
SQL locks-presentationSQL locks-presentation
SQL locks-presentation
 
Data vault
Data vaultData vault
Data vault
 
Locking unit 1 topic 3
Locking unit 1 topic 3Locking unit 1 topic 3
Locking unit 1 topic 3
 
Get the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW versionGet the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW version
 
Database security2 adebiaye
Database security2 adebiayeDatabase security2 adebiaye
Database security2 adebiaye
 
Database security
Database securityDatabase security
Database security
 
Data warehouse 2.0 and sql server architecture and vision
Data warehouse 2.0 and sql server architecture and visionData warehouse 2.0 and sql server architecture and vision
Data warehouse 2.0 and sql server architecture and vision
 
Infrascale-Overview-Flipbook-Dec-2014
Infrascale-Overview-Flipbook-Dec-2014Infrascale-Overview-Flipbook-Dec-2014
Infrascale-Overview-Flipbook-Dec-2014
 
Mydbms
MydbmsMydbms
Mydbms
 
Oracle Key Vault Data Subsetting and Masking
Oracle Key Vault Data Subsetting and MaskingOracle Key Vault Data Subsetting and Masking
Oracle Key Vault Data Subsetting and Masking
 
DBMS_unit-5-2022-23.pptx
DBMS_unit-5-2022-23.pptxDBMS_unit-5-2022-23.pptx
DBMS_unit-5-2022-23.pptx
 
Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?
 
A Lightweight Formal Encoding for a Constraint Language DSML Component
A Lightweight Formal Encoding for a Constraint Language DSML ComponentA Lightweight Formal Encoding for a Constraint Language DSML Component
A Lightweight Formal Encoding for a Constraint Language DSML Component
 
Oracle Active Data Guard and Global Data Services in Action!
Oracle Active Data Guard and Global Data Services in Action!Oracle Active Data Guard and Global Data Services in Action!
Oracle Active Data Guard and Global Data Services in Action!
 
The Nightmare of Locking, Blocking and Isolation Levels!
The Nightmare of Locking, Blocking and Isolation Levels!The Nightmare of Locking, Blocking and Isolation Levels!
The Nightmare of Locking, Blocking and Isolation Levels!
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 

More from Désirée Pfister

Oracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido SchmutzOracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido SchmutzDésirée Pfister
 
Raising the fetch size good or bad Sigrid Keydana
Raising the fetch size good or bad  Sigrid KeydanaRaising the fetch size good or bad  Sigrid Keydana
Raising the fetch size good or bad Sigrid KeydanaDésirée Pfister
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterDésirée Pfister
 
Oracle Database In_Memory Christian Antognini
Oracle Database In_Memory Christian AntogniniOracle Database In_Memory Christian Antognini
Oracle Database In_Memory Christian AntogniniDésirée Pfister
 
Oracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerOracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerDésirée Pfister
 
Sleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad HäfeliSleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad HäfeliDésirée Pfister
 
Modellierung agiler Data Warehouses mit Data Vault Dani Schnider
Modellierung agiler Data Warehouses mit Data Vault Dani SchniderModellierung agiler Data Warehouses mit Data Vault Dani Schnider
Modellierung agiler Data Warehouses mit Data Vault Dani SchniderDésirée Pfister
 
Überleben im OSB/SOA Dschungel Daniel Joray
Überleben im OSB/SOA Dschungel Daniel JorayÜberleben im OSB/SOA Dschungel Daniel Joray
Überleben im OSB/SOA Dschungel Daniel JorayDésirée Pfister
 
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...Désirée Pfister
 
Internet of Things IoT Guido Schmutz
Internet of Things IoT Guido SchmutzInternet of Things IoT Guido Schmutz
Internet of Things IoT Guido SchmutzDésirée Pfister
 
Zero Data Loss Recovery Appliance a good investment! Konrad Häfeli
Zero Data Loss Recovery Appliance a good investment! Konrad HäfeliZero Data Loss Recovery Appliance a good investment! Konrad Häfeli
Zero Data Loss Recovery Appliance a good investment! Konrad HäfeliDésirée Pfister
 
Haben Sie Ihre Web Logic Umgebung im Griff Daniel Joray
Haben Sie Ihre Web Logic Umgebung im Griff Daniel JorayHaben Sie Ihre Web Logic Umgebung im Griff Daniel Joray
Haben Sie Ihre Web Logic Umgebung im Griff Daniel JorayDésirée Pfister
 
12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko
12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko
12c SQL Pattern Matching wann werde ich das benutzen Andrej PashchenkoDésirée Pfister
 

More from Désirée Pfister (13)

Oracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido SchmutzOracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido Schmutz
 
Raising the fetch size good or bad Sigrid Keydana
Raising the fetch size good or bad  Sigrid KeydanaRaising the fetch size good or bad  Sigrid Keydana
Raising the fetch size good or bad Sigrid Keydana
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
 
Oracle Database In_Memory Christian Antognini
Oracle Database In_Memory Christian AntogniniOracle Database In_Memory Christian Antognini
Oracle Database In_Memory Christian Antognini
 
Oracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin BergerOracle Database Backup Service Martin Berger
Oracle Database Backup Service Martin Berger
 
Sleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad HäfeliSleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad Häfeli
 
Modellierung agiler Data Warehouses mit Data Vault Dani Schnider
Modellierung agiler Data Warehouses mit Data Vault Dani SchniderModellierung agiler Data Warehouses mit Data Vault Dani Schnider
Modellierung agiler Data Warehouses mit Data Vault Dani Schnider
 
Überleben im OSB/SOA Dschungel Daniel Joray
Überleben im OSB/SOA Dschungel Daniel JorayÜberleben im OSB/SOA Dschungel Daniel Joray
Überleben im OSB/SOA Dschungel Daniel Joray
 
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...
Managen von OVM Server SPARC mit dem VM Manager OpsCenter oder VDCF-Roman Gäc...
 
Internet of Things IoT Guido Schmutz
Internet of Things IoT Guido SchmutzInternet of Things IoT Guido Schmutz
Internet of Things IoT Guido Schmutz
 
Zero Data Loss Recovery Appliance a good investment! Konrad Häfeli
Zero Data Loss Recovery Appliance a good investment! Konrad HäfeliZero Data Loss Recovery Appliance a good investment! Konrad Häfeli
Zero Data Loss Recovery Appliance a good investment! Konrad Häfeli
 
Haben Sie Ihre Web Logic Umgebung im Griff Daniel Joray
Haben Sie Ihre Web Logic Umgebung im Griff Daniel JorayHaben Sie Ihre Web Logic Umgebung im Griff Daniel Joray
Haben Sie Ihre Web Logic Umgebung im Griff Daniel Joray
 
12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko
12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko
12c SQL Pattern Matching wann werde ich das benutzen Andrej Pashchenko
 

Recently uploaded

Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptssuser319dad
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxFamilyWorshipCenterD
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)Basil Achie
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...NETWAYS
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...NETWAYS
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxmavinoikein
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Krijn Poppe
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
LANDMARKS  AND MONUMENTS IN NIGERIA.pptxLANDMARKS  AND MONUMENTS IN NIGERIA.pptx
LANDMARKS AND MONUMENTS IN NIGERIA.pptxBasil Achie
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSebastiano Panichella
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝soniya singh
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@vikas rana
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...NETWAYS
 

Recently uploaded (20)

Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.ppt
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptx
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
LANDMARKS  AND MONUMENTS IN NIGERIA.pptxLANDMARKS  AND MONUMENTS IN NIGERIA.pptx
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
 

From Block to Lock Tobias Deml

  • 1. BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH From Block to Lock Lock modes from theory to practice Tobias Deml
  • 2. About… From Block to Lock2 12.11.2015 Consultant, Trivadis GmbH, Munich Since more then 6 years working in Oracle environment – Development – Administration – Consulting Focus areas – Performancetuning – High Availability – Migrations
  • 3. Our company. From Block to Lock3 12.11.2015 Trivadis is a market leader in IT consulting, system integration, solution engineering and the provision of IT services focusing on and technologies in Switzerland, Germany, Austria and Denmark. We offer our services in the following strategic business fields: Trivadis Services takes over the interacting operation of your IT systems. O P E R A T I O N
  • 4. COPENHAGEN MUNICH LAUSANNE BERN ZURICH BRUGG GENEVA HAMBURG DÜSSELDORF FRANKFURT STUTTGART FREIBURG BASEL VIENNA With over 600 specialists and IT experts in your region. From Block to Lock4 12.11.2015 14 Trivadis branches and more than 600 employees 200 Service Level Agreements Over 4,000 training participants Research and development budget: CHF 5.0 million Financially self-supporting and sustainably profitable Experience from more than 1,900 projects per year at over 800 customers
  • 5. Agenda From Block to Lock5 12.11.2015 1. Theoretical baselines 2. Different types of locks 3. Analysis 4. Locks and foreign key constraints 5. Conclusion
  • 6. The known scenario From Block to Lock6 12.11.2015 „We have a lock in our database!“
  • 7. From Block to Lock7 12.11.2015 Are these locks really needed?
  • 8. RDBMS From Block to Lock8 12.11.2015 Relational database management system Theoretical baselines – „A Relational Model of Data for Large Shared Data Banks“ – Mathematician and Physicist Edgar F. Codd Definition of several rules for structured storage of data
  • 9. Integrity, Consistency and Concurrency From Block to Lock9 12.11.2015 Referential integrity – Relations between different database objects (constraints) Consistency – Reflecting the right revision of the data Concurrency – Changing data from different directions simultaneously
  • 10. Variation of locks From Block to Lock10 12.11.2015 DML Locks  Row Locks (TX)  Table Locks (TM)  Row Shared (SS/RS)  Row Exclusive (SX/RX)  Shared (S)  Shared Row Exclusive (SSX/SRX)  Exclusive (X) DDL Locks  Exclusive  Share  Breakable Parse Lock System Locks  Latches  Mutexes  Internal
  • 11. From Block to Lock11 12.11.2015 DML Locks
  • 12. Row Locks (TX) From Block to Lock12 12.11.2015 Blockage of one or more rows of a table (DML operation) Exclusive Always accompanied with a regarding table lock Released by ending of the transaction
  • 13. Table Locks (TM) I From Block to Lock13 12.11.2015 Blockage of a table Triggered by user or caused implicitly Row Shared Lock (SS/RS) – least restrictive lock – protects against DDL operation on the table Row Exclusive Table Lock (SX/RX) – indicates that a DML is executed – able to modify a row
  • 14. Table Locks (TM) II From Block to Lock14 12.11.2015 Shared Table Lock (S) – DML operations just allowed if at most one S-Lock is set. – no other data adjustment possible Shared Row Table Exclusive Lock (SSX/SRX) – more restrictive then S-Lock Exclusive Lock (X) – most restrictive table lock – querying of data still possible
  • 15. Table Locks (TM) From Block to Lock15 12.11.2015 RS RX S SRX X Select Y Y Y Y Y Insert Y Y N N N Update Y Y N N N Delete Y Y N N N Select… for Update Y Y N N N Table Lock (RS) Y Y Y Y N Table Lock (RX) Y Y N N N Table Lock (S) Y N Y N N Table Lock (SRX) Y N N N N Table Lock (X) N N N N N
  • 16. From Block to Lock16 12.11.2015 DDL Locks
  • 17. DDL Locks I From Block to Lock17 12.11.2015 protects the definition in data dictionary blockage never extended automatically release after finishing the DDL operation Exclusive DDL Lock – locks the definition of an object exclusively – prevents from modification or dropping – e.g. during ALTER TABLE statement
  • 18. DDL Locks II From Block to Lock18 12.11.2015 Share DDL Lock – locks the definition of an object shared – prohibits from dropping – e.g. during CREATE PROCEDURE statement Breakable Parse Lock – hold references to all related objects in the Shared Area – can be broken by every conflicting DDL operation
  • 19. From Block to Lock19 12.11.2015 System Locks
  • 20. System Locks I From Block to Lock20 12.11.2015 Latches – regulates multiuser access to shared structures – locks a group of objects – protect memory from corruption – preventing from following situations: > Concurrent modification by different sessions > Reading uncommitted data > Aging out memory while access
  • 21. System Locks II From Block to Lock21 12.11.2015 Mutexes – behavior is similar to a latch – locks a single object not a group of those – more efficient then a latch, factor depends on the OS Internal Locks > Dictionary cache locks > File and log management locks > Tablespace and undo segment locks
  • 22. From Block to Lock22 12.11.2015 Deadlocks
  • 23. Deadlocks From Block to Lock23 12.11.2015 Concurrency between two or more sessions Automatically solved by the oracle instance Analysis of the deadlock trace file
  • 24. Deadlocks From Block to Lock24 12.11.2015 General information
  • 25. Deadlocks From Block to Lock25 12.11.2015 Information about the killed session
  • 26. Deadlocks From Block to Lock26 12.11.2015 Information about the killed sessions
  • 27. Deadlocks From Block to Lock27 12.11.2015 Deadlock graph
  • 28. From Block to Lock28 12.11.2015 Locks and Foreign Keys
  • 29. Locks and Foreign Keys From Block to Lock29 12.11.2015
  • 30. From Block to Lock30 12.11.2015 DEMO 
  • 31. Locks and Foreign Keys From Block to Lock31 12.11.2015 ensure the integrity between tables preventing the violation using locks and error messages Indexing the foreign key is often the right way, but should never be the rule!
  • 32. From Block to Lock32 12.11.2015 Analysis
  • 33. Views in data dictionary From Block to Lock33 12.11.2015 GV$LOCK GV$LOCK_TYPE GV$LOCKED_OBJECT GV$LATCH GV$WAIT_CHAINS DBA_DML_LOCKS DBA_BLOCKERS DBA_WAITERS
  • 34. General lock overview From Block to Lock34 12.11.2015 Entire SQL statement: https://tddba.wordpress.com/scripts/
  • 35. Conclusion From Block to Lock35 12.11.2015 Locks are needed to ensure basic database functionality Prepare your environment for minimal concurrency Preventive is better then reactive tuning Know what to do when it's time to do!
  • 36. From Block to Lock36 12.11.2015 Further information… https://docs.oracle.com/database/121/CNCPT/consist.htm#CNCPT020 https://docs.oracle.com/database/121/SQLRF/ap_locks001.htm#SQLRF55502 https://docs.oracle.com/database/121/REFRN/GUID-87D76889-832C-4BFC-B8B0-154A22721781.htm#REFRN30121
  • 37. Any Question…? Tobias Deml Consultant Tel. +49 89 992 759 324 Tobias.Deml@trivadis.com 12.11.2015 From Block to Lock37 @TobiasDemlDBA tddba.wordpress.com
  • 38. © Trivadis – Das Unternehmen38 12.11.2015 Trivadis at the DOAG 2015 Level 3 - right next to the escalator We look forward to your visit. Because with Trivadis you always win.