John Watson's blog
I was at the Connecticut Oracle User Group re-launch meeting last week, talking about some of the 12c new features that I specially like: those related to what I call "the self-learning database".
Why does the CBO get it wrong? Often because it has insufficient information. No matter how often you analyze your tables, if your queries use multi-column predicates, the CBO will mis-calculate the cardinalities. You have to understand your data, and create extended statistics to correlate the columns. How many people do this? Hardly any. Not a problem any more: release 12c can do this for you. If you configure it appropriately.
A necessary part of a cluster is the cluster interconnect: the private network between the cluster nodes. This component is critical for both reliability and scalability, and configuring it for fault tolerance and capacity is a matter of burning importance for the DBA and his System Administrator (not to mention the end users). One question is, should this be managed by the operating system or by Oracle?
I have seen articles that misrepresent a Flex Cluster, even this book Expert Oracle RAC 12c which is written by people who know better (Oracle ACE directors, an OCM, an Oak Table member) gets it wrong, because of a reliance on beta documentation.
In earlier releases, running a shell script from the Scheduler was awkward. Oracle has realized this, and introduced a new job type in 12c that makes it simple.
One often sees requests for test cases, typically when a user has a SQL performance issue. So many users appear to have problems with producing a suitable test case that Uncle Oracle provides routine to automate this. There are no longer any excuses for not providing a test case. Here is an intro to how to do it (code tested on 126.96.36.199 and 188.8.131.52).
The inverted table format can deliver fast and flexible query capabilities, but is not widely used. ADABAS is probably the most successful implementation, but how often do you see that nowadays? Following is a description of how to implement inverted structures within a relational database. All code run on Oracle Database 12c, release 184.108.40.206.
There are three restrictions on indexing and partitioning: a unique index cannot be local non-prefixed; a global non-prefixed index is not possible; a bitmap index cannot be global. Why these limitations? I suspect that they are there to prevent us from doing something idiotic.
I see posts on Oracle related forums about various releases (anything that isn't 11.x or 12.x) being "unsupported". This is wrong. Of course you should upgrade any 9i or 10g databases, but you don't have to.
The COST column cannot be used to compare execution plans. Punkt.