Oracle Database Management Strategic Directions

1. Best Practices for managing Oracle database servers.
2. Oracle Fusion Middleware products like J2EE, ADF, XML, BPEL, SOA, Web Services, Discoverer...).
3. Oracle Application Servers and Apache.

Tuesday, April 24, 2007

Oracle Database 11g New Product Features

I was telling a friend about the new Oracle Database 11g server and they said, "You're kidding, we haven't even moved all of our databases to Oracle 10g. Why should I care about Oracle Database 11g? I hope to be retired by the time the Oracle Database 11g is introduced into my company". I answered with, I've spend the last five years watching companies make bad hardware, software and database management decisions because they did not know how the new features in Oracle 10g could impact their database environments. Or understand the high cost of ownership of their databases because they are managing their databases today pretty much the same way they were ten years ago. Reasons why you should care about features in a new release of the Oracle database:
  • It is very important that a company understand how features in a new release of the Oracle database server will impact their current database management practices and decisions.
  • The correct decisions made today will reduce migration issues in the future.
  • The only way to make the right decisions today, is by understanding where database management is going in the future.
  • Understanding current and future skill sets needed for IT staff.
  • I believe you don't always have to be moving in the right direction, but you should always try to be pointed in the right direction.
  • With Oracle Database 11g Database Replay and SQL Replay, the migration to Oracle Database 11g might be done at significantly reduced costs versus Oracle 10g.
  • As Oracle 9i moves towards being desupported, Oracle Database 11g may be a stronger migration path than Oracle 10g.

I have been working with Oracle since version 4, so I've seen a lot of new releases. I still remember having to install over 20 5.25" floppy disks, when referential integrity was only declared and not enforced, as well as the old max extent limit of 121. The old days weren't always the good old days. I have helped customers with the rollouts of new Oracle software versions for a good part of my career. This includes internal rollouts to Oracle Corporation for 5.5 years. I was a lead in the internal rollouts of Oracle 8.0, 8i, 9i, JDeveloper, RAC, Streams and new releases of the Oracle Application Server. Since then I have had a leadership role in the Oracle Beta program for Oracle 10g and 11g.

For the most part, DBAs have been a little frustrated by the number of bugs and feature restrictions in Oracle 6, 7, 8 and 9i in the first releases of each version.
  • The issues with previous first releases of a major version of Oracle database software has taught DBAs to historically stay away from the first release and to be very careful when using new features.
  • I think Oracle put too much advertising in the Object-Relational features of the Oracle 8 database when the object features were not mature enough in the first release instead of focusing on features that would help DBAs in their day to day jobs.
  • Oracle did the same thing with Java in the database with Oracle9i. Although Java in the database has turned into a fantastic feature especially for Oracle product and feature development, most DBAs didn't initially see the value of Java in the database.

However, Oracle 10g was by far the most stable release of a new version of Oracle software. Oracle 10g also had a large number of bug fixes for Oracle 9i, so Oracle 10g was even a more stable version of Oracle9i. Oracle 10g also had a lot of enhancements and bug fixes for advanced features of Oracle such as RAC, Data Guard, Streams, etc. The Oracle Enterprise Manager (OEM) took a gigantic leap from a tool in Oracle 9i that most DBAs snickered at, to a strong Enterprise solution with Grid Control in Oracle 10g. DBAs should have been moving to Oracle 10g to take advantage of the important new features and increased stability, instead they were using the old pattern of moving slowly to a new release and to using the new features of a new release.

Oracle 10g has by far more new features that should be used out of the box than any previous release of Oracle. The features in Oracle 10g are so significant, the Oracle 10g features should change the way DBAs are managing their systems. Yet, DBAs have been very slow in adopting these new features. If you look at a lot of Oracle 10g shops, they are running their databases closer to Oracle 7 features than Oracle 10g features. The release of Oracle 10g added tremendous functionality to database environments that Oracle DBAs need to leverage.

I have been involved with Oracle Database 11g since the summer of 2006, so I can tell you the upcoming release is very interesting. Its amazing how many new features there are in this new release. There are brand new features, existing feature enhancements and a lot of enhancements to make Oracle faster. Oracle Database 11g has added some very interesting enhancements in RMAN, Streams, Data Guard, RAC, diagnosability, RMAN repairability, XML, security, Java, PL/SQL, Data Pump, tables, tablespaces, partitioning, performance and management to name a few area highlights.

As I looked at the Oracle Database 11g release of the database server one thing stood out to me. Organizations really need to look at their database management strategies and how they are going to manage all their databases in their environment. I think it is VERY important that companies leverage the new features in a database and tie the use of the new features into their best practices. I have a tendency to buy the hottest high technology gadgets but historically I never use more than 10 percent of the features. I find most customers are the same way with their databases. This is bad because the new features in Oracle 10g can significantly reduce their cost of ownership if organizations would use them correctly. I cannot state strongly enough that as organizations move to the Oracle 10g and Oracle Database 11g they really need to look out how they are going to tie these new features into their database management practices and leverage these features to minimize down time and reduce their cost of ownership.

As our multi-tiered database environments get more complex we need enhanced tools for managing these environments and for improving performance as our databases get bigger. There is also a strong need for improving the management of advanced database features such as RAC, Data Guard and Streams. Oracle Database 11g strongly addresses these areas.

This is not a comprehensive list of all of the new features in Oracle Database 11g. Below is more of a summary of key areas I like in Oracle Database 11g of the database server.

Change assurance (important for saving money during testing and migration)
  • Change assurance new features of Database Replay and SQL Replay can play a large role in reducing costs, testing and issues when migrating to Oracle Database 11g. This is one of the best new features in this release.
  • Database replay - captures actual production workload and replays it on a separate system.
  • SQL performance analyzer - finds and fixes SQL performance degradations
  • 10gR2 will have a patch set, that will allow the replay to occur.

Secure Files (Next generation LOBS)
  • Eliminates need for file systems. Very fast access of files.
  • Just as fast as file systems with all the capabilities of the Oracle database (it’s a new LOB type). It is very fast at accessing the files from a file system.
  • Store all your data in the database with one consistent:, Security and auditing model
  • Backup and recovery mechanism
  • Storage management (ASM)
  • Transaction and concurrency model
  • Interface and protocol
  • Values added services like encryption, compression, and de-duplication

  • Fast bulk data transfers
  • LOB prefetch (where was this in Oracle8 when we needed it)
  • InterMedia enhancements to LOBs
  • SecureFiles compression, encyrption and optimization
  • Installs/Deinstalls and other fun on weekends

High Availability (RAC, Data Guard, LifeCycle Management)
  • Fast-Start Failover for maximum performance mode in a Data Guard configuration.
  • Compression of redo traffic (for Gap Resolution) over the network in a Data Guard Configuration.
  • Real-Time query of a physical standby database while redo apply is active.
  • Dynamic setting of Oracle Data Guard SQL apply parameters.
  • A physical standby database can be opened temporarily for reporting and testing. Redo is still applied while database is in this state.
  • Online database upgrades for data guard physical standby. Can upgrade logical standby database, then run both in parallel, then switch them.
  • Can take standby databases, and take them out of standby to do testing and can then move them back into standby modes.
  • RAC enhancements in OEM for monitoring and diagnostics. A lot of nice enhancements.
  • Improved metrics.
  • Next generation RAC cache fusion is even more scalable.
  • Query results caches
  • Fast caching of query/function results for read-mostly data
  • Good enhancements to ADDM for diagnosing and tuning an entire RAC cluster as well as individual instances.. This includes improved diagnostics with Global cache interconnect issues and global resource contention, I/O bandwidth and hot blocks.

  • A Virtual Private Catalog can now make sure an RMAN user can only see databases they are authorized to use.
  • Archive log management for Streams and Data Guard
  • Network aware DUPLICATE
  • Optimized undo backup
  • Improved corrupt block detection

  • A new MEMORY_TARGET parameter that will improve the automatic memory management across shared and private memory areas.
  • Simplified Temp Space Management
  • Enhanced OFA Support
  • Server side connection pooling.
  • Secure configuration install option
  • Stronger Password Protection
  • Improved statistics generation for partitioned objects.
  • Security enhancements with transparent tablespace and LOB encryption.
  • SQL Repair Advisor
  • Automatic Diagnostic Repository (ADR)
  • Fast ANALYZE: Finding Table-Index Corruptions
  • Automatic SQL Tuning with Self-Learning Capabilities that can identify top SQL statements and tunes them automatically by creating SQL profiles.
  • Better SQL plan management allows the optimizer to maintain a history of
    execution plans for a SQL statement. The optimizer can move to a new plan when it able to verify it is more efficient than an old plan.
  • Streams management improves with automated alerts for Streams, a new DBMS_COMPARISON package than can help evaluate the consistency of data across databases, splitting and remerging of streams, LCR marking and tracking for diagnosing configuration issues, views and interfaces for understanding a Streams topology and a Streams Performance Advisor.
  • Migration of DBMS_JOB jobs to the Oracle scheduler.
  • SQL Test Case Builder
  • Automatic Health Monitoring
  • Manage and schedule jobs across multiple databases. This includes external jobs (i.e. shell scripts).

Automatic fault diagnostics
  • New facilities to capture and manage relevant information for incidents to speed support processes
  • Support workbench.
  • Repair advisors (coming in future releases)
  • Speed analysis of root cause for faults
  • Advice dbas on repair strategy
  • The goal is to cut down on the trace files that are sent to Oracle.

Enterprise Manager Enhancements
  • Support for ASM File Access Control, ASM Manageability, ASM Rolling Migrations, OCR and Voting, Disk in ASM, Disk Resync, Disk Zones, and Infrastructure. Security enhancements with ACL and Security Classes.
  • Database cloning enhancements.
  • Expected enhancements to the Database Home Page and Performance change as well as improved metrics, archiving and purging tracing and alert files, group copy of tnsnames.ora and viewing trace files, management of Oracle Text Indexes,
  • New LogMiner enhancements in Enterprise Manager.
  • Fine-Grained Access Control on Network Call-outs from the Database. New packages DBMS_TCP_AMIN and
  • DBMS_IMADDR_ADMIN can control which hosts on the Internet an Oracle user can access with PL/SQL packages.
  • Secure service registration with the listener out of the box.

Automatic fault diagnostics
  • New facilities to capture and manage relevant information for incidents to speed support processes
  • Support workbench.
  • Repair advisors (coming in future releases)
  • Speed analysis of root cause for faults
  • Advise DBAs on repair strategy
  • The goal is to cut down on the trace files that are sent to Oracle.

Performance - Some areas that stand out as getting faster include:
  • Faster Data Guard.
  • Faster simple SQL operations. Faster SQL with caching of frequently used SQL results.
  • Faster DML triggers.
  • Faster upgrades.
  • Faster PL/SQL and Java (auto native compilation). Caching of frequently used procedures and functions results.
  • Faster statistics generation.
  • Faster sort operations.

  • PL/SQL Native Compilation Without Needing a Third-Party C Compiler.
  • Native PL/SQL use of Seq.Nextval in a PL/SQL program.
  • PL/SQL can use CLOBs to get around 32KB limitation of SQL character strings.
  • Enhanced PL/SQL warnings and error messages.
  • PLSTIMER identifies hotspots and performance tuning opportunities in PL/SQL.
  • New package DBMS_HPROF controls the recording of raw PLSTIMER data.
  • Continued support of standards with JDBC 4.0 and JVM 5.0. Capability to upgrade to JVM 6.0 will be available in the future.
  • Oracle JVM JIT supports transparent native Java compilation without a C Compiler.
  • Significant performance improvements with JDBC performance especially with Advanced Queuing.
  • JDBC supports server side result cache alone with OCI client side result cache. Additional things I liked included the "big" improvements in the JIT and RAC support for JDBC.
  • New command line interface to OracleJVM making it a lot easier to work with the JDK in the database.
  • Support for database resident JARs.
  • JDBC support for starting and shutting down the database.
  • Performance enhancements to XPath query for Java.
  • XML applications can now process larger XML documents by loading and saving .
  • DOM nodes in memory and using a page manager for physical binary data management.
  • Unified Java API for XML allows mid-tier Java programs to leverage lazily loading by allowing a disconnected mode of operation that allows a XMLType to be used with a session pool model of connection management.
  • APEX will be standard with an embedded PL/SQL gateway.
  • APEX will have an application packager for packing and deployment of APEX applications.

Data Pump Enhancements to use when you're moving data
  • Compression and encryption enhancements
  • Support for XML Schemas and schema-based tables.
  • Transportable partitions

Data Warehousing and Analytics to use on a Friday night
  • New DETECT option for unusual records.
  • New MAP option for detecting profiles.
  • New PROFILE feature for find defined patterns.
  • New analytics and data mining

Partitioning Enhancements that you'll like
  • Partition by parent/child reference
  • Partition orders and order_lines together
  • Virtual column partitiong
  • Parition on virtual order status, active, less active, derived from multiple status fields in order record
  • Referential partitioning
  • More composite partitioning
  • List/range, range/range, list/hash, list/list
  • Ex: order status/month, month/day
  • Automatic interval partitioning supports the automatic creation of time-based partitions.
  • Single partition transport tablespace

Automatic Storage Management
  • Convert Single-Instance ASM to Clustered ASM by allowing ASM to be configured on all nodes.
  • ASM gets even better in Oracle11. Some of the new features include:
  • A new SYSASM role allows the separation of database management and storage management responsibilities.
  • ASM Fast Disk Resync brings a repaired ASM disk on line in a much shorter time.
  • ASM manageability gets better with enhancements to the ASMCMD utility, a new mount mode for rebalance performance, disk group metadata backup and improved disk group compatibility across software versions.
  • Support for ASM Rolling Migrations for different versions of Oracle11g and upward.

  • XML index enhancements ( very important!)
  • XSLT performance enhancements
  • NFS v4.0 support
  • Enable the XDB HTTP Server for SOA (the Oracle database is a service)
  • Updates to registered XML Schemas
  • Optimizations for XQuery and XPATH
  • XML DB repository trigger
  • Recursive XML Schema handling
  • Support of SQL/XML standards (SQL 2005)
  • XBRL validation and XLink validation
  • Binary xml storage
  • Enhanced xml indexing
  • Schema evolution

Miscellaneous Enhancements
  • Virtual columns (functions) on tables. Indexes on virtual columns.
  • Enhancements to DBMS_SQL supporting LOBS, user-defined types and bulk operations.

  • Enhanced passwords (case sensitive and enhanced password algorithm).
  • Security on ports and URLs for FGAC (i.e. UTL_HTTP, UTL_SMTP, UTL_TCP).

  • 9iR2 <-> 11g upgrade/downgrade
  • 10gR1 <-> 11g upgrade/downgrade
  • 10gR2 <-> 11g upgrade/downgrade



At 9:57 AM, Blogger skipjacker said...

As Oracle 9i moves towards being desupported, Oracle Database 11g may be a stronger migration path than Oracle 11g.

I think you mean 10g at the end.

Database replay and sql replay are being backported to 10g to make migration from 10g to 11g smooth, but not being backported to 9i, meaning it will be just as hard to go from 9 to 10 as it is to go from 9 to 11 but the former has lots of community experience and the later is bleeding edge.

At 9:37 PM, Blogger ambasa said...

Excellent Knowledge Transfer
Greate Job.
Share how to migrate 10g to 11g and
9i to 11g in details

At 3:14 PM, Anonymous Anonymous said...

Has anyone come across a good list of what to watch out for when upgrading from Oracle 9i to 11G? Especially in the area of different behaviour of queries and JAVA applications?
For example, we have discovered the lack of ordering with "GROUP BY" and "DISTINCT". Are there any other similar "gotchas"?


Post a Comment

<< Home


George Trujillo


Popular Classes

  • Oracle11gR2 New Features

  • Intro to Java Programming
  • Intro to Linux for Oracle
  • Intro to PL/SQL Programming
  • Oracle11gR2 Fusion Dev Wkshp I



    The Trubix Blog is focused on discussions on strategic directions in database technology and the challenges Oracle technologists are addressing today and in the future. This site will focus on issues and challenges of database management that cannot be resolved with a code snippet. There are already a lot of great websites out there with tons of code samples. We would like to facilitate more discussions on issues Oracle technologists are dealing with today that a quick search on the Internet cannot solve. There will also be a group of recognized industry leaders that will also participate in this blog. This blog is an extension of the Tim Tam Group, an international group of industry leaders that meet once a year to discuss strategic directions in the industry.



    Powered by Blogger