Collaborate 2008: “Aces in the Hole” Presentation

Published in Collaborate by gpike Friday April 18, 2008

I just returned from Collaborate 2008 in beautiful Denver, Colorado where I gave a presentation extolling the virtues of the OTN SQL and PL/SQL Forum as a learning tool for beginners and experts alike. The presentation was designed to both inform the audience about the incredible wealth of knowledge found on the Forums as well as to highlight the most experienced and prodigious contributors along with their unique solutions.

I focused a little on the Oracle Ace program (and invited Ace Director Dan Norris to give an overview) in an attempt to demonstrate the extraordinary talent and experience of the moderators. Finally, I ended with a case study of a single post and the myriad of solutions that the Forum Gurus brought to bear to solve the problem. The presentation itself can be downloaded here, but as with most PowerPoints, it’s just not that informative without the commentary. If you do view it, please play it in slide show mode as it contains significant animations.

The presentation was well attended (especially for a last-minute Collaborate addition) and the attendees were attentive and full of questions. Several people found me later and reported returning to the Forums for the first time in years to both read and contribute. Mission accomplished!

I want to thank all of the contributors to the SQL and PL/SQL Forum and especially those that provided the content for my case study.


Greg Pike

Greg Pike
PIOCON Technologies Website

Collaborate 2008

Published in Collaborate, IOUG by jsimmons Sunday March 30, 2008

Greg and I will be speaking at IOUG Collaborate 08! Come hear us or the rest of the Piocon crew and stop by Piocon’s Booth # 1619.

Monday, April 14

Session 501

9:15 - 11:30 AM    Dan Norris and Matt Topper

SSL, Load Balancers, Rewrite, Redirect and More Advanced Configuration 

Tuesday, April 15

Session 2035

9:45 - 10:45 PM    Greg Pike

Aces in the Hole: Learning Advanced SQL Techniques from the OTN Forum Pros

Session 711

12:15 - 1:15 PM    Dan Norris

RAC SIG Experts Panel

Session 110

1:45 - 2:45 PM    Roger Lenihan 

Remove Spreadsheets, Checklists and Stress Out Of A Switchover, Use Data Guard Broker

Session 433

1:45 - 2:45 PM    Rohit Badiyani, Karen Smudde, Winslow Troy

Fantastic Four:  ADF Faces, WebCenter, AJAX and SOA

Session 341

3:30 - 4:30 PM    Dan Norris

Building A RAC Test Environment On VMWare For Free

Session 513

3:30 - 4:30 PM    Greg Pike

Leveraging Oracle Portal as an Enterprise Identity Management Repository

Wednesday, April 16

Session 517

8:30 - 9:30 AM    Dan Norris

Oracle Adaptive Access Manager: What, Why, How

Session 131

9:45 - 10:45 AM    Jeremy Simmons

Oracle Application Server High-Availability Options

Session 712

1:30 - 2:30 PM    Dan Norris

Oracle RAC SIG Birds-of-a-Feather

Session 232

4:30 - 5:30 PM    Matthew Vranicar

2008:  A BI Odyssey

Thursday, April 17

Session 379

 

9:45 - 10:45 AM    Dan Norris

To RAC or Not To RAC: What's Best For HA?

SingleQuery had Wordpress Problems

Published in About SingleQuery.com by jsimmons Sunday March 30, 2008

SingleQuery was out of commission for a short (actually, long!) while but we’ve fixed the issues and upgraded to Wordpress 2.5!

Look for more posts soon.

Jeremy

Pivot and Unpivot in 11g

Published in Oracle 11g, SQL by malam Wednesday December 19, 2007

Pivot

The Pivot clause is a new feature that has been introduced with the introduction of 11g.The simple logic behind the Pivot clause is that it enables the user to rotate rows into columns in the output of a query and at the same time enable the user to run aggregate functions on the data.

Unpivot

Unpivot clause is also a new built in Analytical function that is introduced with the release of 11g,unpivot clause lets the user rotate columns into rows in the output from a query.

Examples to illustrate the use of Pivot clause

If you can log in to the Scott schema of the database then skip step 2 and 3 to execute the query directly

However , If you want to create the table in your database and then run the query please follow steps 1 through 3

1.


CREATE TABLE emp ( empno NUMBER(4,0), ename VARCHAR2(10 BYTE), job VARCHAR2(9 BYTE), mgr NUMBER(4,0), hiredate DATE, sal NUMBER(7,2), comm NUMBER(7,2), deptno NUMBER(2,0) );

2.Insert Script

The script below can be used to insert data into the table created in step 1.


INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7369','SMITH','CLERK','7902',TO_DATE('17-Dec-80','DD-MON-RR'),'800','0','30');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7499','ALLEN','SALESMAN','7698',TO_DATE('20-Feb-81','DD-MON-RR'),'1600','300','30');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7521','WARD','SALESMAN','7698',TO_DATE('22-Feb-81','DD-MON-RR'),'1250','500','30');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7525','JACK','SALESMAN','7690',TO_DATE('26-Sep-81','DD-MON-RR'),'1550','500','20');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7527','JONES','CLERK','7622',TO_DATE('22-Feb-81','DD-MON-RR'),'1000','300','20');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7521','KANYE','PRESIDENT','',TO_DATE('28-Feb-81','DD-MON-RR'),'5000','500','20');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7500','SAM','SALESMAN','7689',TO_DATE('23-Feb-81','DD-MON-RR'),'1257','500','10');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7400','JOE','MANAGER','7607',TO_DATE('22-Feb-81','DD-MON-RR'),'1540','300','10');
INSERT INTO emp (empno,ename,job,mgr,hiredate,sal,comm,deptno)VALUES ('7521','WARD','SALESMAN','7698',TO_DATE('22-Feb-81','DD-MON-RR'),'1250','500','10');
COMMIT;
/
3.Pivot Query
SELECT *
FROM (SELECT deptno,sal
      FROM emp
      WHERE deptno > 0
)
PIVOT (SUM(sal) AS SUM_AMOUNT FOR (deptno) IN (10 AS ACCOUNTING ,20 AS RESEARCH,30 AS SALES,40 AS OPERATIONS));

/*
General Form of query using PIVOT clause
SELECT * FROM (INNER QUERY)
PIVOT (
AGGREGATE_FUNCTION
FOR (COLUMN TO BE PIVOTED) IN (LIST OF VALUES));
*/

A single Pivot clause can also support multiple Aggregate Functions.
PIVOT CLAUSE provides great support to businesses which would like to do a detailed analysis on their Sales methodology and help them make future decisions on their sales and marketing strategies.

Using the UNPIVOT clause

The UNPIVOT clause rotates columns into rows.UNPIVOT clause is useful when a user has to execute a query that returns many columns , using the UNPIVOT clause the user can view those columns as rows.

Lets Illustrate the concept discussed above

1.Create a table pivot_emp_data using the query in step 3 as

CREATE TABLE pivot_emp_data AS
SELECT *
FROM (SELECT deptno,sal
              FROM emp
              WHERE deptno > 0
)
PIVOT (SUM(sal) AS SUM_AMOUNT
FOR (deptno)
IN (10 AS ACCOUNTING ,20 AS RESEARCH,30 AS SALES,40 AS OPERATIONS);

2.Once the table has been created we can run the query below

SELECT *
  FROM pivot_emp_data
  UNPIVOT
(sal FOR deptno
IN(ACCOUNTING_SUM_AMOUNT,RESEARCH_SUM_AMOUNT,SALES_SUM_AMOUNT,OPERATIONS_SUM_AMOUNT))

The Query rotates the pivoted Data .Also , do realize that If you are working with pivoted data, an UNPIVOT operation cannot reverse any aggregations that have been made by PIVOT or any other means.

Oracle VM

Published in OpenWorld, Virtualization by jsimmons Sunday November 18, 2007

One of the big announcements at Oracle OpenWorld last week was Oracle VM. I’m a big fan of virtualization and have worked a lot with VMWare, but honestly I’ve never paid much attention to Xen (which Oracle VM is based on).

Here’s some item’s I found interesting:

Oracle VM (based on Xen) requires the linux guest OS to be modified with paravirtualization drivers, Windows requires Hardware Assist and will likely run slower then OEL or RedHat until suitable paravirtualization drivers are delivered.

From: VMWare’s “A Performance Comparison of Hypervisors

The full virtualization approach allows datacenters to run an unmodified guest operating system, thus maintaining the existing investments in operating systems and applications and providing a nondisruptive migration to virtualized environments. VMware uses a combination of direct execution and binary translation techniques to achieve full virtualization of an x86 system

The paravirtualization approach modifies the guest operating system to eliminate the need for binary translation. Therefore it offers potential performance advantages for certain workloads but requires using specially modified operating system kernels. The Xen open source project [and there by Oracle VM] was designed initially to support paravirtualized operating systems. While it is possible to modify open source operating systems, such as Linux and OpenBSD, it is not possible to modify “closed” source operating systems such as Microsoft Windows . It is also not practical to modify older versions of open source operating systems that are already in use. As it turns out, Microsoft Windows is the most widely deployed operating system in enterprise datacenters. For such unmodified guest operating systems, a virtualization hypervisor must either adopt the full virtualization approach or rely on hardware virtualization in the processor architecture.

The hardware virtualization support enabled by AMD-V and Intel VT technologies introduces virtualization in the x86 processor architecture itself. While first-generation hardware assist support includes CPU virtualization only, later generations are expected to include memory and I/O virtualization as well. The emergence of virtualization hardware assist reduces the need to paravirtualize guest operating systems. In fact, Xen vendors such as Virtual Iron have announced that they are supporting only full virtualization using AMD-V and Intel VT processors and are not supporting paravirtualization

It looks like paravirtualization and hardware assist are the future for the hypervisor until then check out:

Ten Reasons Why Oracle Databases Run Best on VMware (this is an interesting read but it does point out that a lot of important features relative to Oracle are not coming until the 3.5 ESX release)

When Logging Off Crashes Your OC4J Container

Published in App Server by jsimmons Thursday November 1, 2007

Dan and I were at a client whose custom OC4J Containers running in Windows 2003 SE on VMWare were crashing randomly. To make the situation more complex the default containers (Home and WebCenter) from Oracle were not crashing.

Eventually we correlated the bulk of the OC4J crashes to admins logging out of VMWare Console and Remote Desktop with /console option.

Turns out that when you create a custom OC4J container in Application Server Control Oracle does not include -Xrs as a Java option even though it is included with the standard containers they deliver with 10.1.3.x.

The -Xrs option tells the JVM to ignore most signals from the OS level otherwise the JVM will exit thereby unexpectedly terminating the OC4J container and all running threads running within it.

Based on this Metalink article this appears to be a known issue since at least 2003. Maybe in 11g Oracle will include this option by default.
Subject: Unexpected JVM Termination in Response to Logout From Windows Console
Doc ID: Note:245609.1
Last Revision Date: 11-AUG-2003

Below is a snippet of the Java application launcher detail on the -Xrs option

-Xrs
Reduces usage of operating-system signals by the Java virtual machine (JVM). This option is available beginning with J2SE 1.3.1.

In J2SE 1.3.0, the Shutdown Hooks facility was added to allow orderly shutdown of a Java application. The intent was to allow user cleanup code (such as closing database connections) to run at shutdown, even if the JVM terminates abruptly.

The JVM watches for console control events to implement shutdown hooks for abnormal JVM termination. Specifically, the JVM registers a console control handler which begins shutdown-hook processing and returns TRUE for CTRL_C_EVENT, CTRL_CLOSE_EVENT, CTRL_LOGOFF_EVENT, and CTRL_SHUTDOWN_EVENT.

The JVM uses a similar mechanism to implement the pre-1.2 feature of dumping thread stacks for debugging purposes. Sun’s JVM uses CTRL_BREAK_EVENT to perform thread dumps.

If the JVM is run as a service (for example, the servlet engine for a web server), it can receive CTRL_LOGOFF_EVENT but should not initiate shutdown since the operating system will not actually terminate the process. To avoid possible interference such as this, the -Xrs command-line option has been added beginning with J2SE 1.3.1. When the -Xrs option is used on Sun’s JVM, the JVM does not install a console control handler, implying that it does not watch for or process CTRL_C_EVENT, CTRL_CLOSE_EVENT, CTRL_LOGOFF_EVENT, or CTRL_SHUTDOWN_EVENT.

There are two consequences of specifying -Xrs:

* Ctrl-Break thread dumps are not available.
* User code is responsible for causing shutdown hooks to run, for example by calling System.exit() when the JVM is to be terminated.

Jeremy Simmons
PIOCON Technologies Logo

Oracle OpenWorld 2007

Published in OpenWorld, Piocon by jsimmons Monday October 15, 2007

Both Greg and I will be at OpenWorld this year, speaking (see the schedule below), working the booth and attending a few tech sessions stop by and visit us and the other Piocon folks at Booth 2822 in Moscone South.

Open World

IOUG:  Oracle Application Server High-Availability Options

Session Abstract: This presentation addresses Oracle Application Server alternative configurations and the associated benefits and risks of each.
Speakers: Jeremy Simmons, Piocon
Date/Time: Thursday  11/15/2007  11:30 AM - 12:30 PM
Venue/Room: Moscone South 307
Session ID: S291061

Procurement Business Intelligence (BI) from Disparate Datasources with
Oracle Warehouse Builder and Oracle Portal
Session Abstract: IPSCO Inc., a multinational steel manufacturer with 20+ facilities in North America, struggled to produce an enterprisewide view of expenditures from federated procurement systems. In this session, Piocon and IPSCO tell how Oracle Warehouse Builder facilitated the centralization of these disparate datasources into a single Oracle Database 10g warehouse. Combining BI analysis tools including Oracle Discoverer, IPSCO has produced significant, measurable ROI.
Speakers: John Gosack, IPSCO Inc.; Gregory Pike, Piocon
Date/Time: Monday  11/12/2007  3:15 PM - 4:15 PM
Venue/Room: Westin SF Market Street / City Room
Session ID: S292381

IOUG RAC SIG: High Availability Options for Oracle Database
Session Abstract: From Oracle RAC to cold backups, this session will introduce the various Oracle and third party features, products, and options that provide high availability for Oracle Database. IT Managers, DBAs, and system architects will benefit from the information provided in this technical session.
Speaker: Dan Norris, Piocon
Date/Time: Sunday  11/11/2007  10:00 AM - 11:30 AM  
Venue/Room: Moscone West / 2002 - L2
Session ID: S292927

OAUG Oracle BI SIG:  How to get the Most out of OpenWorld
Session Abstract: With a myriad of presentations spanning a vast array of topics, OpenWorld can be a tough place to navigate.  If you are focused on learning about Oracle Business Intelligence, you will find over 300 sessions on this topic alone.  Breaking down all the Oracle BI sessions at OpenWorld, this talk will focus on where to find the most pertinent information on Oracle BI given your needs.
Speakers: Joe Thomas, Oracle; OAUG OBI SIG Chairs:  Basheer Khan, Innowave Technology; Glenn Hoormann, Optimum Solutions; Dave Herringtong, DARC; Matthew Vranicar, Piocon
Date/Time: Sunday  11/11/2007  2:45 PM - 3:45 PM
Venue/Room: Moscone West / 2014

Session ID:  

IOUG: Oracle RAC for Beginners–The Basics
Session Abstract: Oracle Real Application Clusters (Oracle RAC) has been steadily gaining momentum. DBAs and managers need to understand the basics of Oracle RAC
and how it is managed. Many mistakes are made in attempts to create
Oracle RAC environments without having a solid understanding of the
architecture. This session focuses on the technical architecture of the
Oracle RAC feature, emphasizing frequently misunderstood areas.
Speakers: Dan Norris, Piocon
Date/Time: Monday  11/12/2007  4:45 PM - 5:45 PM
Venue/Room: Hilton / Yosemite Room C
Session ID: S291026

Piocon Seeks OWB, Portal, PL/SQL, Java developers in Chicago!

Published in Jobs, Piocon by gpike Tuesday September 18, 2007

For those of you that would prefer to see this site remain a purely technical blog, I apologize in advance! Nothing is changing…I prefer to keep this blog separate from the day-to-day operations of my employer (Piocon). But we are in need of talented Oracle developers for project teams in Oakbrook, IL. Looking to move? We can handle that too.

Are you the caliber of professional we are seeking here at Piocon? Take a look at the quality of postings from my Piocon colleagues here at SingleQuery.com and judge for yourself. We have immediate need for qualified candidates with one or more of the following skills:

• Oracle Warehouse Builder
• Oracle Portal
• Oracle PL/SQL Development with an Apps background
• Oracle Java technologies
• Database Administration
• BPEL
• OBIEE
• BI Publisher

Piocon is a fast-growing consulting company based in Oakbrook, IL (well, we are moving to Oakbrook on Oct. 1, 2007). In a nutshell, we specialize in Oracle Business Intelligence solutions and we can’t keep up with all of our fantastic opportunities.

Please send resumes, comments or questions directly to me, Greg Pike (email me). I’m looking forward to hearing from you!


Greg Pike

Greg Pike
PIOCON Technologies Website

Oracle 11g New Features - Oracle Partner Seminar Notes Part 2

Published in Oracle 11g by gpike Sunday August 19, 2007

I have only abbreviated notes from this second Oracle partner 11g review session and several topics were in areas where I have limited knowledge. Again, these are just notes and I have not verified this functionality. There may be omissions or errors:

Virtual Columns

Virtual columns are defined using a function, but the data (like a view) is not actually stored physically. Virtual columns need to be based solely upon base columns (non-virtual):

CREATE TABLE foo
(
 bar NUMBER,
 v1 GENERATED ALWAYS AS (bar+10) VIRTUAL,
 v2 GENERATED ALWAYS AS (
                         CASE WHEN bar < 10 THEN 1
                              WHEN bar >=10 AND bar <100 THEN 2
                              ELSE 3
                         END
                        ) VIRTUAL
);

Virtual columns can exist in partition keys, have indexes (these become function-based indexes) and be included when statistics are gathered. The presenter at our session also indicated that Oracle primarily included virtual columns to aid in partitioning strategies rather than to migrate application logic into the database. It was also indicated that the overhead of using virtual columns was extremely low, even with indexes.

It is important to note that virtual columns must use deterministic functions only; the function must return the same value each time that it is executed with the same input parameters. For example, a virtual column cannot be defined to return the SYSDATE.

New Partitioning Options

Table partitioning continues to be improved with the following functionality:

• Virtual columns can be used in the partitioning key.

• Full automation of equi-sized range partitions. Partitions and Local indexes created automatically as needed.

• Child tables inherit partitioning strategy of parent through PK/FK (REF partitioning). This eliminates the need to store the partitioning key for the child tables and more rows per block can be stored.

• Composite partition options include list-range (ex. geog-time), range-range (ex. ship date - order date), list-hash (ex. geog - hash) and list-list (ex. geog-product).

Invisible Indexes

This slick little feature allows indexes to be created on tables that are invisible to the CBO. To use an invisible index, a query must be directed to do so using a hint. This allows the addition of new indexes into a schema without affecting the execution plans of existing queries. This powerful feature will be a great new query and application tuning tool.

SecureFiles: A new generation of LOBs

These are the next generation of LOBs. They promise significant performance increases, more capabilities, transparent deduplication, and since they are a super-set of LOB interface, easy migration from existing LOBs is expected.

SecureFiles are a major re-architecture of how the DB handles unstructured data rather than an upgrade to existing LOB technology. The following areas are entirely new:

• Disk format
• Network protocol
• Versioning and sharing
• Caching/locking
• Redo/undo
• Space management
• Cluster consistency algorithms

And the following functionality is included with SecureFiles:
• Transactional, read consistent and flashback enabled
• Advanced search capabilities
• XML indexing
• Fine grained auditing
• Label security

The presenter was very excited about SecureFiles and ended with the following statement: “SecureFile capabilities go far beyond any other database or file system.”

XML-DB Overview

• Large node handling
• Stream-based replication support for LOB-based XML storage
• Trigger support in the XML-DB repository
• XML Index
• “Binary” XML – a single format for on-disk, in-memory and on-the-wire XML transmission
• Reduced CPU and memory overhead
• Asynchronous operations possible

PL/SQL Enhancements

An exciting feature is the ability to automatically expose PL/SQL Procedures as web services. Using a C-based engine, the secure PL/SQL web services are implemented with no coding! Wow, that is pretty neat. I unfortunately saw no examples of this in the presentation.

Program dependencies are tracked at the column level so that changes to underlying data structures will not invalidate PL/SQL procedures unless the specific columns used in the procedure are altered.

Real Native Compilation - Through 10.2, PL/SQL compiled to a native dll was significantly faster than PL/SQL compiled by the PVM. Oracle translated PL/SQL into C code. In 11g, Oracle translates PL/SQL source DIRECTLY to the dll for the current hardware (no C compiler necessary!). Oracle does the linking and loading. The final result is PL/SQL that is twice as fast as C native. In actual tests, Oracle realized PL/SQL runtime improvements 2.5 – 20X! Wow!

The old “SELECT a.nextval into v_id” syntax is no longer necessary. Now you can do a “v_id := a.nextval”.

PL/Scope in SQL Developer 2.0 allows the developer to follow references around in code.

The presenter briefly alluded to the PL/SQL Hierarchical Profiler which is engaged with dbms_start_profiling(). Apparently, this allows for dynamic execution profilers that treat SQL and PL/SQl separately. More on this after I get a chance to use it.

Java Enhancements

These were covered pretty quickly:

• Prefetch in First Round-trip (JDBC – thin).
• Native AQ protocol. – AQ/OJMS Operations 40-300% faster.
• JSBD 4.0 support.
• Java VM upgrade disconnected from DB upgrades.
• New JIT compiler compiles Java in the DB natively and transparently (on the fly) without need for a C compiler leading to an “order of magnitude” speed increase for pure Java out of the box!

Database Resident Connection Pooling

This functionality was specifically designed for PHP and allows many external sessions to connect to a single database session (as long as they use the same user ID). The presenters did not know if this functionality would work for non-PHP applications.

SQL Tuning

A fully automatic tuning SQL Tuning process now examines queries and evaluates/implements new execution plans:
• Runs under Autotask framework.
• Identifies, ranks and tunes candidate SQL with parallel queries, DML/DDL, recursive and ad-hocs excluded.
• Leverages SQL Tuning Advisor.
• Only implements significantly improved plans (3x faster).
• Time budgeted to avoid run-away plans.

This part of the session included a number of questions and concerns about the database automatically implementing its own changes to query execution plans. The presentation team seemed very confident in its capabilities. Also included was a discussion of how to migrate applications from previous versions of the database without fear of dramatic changes to the plans by using this functionality. But who knows?

Real Application Testing

Now this really cool feature, called Database Replay facilitates testing by:
• Capturing workload in production
• Replaying workload in test
• Analyzing and reporting

Its designed to provide stress testing IN DEV based upon real transactions that occur in the production environment. At least an hour was devoted to this topic, but this is not the proper forum to describe the functionality in detail.

And so there you have it. A little taste of what’s coming with Oracle 11g! I’ll be providing more details on these features as I use them in the upcoming months. Happy coding!


Greg Pike

Greg Pike
PIOCON Technologies Website

Oracle 11g New Features - Oracle Partner Seminar Notes Part 1

Published in Oracle 11g by gpike Thursday August 2, 2007

I just got back from the beginning of a Oracle Partner 1.5 day review of 11g new features and thought I’d share some very preliminary information. I should be able to post the actual power point presentations in a couple of days, but here’s some quick notes (in no particular order). I will try to post Day 2 tomorrow…

I was late for this session, but the “Flashback Archive” will allow almost unlimited database flashback functionality by allowing so-called “flashback tablespaces”.

Data Guard’s standby database now allows concurrent, transaction-consistent real-time query capabilities. Also, all data types are now supported. You can even add additional schemas to the standby DB even if not found in the master DB, but these will also be read-only. “Snapshot Standby” allows the use of the standby DB for testing purposes and then returns the standby to a production copy with the commands:

ALTER DATABASE CONVERT TO SNAPSHOT STANDBY;
ALTER DATABASE CONVERT TO PHYSICAL STANDBY;

DBMS_FLASHBACK.TRANSACTION_BACKOUT will automatically back out a transaction (and all of its dependent transactions). Very nice!

Columns can be added to a table with a default value included. Saves some time and effort!

“Invisible” indexes can be added to tables without affecting existing execution plans since they are invisible to the optimizer unless specifically identified by a hint. This is a powerful feature for increasing the response time of problem queries without impacting others.

RAC claims a 70% improvement over the internal, read-only benchmark.

Some database sizing numbers:

  • 63 Disk Groups supported
  • 10,000 ASM disks
  • 4 petabytes/ASM disk
  • 40 exobytes storage
  • 1M files/disk group
  • Max file sizes: 15-140PB
  • 11g Grid control will not be available for “a while.”

    11g includes several new caches and I will give more explanations soon:

  • SQL Query Result Cache - Query results are cached making future SQL very, very fast!
  • PL/SQL Function Cache - The results of PL/SQL functions used by queries are cached.
  • Client OCI Cache - Data is cached on the client
  • Optimizer Changes: Guaranteed Plan Stability and SQL Plan Baseline: The database will now evaluate alternate execution plans and impose only those plans that are verified as an improvement. This feature is great for upgrading from previous versions of the database and I will provide more detail later.

    AUTO_SAMPLE_SIZE - “Groundbreaking” improvement on stats gathering.

    Passwords are finally case sensitive and all Oracle clients are changed to support this requirement.

    For years, developers have struggled with transforming long and narrow results sets into short and wide result sets. Enter the new SQL clauses PIVOT and UNPIVOT. More on this after I give it a try.

    I realize this information is a a little raw and unstructured, its just my notes. More to come!

    Greg


    Greg Pike

    Greg Pike
    PIOCON Technologies Website

    25 queries. 0.588 seconds.
    Powered by Wordpress
    theme by cmoanz