Why is Oracle the best database in the OLTP environment?
Which vendor's database software is the "best" is often subject of very heated debates. Everyone has their favorite RDBMS. And it is their favorite for good reasons. I generally shy away from these debates as they are often passion-filled, and who can argue against someone's passions? I will give you reasons why I favor Oracle in an OLTP environment over other vendors' databases. So keep in mind that this is just my take on the subject.
One of Oracle's biggest assests in an OLTP environment is its unique way of implementing row-level locking. This ability lets the database lock only those rows being updated, not every row in the table. Many other RDBMS solutions don't implement row-level locking. When one row is being updated, the entire table must be locked. This can lead to contention issues especially in OLTP environments. Some RDBMS vendors have started implementing row-level locking in their systems, but no vendor has done it quite as well as Oracle.
Another reason that Oracle is very good in OLTP environments is that unless the developer takes measures to change the application, Oracle lives under the credo that "writers never block readers". This means that while someone is updating data in the database, the writes to the database will not block anyone attempting to read the same data. This is not true in some other RDBMS solutions. Often times, this credo has been criticized, especially by the MS SQL Server advocates. But I tend to find that this criticism is due to a lack of understanding how Oracle efficiently implements the fact that writers never block readers. As long as you are aware of how this works and why it works this way, very effecient OLTP systems can be designed.
Another reason that Oracle thrives in OLTP environments is its ability to scale (or grow) as application demands increase. Very few RDBMS solutions scale as well as Oracle. IBM's DB2 scales very well. But contrary to Microsoft's marketing notices, SQL Server does not yet scale nearly as well as Oracle or DB2. SQL Server is making great improvements, but it's just not quite there yet.
For More Information
- What do you think about this answer? E-mail the editors at editor@searchDatabase.com with your feedback.
- The Best Oracle Web Links: tips, tutorials, scripts, and more.
- Have an Oracle or SQL tip to offer your fellow DBAs and developers? The best tips submitted will receive a cool prize. Submit your tip today!
- Ask your technical Oracle and SQL questions -- or help out your peers by answering them -- in our live discussion forums.
- Ask the Experts yourself: Our SQL, database design, Oracle, SQL Server, DB2, metadata, object-oriented and data warehousing gurus are waiting to answer your toughest questions.