Authors: Rick Greenwald, Robert Stackowiak, Jonathan Stern
Publisher: O'Reilly, 2013
Aimed at: anyone who wants to learn Oracle
Reviewed by: Kay Ewbank
This is the fifth edition of this popular title, updated to cover Oracle 12c.
It aims to provide a grounding in the concepts and technologies that form the foundation of Oracle’s database server. If you’re not familiar with Oracle, this might sound obvious – it’s the database, isn’t it? Those who have to work with the multiple products, drivers and options will know things are a bit more complicated. So much so, in fact, that despite being 400 pages long, this book can only provide a high level overview and introduction.
The opening chapter is an overview introducing Oracle, the database connection features, Fusion middleware, the data movement tools, management tools, security options, and development tools. The fact that this takes 37 pages gives the clearest explanation of why the book is needed.
Having given you the big picture, the authors then take you through the Oracle architecture, installing and running Oracle, and Oracle data structures in the next three chapters. It’s difficult for me to judge how useful these chapters would be – if you know other databases you probably have a reasonable grasp of some of the material and the space might have been better used elsewhere; on the other hand, having it laid out avoids errors of omission.
By chapter five the authors are on to managing Oracle, including backup and recovery, and how to use Oracle support. The chapter on security, auditing and compliance is good in as far as it goes, and at least introduces the different user roles, policies, and the various security options such as label security and advanced security.
The chapters on Oracle performance tuning and concurrency include details of how Oracle 12c has changed from earlier releases. As with the previous chapters, you’re not going to come out as an expert from reading these chapters, but you will know more about what’s possible so you can go and read more about them. I liked the descriptions of the difference between Oracle’s block-range parallelism and partition-based parallelism, and the table of operations that can be parallelized is a good reference.
The chapter on transaction processing goes all the way from what a transaction is up to Real Application Clusters (RAC), and covers the techniques necessary on two-tier, three-tier, and Web and grid transaction processing. There’s a good chapter on data warehousing and business intelligence, with brief introductions to some of Oracle’s BI tools such as the Business Intelligence Foundation Suite, and Exalytics.
High availability is covered next. The chapter opens with a fairly tame look at what high availability is, but later on moves on to more useful topics such as instance recovery and automatic storage management. The next chapter describes what the options are for computer architecture, and what constitutes Oracle engineered systems – the Exadata Database Machine, Exalogic, SuperCluster, and Database Appliance. There’s a brief introduction to distributed databases and replication, with descriptions of Tuxedo and Golden Gate. I’d have liked more on this topic, but it does explain what the concepts are.
The extended data types, objects in Oracle, how Java fits in, XML DB and spatial options get a short chapter to themselves, and the book ends with a chapter on Oracle in the cloud and the role of APEX.
This isn’t a book that will turn you into an Oracle expert. It does give a good overview of what you’ll need to learn about. You may well end the book more depressed about the amount of ‘stuff’ that you need to know than when you first opened the covers, but at least you’ll have a better idea of how it all fits together.