Access much-needed information for building scalable, high-concurrency applications and deploying them against the Oracle Database. This new edition is updated to be current with Oracle Database 19. It includes a new chapter with troubleshooting recipes to help you quickly diagnose and resolve locking problems that are urgent and block production.
Good transaction design is an important facet of highly-concurrent applications that are run by hundreds, even thousands, of users who are executing transactions at the same time. Transaction design, in turn, relies on a good understanding of how the database engine manages the locking of resources to prevent access conflicts and data loss that might otherwise result from concurrent access to data in the database. This book provides a solid and accurate explanation of how locking and concurrency are dealt with by Oracle Database. You will learn how the Oracle Database architecture accommodates user transactions, and how you can write code to mesh with the way in which Oracle Database is designed to operate.
Oracle Database Transactions and Locking Revealed covers in detail the various lock types, and also different locking schemes such as pessimistic and optimistic locking. Then you will learn about transaction isolation and multi-version concurrency, and how the various lock types support Oracle Database's transactional features. You will learn tips for transaction design, as well as some bad practices and habits to avoid. Coverage is also given to redo and undo, and their role in concurrency. The book is loaded with insightful code examples that drive home each concept. This is an important book that anyone developing highly-concurrent applications will want to have handy on their shelf.
What You Will Learn- Avoid application lockups due to conflicts over accessing the same resource
- Understand how Oracle prevents one application from overwriting another's modifications
- Create transaction designs that mesh with how Oracle Database is designed
- Build high-throughput applications supporting thousands of concurrent users
- Design applications to take full advantage of Oracle's powerful database engine
- Gain a fundamental knowledge of Oracle's transaction and locking architecture
- Develop techniques to quickly diagnose and resolve common locking issues
Who This Book Is ForOracle developers and database administrators faced with troubleshooting and solving deadlocks, locking contention, and similar problems that are encountered in high-concurrency environments; and application developers wanting to design their applications to excel at multi-user concurrency by taking full advantage of Oracle Database's multi-versioning and concurrency support