Posts tagged 11gr2
OOW 2009: The killer feature of Oracle Database 11gR2 – Edition Based Redefinition (or database object versioning)
Today I presented on what is possibly the hottest story on the Oracle Database 11gR2 release: Edition Based Redefinition (EBR). EBR allows us to add a whole new dimension to the database – the Edition (that complements the existing dimensions of schema and object type). Every database object (well, almost every database object – not tables!) can have different implementations/incarnations/versions in various editions. The object versions are all in the same schema – they only differ in the Edition they are created in.
The Edition Based Redefinition has us create Editions in the database – cross database object spaces where new versions of existing database objects can be created – and others can just be inherited from previous editions. We can construct an Edition in isolation – no one is impacted by us creating new objects and versions of objects; objects can be invalid in that edition and no one will know anything about it. Only once the edition is complete, valid and tested can we make it available to new user sessions to work against. Using a simple alter session set edition statement, sessions can specify which edition they want to run against. That is: after the user has More >
One of the most spectacular new facilities in Release 2 of the Oracle 11g Database is called Edition Based Redefinition – not a name perhaps that suggests any spectacle. EBR (Edition Based Redefinition) is a mechanism that allows on line application upgrade with no planned downtime. In short, the new release is built up in parallel to the existing one, in the same schema and using the same database objects; only the new (modified) objects live in another dimension and do not impact the existing objects. Once the entire set of new and changed objects has been created and recompiled, the database administrator can start routing new sessions to the new release; existing sessions can continue to run against the original set of objects – and new sessions if so desired can also run against the orginal set.
A set of object versions – mutually consistent and interdependent – which in software engineering terms would be duped a release or stripe and in Oracle Software Configuration Manager (Designer) terms a configuration is called an edition in 11gR2 lingo. An Edition is a combination of new objects, new versions of objects and inherited pre-existing versions that together make up a More >
For "What you always wanted to know, but never dared to ask about Oracle 11g Release 2…", come and attend our technical session on 29th of September during the "AMIS Query – Technical Introduction of Oracle Database 11g Release 2".
As said on the (dutch) invite: :"We will be organizing on Tuesday the 29th of September an AMIS Query session were will be sharing our first experiences with the new release. Not so much in marketing terms but from the practical viewpoint and their advantages".
See here for more info and how to attend (for free): AMIS Query – Technical Introduction of Oracle Database 11g Release 2
You are probably familiar with the FIRST_VALUE and LAST_VALUE analytical functions that were introduced some time ago into the Oracle RDBMS, in the 9iR2 release I believe (or at least that is when they made their way into the Standard Edition). These values are used to find the first respectively last value in a window in a partition that has been ordered in a certain way.
Oracle introduces a new, related function in 11gR2, called NTH_VALUE. Instead of simply the first or last value in an analytical window, we can ask for a specific row number, such as 2nd row (ND_VALUE?), the 7th or the 223th. This article shows the syntax for this new function.
In our series on the 11g R2 release of the Oracle RDBMS, AMIS staff discusses various functions, features an facilities that have been added, improved or extended in this latest release. These articles are the fruit of several months of studying this new release and projecting which new features and changes would be the most useful to us in our daily practice. This article looks at apparently relatively minor changes in functionality that may well have a substantial impact on the usability of Abstract Data Types (ADTs) or user defined (object) types.
Using ADTs or user defined types in the Oracle RDBMS is quite often very useful. Much more useful by the way than many developers realize. The integration for example between SQL and PL/SQL can be streamlined using user defined types in conjunction with TABLE and MULTISET or the BULK COLLECT operations. Presenting a service-style interface from PL/SQL packages is also much easier realized using custom type definitions – easier both for the definition of the package’s "service contract", the consumer of the package (at least the Database Adapter used in the SOA Suite) and the developers implementing the service contract. Such a More >
In our series on the 11g R2 release of the Oracle RDBMS, AMIS staff discusses various functions, features an facilities that have been added, improved or extended in this latest release. These articles are the fruit of several months of studying this new release and projecting which new features and changes would be the most useful to us in our daily practice. This article introduced the LISTAGG operator, new in 11gR2.
An example usage of LISTAGG:select deptno , avg(sal) avg_sal , listagg( ename, ',') within group (order by sal) enames from emp group by deptno