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 For
Oracle 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