Oracle Database 10 g New Features for Developers : Maximizing the Capabilities of Oracle Database 10g Daniel Seurer Oracle...
A Q & Q  U  E  S  T  I  O  N  S A  N  S  W  E  R  S
Oracle Database 10 g  Goals <ul><li>Highest Quality of Service </li></ul><ul><ul><li>Highest Availability, Reliability, Se...
Agenda <ul><li>General 10g Database New Features </li></ul><ul><ul><li>Recoverabilityb </li></ul></ul><ul><ul><li>Business...
Oracle 10g New Features Recoverability/Security <ul><li>Flashback </li></ul><ul><li>Fine Grained Auditing Enhancements </l...
Availability and Recovery: Flashback <ul><li>Flashback Database </li></ul><ul><ul><li>Flashes back changes to entire datab...
Availability and Recovery: Flashback <ul><li>Flashback Drop </li></ul><ul><ul><li>Allow you to undo the effects of a drop ...
Availability and Recovery: Flashback <ul><li>Flashback Table </li></ul><ul><ul><li>Flashback a table based on a timestamp ...
Availability and Recovery: Flashback <ul><li>Flashback Table </li></ul><ul><ul><li>Flashback a table based on a timestamp ...
Fine-grained Auditing  HR.EMP SELECT NAME, ADDRESS  FROM HR.EMP SELECT NAME, SALARY FROM HR.EMP WHERE POSITION = ‘EVP’ Not...
Security Auditing <ul><li>Changes to the audit trail view </li></ul><ul><ul><li>Type of query executed </li></ul></ul><ul>...
Oracle 10g New Features Business Intelligence <ul><li>Oracle’s Business Intelligence Footprint </li></ul><ul><li>Data Pump...
Metadata Oracle 10 g   BI Footprint OS independent, End-to-End Integrated Business Intelligence Platform OWB Reports Disco...
Oracle ETL Features Addressing the entire spectrum Extract Change Data Capture External Tables SQL*Loader Data Pump Transp...
<ul><li>Enhancing the extraction and transportation between Oracle systems </li></ul><ul><ul><li>Cross Platform Transporta...
Business Intelligence Oracle Data Pump <ul><li>Replaces traditional imp/exp </li></ul><ul><li>Imp/Exp still supported </li...
Oracle10g Data Pump <ul><li>High performance import and export  </li></ul><ul><ul><li>60% faster than 9i export (single th...
Business Intelligence Data Pump Export New Features <ul><li>Ability to estimate files resulting from expdp </li></ul><ul><...
Business Intelligence Data Pump Import New Features <ul><li>Support use of metadata filters </li></ul><ul><ul><li>Control ...
Business Intelligence Transportable Tablespaces <ul><li>Transportable tablespaces can now be moved across platforms </li><...
Business Intelligence External Tables <ul><li>Writing to External tables now supported </li></ul><ul><li>Project column  <...
Business Intelligence Enhanced MERGE Functionality <ul><li>Conditional UPDATE and INSERT clauses </li></ul><ul><ul><li>Add...
Change Data Capture <ul><li>Mining of archive logs </li></ul><ul><li>No impact to OLTP system </li></ul><ul><li>Low Latenc...
<ul><li>Packaging change: OWB will be shipped with the Database as of 10g </li></ul><ul><li>New OWB features including </l...
Statistical Analysis <ul><li>Descriptive Statistics :  </li></ul><ul><ul><li>average, standard deviation, variance, min, m...
Oracle OLAP Oracle Business Intelligence Suite
Multidimensional Calculations <ul><li>Uni-dimensional </li></ul><ul><ul><li>“What are my top ten customers?” </li></ul></u...
Emerging Oracle-Based Approach Information and Data Consolidation Relational & OLAP,  databases unite; in-place data minin...
Database Managed Integrated OLAP <ul><li>OLAP in the RDBMS </li></ul><ul><li>Single RDBMS-MDDS process </li></ul><ul><li>S...
A Look At Relational  Database Technology ROLAP Purely Relational, ROLAP, or MOLAP?
Relational database technology is based on a table/row/column model.  Purely Relational, ROLAP, or MOLAP? Relational Techn...
A  purely relational  implementation is designed and optimized to support the efficient movement and calculation of large ...
In order to perform multidimensional analysis over a relational data model, a dimensional perspective must be imposed over...
Analytic queries are written in SQL. Cube <ul><li>Dimension Object </li></ul><ul><li>Dimension </li></ul><ul><li>Hierarchy...
This is a  ROLAP  IMPLEMENTATION. Cube <ul><li>Dimension Object </li></ul><ul><li>Dimension </li></ul><ul><li>Hierarchy </...
A Look At Multidimensional  Database Technology Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
SALES(product  x , customer  y , time  z ) The  multidimensional   database technology that underlies the Analytic Workspa...
$  $  $  $ $  $  $  $ $  $  $  $ $  $  $  $ SALES dimensioned by  PRODUCT,  CUSTOMER, TIME Cube This  model  provides  dir...
$  $  $  $ $  $  $  $ $  $  $  $ $  $  $  $ SALES dimensioned by  PRODUCT,  CUSTOMER, TIME Cube The OLAP DML language, one...
$  $  $  $ $  $  $  $ $  $  $  $ $  $  $  $ SALES dimensioned by  PRODUCT,  CUSTOMER, TIME Cube This is a  MOLAP  implemen...
Some benefits of the multidimensional processing model . . . <ul><li>No JOIN is required when using the multidimensional t...
<ul><li>Select a  purely relational  implementation when …  </li></ul><ul><ul><li>The analytic requirements of the busines...
<ul><li>Select a  ROLAP  implementation when …  </li></ul><ul><ul><li>The analytic requirements of the business are met by...
<ul><li>Select a  MOLAP  implementation … </li></ul><ul><li>When the analytic requirements of the business need the extend...
Oracle 10G Database Oracle Data Mining
What is Oracle Data Mining? <ul><li>Oracle Data Mining (ODM) sifts through massive amounts of data to  find hidden pattern...
Data Mining Examples <ul><li>Typical problems addressed by data mining include: What is the probability that a person will...
10 g   Oracle Data Mining Wide range of data mining algorithms <ul><li>Feature Selection </li></ul><ul><ul><li>Attribute I...
What Is Warehouse Builder? <ul><li>Warehouse Builder is an open, enterprise level, data and metadata integration tool. It ...
Design and Deployment With Oracle Warehouse Builder <ul><li>Relational </li></ul><ul><li>Flat Files </li></ul><ul><li>Appl...
Mining Structures OLAP Structures Oracle 10 g Warehousing Features ETL Engine Oracle Warehouse Builder BI Design, Deployme...
Application Development
Oracle 10g New Features Application Development <ul><li>SQL PL/SQL Regular Expressions </li></ul><ul><li>Case-insensitive ...
Application Development Regular Expressions <ul><li>Very familiar to UNIX developers </li></ul><ul><li>Set of symbols and ...
Application Development Case-insensitive queries/sorts <ul><li>With 10G you can write queries that are case-insensitive WI...
Application Development Case-insensitive queries/sorts <ul><li>With 10G you can write queries that are case-insensitive WI...
Application Development New Connect String Format <ul><li>If running on TCP/IP network, Oracle clients like SQL*Plus can c...
Application Development User Defined Quote Character <ul><li>Simplifies writing SQL statements that cotnain literal single...
Application Development New Packages of Note <ul><li>Utl_compress </li></ul><ul><ul><li>Compress and decompress BLOB or Ra...
Application Development PL/SQL Compiler <ul><li>10g comes with a new, faster PL/SQL compiler </li></ul><ul><li>More effici...
Application Development PL/SQL Compiler
Location-enable Mission Critical Applications
Geocoder  <ul><li>Generates latitude/longitude (points) from address </li></ul><ul><li>International addressing standardiz...
Server Manageability SQL Optimization
Server Manageability Rule Based Optimizer <ul><li>Though still there, RBO is desupported with 10g </li></ul>
Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications
Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications Better Performanc...
Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications Better Performanc...
Self-Optimizing SQL Proven Cost-Based Optimizer SQL Advice -> Better SQL Auto SQL Analysis Customizable Applications Packa...
Self-Optimizing SQL Proven Cost-Based Optimizer SQL Profile -> Improved Plan SQL Advice -> Better SQL Auto SQL Analysis Au...
BREAK
Developing Oracle  Application with .NET
Why Oracle for .Net? <ul><li>Oracle brings enterprise scalability, availability and reliability to .NET </li></ul><ul><ul>...
Develop with .Net Database on any platform Visual Studio Environment Oracle Developer  Tools for VS.NET Windows Windows Li...
Oracle’s Commitment to .NET Mid 2005 2003 2002 .NET Framework 1.1 .NET Framework 1.0 1H 2005 ODP.NET Oracle Developer Tool...
<ul><li>ODP.NET fully compliant with ADO.NET </li></ul><ul><li>Oracle DB leads the way in advanced functionality --- all e...
<ul><li>Available today in production for free </li></ul><ul><ul><li>http:// otn .oracle.com/tech/windows/ odpnet </li></u...
Oracle Developer Tools for Visual Studio .NET <ul><li>New tightly integrated toolset for VS .NET </li></ul><ul><li>Stay in...
ODP.NET  Summary <ul><li>Oracle brings the power of Oracle Database to .Net Developers </li></ul><ul><li>Oracle is committ...
Sample Code, Tutorials & More Information <ul><li>.Net Development Center </li></ul><ul><ul><li>http://otn.oracle.com/dotn...
Oracle XML DB
Common XML Architectures Enforce XML Schema Manage Content & Data Uniformly Eliminate extra moving parts Get better perfor...
Evolution of Oracle XML Support 8 i 9 i  R1 9 i  R2 Basic XML Generation and Processing (mid-tier based) Developer Kits DB...
What  is Oracle XML DB? <ul><li>Infrastructure & set of features to store and manage XML data </li></ul><ul><li>Allows DB ...
XML Schema Concepts <ul><ul><li>Schema definition language (in XML) used to define the structure of a set of conforming in...
Oracle XML DB Leverages SQL  <ul><li>Certain simple concepts cannot be expressed using XML Schema </li></ul><ul><ul><li>De...
Oracle XML DB Repository <ul><li>Managed set of tables in XDB database schema </li></ul><ul><ul><li>Exposed via two views:...
Oracle XML DB XSL Transformation <ul><li>Oracle XML DB includes XSLT Style Sheet processing engine </li></ul><ul><li>Lever...
9 Benefits of XML DB <ul><li>XML SQL ‘duality’ </li></ul><ul><ul><li>SQL operations over XML data, XML operations over SQL...
Oracle 10g New Features HTMLDB
Does Your Organization: <ul><li>Use spreadsheets as databases? </li></ul><ul><li>Store mission critical data in applicatio...
Drawbacks to Desktop DBs VULNERABLE Data not Secure COSTLY Inefficient use of IT Resources FRAGMENTED Data in Many Places ...
Access Password “Recovery” <ul><li>About $15 </li></ul><ul><li>Many variations </li></ul><ul><li>Also available for other ...
Consolidation with HTML DB Any Modern Browser Oracle Database &  Oracle HTML DB Spreadsheets Desktop Databases File   Serv...
The Best of Both Worlds <ul><li>The Qualities of a Personal Database </li></ul><ul><ul><li>Productivity </li></ul></ul><ul...
Physical Architecture Browser Oracle Database HTML DB Oracle HTTP Server
Physical Architecture Browser Oracle Database HTML DB Oracle HTTP  Server Firewall Instead of the Database Oracle HTTP Ser...
HTML DB Architecture Browser Oracle Database HTML DB Oracle HTTP Server
Components <ul><li>Administration </li></ul><ul><ul><li>Manage Workspaces & System Settings </li></ul></ul><ul><li>Data Wo...
Integration <ul><li>Oracle Database 10 g </li></ul><ul><ul><li>RAC </li></ul></ul><ul><ul><li>Label Security </li></ul></u...
Integration <ul><li>Oracle Database 10 g </li></ul><ul><ul><li>RAC </li></ul></ul><ul><ul><li>Label Security </li></ul></u...
Availability <ul><li>Release 1.5 </li></ul><ul><ul><li>Software ships on Oracle Database 10 g  Companion CD </li></ul></ul...
A Q & Q  U  E  S  T  I  O  N  S A  N  S  W  E  R  S
Upcoming SlideShare
Loading in …5
×

Download

1,011 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,011
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
38
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Cut hardware cost by … Cut software cost by … Cut labor cost by one-half to one-tenth
  • Oracle has always had auditing, but now even more useful can audit based on column being looked at and will store even more detail info, including the sql itself can even audit based on predicate condition in where clause good for intrusion detection
  • Change Data Capture interfaces available on top of log-based replication. Note: requires 10i source Data Pump: Fast Import/Export. Parallel Direct Path on both. CREATE EXTERNAL TABLE AS SELECT for export, with external storage in Oracle native stream format. MERGE enhancements: (1) optional “when matched” , “when not matched” clauses. (2) Conditional update clause – avoids logical no-op updates, Conditional delete clause
  • Data Pump Export is roughly 60% faster than Original Export, which already had a Direct Path unload capability (for scalar datatypes only). Data Pump Import is about 15x faster than Original Import, since Original Import can only use conventional path for load.  If you carefully tune some parameters for Original Import, then it can run faster, and the performance gain drops to about 8x faster for Data Pump Import. We&apos;re at the point where the elapsed times for Data Pump Export and Import are fairly similar (that is, it takes about the same time to unload as to load), and both are performing quite well across a variety of testcases.
  • Click to add notes
  • Proven Technology – Cost-based Optimizer Honed in the real world for more than 10 years Execution Plan Selection Comprehensive set of access paths, adaptive search strategy SQL Transformations All cost-based transformations Cost Model and Statistics Automatically gathered object and system (CPU, IO, Caching) statistics Dynamic Runtime Optimizations Automatic memory allocations, automatic degree of parallelism Identify ‘bad’ SQL Automatic workload capture Automatic identification of high-load SQL by ADDM Top N highest resource-consuming SQL Statements How to find optimal plan quickly? Sub-optimal plans caused by correlations, complex predicate selectivity How to optimize for resource consumption vs. response time? How to identify and fix “bad” schema design? How to workaround “bad” SQL in packaged applications? What is “bad” SQL? Spend more time on top SQLs to get better plans Optimizer verifies and corrects inaccurate statistic estimation (e.g. due to stale statistics, data correlations, selectivity) Using dynamic sampling or executing fragments of the SQL Produce corrective actions which influence optimizer to change plan Automatically execute with better plan without changing SQL – ideal for packaged application Choose top SQLs to auto-tune with SQL Tuning Advisor Remaining challenges How to quickly find optimal plans for complex queries? Sub-optimal plans caused by correlations, complex predicate selectivity What is “bad” SQL? How to work-around ‘bad’ SQL in packaged applications? How to ‘globally’ optimize an entire application’s SQL statements? Adding an index may help one statement, but what is the impact on the rest of the application
  • Proven Technology – Cost-based Optimizer Honed in the real world for more than 10 years Execution Plan Selection Comprehensive set of access paths, adaptive search strategy SQL Transformations All cost-based transformations Cost Model and Statistics Automatically gathered object and system (CPU, IO, Caching) statistics Dynamic Runtime Optimizations Automatic memory allocations, automatic degree of parallelism Identify ‘bad’ SQL Automatic workload capture Automatic identification of high-load SQL by ADDM Top N highest resource-consuming SQL Statements How to find optimal plan quickly? Sub-optimal plans caused by correlations, complex predicate selectivity How to optimize for resource consumption vs. response time? How to identify and fix “bad” schema design? How to workaround “bad” SQL in packaged applications? What is “bad” SQL? Spend more time on top SQLs to get better plans Optimizer verifies and corrects inaccurate statistic estimation (e.g. due to stale statistics, data correlations, selectivity) Using dynamic sampling or executing fragments of the SQL Produce corrective actions which influence optimizer to change plan Automatically execute with better plan without changing SQL – ideal for packaged application Choose top SQLs to auto-tune with SQL Tuning Advisor Remaining challenges How to quickly find optimal plans for complex queries? Sub-optimal plans caused by correlations, complex predicate selectivity What is “bad” SQL? How to work-around ‘bad’ SQL in packaged applications? How to ‘globally’ optimize an entire application’s SQL statements? Adding an index may help one statement, but what is the impact on the rest of the application
  • Proven Technology – Cost-based Optimizer Honed in the real world for more than 10 years Execution Plan Selection Comprehensive set of access paths, adaptive search strategy SQL Transformations All cost-based transformations Cost Model and Statistics Automatically gathered object and system (CPU, IO, Caching) statistics Dynamic Runtime Optimizations Automatic memory allocations, automatic degree of parallelism Identify ‘bad’ SQL Automatic workload capture Automatic identification of high-load SQL by ADDM Top N highest resource-consuming SQL Statements How to find optimal plan quickly? Sub-optimal plans caused by correlations, complex predicate selectivity How to optimize for resource consumption vs. response time? How to identify and fix “bad” schema design? How to workaround “bad” SQL in packaged applications? What is “bad” SQL? Spend more time on top SQLs to get better plans Optimizer verifies and corrects inaccurate statistic estimation (e.g. due to stale statistics, data correlations, selectivity) Using dynamic sampling or executing fragments of the SQL Produce corrective actions which influence optimizer to change plan Automatically execute with better plan without changing SQL – ideal for packaged application Choose top SQLs to auto-tune with SQL Tuning Advisor Remaining challenges How to quickly find optimal plans for complex queries? Sub-optimal plans caused by correlations, complex predicate selectivity What is “bad” SQL? How to work-around ‘bad’ SQL in packaged applications? How to ‘globally’ optimize an entire application’s SQL statements? Adding an index may help one statement, but what is the impact on the rest of the application
  • Proven Technology – Cost-based Optimizer Honed in the real world for more than 10 years Execution Plan Selection Comprehensive set of access paths, adaptive search strategy SQL Transformations All cost-based transformations Cost Model and Statistics Automatically gathered object and system (CPU, IO, Caching) statistics Dynamic Runtime Optimizations Automatic memory allocations, automatic degree of parallelism Identify ‘bad’ SQL Automatic workload capture Automatic identification of high-load SQL by ADDM Top N highest resource-consuming SQL Statements How to find optimal plan quickly? Sub-optimal plans caused by correlations, complex predicate selectivity How to optimize for resource consumption vs. response time? How to identify and fix “bad” schema design? How to workaround “bad” SQL in packaged applications? What is “bad” SQL? Spend more time on top SQLs to get better plans Optimizer verifies and corrects inaccurate statistic estimation (e.g. due to stale statistics, data correlations, selectivity) Using dynamic sampling or executing fragments of the SQL Produce corrective actions which influence optimizer to change plan Automatically execute with better plan without changing SQL – ideal for packaged application Choose top SQLs to auto-tune with SQL Tuning Advisor Remaining challenges How to quickly find optimal plans for complex queries? Sub-optimal plans caused by correlations, complex predicate selectivity What is “bad” SQL? How to work-around ‘bad’ SQL in packaged applications? How to ‘globally’ optimize an entire application’s SQL statements? Adding an index may help one statement, but what is the impact on the rest of the application
  • Proven Technology – Cost-based Optimizer Honed in the real world for more than 10 years Execution Plan Selection Comprehensive set of access paths, adaptive search strategy SQL Transformations All cost-based transformations Cost Model and Statistics Automatically gathered object and system (CPU, IO, Caching) statistics Dynamic Runtime Optimizations Automatic memory allocations, automatic degree of parallelism Identify ‘bad’ SQL Automatic workload capture Automatic identification of high-load SQL by ADDM Top N highest resource-consuming SQL Statements How to find optimal plan quickly? Sub-optimal plans caused by correlations, complex predicate selectivity How to optimize for resource consumption vs. response time? How to identify and fix “bad” schema design? How to workaround “bad” SQL in packaged applications? What is “bad” SQL? Spend more time on top SQLs to get better plans Optimizer verifies and corrects inaccurate statistic estimation (e.g. due to stale statistics, data correlations, selectivity) Using dynamic sampling or executing fragments of the SQL Produce corrective actions which influence optimizer to change plan Automatically execute with better plan without changing SQL – ideal for packaged application Choose top SQLs to auto-tune with SQL Tuning Advisor Remaining challenges How to quickly find optimal plans for complex queries? Sub-optimal plans caused by correlations, complex predicate selectivity What is “bad” SQL? How to work-around ‘bad’ SQL in packaged applications? How to ‘globally’ optimize an entire application’s SQL statements? Adding an index may help one statement, but what is the impact on the rest of the application
  • For organizations who have chosen to develop with Visual Studio .NET and deploy the .NET application server (aka Common Language Runtime and Enterprise Services), they can still get enterprise scalability, availability, and reliability. With ODP.NET, .NET users can take full advantage of Oracle’s advanced features. ODP.NET ensures that data access will be fast and the Oracle DB will be easy to develop with using .NET. Oracle is committed to providing customers with flexibility and openness. Organizations using multiple platforms (Linux, Unix, Windows) or app server technologies (.NET, Java) can now choose the technologies that best fit their needs. They can mix and match the technologies more easily with the same application when using Oracle.
  • ODP.NET requires the Oracle client to be installed to be installed in the middle-tier/client with the .NET Framework. You can download the production version today from OTN. ODP.NET can remotely access Oracle8, 8i, 9i, and 10g DB servers. These DB servers do not have to be running on Windows, but can run on any OS that the Oracle DB supports. The DB server does not need to have ODP.NET installed, only the middle-tier/client. The middle tier/client requires that the Oracle9i Release 2 Client or higher be installed with ODP.NET. ODP.NET supports all .NET programming languages (C#, VB .NET, C++ .NET, etc.), all .NET Framework versions (1.0 and 1.1), and VS.NET versions (2002 and 2003)
  • Every organization wastes time using spreadsheet to collect information from groups of people. Spreadsheets are sent out, people add data to it and then send it back. The recipient is left merging spreadsheet and cleaning up errors. Personal databases such as Microsoft Access become part of the critical IT infrastructure of your business without even providing web access.
  • Organizations often using the wrong software because it happens to be the path of least resistance. For example people often email spreadsheets and access databases. Some organizations have numerous fragmented departmental systems, which often are not properly security, backed up, and built in disparate technologies.
  • The HTML DB solution is to provide the best of both worlds: the productivity and ease of use of a personal database with the qualities you expect from an enterprise database. All this built natively for the web.
  • Project Marvel Architecture Simple, database contained, few moving parts. Rendering in real time from database tables. All flows are rendered in real time from data stored in database tables . When you create or extend your flow, no code is generated; meta data is created or modified and stored in database tables. At runtime, the Project Marvel rendering engine reads the meta data and displays the page accordingly. Session state in database All session state is also stored in the database . Each page view results in a new database session, so when the flows engine is not processing a page, no database resources are consumed (except for storage space used by table rows).
  • Project Marvel Architecture Simple, database contained, few moving parts. Rendering in real time from database tables. All flows are rendered in real time from data stored in database tables . When you create or extend your flow, no code is generated; meta data is created or modified and stored in database tables. At runtime, the Project Marvel rendering engine reads the meta data and displays the page accordingly. Session state in database All session state is also stored in the database . Each page view results in a new database session, so when the flows engine is not processing a page, no database resources are consumed (except for storage space used by table rows).
  • Download

    1. 2. Oracle Database 10 g New Features for Developers : Maximizing the Capabilities of Oracle Database 10g Daniel Seurer Oracle Corporation
    2. 3. A Q & Q U E S T I O N S A N S W E R S
    3. 4. Oracle Database 10 g Goals <ul><li>Highest Quality of Service </li></ul><ul><ul><li>Highest Availability, Reliability, Security </li></ul></ul><ul><ul><li>Highest Performance, Scalability </li></ul></ul><ul><li>Easiest to Manage </li></ul>
    4. 5. Agenda <ul><li>General 10g Database New Features </li></ul><ul><ul><li>Recoverabilityb </li></ul></ul><ul><ul><li>Business Intelligence </li></ul></ul><ul><ul><li>Application Development </li></ul></ul><ul><ul><li>Miscellaneous </li></ul></ul><ul><li>XML </li></ul><ul><li>Oracle Provider for .NET </li></ul><ul><li>HTMLDB </li></ul>
    5. 6. Oracle 10g New Features Recoverability/Security <ul><li>Flashback </li></ul><ul><li>Fine Grained Auditing Enhancements </li></ul>
    6. 7. Availability and Recovery: Flashback <ul><li>Flashback Database </li></ul><ul><ul><li>Flashes back changes to entire database </li></ul></ul><ul><ul><li>Powerful feature to help in resolution of user errors that cause changes to database </li></ul></ul><ul><ul><li>Much faster method of recovering data than other methods (tablespace point in time recovery, logical backups, or log miner) </li></ul></ul>
    7. 8. Availability and Recovery: Flashback <ul><li>Flashback Drop </li></ul><ul><ul><li>Allow you to undo the effects of a drop table </li></ul></ul><ul><ul><li>Concept of a recycle bin </li></ul></ul><ul><li>Flashback Versions Query </li></ul><ul><ul><li>Allows you to see all versions of data for a given row over a period of time </li></ul></ul><ul><li>Flashback Transaction </li></ul><ul><ul><li>Reconstructs the SQL statements that have been previously executed in the database </li></ul></ul>
    8. 9. Availability and Recovery: Flashback <ul><li>Flashback Table </li></ul><ul><ul><li>Flashback a table based on a timestamp of database SCN to the time you are interested in </li></ul></ul>
    9. 10. Availability and Recovery: Flashback <ul><li>Flashback Table </li></ul><ul><ul><li>Flashback a table based on a timestamp of database SCN to the time you are interested in </li></ul></ul>Flashback Demonstration
    10. 11. Fine-grained Auditing HR.EMP SELECT NAME, ADDRESS FROM HR.EMP SELECT NAME, SALARY FROM HR.EMP WHERE POSITION = ‘EVP’ Not audited ...AUDIT_CONDITION = ‘salary > 500000’ AUDIT_COLUMN = SALARY Audit Records (FGA_LOG$) SELECT name, salary FROM hr.emp WHERE POSITION = ‘EVP’, <timestamp>, <userid>, <bind variables> etc. Audit Policy
    11. 12. Security Auditing <ul><li>Changes to the audit trail view </li></ul><ul><ul><li>Type of query executed </li></ul></ul><ul><ul><li>Proxy sessionid </li></ul></ul><ul><ul><li>Os process </li></ul></ul><ul><li>9i only select audited, 10g audits update, insert, delete </li></ul>
    12. 13. Oracle 10g New Features Business Intelligence <ul><li>Oracle’s Business Intelligence Footprint </li></ul><ul><li>Data Pump </li></ul><ul><li>Cross Platform Tablespaces </li></ul><ul><li>Enhanced MERGE functionality </li></ul><ul><li>Enhanced EXTERNAL TABLE support </li></ul><ul><li>SQL Model Clause </li></ul><ul><li>Warehouse Builder </li></ul><ul><li>OLAP and Data Mining </li></ul>
    13. 14. Metadata Oracle 10 g BI Footprint OS independent, End-to-End Integrated Business Intelligence Platform OWB Reports Discoverer Data Mining BiBeans End-to-End Metadata Data Mining OLAP Warehousing ETL Portal Oracle 10 g Database Assembly & Integration Access & Analysis Distribution & Sharing Legacy Operational ERP
    14. 15. Oracle ETL Features Addressing the entire spectrum Extract Change Data Capture External Tables SQL*Loader Data Pump Transportable Tablespaces Multi-Table Insert MERGE Distributed Queries Table Functions Load Transform Insert
    15. 16. <ul><li>Enhancing the extraction and transportation between Oracle systems </li></ul><ul><ul><li>Cross Platform Transportable Tablespaces </li></ul></ul><ul><ul><li>Asynchronous Change Data Capture </li></ul></ul><ul><ul><li>Data Pump </li></ul></ul><ul><ul><ul><li>Very fast, parallel import / export </li></ul></ul></ul><ul><ul><ul><li>Data Pump Unload through External Tables </li></ul></ul></ul><ul><li>Performance optimization for existing functionality </li></ul><ul><ul><li>Merge optimizations </li></ul></ul>ETL Enhancements in Oracle10 g
    16. 17. Business Intelligence Oracle Data Pump <ul><li>Replaces traditional imp/exp </li></ul><ul><li>Imp/Exp still supported </li></ul>
    17. 18. Oracle10g Data Pump <ul><li>High performance import and export </li></ul><ul><ul><li>60% faster than 9i export (single thread) </li></ul></ul><ul><ul><li>15x-20x faster than 9i import (single thread) </li></ul></ul><ul><li>Scales with parallel threads </li></ul><ul><li>Network transfer data between databases with no intermediate representation </li></ul>
    18. 19. Business Intelligence Data Pump Export New Features <ul><li>Ability to estimate files resulting from expdp </li></ul><ul><li>Suspend/resume expdp at will </li></ul><ul><li>Ability to do fine-grained object selection </li></ul><ul><ul><li>Thus can choose to only export procedures or functions </li></ul></ul><ul><li>Export external tables </li></ul><ul><li>Support for network node operations </li></ul><ul><ul><li>Load another database without intermediate file </li></ul></ul>
    19. 20. Business Intelligence Data Pump Import New Features <ul><li>Support use of metadata filters </li></ul><ul><ul><li>Control which object types you import </li></ul></ul><ul><li>Ability to suspend/resume job at will </li></ul><ul><li>Support for network node operation </li></ul><ul><li>Support for direct mode import!! </li></ul>
    20. 21. Business Intelligence Transportable Tablespaces <ul><li>Transportable tablespaces can now be moved across platforms </li></ul><ul><ul><li>Windows OS datafiles can be moved to UNIX and vice-versa </li></ul></ul><ul><li>Benefits </li></ul><ul><ul><li>Efficient publication of data between different content providers </li></ul></ul><ul><ul><li>Easy movement of data between data warehouses and OLTP systems </li></ul></ul><ul><ul><li>Easy migration of databases across platforms </li></ul></ul>
    21. 22. Business Intelligence External Tables <ul><li>Writing to External tables now supported </li></ul><ul><li>Project column </li></ul><ul><ul><li>Allows you to determine how access driver will validate rows in table </li></ul></ul><ul><ul><li>You decide whether to have load error out or to continue processing and skipping the invalid column </li></ul></ul>
    22. 23. Business Intelligence Enhanced MERGE Functionality <ul><li>Conditional UPDATE and INSERT clauses </li></ul><ul><ul><li>Add a where clause to the update or insert operation of a merge statement </li></ul></ul><ul><ul><li>Example (update only occurs if pay_code column is not equal to the value of RETIRED: </li></ul></ul><ul><ul><ul><ul><ul><li>Merge into emp_history eh </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Using emp_history_adds eha </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>On (eh.empno = eha.empno) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>WHEN NOT MATCHED THEN </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>UPDATE SET eh.total_pay = 123.50 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>WHERE eh.pay_code <> ‘RETIRED’ </li></ul></ul></ul></ul></ul>
    23. 24. Change Data Capture <ul><li>Mining of archive logs </li></ul><ul><li>No impact to OLTP system </li></ul><ul><li>Low Latency </li></ul><ul><li>Data is exposed as change tables for further bulk ETL processing via SQL </li></ul><ul><li>Publish/Subscribe </li></ul><ul><li>“ Change window” mgmt </li></ul>OLTP System Target System Online Redo logs Archive logs
    24. 25. <ul><li>Packaging change: OWB will be shipped with the Database as of 10g </li></ul><ul><li>New OWB features including </li></ul><ul><ul><li>Integrated Data Flow Debugger </li></ul></ul><ul><ul><li>Integrated Data Quality features </li></ul></ul><ul><ul><ul><li>Name & Address cleansing </li></ul></ul></ul><ul><ul><ul><li>Complete Match/Merge algorithms </li></ul></ul></ul><ul><ul><li>Enhanced cube generation from general logical design </li></ul></ul>Oracle Warehouse Builder
    25. 26. Statistical Analysis <ul><li>Descriptive Statistics : </li></ul><ul><ul><li>average, standard deviation, variance, min, max, median (via percentile_count), mode , group-by & roll-up </li></ul></ul><ul><ul><li>DBMS_STAT_FUNCS: summarizes numerical columns of a table and returns count, min, max, range, mean, stats_mode, variance, standard deviation, median, quantile values, +/- 3 sigma values, top/bottom 5 values </li></ul></ul><ul><li>Correlations: Pearson’s correlation coefficients , Spearman's and Kendall's (both nonparametric). </li></ul><ul><li>Cross Tabs: Enhanced with % statistics: chi squared, phi coefficient, Cramer's V, contingency coefficient, Cohen's kappa </li></ul><ul><li>Hypothesis Testing: t-test , F-test, ANOVA, Chi-square, Mann Whitney, Kolmogorov-Smirnov, Wilcoxon signed ranks </li></ul><ul><li>Distribution Fitting: normal, uniform, Poisson, exponential, Weibull </li></ul>New Oracle 10g features are in yellow
    26. 27. Oracle OLAP Oracle Business Intelligence Suite
    27. 28. Multidimensional Calculations <ul><li>Uni-dimensional </li></ul><ul><ul><li>“What are my top ten customers?” </li></ul></ul><ul><li>Multidimensional </li></ul><ul><ul><li>‘What was the percent change in market share for a grouping of my top 20% of products for the current three month period versus same period year ago for accounts which grew by more than 20 percent in revenue” </li></ul></ul>
    28. 29. Emerging Oracle-Based Approach Information and Data Consolidation Relational & OLAP, databases unite; in-place data mining Oracle10 g User’s tool of choice Open standards-based platform for non-Oracle tool users + native Excel support thru add-in Oracle Discoverer Reports, Beans, Portal Microsoft Excel
    29. 30. Database Managed Integrated OLAP <ul><li>OLAP in the RDBMS </li></ul><ul><li>Single RDBMS-MDDS process </li></ul><ul><li>Single data storage </li></ul><ul><li>Single metadata repository </li></ul><ul><li>Single set of management tools </li></ul><ul><li>Single security model </li></ul><ul><li>OLAP API and SQL interfaces </li></ul>Oracle Enterprise Manager Console
    30. 31. A Look At Relational Database Technology ROLAP Purely Relational, ROLAP, or MOLAP?
    31. 32. Relational database technology is based on a table/row/column model. Purely Relational, ROLAP, or MOLAP? Relational Technology <ul><li>PRODUCT </li></ul><ul><li>prod A </li></ul><ul><li>prod B </li></ul><ul><li>prod C </li></ul><ul><li>prod D </li></ul><ul><li>prod E </li></ul><ul><li>SALES </li></ul><ul><li>Prod </li></ul><ul><li>Cust </li></ul><ul><li>Time </li></ul><ul><li>CUST </li></ul><ul><li>cust A </li></ul><ul><li>cust B </li></ul><ul><li>cust C </li></ul><ul><li>cust D </li></ul><ul><li>cust E </li></ul><ul><li>TIME </li></ul><ul><li>Year </li></ul><ul><li>Quarter </li></ul><ul><li>Month </li></ul><ul><li>Week </li></ul><ul><li>Day </li></ul>
    32. 33. A purely relational implementation is designed and optimized to support the efficient movement and calculation of large volumes of data. Purely Relational, ROLAP, or MOLAP? Relational Technology <ul><li>PRODUCT </li></ul><ul><li>prod A </li></ul><ul><li>prod B </li></ul><ul><li>prod C </li></ul><ul><li>prod D </li></ul><ul><li>prod E </li></ul><ul><li>SALES </li></ul><ul><li>Prod </li></ul><ul><li>Cust </li></ul><ul><li>Time </li></ul><ul><li>CUST </li></ul><ul><li>cust A </li></ul><ul><li>cust B </li></ul><ul><li>cust C </li></ul><ul><li>cust D </li></ul><ul><li>cust E </li></ul><ul><li>TIME </li></ul><ul><li>Year </li></ul><ul><li>Quarter </li></ul><ul><li>Month </li></ul><ul><li>Week </li></ul><ul><li>Day </li></ul>
    33. 34. In order to perform multidimensional analysis over a relational data model, a dimensional perspective must be imposed over it. Cube <ul><li>Dimension Object </li></ul><ul><li>Dimension </li></ul><ul><li>Hierarchy </li></ul><ul><li>Level </li></ul><ul><li>Attribute </li></ul>Dimension Object Dimension Object Dimension Object Purely Relational, ROLAP, or MOLAP? Relational Technology <ul><li>PRODUCT </li></ul><ul><li>prod A </li></ul><ul><li>prod B </li></ul><ul><li>prod C </li></ul><ul><li>prod D </li></ul><ul><li>prod E </li></ul><ul><li>SALES </li></ul><ul><li>Prod </li></ul><ul><li>Cust </li></ul><ul><li>Time </li></ul><ul><li>CUST </li></ul><ul><li>cust A </li></ul><ul><li>cust B </li></ul><ul><li>cust C </li></ul><ul><li>cust D </li></ul><ul><li>cust E </li></ul><ul><li>TIME </li></ul><ul><li>Year </li></ul><ul><li>Quarter </li></ul><ul><li>Month </li></ul><ul><li>Week </li></ul><ul><li>Day </li></ul>
    34. 35. Analytic queries are written in SQL. Cube <ul><li>Dimension Object </li></ul><ul><li>Dimension </li></ul><ul><li>Hierarchy </li></ul><ul><li>Level </li></ul><ul><li>Attribute </li></ul>Dimension Object Dimension Object Dimension Object Purely Relational, ROLAP, or MOLAP? Relational Technology <ul><li>PRODUCT </li></ul><ul><li>prod A </li></ul><ul><li>prod B </li></ul><ul><li>prod C </li></ul><ul><li>prod D </li></ul><ul><li>prod E </li></ul><ul><li>SALES </li></ul><ul><li>Prod </li></ul><ul><li>Cust </li></ul><ul><li>Time </li></ul><ul><li>CUST </li></ul><ul><li>cust A </li></ul><ul><li>cust B </li></ul><ul><li>cust C </li></ul><ul><li>cust D </li></ul><ul><li>cust E </li></ul><ul><li>TIME </li></ul><ul><li>Year </li></ul><ul><li>Quarter </li></ul><ul><li>Month </li></ul><ul><li>Week </li></ul><ul><li>Day </li></ul>
    35. 36. This is a ROLAP IMPLEMENTATION. Cube <ul><li>Dimension Object </li></ul><ul><li>Dimension </li></ul><ul><li>Hierarchy </li></ul><ul><li>Level </li></ul><ul><li>Attribute </li></ul>Dimension Object Dimension Object Dimension Object Purely Relational, ROLAP, or MOLAP? Relational Technology <ul><li>PRODUCT </li></ul><ul><li>prod A </li></ul><ul><li>prod B </li></ul><ul><li>prod C </li></ul><ul><li>prod D </li></ul><ul><li>prod E </li></ul><ul><li>SALES </li></ul><ul><li>Prod </li></ul><ul><li>Cust </li></ul><ul><li>Time </li></ul><ul><li>CUST </li></ul><ul><li>cust A </li></ul><ul><li>cust B </li></ul><ul><li>cust C </li></ul><ul><li>cust D </li></ul><ul><li>cust E </li></ul><ul><li>TIME </li></ul><ul><li>Year </li></ul><ul><li>Quarter </li></ul><ul><li>Month </li></ul><ul><li>Week </li></ul><ul><li>Day </li></ul>
    36. 37. A Look At Multidimensional Database Technology Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    37. 38. SALES(product x , customer y , time z ) The multidimensional database technology that underlies the Analytic Workspace is based on an indexed multidimensional array model. Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    38. 39. $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ SALES dimensioned by PRODUCT, CUSTOMER, TIME Cube This model provides direct cell access , and is designed and optimized for the efficient computation, storage and retrieval of multidimensional data. Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    39. 40. $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ SALES dimensioned by PRODUCT, CUSTOMER, TIME Cube The OLAP DML language, one component of Oracle OLAP, provides an easy way to express complex multidimensional calculations. Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    40. 41. $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ SALES dimensioned by PRODUCT, CUSTOMER, TIME Cube This is a MOLAP implementation Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    41. 42. Some benefits of the multidimensional processing model . . . <ul><li>No JOIN is required when using the multidimensional technology. </li></ul><ul><ul><li>Improved performance! </li></ul></ul><ul><li>“ Aggregate then filter” methodology is used. </li></ul><ul><ul><li>Consistent, correct results. </li></ul></ul><ul><ul><li>Intelligent drill! </li></ul></ul><ul><ul><li>. </li></ul></ul>Purely Relational, ROLAP, or MOLAP? Multidimensional Technology
    42. 43. <ul><li>Select a purely relational implementation when … </li></ul><ul><ul><li>The analytic requirements of the business are met by the capabilities of SQL. </li></ul></ul><ul><ul><li>There are appropriate in-house SQL skills. </li></ul></ul><ul><ul><li>The relational engine provides satisfactory query performance. </li></ul></ul>Purely Relational, ROLAP, or MOLAP?
    43. 44. <ul><li>Select a ROLAP implementation when … </li></ul><ul><ul><li>The analytic requirements of the business are met by the capabilities of SQL. </li></ul></ul><ul><ul><li>User is looking for an easier way to formulate complex queries. </li></ul></ul><ul><ul><li>The detail data is very sparse. </li></ul></ul><ul><ul><li>Use Materialized Views to optimize performance. </li></ul></ul>Purely Relational, ROLAP, or MOLAP?
    44. 45. <ul><li>Select a MOLAP implementation … </li></ul><ul><li>When the analytic requirements of the business need the extended analytic, forecasting and planning functionality of Multidimensional Database Technology. </li></ul><ul><li>When the analysis includes lots of calculated and aggregated Key Performance Indicators </li></ul><ul><li>Need an easier way to define complex or proprietary calculations. </li></ul><ul><li>Need a transaction model that supports what-if analysis. </li></ul>Purely Relational, ROLAP, or MOLAP?
    45. 46. Oracle 10G Database Oracle Data Mining
    46. 47. What is Oracle Data Mining? <ul><li>Oracle Data Mining (ODM) sifts through massive amounts of data to find hidden patterns and information </li></ul><ul><ul><li>— valuable information that can help you better understand your customers and anticipate their behavior </li></ul></ul><ul><li>ODM insights can be revealing, significant, and valuable e.g. </li></ul><ul><ul><li>Predict which customers are likely to churn </li></ul></ul><ul><ul><li>Discover what factors are involved with a certain disease </li></ul></ul><ul><ul><li>Identify fraudulent behavior </li></ul></ul>
    47. 48. Data Mining Examples <ul><li>Typical problems addressed by data mining include: What is the probability that a person will… </li></ul><ul><ul><li>Buy product X (Marketing) </li></ul></ul><ul><ul><li>Stop buying my product and start buying a rival’s product (Churn) </li></ul></ul><ul><ul><li>Default on a loan (Credit Risk) </li></ul></ul><ul><ul><li>Submit a false insurance claim (Fraud) </li></ul></ul><ul><ul><li>Predict parts failure </li></ul></ul><ul><ul><li>Contract a certain type of Leukemia (Life Sciences) </li></ul></ul>
    48. 49. 10 g Oracle Data Mining Wide range of data mining algorithms <ul><li>Feature Selection </li></ul><ul><ul><li>Attribute Importance </li></ul></ul><ul><li>Supervised learning (classification & prediction) </li></ul><ul><ul><li>Naïve Bayes </li></ul></ul><ul><ul><li>Adaptive Bayes Networks </li></ul></ul><ul><ul><li>Support Vector Machines </li></ul></ul><ul><li>Unsupervised learning (clustering and associations) </li></ul><ul><ul><li>Association Rules </li></ul></ul><ul><ul><li>Orthogonal Partitioning Clustering </li></ul></ul><ul><ul><li>Enhanced k-means Cluster </li></ul></ul><ul><li>Feature Extraction </li></ul><ul><ul><li>Non Negative Matrix Factorization </li></ul></ul>Data Mining
    49. 50. What Is Warehouse Builder? <ul><li>Warehouse Builder is an open, enterprise level, data and metadata integration tool. It provides a graphical environment for designing , deploying , and managing Business Intelligence applications. </li></ul>Mining OLAP Oracle 10 g Warehousing ETL Engine Legacy Operational ERP Oracle Warehouse Builder
    50. 51. Design and Deployment With Oracle Warehouse Builder <ul><li>Relational </li></ul><ul><li>Flat Files </li></ul><ul><li>Applications </li></ul><ul><li>Mainframe </li></ul>Design Target Objects 1 Map & Transform 3 Generate & Validate 4 Deploy Code 5 Run 6 2 Extract Source Metadata
    51. 52. Mining Structures OLAP Structures Oracle 10 g Warehousing Features ETL Engine Oracle Warehouse Builder BI Design, Deployment and Management Uses Leverages Creates & Populates Creates & Populates Discoverer Generates Metadata / EUL Reports BiBeans Enables
    52. 53. Application Development
    53. 54. Oracle 10g New Features Application Development <ul><li>SQL PL/SQL Regular Expressions </li></ul><ul><li>Case-insensitive queries </li></ul><ul><li>New connect string format </li></ul><ul><li>User defined quote character </li></ul><ul><li>New PL/SQL Packages of Note </li></ul><ul><li>PL/SQL Compiler </li></ul><ul><li>Spatial/Locator </li></ul>
    54. 55. Application Development Regular Expressions <ul><li>Very familiar to UNIX developers </li></ul><ul><li>Set of symbols and elements of syntax that allow you to match patterns of text within a given expression </li></ul><ul><ul><li>Example </li></ul></ul><ul><ul><ul><li>* matches zero or more occurences (Ad* matches Ada AdB but not Acd or add </li></ul></ul></ul><ul><ul><ul><li>? Matches one character occurrence </li></ul></ul></ul><ul><ul><ul><li>^ matches start of line (^abc matches abch but not habc) </li></ul></ul></ul><ul><ul><ul><li>Example: find all records where ‘b’ is the second character in the column </li></ul></ul></ul><ul><ul><ul><ul><ul><li>Select * from test_expressions </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Where regexp_like(char_value,’^.b.’); </li></ul></ul></ul></ul></ul>
    55. 56. Application Development Case-insensitive queries/sorts <ul><li>With 10G you can write queries that are case-insensitive WITHOUT using function-based indexes </li></ul><ul><li>How? By setting two parameters at either system or session level </li></ul><ul><ul><li>Nls_comp=ansi </li></ul></ul><ul><ul><li>Nls_sort=binary_ci </li></ul></ul>
    56. 57. Application Development Case-insensitive queries/sorts <ul><li>With 10G you can write queries that are case-insensitive WITHOUT using function-based indexes </li></ul><ul><li>How? By setting two parameters at either system or session level </li></ul><ul><ul><li>Nls_comp=ansi </li></ul></ul><ul><ul><li>Nls_sort=binary_ci </li></ul></ul>Case-Insensitve Query Demonstration
    57. 58. Application Development New Connect String Format <ul><li>If running on TCP/IP network, Oracle clients like SQL*Plus can connect without tnsnames.ora entry </li></ul><ul><li>Just need to supply host, port, and service </li></ul><ul><ul><li>Sqlplus test/test@//myhost.oracle.com:1521/prod </li></ul></ul>
    58. 59. Application Development User Defined Quote Character <ul><li>Simplifies writing SQL statements that cotnain literal single quotes in them </li></ul><ul><ul><li>Resulted in really ugly code with many hard to find errors </li></ul></ul><ul><li>Delimiter defined by using the quote operator(q), followed by a quote and then the assigned quote delimiter </li></ul>
    59. 60. Application Development New Packages of Note <ul><li>Utl_compress </li></ul><ul><ul><li>Compress and decompress BLOB or Raw data </li></ul></ul><ul><li>Utl_mail </li></ul><ul><ul><li>Send email and attach objects to email </li></ul></ul>
    60. 61. Application Development PL/SQL Compiler <ul><li>10g comes with a new, faster PL/SQL compiler </li></ul><ul><li>More efficient than previous PL/SQL compiler </li></ul><ul><ul><li>50-75% faster than previous compiler </li></ul></ul><ul><li>Resulting native code runs even faster in 10g </li></ul>
    61. 62. Application Development PL/SQL Compiler
    62. 63. Location-enable Mission Critical Applications
    63. 64. Geocoder <ul><li>Generates latitude/longitude (points) from address </li></ul><ul><li>International addressing standardization </li></ul><ul><li>Formatted and unformatted addresses </li></ul><ul><li>Tolerance parameters support fuzzy matching </li></ul><ul><li>100% Java, open and scalable </li></ul><ul><li>Record-level and batch processes </li></ul><ul><li>Data provided by leading data vendors </li></ul>
    64. 65. Server Manageability SQL Optimization
    65. 66. Server Manageability Rule Based Optimizer <ul><li>Though still there, RBO is desupported with 10g </li></ul>
    66. 67. Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications
    67. 68. Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications Better Performance High-load SQL Suggested Indexes & MVs Access Advisor
    68. 69. Self-Optimizing SQL Proven Cost-Based Optimizer Customizable Applications Packaged & Custom Applications Better Performance High-load SQL Suggested Indexes & MVs Access Advisor
    69. 70. Self-Optimizing SQL Proven Cost-Based Optimizer SQL Advice -> Better SQL Auto SQL Analysis Customizable Applications Packaged & Custom Applications Better Performance High-load SQL Suggested Indexes & MVs Access Advisor
    70. 71. Self-Optimizing SQL Proven Cost-Based Optimizer SQL Profile -> Improved Plan SQL Advice -> Better SQL Auto SQL Analysis Auto SQL Tuning Customizable Applications Packaged & Custom Applications Better Performance High-load SQL Suggested Indexes & MVs Access Advisor
    71. 72. BREAK
    72. 73. Developing Oracle Application with .NET
    73. 74. Why Oracle for .Net? <ul><li>Oracle brings enterprise scalability, availability and reliability to .NET </li></ul><ul><ul><li>Advanced DB features are available through Oracle Data Provider for .NET (ODP.NET) </li></ul></ul><ul><li>Oracle is open </li></ul><ul><ul><li>DB server can be on Windows, Linux, or Unix </li></ul></ul><ul><ul><li>Developers can use either .NET or J2EE without losing DB capabilities </li></ul></ul><ul><li>Wide adoption </li></ul><ul><ul><li>50k+ ODP.NET downloads in past year </li></ul></ul>
    74. 75. Develop with .Net Database on any platform Visual Studio Environment Oracle Developer Tools for VS.NET Windows Windows Linux Unix Oracle 10g, 9i, or 8i Other
    75. 76. Oracle’s Commitment to .NET Mid 2005 2003 2002 .NET Framework 1.1 .NET Framework 1.0 1H 2005 ODP.NET Oracle Developer Tools for VS.NET ODP.NET Oracle Developer Tools for VS.NET Oracle Database Extensions for .NET Oracle Data Provider for .NET(ODP.NET) .NET Framework 2.0
    76. 77. <ul><li>ODP.NET fully compliant with ADO.NET </li></ul><ul><li>Oracle DB leads the way in advanced functionality --- all exposed in ODP.NET </li></ul><ul><ul><li>RAC, XML DB, Advanced Security, etc. </li></ul></ul><ul><li>Support for Native Oracle data types </li></ul><ul><ul><li>LOBs, REF Cursor, N-data types, Date, TimeStamps, Long, etc. </li></ul></ul><ul><li>Full PL/SQL support </li></ul><ul><ul><li>Batch SQL available with anonymous PL/SQL </li></ul></ul>Oracle Data Provider for .NET
    77. 78. <ul><li>Available today in production for free </li></ul><ul><ul><li>http:// otn .oracle.com/tech/windows/ odpnet </li></ul></ul><ul><ul><li>Original release: 2002 </li></ul></ul><ul><li>Can be used with Oracle8 i , Oracle9 i , and Oracle10 g database servers </li></ul><ul><ul><li>DB server can be on Unix, Linux, Windows, etc. </li></ul></ul><ul><ul><li>Database client on Windows </li></ul></ul><ul><li>Supports VS.NET 2002 and 2003 </li></ul><ul><li>Supports .NET Framework 1.0 and 1.1 </li></ul>Oracle Data Provider for .NET
    78. 79. Oracle Developer Tools for Visual Studio .NET <ul><li>New tightly integrated toolset for VS .NET </li></ul><ul><li>Stay in VS .NET environment for project lifecycle </li></ul><ul><li>Powerful features that enhance productivity – e.g. designers, code generation </li></ul><ul><li>Exposes native Oracle functionality not typically available in generic tools </li></ul><ul><li>Easy to learn and intuitive </li></ul>
    79. 80. ODP.NET Summary <ul><li>Oracle brings the power of Oracle Database to .Net Developers </li></ul><ul><li>Oracle is committed to delivering the best database for Windows and making Windows developers more productive when using Oracle Database </li></ul><ul><li>Oracle has best tools for whichever development platform you choose </li></ul>
    80. 81. Sample Code, Tutorials & More Information <ul><li>.Net Development Center </li></ul><ul><ul><li>http://otn.oracle.com/dotnet </li></ul></ul>
    81. 82. Oracle XML DB
    82. 83. Common XML Architectures Enforce XML Schema Manage Content & Data Uniformly Eliminate extra moving parts Get better performance & scalability Make DB applications Standards-based
    83. 84. Evolution of Oracle XML Support 8 i 9 i R1 9 i R2 Basic XML Generation and Processing (mid-tier based) Developer Kits DB-integrated XML Storage And Retrieval Native XML DB
    84. 85. What is Oracle XML DB? <ul><li>Infrastructure & set of features to store and manage XML data </li></ul><ul><li>Allows DB to absorb W3C XML Data Model </li></ul><ul><li>Storage Options: </li></ul><ul><ul><li>Unstructured Storage: Documents are stored as CLOB </li></ul></ul><ul><ul><li>Structured Storage: XML documents are shredded into a set of SQL objects in a table based on SQL99 object standard </li></ul></ul><ul><li>Major Components of XML DB </li></ul><ul><ul><li>XMLType </li></ul></ul><ul><ul><ul><li>Access via SQL, PL/SQL, OCI, JDBC, SQLJ </li></ul></ul></ul><ul><ul><ul><li>DOM APIs in PL/SQL, C, and Java </li></ul></ul></ul><ul><ul><ul><li>Java Clients via a Bean interface </li></ul></ul></ul><ul><ul><li>XML Schema supports W3C XML Schema Standard </li></ul></ul><ul><ul><ul><li>Support for XPATH expressions to query/update XML content </li></ul></ul></ul><ul><ul><li>XML DB Repository </li></ul></ul><ul><ul><li>SQL/XML </li></ul></ul>
    85. 86. XML Schema Concepts <ul><ul><li>Schema definition language (in XML) used to define the structure of a set of conforming instance documents </li></ul></ul><ul><ul><li>XML Schema is an XML document that is compliant with W3C XML Schema standard (Schema for Schemas) </li></ul></ul><ul><ul><li>Oracle XML DB represents XML as instances of the XML data type </li></ul></ul><ul><ul><ul><li>Makes the database XML aware and provides convenient abstraction for storing, retrieving, querying, and manipulating XML </li></ul></ul></ul><ul><ul><li>Oracle XML DB Storage Options: </li></ul></ul><ul><ul><ul><li>Unstructured Storage </li></ul></ul></ul><ul><ul><ul><li>Structured Storage </li></ul></ul></ul><ul><ul><li>Advantages of Structured Storage: </li></ul></ul><ul><ul><ul><li>Reduced storage requirements </li></ul></ul></ul><ul><ul><ul><li>Partial, in-place updates via XPATH is improved by query re-write </li></ul></ul></ul><ul><ul><ul><li>Increased performance of update operations on portions of XML data </li></ul></ul></ul>
    86. 87. Oracle XML DB Leverages SQL <ul><li>Certain simple concepts cannot be expressed using XML Schema </li></ul><ul><ul><li>Defining value of an element/attribute is unique across collection of documents </li></ul></ul><ul><ul><li>Defining value of some element/attribute must match a value in another document </li></ul></ul><ul><li>XML DB can leverage power SQL to address these concepts </li></ul><ul><li>Oracle XML DB does not automatically perform full schema validation of documents as inserted into database </li></ul><ul><ul><li>Full Schema validation is optional on a Schema by Schema basis using Check Constraints or Triggers </li></ul></ul><ul><ul><li>XML DB performs light weight validation that checks that mandatory elements/attributes are present and that number of elements in a collection is compliant with defined XML Schema </li></ul></ul><ul><ul><li>XML DB does NOT check pattern matches, minimum lengths, etc. </li></ul></ul>
    87. 88. Oracle XML DB Repository <ul><li>Managed set of tables in XDB database schema </li></ul><ul><ul><li>Exposed via two views: RESOURCE_VIEW AND PATH_VIEW </li></ul></ul><ul><li>Tables contain metadata for all documents stored in repository </li></ul><ul><ul><li>Compliant with IETF WebDAV standard </li></ul></ul><ul><li>All non XML documents and non-Schema based XML is stored directly in XML DB repository tables </li></ul><ul><li>XML Schema based XML is stored in default tables specified when XML Schema is registered typically located in database schema owned by user registering XML Schema </li></ul><ul><li>Protected by ACL based security compliant with proposed WebDAV ACL specification </li></ul><ul><li>Rudimentary versioning capabilities – Future release of repository will implement DELTA-V </li></ul><ul><li>Provides set SQL functions for efficient query retrieval </li></ul><ul><li>Leverages Oracle DB extensible indexing to define new domain index, Hierarchical Index </li></ul>
    88. 89. Oracle XML DB XSL Transformation <ul><li>Oracle XML DB includes XSLT Style Sheet processing engine </li></ul><ul><li>Leverages XML DB performance optimizations such as Lazily Loaded DOM </li></ul><ul><ul><li>Greatly reduce amount of parsing and memory overhead </li></ul></ul><ul><li>In conventional XSL processing a DOM is created and passed to XSL processor which uses DOM API to get information contained in document and format as HTML </li></ul><ul><ul><li>Creating DOM is CPU and memory intensive </li></ul></ul><ul><ul><li>Parsing and converting an entire document into a DOM structure is very in-efficient if only a small part of the document is going to be included in generated output </li></ul></ul><ul><ul><li>For Schema based content the XML Schema must be parsed &loaded into memory </li></ul></ul><ul><li>Oracle XML DB Lazily loaded DOM </li></ul><ul><ul><li>DOM loaded directly from disk – No parsing required to load DOM </li></ul></ul><ul><ul><li>Memory usage is reduced since only part of document being processed is loaded into DOM from disk </li></ul></ul>
    89. 90. 9 Benefits of XML DB <ul><li>XML SQL ‘duality’ </li></ul><ul><ul><li>SQL operations over XML data, XML operations over SQL data </li></ul></ul><ul><li>Native support for XML data model </li></ul><ul><ul><li>XML Schema Constraints, other constraints, RI </li></ul></ul><ul><li>Storage and Structure Independence </li></ul><ul><li>Strong data management over XML content vs. file storage </li></ul><ul><li>Repository Functionality </li></ul><ul><li>Multiple XML views over relational data </li></ul><ul><li>Ease of Presentation and Interchange </li></ul><ul><ul><li>Native XSLT, built-in generation </li></ul></ul><ul><li>Popular API access </li></ul><ul><ul><li>DOM, SQL, PL/SQL, Java, … </li></ul></ul><ul><li>XML-specific performance and scalability </li></ul>
    90. 91. Oracle 10g New Features HTMLDB
    91. 92. Does Your Organization: <ul><li>Use spreadsheets as databases? </li></ul><ul><li>Store mission critical data in applications developed in a desktop database such as Microsoft Access? </li></ul><ul><li>Not have time to build all of the applications that users are asking for? </li></ul>
    92. 93. Drawbacks to Desktop DBs VULNERABLE Data not Secure COSTLY Inefficient use of IT Resources FRAGMENTED Data in Many Places PLATFORM DEPENDENT MS Windows Only WEB UNFRIENDLY Need to Install Client Software
    93. 94. Access Password “Recovery” <ul><li>About $15 </li></ul><ul><li>Many variations </li></ul><ul><li>Also available for other MS Office Components </li></ul><ul><li>If your data is worth less than $15, MS Access is a good place to store it </li></ul>
    94. 95. Consolidation with HTML DB Any Modern Browser Oracle Database & Oracle HTML DB Spreadsheets Desktop Databases File Servers
    95. 96. The Best of Both Worlds <ul><li>The Qualities of a Personal Database </li></ul><ul><ul><li>Productivity </li></ul></ul><ul><ul><li>Ease of Use </li></ul></ul><ul><ul><li>Flexibility </li></ul></ul><ul><li>The Qualities of an Enterprise Database </li></ul><ul><ul><li>Security </li></ul></ul><ul><ul><li>Integrity </li></ul></ul><ul><ul><li>Scalability </li></ul></ul><ul><ul><li>Availability </li></ul></ul><ul><ul><li>Portability </li></ul></ul><ul><li>Built for the Web </li></ul>
    96. 97. Physical Architecture Browser Oracle Database HTML DB Oracle HTTP Server
    97. 98. Physical Architecture Browser Oracle Database HTML DB Oracle HTTP Server Firewall Instead of the Database Oracle HTTP Server, you can use the HTTP Server supplied with Oracle Application Server 9 i or 10 g
    98. 99. HTML DB Architecture Browser Oracle Database HTML DB Oracle HTTP Server
    99. 100. Components <ul><li>Administration </li></ul><ul><ul><li>Manage Workspaces & System Settings </li></ul></ul><ul><li>Data Workshop </li></ul><ul><ul><li>Get data in & out of the Database </li></ul></ul><ul><li>SQL Workshop </li></ul><ul><ul><li>Manage your schema objects </li></ul></ul><ul><li>Application Builder </li></ul><ul><ul><li>Build and deploy web applications </li></ul></ul>
    100. 101. Integration <ul><li>Oracle Database 10 g </li></ul><ul><ul><li>RAC </li></ul></ul><ul><ul><li>Label Security </li></ul></ul><ul><ul><li>Virtual Private Database </li></ul></ul><ul><ul><li>Regular Expressions </li></ul></ul><ul><ul><li>Recycle Bin </li></ul></ul><ul><ul><li>Spatial </li></ul></ul><ul><ul><li>Oracle Text </li></ul></ul><ul><ul><li>Flashback Query </li></ul></ul><ul><li>Oracle App Server 10 g </li></ul><ul><ul><li>MapViewer </li></ul></ul><ul><ul><li>Oracle Internet Directory </li></ul></ul><ul><ul><ul><li>Authentication </li></ul></ul></ul><ul><ul><ul><li>Groups </li></ul></ul></ul><ul><ul><li>Oracle Login Server </li></ul></ul><ul><ul><ul><li>Partner Application </li></ul></ul></ul><ul><ul><ul><li>External Application </li></ul></ul></ul><ul><ul><li>Oracle Portal </li></ul></ul><ul><ul><ul><li>OmniPortlet </li></ul></ul></ul>
    101. 102. Integration <ul><li>Oracle Database 10 g </li></ul><ul><ul><li>RAC </li></ul></ul><ul><ul><li>Label Security </li></ul></ul><ul><ul><li>Virtual Private Database </li></ul></ul><ul><ul><li>Regular Expressions </li></ul></ul><ul><ul><li>Recycle Bin </li></ul></ul><ul><ul><li>Spatial </li></ul></ul><ul><ul><li>Oracle Text </li></ul></ul><ul><ul><li>Flashback Query </li></ul></ul><ul><li>Oracle App Server 10 g </li></ul><ul><ul><li>MapViewer </li></ul></ul><ul><ul><li>Oracle Internet Directory </li></ul></ul><ul><ul><ul><li>Authentication </li></ul></ul></ul><ul><ul><ul><li>Groups </li></ul></ul></ul><ul><ul><li>Oracle Login Server </li></ul></ul><ul><ul><ul><li>Partner Application </li></ul></ul></ul><ul><ul><ul><li>External Application </li></ul></ul></ul><ul><ul><li>Oracle Portal </li></ul></ul><ul><ul><ul><li>OmniPortlet </li></ul></ul></ul>HTMLDB Demonstration
    102. 103. Availability <ul><li>Release 1.5 </li></ul><ul><ul><li>Software ships on Oracle Database 10 g Companion CD </li></ul></ul><ul><li>Release 1.6 </li></ul><ul><ul><li>Available as a Download from OTN </li></ul></ul><ul><li>Works & Supported in Oracle Database 10 g and Oracle Database 9iR2 (9.2.0.3+) </li></ul><ul><li>Included as a component of Standard One, Standard and Enterprise Editions </li></ul><ul><li>No Additional Charge </li></ul>
    103. 104. A Q & Q U E S T I O N S A N S W E R S

    ×