oracleskill

Home WORLD WIDE ARTICLE Oracle 11g DBA new features..

Oracle 11g DBA new features..

      Table-level control of CBO statistics refresh threshold      
      When Oracle automatically enables statistics collection, the default "staleness" threshold of 10% can now be changed with the dbms_stats.set_table_prefs procedure:

exec dbms_stats.set_table_prefs('HR', EMPS', ‘STALE_PERCENT', ‘15')

There are three new arguments to the set_table_prefs procedure, designed to allow the DBA more control over the freshness of their statistics:

stale_percent - overrides the one-size-fits-all value of 10%

incremental - Incremental statistics gathering for partitions

publish - Allows the DBA to test new statistics before publishing them to the data dictionary

This is an important 11g new feature because the DBA can now control the quality of optimizer statistics at the table level, thereby improving the behavior of the SQL optimizer to always choose the “best” execution plan for any query.
    
            
      File Group Repository     
      Oracle introduced an exciting new feature in 10g r.2 dubbed the Oracle File Group Repository (FGR). The FGR allows the DBA to define a logically-related group of files and build a version control infrastructure. The working of the Oracle file group repository were created to support Oracle Streams, and they mimic the functionality of an IBM mainframe generation data group (GDG), in that you can specify relative incarnations of the file sets (e.g. generation 0, generation -3).
    
            
      Interval partitioning for tables     
      This is a new 11g partitioning scheme that automatically creates time-based partitions as new data is added. This is a marvelous one ! You can now partition by date, one partition per month for example, with automatic partition creation

      New load balancing utilities      
      

There are several new load balancing utilities in 11g (first introduced in 10gr2):

    * Web server load balancing - The web cache component includes Apache extension to load-balance transactions to the least-highly-loaded Oracle HTTP server (OHS).
    * RAC instance load balancing - Staring in Oracle 10g release 2, Oracle JDBC and ODP.NET provide connection pool load balancing facilities through integration with the new “load balancing advisory” tool. This replaces the more-cumbersome listener-based load balancing technique.
    * Automated Storage Load balancing - Oracle's Automatic Storage Management (SAM) now enables a single storage pool to be shared by multiple databases for optimal load balancing. Shared disk storage resources can alternatively be assigned to individual databases and easily moved from one database to another as processing requirements change.
    * Data Guard Load Balancing – Oracle Data Guard allows for load balancing between standby databases.
    * Listener Load Balancing - If advanced features such as load balancing and automatic failover are desired, there are optional sections of the listener.ora file that must be present

    
            
      New table Data Type "simple_integer"     
      A new 11g datatype dubbed simple_integer is introduced. The simple_integer data type is always NOT NULL, wraps instead of overflows and is faster than PLS_INTEGER .     
            
      Improved table/index compression     
      Segment compression now works for all DML, not just direct-path loads, so you can create tables compressed and use them for regular OLTP work. Also supports column add/drop     
            
      Faster DML triggers     
      DML triggers are up to 25% faster. This especially impacts row level triggers doing updates against other tables (think Audit trigger).     
            
      Improved NFS data file management     
      Kevin Closson has some great notes on Oracle 11g improvement in Networked Attached Storage (NAS). "I've already blogged that 11g “might” have an Oracle-provided NFS client. Why is this? It's because Oracle knows full well that taking dozens of commodity servers and saddling them up with multi-protocol connectivity is a mess.
    
            
      Server-side connection pooling     
      In 11g server-side connection pooling, an additional layer to the shared server, to enable faster [actually to bypass] session creation. Server-side connection pooling allows multiple Oracle clients to share a server-side pool of sessions (USERIDs must match). Clients can connect and disconnect (think PHP applications) at will without the cost of creating a new server session - shared server removes the process creation cost but not the session creation cost.