Feed aggregator

Badly modeled table

Tom Kyte - Tue, 2017-08-15 04:06
I received a request to build a table that looks something like: <code>create table META_TABLE ( TABLE_ITEM int constraint META_TABLE_PK primary key not null, ITEM_TYPE char(30) not null, -- service, retail, maintenance CREATE...
Categories: DBA Blogs

PHP OCI8 2.1.7 for Oracle Database is now on PECL

Christopher Jones - Mon, 2017-08-14 20:51

PHP 7 compatible OCI8 2.1.7 for Oracle Database is now on PECL.

This version of OCI8 will also be bundled in PHP 7.0.23 and PHP 7.1.9 (and is already in PHP 7.2.0beta2). Older PHP 7 installations can be brought up to date using the PECL bundle.

The highlight of this release is Transparent Application Failover (TAF) callback support:

In a configured Oracle Database system, TAF occurs when the PHP application detects that the database instance is down or unreachable. It establishes a connection to another node in an Oracle RAC configuration, a hot standby database, or the same database instance itself.

The new OCI8 TAF callback feature allows a PHP function to be invoked during failover, allowing applications to decide how to handle the change. For example the callback function can fixup any application session state and continue processing so users are unaware of the database change.

The TAF callback feature originated from a Pull Request by KoenigsKind.

This release also fixes a potential integer overflow in oci_bind_array_by_name(), with a patch by Ingmar Runge.

Our grateful thanks for both these submissions to OCI8.

High Availablity Designs

Anthony Shorten - Mon, 2017-08-14 19:58

One of the most common tasks in any implementation of an Oracle Utilities Application Framework product is the design of a high availability environment to ensure business continuity and availability.

The Oracle Utilities Application Framework is designed to allow implementations to use a wide variety of high availability and business continuity solutions available in the market. As the product is housed in Oracle WebLogic and Oracle Database then we can utilize the high availability features of those products.

If you are considering designing a high availability architecture here are a few guidelines:

  • Consider the Oracle Maximum Availability Architecture which has guidelines for designing high availability and business continuity solutions for a variety of solutions available.
  • Design for your business requirements and hardware platform. Solutions can vary to low cost solutions with minimal hardware to highly configured complex hardware/software solutions.
  • Do not discount solutions built into your hardware platform. Redundancy and high availability features of hardware can be part of the solution that you propose for an implementation. These are typically already in place so offer a cost effective component of any solution.
  • Design for your budget. I have seen implementations where they design a complex high availability solution only to get "sticker shock" when the price is discussed. I usually temper costs of a solution against the estimated business loss from an availability issue or a business continuity issue. It is very similar to discussions around insurance you might have personally.
  • Customers of Oracle Utilities Application Framework based product have used both hardware and/or software based availability and business continuity solutions. This includes hardware at the load balancing level, such as routers, to implement high availability.
  • Oracle typically recommends clustering as one of the techniques to consider in your solutions. Oracle Utilities Application Framework supports clustering for Oracle WebLogic, Oracle Coherence and Oracle Database. We support clusters within user channels (online, web services and batch) and across those channels as well.
  • Oracle typically recommends Real Application Clustering (including One Node implementations) as part of an availability solution. Oracle Utilities Application Framework supports RAC and includes support for newer implementations of that technology through features such as Oracle Notification Service (ONS).
  • One of the most common business continuity solutions customers have chosen is to use Oracle Data Guard or Oracle Active Data Guard to keep a backup database in synchronization with the prime database. Customers wanting to use the backup database for reporting tend to choose Oracle Active Data Guard as their preferred solution.
  • Batch can be clustered using Oracle Coherence (with flexibility in the architecture) and in Oracle Cloud SaaS implementations, we support batch clustering via Oracle WebLogic clustering. For customers interested in batch architecture refer to Batch Best Practices (Doc Id: 836362.1) available from My Oracle Support.

The following references for MAA may help you design your solution:

Python cx_Oracle 6 Production Release: Hitting A Six

Christopher Jones - Mon, 2017-08-14 17:27

cx_Oracle 6.0, the extremely popular Oracle Database interface for Python, is now Production on PyPI.

cx_Oracle logo

cx_Oracle is an open source package that covers the Python Database API specification with many additions to support Oracle advanced features. It was begun by Anthony Tuininga in 1998 in the era of Oracle Database 8i and Python 1.5. Since then there have been over 30 releases covering up to Oracle Database 12c and Python 3.

Anthony joined Oracle relatively recently. In his time with us, he has been hard at work in the language API space, leading cx_Oracle changes as well as creating the ODPI-C interface, and also making contributions to node-oracledb.

cx_Oracle 6.0 is the latest and greatest release from our group. It can connect to both on-premise databases and to Oracle Database Cloud Services. It can also be run in the cloud itself.

The use cases for cx_Oracle are endless. Both small and big projects make use of cx_Oracle for all kinds of data manipulation and application development projects.

cx_Oracle has extensive API documentation, solid samples, and a clean test suite. (We also run stress tests for cx_Oracle in the Oracle Database development environment). To complete the link dump, the home page is here and the source code is hosted on GitHub.

cx_Oracle 6 Features

cx_Oracle 6's support for Oracle Database is excellent.

  • Easily installed from PyPI with Wheels.

  • Support for Python 2 and 3.

  • Support for Oracle Client 11.2, 12.1 and 12.2. Oracle's standard cross-version interoperability allows easy upgrades and connectivity to different Oracle Database versions.

  • Connect to Oracle Database 9.2, 10, 11 or 12 (depending on the Oracle Client version used).

  • SQL and PL/SQL Execution. The underlying Oracle Client libraries have significant optimizations including compressed fetch, pre-fetching, client and server result set caching, and statement caching with auto-tuning.

  • Full use of Oracle Network Service infrastructure, including encrypted network traffic, authentication, and security features.

  • Extensive Oracle data type support, including large object support (CLOB and BLOB).

  • Direct binding to SQL objects. One great use case is binding Python objects to Oracle Spatial SDO objects.

  • Array operations for efficient INSERT and UPDATEs.

  • Array row counts and batch error handling for array operations.

  • Fetching of large result sets.

  • REF CURSOR support.

  • Support for scrollable cursors. Go back and forth through your query results.

  • Fetch PL/SQL Implicit Results. Easily return query results from PL/SQL.

  • Row Prefetching. Efficient use of the network.

  • Client Result Caching. Improve performance of frequently executed look-up statements.

  • Support for Advanced Queuing. Use database notifications to build micro-service applications.

  • Continuous Query Notification. Get notified when data changes.

  • Support for Edition Based Redefinition. Easily switch applications to use updated PL/SQL logic.

  • Support for setting application context during the creation of a connection, making application metadata more accessible to the database, including in LOGON triggers.

  • End-to-end monitoring and tracing.

  • Transaction Management.

  • Session Pooling.

  • Database Resident Connection Pooling (DRCP).

  • Privileged Connections.

  • External Authentication.

  • Database startup and shutdown.

  • Oracle Database High Availability Features, such as FAN notifications and Transaction Guard support.

Changes since cx_Oracle 5.3

The main changes in cx_Oracle 6 are:

  • Re-implemented to use our new ODPI-C abstraction layer for Oracle Database. The cx_Oracle API is unchanged. The cx_Oracle design, build and linking process has improved because of ODPI-C.

  • Python Wheels are now available for install. This is made possible by the ODPI-C architecture.

  • Less code in Python's Global Interpreter Lock, giving better scalability.

  • Support for DML RETURNING of multiple rows.

  • Support for Universal ROWIDs.

  • LOB locators are now associated to LOB objects so they are not overwritten on database round trips.

As you can see, the use of ODPI-C was a significant change, leading to code refactoring and simplification. It gives us a springboard to make future improvements to cx_Oracle using a code base that has multiple consumers (and hence testers) including node-oracledb 2.

With the release of cx_Oracle 6, no new features are planned for cx_Oracle 5.

Installing cx_Oracle

With the new cx_Oracle 6 Wheels, installing is straightforward as:

python -m pip install cx_Oracle --upgrade

If a binary is not available, the cx_Oracle source will be compiled.

Oracle Client 11.2, 12.1 or 12.2 libraries are needed in your system library path (such as PATH on Windows, or LD_LIBRARY_PATH on Linux). These libraries provide a lot of features such as connection management, query and statement cache management, as well as high availability features. Libraries can be easily installed from the free Oracle Instant Client, an Oracle Database installation, or a full Oracle Client installation. Oracle's standard client-server interoperability applies, e.g. Oracle Client 12.2 can connect to Oracle Database 11.2 onward.

Thanks to ODPI-C, you do not need to update cx_Oracle if you decide to upgrade your Oracle Client from 11.2 or 12.1 to a newer version. You can simply change your library loading path, e.g. PATH or LD_LIBRARY_PATH, to the new version of the Oracle Client libraries.

Once you have cx_Oracle installed, you can connect to your database. For example:

from __future__ import print_function import cx_Oracle connection = cx_Oracle.connect("hr", "welcome", "localhost/orclpdb") cursor = connection.cursor() cursor.execute(""" SELECT first_name, last_name FROM employees WHERE department_id = :did AND employee_id > :eid""", did = 50, eid = 190) for fname, lname in cursor: print("Values:", fname, lname) cx_Oracle References

Home page: https://oracle.github.io/python-cx_Oracle/index.html

Installation instructions: http://cx-oracle.readthedocs.io/en/latest/installation.html

Documentation: http://cx-oracle.readthedocs.io/en/latest/index.html

Source Code Repository: https://github.com/oracle/python-cx_Oracle

Last Words

The cx_Oracle interface is the most popular scripting language for Oracle Database. It has a long history, is widely used, and exposes features for building all kinds of database applications. The release of cx_Oracle 6 brings a refactored implementation that is more scalable and makes it easier to bring you great, future Oracle functionality.

Thank you to all our users and testers who are part of a very big & happy cx_Oracle community.

Keep in touch!

Open Source Library Drives Powerful Oracle Database Applications

Christopher Jones - Mon, 2017-08-14 17:14
ODPI-C logo ODPI-C

The production release of Oracle Database Programming Interface for C (ODPI-C) is now available on GitHub

ODPI-C is an open source library of C code that simplifies access to Oracle Database for applications written in C or C++.

 

ODPI-C:

  • exposes a C API in a readily consumable way to C and C++ developers writing applications for Oracle Database.
  • is aimed at language interfaces and applications where speed of development is important, and where special-case Oracle features are not needed.
  • is already being used for Python, Node.js, Go and Rust interfaces, as well as for custom applications.
  • allows faster application implementation with less code.
  • makes memory and resource management simpler, particularly for 'binding' and 'defining' data. A reference counting mechanism adds resiliency by stopping applications destroying in-use resources.
  • is available as source code on GitHub under the Apache 2.0 and/or the Oracle UPL licenses, for direct inclusion into your own code bases.

ODPI-C is a wrapper over Oracle Call Interface. OCI is Oracle Database's main C API and is widely used by our products and user applications so it is stable, fast, scalable and supported. OCI's API is extremely flexible and gives fine-grained control to the developer for a very wide range of use cases.

ODPI-C is also flexible but is aimed primarily at language interface creators. These creators are programming within the confines of a scripting language's type system and semantics. The languages often expose simplified data access to users through cross-platform, common-denominator APIs. Therefore it makes sense for ODPI-C to provide easy to use functionality for common data access, while still allowing the power of Oracle Database to be used.

Of course ODPI-C isn't just restricted to language interface usage. Since it provides a simple programming experience, if ODPI-C has the functionality you need for accessing Oracle Database, then you can add it to your own projects.

ODPI-C is developed by the Oracle Database Data Access team, who also look after OCI and other language APIs for Oracle Database. Anthony Tuininga has been leading the ODPI-C effort. He has made full use of his extensive knowledge as creator and maintainer of the extremely popular, and full featured, Python cx_Oracle interface.

A big thank you to all the users who have given feedback on ODPI-C pre-releases.

ODPI-C Features

The ODPI-C feature list currently includes all the normal calls you'd expect to manage connections and to execute SQL and PL/SQL efficiently. It also has such gems as SQL and PL/SQL object support, scrollable cursors, Advanced Queuing, and Continuous Query Notification. ODPI-C does extra validation and has a reference counting mechanism for resiliency to help stop applications destroying in-use OCI resources. Writing threaded mode applications is easier.

The Oracle feature list in this initial release, in no particular order, is:

  • 11.2, 12.1 and 12.2 Oracle Client support
  • 9.2 and higher Oracle Database support (depending on Oracle Client version)
  • SQL and PL/SQL execution
  • Character data types (CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB, LONG)
  • Numeric data types (NUMBER, BINARY_FLOAT, BINARY_DOUBLE)
  • Dates, Timestamps, Intervals
  • Binary types (BLOB, BFILE, RAW, LONG RAW)
  • PL/SQL data types (PLS_INTEGER, BOOLEAN, Collections, Records)
  • JSON
  • User Defined Types
  • REF CURSOR, Nested cursors, Implicit Result Sets
  • Array fetch
  • Array bind/execute
  • Session pools, with connection validation
  • Standalone connections
  • Database Resident Connection Pooling (DRCP)
  • External authentication
  • Statement caching
  • End-to-end tracing, mid-tier authentication and auditing
  • Edition Based Redefinition
  • Scrollable cursors
  • DML RETURNING
  • Privileged connection support (SYSDBA, SYSOPER, SYSASM, PRELIM_AUTH)
  • Database Startup/Shutdown
  • Session Tagging
  • Proxy authentication
  • Batch Errors
  • Array DML Row Counts
  • Query Result Caching
  • Application Continuity
  • Query Metadata
  • Password Change
  • Two Phase Commit
  • Continuous Query Notification
  • Advanced Queuing

In case you want to access other OCI functionality without having to modify ODPI-C code, there is a call to get the underlying OCI Service Context handle.

ODPI-C applications can take advantage of OCI features which don't require API access, such as the oraaccess.xml configuration for enabling statement cache auto-tuning. Similarly, Oracle Database features controlled by SQL and PL/SQL, such as partitioning, can be used in applications, as you would expect.

Since communication to the database is handled by Oracle's Network Services, features such as encrypted communication and LDAP can easily be configured.

Using ODPI-C

See ODPI-C Installation for detailed instructions.

ODPI-C code can be included in your C or C++ applications and compiled like any OCI application. Or, if you want to use ODPI-C as a shared library, use the provided example Makefile. 

To try out ODPI-C, build it as a shared library and then compile the sample programs. These show a number of ODPI-C features. You can also view the test suite.

ODPI-C makes it easy to build and distribute application code or binaries because it is open source, and OCI headers and libraries are not needed at compilation. Applications need standard Oracle client libraries only at run time.

Oracle client libraries must be installed separately. Version 11.2, 12.1 or 12.2 are required. These allow applications to connect to Oracle Database 9.2 or later (depending on the client version).

ODPI-C uses the shared library loading mechanism available on each supported platform to load the Oracle Client library at run time. This allows code using ODPI-C to be built only once, and then run using available Oracle Client libraries.

Oracle client libraries are available in the free, easily installed Oracle Instant Client "Basic" and "Basic Light" packages. Client libraries are also available in any Oracle Database installation, or in the full Oracle Client installation.

ODPI-C has been tested on Windows, macOS and Linux. Compilation on other platforms such as AIX and Solaris x64 is possible, but these have not been fully tested.

Wrap Up

ODPI-C provides an API to Oracle Database that enables functional, flexible application and scripting language API development.

ODPI-C is being used by us for the Python cx_Oracle 6 interface, and in node-oracledb 2 for Node.js. Third party developers have also started Go and Rust interfaces too. These code bases are handy, bigger examples of how to use ODPI-C.

It's also pleasing to have gotten positive feedback from internal Oracle projects that have adopted ODPI-C for a variety of other application development purposes.

ODPI-C will continue to be enhanced, bringing great Oracle Database technologies to developers. Scripting language drivers will similarly see enhancements and get benefits of the common ODPI-C code base.

I think you'll be pleased with our direction and plans for developers and scripting languages in 2017.

ODPI-C References

Home page: https://oracle.github.io/odpi/

Code: https://github.com/oracle/odpi

Documentation: https://oracle.github.io/odpi/doc/index.html

Report issues and discuss: https://github.com/oracle/odpi/issues

Footnote Trivia

Why is this first production release called version 2?  Because ODPI-C is a significantly updated, refactored, and standalone release of code which had origins in a node-oracledb 1.x. abstraction layer.

Set up domain and launch page

Dimitri Gielis - Mon, 2017-08-14 15:56
This post is part of a series of posts: From idea to app or how I do an Oracle APEX project anno 2017
Domain nameWhen you launch an app or service, you probably want a domain name. I register all my domain names with Godaddy. I'm a long time customer with them and I find them really reliable, not that expensive and they have good support. But I find it hard to come up with "the right" domain name. For example for our project I wrote on a piece of paper all different domain names: multiplicationtable.com, multiplicationstable.com, multiplications.edu, multiplicationtable.online, multiplicationtable.guru etc.

What domain would be perfect for our application? At one side you have to think about Google, a descriptive domain helps in your ranking, but on the other hand you want it to be easy to type and remember. Finally I decided to register mtable.online as my first choice multiplicationtable.com was taken. If you know a better domain that is still available, feel free to add in the comments field :)
Link domain name to Oracle APEX appOnce you have the domain name you want to link it to your Oracle APEX application.

In a future post I will cover Reverse Proxy and SSL, but for now, as I want you to see what is happening, I just configured in Godaddy to redirect to my Oracle Exadata Express url.


I don't want to let the world wait to know about our project, so I want to setup a landing or launch page. This page serves as a home while we are building our application. People can already register, so once we are live, we can let them know about it.
How do you build a landing or launch pageEither you have an idea about how you want the page to look like, or what I do as well, is look at other sites or templates created by others. For example for the APEX Office Print website we bought a template as starting point and integrated it in our APEX app.

I get often inspiration from following sites:
If you know some graphic design people, they can obviously help too :) It's easy(ier) to recognize good design, but it's hard(er) to create it yourself.

I like minimalist design or "less is more". If you look at the multiplication table project launch page, only the bare minimum is on the page: a title, a graphic, a text item to leave your email and a button (and a text to let everybody know it was built with Oracle APEX.


You find some more examples of minimalism here or just Google for it and you find plenty. Typically you will see a background picture and a text. If you find a template you like, you can look at the HTML and CSS and copy this in your own APEX page.

The font you use is really important and can make a huge difference. Google Fonts are a good starting place to pick a font. In our project I used the Raleway font.

In the last month (that I know) two other people showed how to build a landing page in APEX: Stefanie used a background picture and Richard used a video as background.
How long to build a landing pageWhen I look again at our launch page, I would probably tell you it would take me less than 30 minutes to build it in Oracle APEX. If you know what you will build, yes, but if I told you it took me well over 6 hours to build this landing page, would you believe me? It's the truth!


So where did I spend all my time then?

I first started to search for a design. I didn't really want to copy something from a previous project, but rather wanted to get a fresh new design, so I started to search, and search and search more. Finally I gave up on the idea and followed my own thoughts to do it very minimal and as close as possible to universal theme that comes with APEX.

So I added the regions, items and a button on the page:


This goes fast (if you know a bit of APEX). As I wanted the image on the left of the items and the items going down a bit, I used two regions next to each other.

I looked at the result and didn't like it, so I added some CSS and searched for another font. This was a lot of trial and error till I was happy with the result.

Once that was done, I looked how responsive it was. On a smaller screen, I didn't find it looked good enough, so I added a media query and custom CSS, so it would look better.


Oh, before I forget, whenever you build an app in Oracle APEX, include the plugin built with love using Oracle APEX.

Next up, I had to include a validation (to check if the email already exists), a process and a branch. Now here's a story too... I first started with adding a dynamic action on the Subscription button that would insert a record, but during testing I found I lost the value required and is email validation that you get for free when you submit your page, so I changed it to be a normal process.

Finally I changed on the page that duplicate submissions are not allowed.

So the end result is we have one very simple page in APEX, using standard components (regions, items, button), 1 plugin (built with APEX), Universal Theme and a bit of custom CSS.
Categories: Development

ODA X6-2M – How to create your own ACFS file system

Amis Blog - Mon, 2017-08-14 15:12

In this post I will explain how to create your own ACFS file system (on the command line) that you can use to (temporarily) store data.

So you have this brand new ODA X6-2M and need to create or migrate some databases to it. Thus you need space to store data to import into the new databases you will create.  Or for some other reason. The ODA X6-2M comes with lots of space in the form of (at least) two 3.2 TB NVMe disks. But those have been formatted to ASM disks when you executed the odacli create-appliance command, or when you used the GUI to deploy the ODA.

If you opted for “External Backups” most of the disk space will have been allocated to the +DATA ASM diskgroup. Or in the +RECO diskgroup.

Thus you need to decide which diskgroup you will use to create an ACFS file system on. Since we have 80% of space allocated to +DATA I decided to use some of that.

Logon to your ODA as root and make a mount point that you will use:

as root:
mkdir /migration

Then su to user grid and set the ASM environment:

su - grid
. oraenv
[+ASM1] <press enter>

The command below will use asmca to create a volume called migration on the ASM DiskGroup +DATA with initial allocation of 50 GB.

asmca -silent -createVolume -volumeName migration -volumeDiskGroup DATA -volumeSizeGB 50

Then you need to find the name of the volume you created in order to create an ACFS file system on it:

asmcmd volinfo -G DATA migration | grep -oE '/dev/asm/.*'

Let’s assume that the above command returned:

/dev/asm/migration-46

Then you can use the following command to create an ACFS file system on that volume and mount it on /migration:

asmca -silent -createACFS -acfsVolumeDevice /dev/asm/migration-46 -acfsMountPoint /migration

Next you need to run the generated script as an privileged user (aka root), which is the message you get when executing the previous step:

/u01/app/grid/cfgtoollogs/asmca/scripts/acfs_script.sh

To check the system for the newly created file system use:

df -h /migration

To get the details of the created file system use:

acfsutil info fs /migration

Or to just check the autoresize parameter, autoresizemax or autoresizeincrement use:

/sbin/acfsutil info fs -o autoresize /migration
/sbin/acfsutil info fs -o autoresizemax /migration
/sbin/acfsutil info fs -o autoresizeincrement /migration

To set the autoresize on with an increment of 10GB:

/sbin/acfsutil size -a 10G /migration

And to verify that it worked as expected:

acfsutil info fs /migration
acfsutil info fs -o autoresize /migration

To use the file system as the oracle user you might want to set the permissions and ownership:

ls -sla /migration
chown oracle:oinstall /migration
chmod 775 /migration
ls -sla /migration

And you are good to go!

Of course you can also use the GUI to do this, then just start asmca as the grid user without the parameters and follow similar steps but then in the GUI.

HTH – Patrick

The post ODA X6-2M – How to create your own ACFS file system appeared first on AMIS Oracle and Java Blog.

ODA X6 Small Medium Large and High Availability

Yann Neuhaus - Mon, 2017-08-14 10:46

There are 4 models of Oracle Database Appliance with the new ODA X6 which is for the moment the latest ODA hardware version. One is similar to the previous X5-2 one, and 3 smaller ones known as ODA Lite. They are 1 year old already, here is a small recap of the differences and links to more detail.

System

The ODA X6 are composed with Oracle Server X6-2:

  • ODA X6-2S has one server
  • ODA X6-2M has one server
  • ODA X6-2L has one server
  • ODA X6-2HA is a cluster of two servers with one shared storage shelf (DE3-24C). It can be expanded with one or two additional storage shelf.

Those servers have 2 USB 2.0 ports accessible (2 in front, 2 in back) and 2 internal USB ports.
They have one serial console (SER MGT/RJ-45 connector) port. And One VGA DB-15 connector, easier to plug before you put the cable rails. Resolution: 1,600 x1,200×16 MB @ 60 Hz. Note that the resolution is 1,024 x 768 when viewed remotely via Oracle ILOM).
Each server has 2 redundant power supplies (hot swappable).

Rack Unit
  • ODA X6-2S is 2U
  • ODA X6-2M is 2U
  • ODA X6-2L is 4U
  • ODA X6-2HA is 6U (up to 10U with storage expansions)
CPU

The processor of X6 servers is an Intel 2.2GHz 10-Core Xeon E5-2630 v4, 85W
Cache:
Level 1: 32 KB instruction and 32 KB data L1 cache per core
Level 2: 256 KB shared data and instruction L2 cache per core
Level 3: 25 MB shared inclusive L3 cache per processor

  • ODA X6-2S has 1 processor: 10 cores
  • ODA X6-2M has 2 processors: 20 cores
  • ODA X6-2L has 2 processors: 20 cores
  • ODA X6-2 HA has two servers with 2 processors each: 40 cores

The core factor of the processor is 0.5 and you can license the full capacity for Enterprise Edition: 5 licenses for one ODA X6-2S, 10 licenses for one ODA X6-2M or 2L, 20 licenses for ODA X6-2 HA. You can also run NUP licenses with a minimum of 125 NUP for one ODA X6-2S, 250 NUP for one ODA X6-2M or 2L, 500 NUP for ODA X6-2 HA.
Of course, you can do Capacity on Demand on all models, so the minimum processor license is 1 license for ODA Lite (when 2 cores only are enabled) or 2 licenses for ODA HA because the nodes must by symmetric (except if you run only one node). In NUP, it means 25 NUP minimum for ODA Lite or 50 NUP for ODA HA.

On ODA Lite (2S, 2M, 2L) you can choose to run Standard Edition. Then you count the number of processors: 1 license for ODA X6-2S, 2 licenses for one ODA X6-2M or 2L. When in Standard Edition 2 you can license in NUP with the minimum of 10 NUP per server.

RAM

The X6 servers have 14 DIMM slots and are partially populated with 32GB DIMMs (DDR4-2400).

  • ODA X6-2S has 4 slots populated: 128GB RAM. It can be expanded with additional 8 DIMMs for 384GB
  • ODA X6-2M has 8 slots populated: 256GB RAM. It can be expanded with additional 16 DIMMs for 512GB or 768GB which populates all the slots.
  • ODA X6-2L has 8 slots populated: 256GB RAM. It can be expanded with additional 16 DIMMs for 512GB or 768GB which populates all the slots.
  • ODA X6-2 HA has 8 slots populated per server: 256GB RAM. It can be expanded with additional 16 DIMMs for 512GB or 768GB which populates all the slots.
Network

ODA Lite:
2x 10GbE SFP+ (fiber) and 2x 10GBase-T (copper) ports for ODAX6-2S (4x 10GBase-T for 2M and 2L)
ODA HA:
InfiniBand interconnect, 4x 10GBase-T (copper) ports (bonded to provide two public interfaces) or optional 2x 10GbE SFP+ (fiber) per server and one pair of 10GBase-T will be used for interconnect.

Storage

The servers have two 2.5″ 480GB SAS-3 SDDs disks in front, mirrored for the Operating System and the Oracle Database Software

ODA X6-2S and 2M have additional two 2.5″ 3.2TB NVMe PCIe 3.0 SSD disks for DATA and RECO disk groups (6.4TB raw capacity, 2.4TB double-mirrored, 1.6TB triple-mirrored)
They are expandable to 12.8 TB with two additional disks.

ODA X6-2L has six 3.5-inch disk bays are populated with 3.2TB SSDs (19.2TB raw capacity, 9.6TB double-mirrored, 6.4TB triple-mirrored)
They are expandable to 28.8 TB with two additional disks.

ODA X6-HA has a storage shelf, as previous X5 model (similar but not compatible), but with SSD and lower capacity for DATA: 10x SAS SSD flash 1.2TB (1.6 formatted to 1.2, over-provisioned for write performance because of garbage collection) which means 12 TB (12TB raw capacity, 6TB double-mirrored, 4TB triple-mirrored) expandable to 24 TB in the same chassis. You can add another storage shelf with additional 24TB.

Note that latest ODA X5 had 16x 8TB disks, so 128TB so X6-HA has higher performance but decreased capacity.

Virtualization, High Availability

Virtualization with OVM is only for ODA X6-HA. Only one VM per node has the resources to run Oracle Databases. You can add additional ‘Guest VMs’ for your applications (not for databases as the I/O is optimal only in the ODA Base VM). You can define VLANs.

The ODA Lite (2S/2M/2L) cannot run applications on guest VMs as they are bare metal only. If you want to run applications on ODA Lite, you can now use KVM, but remember that you still need to license all activated cores for each product because KVM is only ‘soft partitioning’ for Oracle LMS.

High Availability (with RAC) is only for ODA X6-HA.
A standby database to another ODA is possible for all models: Data Guard when in Enterprise Edition, or manual standby (we recommend Dbvisit standby – see one of our customer case study http://www.dbvisit.com/customers/case-study-das-protection-juridique/) when in Standard Edition.

Price

According to the Price List (http://www.oracle.com/us/corporate/pricing/exadata-pricelist-070598.pdf)

  • ODA X6-2S costs USD 18000
  • ODA X6-2M costs USD 24000
  • ODA X6-2L costs USD 40000
  • ODA X6-2 HA costs USD 72000
Full specifications

The full specification is available in the Oracle System Handbook:

A simple presentation is in the 3D view:

 

Cet article ODA X6 Small Medium Large and High Availability est apparu en premier sur Blog dbi services.

Video: Visual JavaScript Development for Everyone

OTN TechBlog - Mon, 2017-08-14 10:31

In this on-demand session from the Full Stack Web Development track in the Oracle Code Online event in June, Shay Shmeltzer shows you how to simplify and accelerate JavaScript-based application development for both web and mobile devices with visual development tools. Helping both novice and experienced developers, Oracle's cloud-based low-code development platform provides a development and hosting environment for visual creation of complete applications that you can further extend with open-source JavaScript frameworks.

Additional Resources

Dynamic Query Execution Cost

Tom Kyte - Mon, 2017-08-14 09:46
Hi, I'm trying to write a stored proc which takes in any SQL query (select * from ...), and dumps the fetched rows into another table (DYNAMIC_QUERY_TABLE) for quick access, i.e, once this stored proc is run, another external application (like Jav...
Categories: DBA Blogs

ORA-00904: invalid identifier when specifying column from Pivot result set

Tom Kyte - Mon, 2017-08-14 09:46
I have had a Pivot result set with 40K entries, and I wanted to limit it further to see what rows from the result set with further criteria on the column values. To my surprise, I got invalid column error. Below is a simplified test case demonstra...
Categories: DBA Blogs

Database Polling Alternatives

Tom Kyte - Mon, 2017-08-14 09:46
Hi, We have a table that is populated from a UI. The requirement is that with every new addition a webservice call has to be made based on the values added to a external server. In such scenarios our previous approach has been to write a java thre...
Categories: DBA Blogs

Apex

Tom Kyte - Mon, 2017-08-14 09:46
Dear Tom How can I Install Oracle Apex on Oracle Database 12c.
Categories: DBA Blogs

Oracle Enterprise Performance Management Cloud Empowers Modern Finance Teams

Oracle Press Releases - Mon, 2017-08-14 09:00
Oracle Enterprise Performance Management Cloud Empowers Modern Finance Teams New cloud services and capabilities extend industry leading enterprise performance management suite

Redwood Shores, Calif.—Aug 14, 2017

Extending its commitment to helping organizations drive predictable performance and report with confidence, Oracle today announced significant expansions to Oracle Enterprise Performance Management (EPM) Cloud. The latest additions to Oracle EPM Cloud include new offerings for tax reporting, and profitability and cost management as well as new strategic modeling and disclosure management capabilities.

In today’s global economy, organizations need to continually refine their business models to respond to disruptive threats and competitive opportunities. To help organizations successfully manage these changes, from strategy to results, Oracle EPM Cloud empowers finance teams to quickly and effectively embrace digital technologies and modern best practices. As a result, Oracle EPM Cloud enables organizations to drive accurate and agile plans across finance and operational lines of business, accelerate financial close, streamline internal and external reporting, and ensure compliance with tax reporting regulations.

“Today’s business leaders are faced with unprecedented changes that demand a rethink of traditional EPM processes and models,” said Hari Sankar, group vice president, EPM product management at Oracle. “To be effective in this new operating environment, finance leaders need to drive operations with confidence, monitor results continuously, and course correct with agility. With the latest additions to Oracle EPM Cloud, we are empowering our customers to embrace change and take advantage of the cloud to capitalize on opportunities faster than their competition.”

To further extend Oracle EPM Cloud and give organizations fast and intuitive insight into profitability and cost, Oracle has introduced Oracle Profitability and Cost Management Cloud. The new offering enables business users to take ownership of allocation-based business processes such as customer/product profitability, management allocations, and shared services costing. As a result, organizations can enhance business performance by gaining insight into hidden profit and cost drivers across key business dimensions such as products, customers, sales, and channels.

To help organizations gain complete access to the financial data and processes needed to build an efficient and transparent corporate tax function, Oracle has introduced Oracle Tax Reporting Cloud. The new offering helps streamline all tax data collection and analysis processes and enables global organizations to manage complex country-specific tax reporting requirements through automation.

In addition to the new offerings, Oracle has also extended the capabilities of Oracle EPM Cloud to help organizations of all sizes lead with confidence in the digital economy. New Strategic Modeling capabilities enable organizations to create long-range forecast models with sophisticated scenario modeling capabilities and debt and capital structure planning features, while new Disclosure Management capabilities allow users to develop regulatory filings in a unified and collaborative environment.

“Our clients are facing constant and growing disruption in their businesses and highly developed planning and analysis capabilities are a must for leading CFOs,” said Richard Beacham, principal and EPM practice lead for KPMG in the U.S. “With the new offerings and capabilities Oracle is delivering, we believe our clients will continue to adopt our Oracle EPM Cloud-enabled solutions to help transform their business and accelerate competitive advantage.”

In recognition of its Oracle EPM Cloud capabilities, Oracle was recently placed in the Leaders Quadrant in two Gartner Magic Quadrant analyst reports: the Gartner Magic Quadrant for Cloud Strategic Corporate Performance Management Solutions¹, and the Gartner Magic Quadrant for Cloud Financial Corporate Performance Management Solutions (FPCM)².

For additional information on Oracle Enterprise Performance Management (EPM) Cloud, visit Facebook and Twitter or the Modern Finance Leader blog.

Gartner Disclaimer
Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.

1. Gartner, “Magic Quadrant for Cloud Strategic Corporate Performance Management Solutions,” by Christopher Iervolino, John E. Van Decker, June 29, 2017. Oracle has acquired distribution rights for this report, expiration June 30, 2018.
2. Gartner, “Magic Quadrant for Cloud Financial Corporate Performance Management Solutions,” by John E. Van Decker, Christopher Iervolino, John E. Van Decker, June 29, 2017. Oracle has acquired distribution rights for this report, expiration June 30, 2018.

Contact Info
Joann Wardrip
Oracle
+1.650.607.1343
joann.wardrip@oracle.com
About Oracle

The Oracle Cloud offers complete SaaS application suites for ERP, HCM and CX, plus best-in-class database Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) from data centers throughout the Americas, Europe and Asia. For more information about Oracle (NYSE:ORCL), please visit us at www.oracle.com

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle Corporation.

Talk to a Press Contact

Joann Wardrip

  • +1.650.607.1343

Interjet Increases Project Efficiencies with Oracle’s Primavera P6 Enterprise Project Portfolio Management

Oracle Press Releases - Mon, 2017-08-14 08:00
Interjet Increases Project Efficiencies with Oracle’s Primavera P6 Enterprise Project Portfolio Management Mexican airline transforms and optimizes the administration and execution of key projects

Mexico City—Aug 14, 2017

ABC Aerolíneas, S.A. de C.V., operating as Mexican airline Interjet, has seen significant efficiency gains from using Oracle’s Primavera P6 Enterprise Project Portfolio Management to coordinate, manage and execute key projects.

Interjet’s projects range from the acquisition of new aircraft to the introduction of new routes to the installation of flight simulators. The airline notes that Primavera P6 EPPM’s flexibility to adapt to different levels of project complexity and size has enabled Interjet to increase its efficiency by more than 50 percent among more than 200 projects.

"With the former tools, planning was more complicated and required us to develop complementary tools to show in a very graphic and simple way the status of each project and each responsible person. Primavera P6 EPPM has reduced the effort and time needed to analyze and present results, with benefits for those who manage the projects, those who execute and those who follow up. Oracle’s software has allowed us to contribute in a coordinated and effective way to the development of the company," said Carlos Núñez Brambila, Project Director of Interjet.

With Primavera P6 EPPM from Oracle Construction and Engineering, Interjet now also has the ability to streamline management responsibilities. It can designate one member of the project management team to control the project development, identify project deviations and bring visibility to key stakeholders to make informed decisions. Additionally, Interjet is able to map clear objectives and responsibilities for each project to corresponding specialists based on their knowledge and skills. The result is that resources are leveraged more effectively through closer coordination between various departments and managers.

Oracle’s Primavera P6 EPPM provides the real-time collaboration, visibility and scalability that enable organizations like Interjet to manage projects of any size efficiently and effectively,” said Andy Verone, Vice President, Product Strategy, Oracle Construction and Engineering. “We are thrilled to deliver transformative solutions that are improving project and business outcomes for customers in Mexico and around the world.”

Using Primavera P6 EPPM, Interjet has been able to eliminate:

  • 93 percent of the time spent on the generation of status reports by specific tasks
  • 67 percent of the time spent on work plan updates
  • 83 percent of the time spent on creating new project reports

"The transformation of Interjet, in its processes of planning, monitoring and execution of projects, through an efficient technological platform, is the mission of Oracle. To understand the challenges Mexican companies face day-by-day and to solve their needs with a platform that empowers its strengths is how Oracle contributes to the transformation of Mexico. Interjet has managed through the planning and database management solutions to support the development of projects that drive the growth and presence of the airline nationally and internationally," said Javier Cordero, Managing Director of Oracle Mexico.

Contact Info
Judi Palmer
Oracle
1-650-506-0266
judi.palmer@oracle.com
About Interjet

Interjet is an international airline based in Mexico City providing air service to 53 destinations in seven countries, including 35 cities in Mexico. Its network includes service to nine U.S. markets: Chicago, Dallas/Ft. Worth, Houston, Las Vegas, Los Angeles, Miami, New York, Orlando/Sanford and San Antonio, Montreal, Toronto. Other international routes include Havana, Santa Clara and Varadero, Cuba; Bogota, Colombia; Guatemala City, Guatemala; Lima, Peru; and San Jose, Costa Rica. The airline operates a fleet of more than 70 aircraft including the three Airbus A320neo, 47 Airbus A320’s, 04 Airbus A321-200’s and 22 Sukhoi Superjet 100’s.

About Oracle

The Oracle Cloud offers complete SaaS application suites for ERP, HCM and CX, plus best-in-class database Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) from data centers throughout the Americas, Europe and Asia. For more information about Oracle (NYSE:ORCL), please visit us at www.oracle.com.

Oracle Construction and Engineering helps companies reimagine their businesses. With best-in-class project management solutions, organizations can proactively manage projects, gain complete visibility, improve collaboration, and manage change. Our cloud-based solutions for global project planning and execution can help improve strategy execution, operations, and financial performance. For more information, please visit www.oracle.com/construction-and-engineering.

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle Corporation. 

Talk to a Press Contact

Judi Palmer

  • 1-650-506-0266

Oracle Makes the Most Powerful Database Platform Available on the Industry’s Most Advanced Cloud Infrastructure

Oracle Press Releases - Mon, 2017-08-14 07:00
Press Release
Oracle Makes the Most Powerful Database Platform Available on the Industry’s Most Advanced Cloud Infrastructure Oracle Exadata Cloud on Oracle’s next-gen cloud infrastructure further enables enterprises to seamlessly migrate mission-critical database applications and data warehouses, and develop new extreme performance cloud applications

Redwood Shores, Calif.—Aug 14, 2017

Oracle today announced that Oracle Exadata Cloud is now available on Oracle’s next-generation cloud infrastructure. The marriage of Oracle Exadata, the highest performing on-premises and public cloud database platform, with Oracle Cloud’s unique bare metal compute and storage services, delivers a combination of performance and availability for the entire application stack that only Oracle can deliver. These integrated and fully programmable cloud services enhance all stages of application development and deployment through faster connectivity, provisioning, processing, and database access with unmatched technology and industry-leading price performance.

“Oracle’s next-generation cloud infrastructure is optimized for enterprise workloads and now supports Oracle Exadata, the most powerful database platform,” said Kash Iftikhar, vice president of product management, Oracle. “With the power of Oracle Exadata, customers using our infrastructure are able to bring applications to the cloud never previously possible, without the cost of re-architecture, and achieve incredible performance throughout the stack. From front-end application servers to database and storage, we are optimizing our customers’ most critical applications.”

With the increased levels of speed and availability now possible, high-demand applications such as those utilizing real-time targeting, analytics, or personalization now run in the cloud with extreme performance. Only Oracle Cloud Infrastructure offers: self-provisioning of multiple bare metal servers in less than five minutes with each supporting over 4 million IOPS*, block storage that linearly scales by 60 IOPS per GB, and now Oracle Exadata Cloud on the same low latency Virtual Cloud Networks. This combination of features enables applications to run at unparalleled speed. In addition, only Oracle Cloud Infrastructure offers complete compatibility with Oracle Databases deployed on-premises, helping ensure a smooth transition to the cloud, and an efficient hybrid cloud strategy. Oracle Exadata Cloud has expanded its geographical footprint into the US West (Phoenix, Ariz.) region, further enabling organizations worldwide to experience all the benefits of this high-performance system in the cloud, without the burden of managing and maintaining it internally.

"FICO provides real-time fraud, risk management and compliance software solutions to thousands of banks around the globe,” said Doug Clare, vice president for product marketing, FICO. “These clients, including the world’s largest financial institutions, demand the highest levels of solution performance, reliability, and security. When we needed to extend the performance of one of our key compliance risk applications to even higher throughput and resiliency standards, we looked to Oracle, who has been a reliable partner to FICO for many years. In our testing, the combination of Oracle Exadata and bare metal compute running on Oracle’s next-generation cloud infrastructure allowed us to set a new high water mark in performance for this mission-critical application. We were very impressed with both the collaboration and the results Oracle was able to provide, and look forward to bringing these impressive results to our joint clients."

Read more about bare metal compute performance on the Oracle blog here.

*Based on testing with the Gartner Cloud Harmony test suite

Contact Info
Jesse Caputo
Oracle
+1.650.506.5967
jesse.caputo@oracle.com
Kristin Reeves
Blanc & Otus
+1.415.856.5145
kristin.reeves@blancandotus.com
About Oracle

The Oracle Cloud offers complete SaaS application suites for ERP, HCM and CX, plus best-in-class database Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) from data centers throughout the Americas, Europe and Asia. For more information about Oracle (NYSE:ORCL), please visit us at oracle.com.

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle Corporation. 

Talk to a Press Contact

Jesse Caputo

  • +1.650.506.5967

Kristin Reeves

  • +1.415.856.5145

Oracle Cloud Platform Customer Momentum Accelerates Globally

Oracle Press Releases - Mon, 2017-08-14 07:00
Press Release
Oracle Cloud Platform Customer Momentum Accelerates Globally Organizations choose Oracle Cloud Platform to accelerate innovation and business transformation

Redwood Shores, Calif.—Aug 14, 2017

Oracle today announced that it is gaining incredible customer momentum across the industry’s most comprehensive cloud business. In FY17, Oracle Cloud Platform revenues were up 60 percent from FY16 to $1.4 billion.  Organizations including Advanced Drainage Systems, ARRIS, Australian Finance Group, Benchmark, Detroit Water and Sewerage, Immofinanz AG, Malmo stad, Marz Systems, Mebrom, Nuvias Group, Pernod Ricard Asia, Telesoft, and Total are the latest to choose Oracle Cloud Platform to speed innovation and deliver best-in-class customer experiences.   

Oracle Cloud Platform provides organizations with everything they need to build, deploy, and extend applications and run business-critical workloads in the cloud.  Oracle’s PaaS helps enterprise IT and independent software vendor (ISV) developers rapidly build and deploy rich applications - or extend Oracle Cloud SaaS apps - using an enterprise-grade cloud platform based on the industry's #1 database and application server.  Oracle’s IaaS delivers a comprehensive set of integrated, subscription-based infrastructure services that enable businesses to run any workload in an enterprise-grade cloud managed, hosted, and supported by Oracle.

“Customer adoption of our Oracle Cloud Platform services is at an all-time high,” said Amit Zavery, senior vice president, product development, Oracle Cloud Platform. “We are committed to providing our customers with the most comprehensive, open, integrated, and differentiated cloud platform to help fuel innovation and redefine their businesses.”

Customers Drive Innovation and Business Transformation with Oracle Cloud Platform


"We were able to meet our goals of integration between cloud and on-premise applications, which are core to our business, in a very short time with Oracle Cloud Platform Integration solutions. We not only gained value in short time by reducing test and development time but also will have savings annually in IT expenses,” said Behshad Beheshti, Vice President of Information Technology at ARRIS. "The new system is more secure and agile, and we are excited that this system has met and exceeded our expectations."

“Today's environment is ultra-competitive, driven by nimble organizations born on cloud technology. They are driven to digitalize processes and disrupt the established,” said Andrew McGee, IT Manager, Australian Finance Group.  “To compete we've rebuilt our home loan process on Oracle Process Cloud, Oracle SOA Cloud, and Oracle Content and Experience Cloud.”

“The Detroit Water and Sewerage Department is changing its technology landscape by moving to Oracle Database Exadata Cloud Service in order to lower overall IT costs, and increase deployment flexibility of services to better serve our customers,” said Dan Rainey, CIO, Detroit Water and Sewerage Department.

“Oracle’s PaaS is of tremendous help for Immofinanz AG when it comes to bringing the real estate business from the slow and cumbersome Stone Age into a new digital era by integrating external and internal systems in a seamless and very intuitive way,” said Martin Seiser, CIO, Immofinanz AG.  “Having a heterogeneous environment connected tightly via Oracle PaaS allows us to run an efficient and lean business, which will help make Immofinanz AG one of the top real estate companies in Europe.”

“Oracle Cloud Infrastructure enabled us to dynamically adjust the compute, storage, and network resources to deliver the scale and performance our enterprise customers needed for their mission critical systems,” said Tahir Muhammad, Vice President of Information Technology at Marz Systems. “Oracle Cloud Infrastructure really empowered us to offer dedicated compute horsepower, which resulted in better performance and higher customer satisfaction.”

“With Oracle Business Intelligence Cloud, all the processed information is correct, relevant, and easy to access for all users whenever and wherever they need it,” said Conny Bjorling, Head of Enterprise Architecture, Skanska AB. “It will help to improve decision-making in our global organization.”

“Our Connect platform is core to our business and being able to move it to Oracle Cloud Infrastructure provided performance and availability superior to our own data center,” said Thierry Zerbib CTO, Telesoft.  “Oracle enabled us to get out of the datacenter business and focus on what is truly important to our organization.”

Contact Info
Nicole Maloney
Oracle
+1.650.506.0806
nicole.maloney@oracle.com
Sarah Fraser
Oracle
+1.650.743.0660
sarah.fraser@oracle.com
About Oracle

The Oracle Cloud offers complete SaaS application suites for ERP, HCM and CX, plus best-in-class database Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) from data centers throughout the Americas, Europe and Asia. For more information about Oracle (NYSE:ORCL), please visit us at oracle.com.

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle Corporation. 

Talk to a Press Contact

Nicole Maloney

  • +1.650.506.0806

Sarah Fraser

  • +1.650.743.0660

Higher Education Institutions Select Oracle EPM Cloud to Drive Student Success

Oracle Press Releases - Mon, 2017-08-14 06:59
Press Release
Higher Education Institutions Select Oracle EPM Cloud to Drive Student Success Academic institutions leverage Oracle EPM Cloud to master increasing industry complexity, innovate, and grow

Redwood Shores, Calif.—Aug 14, 2017

Higher education institutions of all sizes across the U.S. have invested in Oracle Enterprise Performance Management (EPM) Cloud solutions for the modern planning and forecasting insights. Oracle EPM Cloud customers in higher education include: Lorain County Community College, San Francisco State University, Shawnee State University, University of Maryland, Baltimore, University of Wyoming, and the University System of New Hampshire.

Oracle EPM Cloud helps higher education institutions better align budget dollars with organizational priorities to achieve academic and financial goals. With an intuitive user experience and prebuilt financial functions, higher education institutions can get greater insights from Oracle EPM Cloud’s automated data analysis. Oracle EPM Cloud also helps with statutory and management reporting requirements higher education institutions may have to stakeholders, including state and local governments, governing boards, or accreditation bodies. The increased visibility into funding and tuition changes also helps them become more efficient and effective with public and private dollars.

A public research university located in San Francisco, California, San Francisco State University (SFSU) offers Bachelor’s, Master’s, and Doctoral degrees to nearly 30,000 students. SFSU has been live on Oracle ERP Cloud and Oracle HCM Cloud for a number of years and wanted to perform advanced planning and analytics for multiple systems. They selected EPM to help them with reporting on their budget, particularly budgeting for headcount planning for future positions.

“San Francisco State University implemented Oracle EPM Cloud this year with the main goal being to reduce our time sifting through multiple systems and data downloads to just put a simple financial report or analysis together," said Elena Stoian, executive director, budget administration & operations at SFSU. "The budget office was spending more time finding data than conducting any analytical work. With Oracle EPM Cloud running, we are able to easily obtain the necessary financial data and spend more time on understanding and analyzing the numbers. Our end goal is to roll out the solution university-wide as our budgeting tool and we are on track to do just that.”

“Oracle’s cloud-based infrastructure offers the University of Maryland, Baltimore a great solution to help us achieve our goals: to minimize the costs of upgrading and maintaining hardware, while at the same time improving the functionality and security of our financial management systems as the fiscal nature of higher education grows more complex,” said Dawn M. Rhodes, chief business and financial officer and vice president. “We are counting on Oracle’s collaboration to make our cloud transition a success.”

Established in 1986 in Portsmouth, Ohio, Shawnee State University is a public university with approximately 3,600 students. As the state now allocates funding to Shawnee State based on performance and graduation rates, it needed to quickly revamp its business processes to become more cost efficient with tuition dollars. The modern features and functionality of Oracle EPM Cloud enable staff to focus on making good decisions about costs and revenue so the university can continue to provide students with a good academic experience.

“Shawnee State combines high-quality programs with affordable tuition to make college possible for students throughout Ohio and the Midwest, said Dr. Rick Kurtz, president of Shawnee State University. “Achieving greater operational efficiencies helps us remain one of the most affordable options for students. We realized immediate and significant streamlining of paper-laden, manual processes with the implementation of Oracle Cloud Applications for ERP, HCM, and EPM. With a very small contingent of staff and the help of Oracle implementation partners, Drivestream and Navigator Management Partners, Shawnee State successfully implemented the entire system in less than a year.”

“We provide higher education institutions with tools that provide transparency into the costs of higher education so they can offer their students the best academic experience possible,” said Hari Sankar, group vice president, EPM product management at Oracle. “By providing departments with insights on the revenue they generate and the resources they consume, Oracle EPM Cloud can help institutions make more informed decisions about resource alignment for their programs.”

Additional Information

Oracle Enterprise Performance Management (EPM) Cloud’s Facebook and Twitter or the Oracle Modern Finance Leader blog.

Contact Info
Joann Wardrip
Oracle
+1.650.607.1343
joann.wardrip@oracle.com
About Oracle

The Oracle Cloud offers complete SaaS application suites for ERP, HCM and CX, plus best-in-class database Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) from data centers throughout the Americas, Europe and Asia. For more information about Oracle (NYSE:ORCL), please visit us at www.oracle.com

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle Corporation.

Talk to a Press Contact

Joann Wardrip

  • +1.650.607.1343

Join Elimination Bug

Jonathan Lewis - Mon, 2017-08-14 05:59

A few years ago a bug relating to join elimination showed up in a comment to a post I’d done about the need to keep on testing and learining. The bug was visible in version 11.2.0.2 and, with a script to replay it, I’d found that it had disappeared by 11.2.0.4.

Today I had a reason to rediscover the script, and decided to test it against 12.2.0.1 – and found that the bug was still present.

Here’s the model:


rem     Script:         join_eliminate_bug_2.sql
rem     Author:         Jonathan Lewis
rem     Dated:          Dec 2012

drop table child purge;
drop table parent purge;

create table parent (
        id      number(4),
        name    varchar2(10),
        constraint par_pk primary key (id)
        deferrable initially immediate
)
;

create table child(
        id_p    number(4)       
                constraint chi_fk_par
                references parent,
        id      number(4),
        name    varchar2(10),
        constraint chi_pk primary key (id_p, id)
)
;

insert into parent values (1,'Smith');
insert into parent values (2,'Jones');

insert into child values(1,1,'Simon');
insert into child values(1,2,'Sally');

insert into child values(2,1,'Jack');
insert into child values(2,2,'Jill');

commit;

begin
        dbms_stats.gather_table_stats(user,'child');
        dbms_stats.gather_table_stats(user,'parent');
end;
/

set serveroutput off

select
        chi.*
from
        child   chi,
        parent  par
where
        par.id = chi.id_p
;

select * from table(dbms_xplan.display_cursor);

The setup is just to show you the correct results with join elimination taking place. Here’s the output from the query and the actual execution plan:

      ID_P         ID NAME
---------- ---------- ------------
         1          1 Simon
         1          2 Sally
         2          1 Jack
         2          2 Jill

4 rows selected.


PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  1whubydgj8w0s, child number 0
-------------------------------------
select  chi.* from  child chi,  parent par where  par.id = chi.id_p

Plan hash value: 2406669797

-----------------------------------------------------------
| Id  | Operation         | Name  | Rows  | Bytes | Cost  |
-----------------------------------------------------------
|   0 | SELECT STATEMENT  |       |       |       |    11 |
|   1 |  TABLE ACCESS FULL| CHILD |     4 |    48 |    11 |
-----------------------------------------------------------

On a single column join, with referential integrity in place, and no columns other than the primary key involved, the optimizer eliminates table parent from the query. But if I now defer the primary key constraint on parent and duplicate every row (which ought to duplicate the query result), watch what happens with the query:


set constraint par_pk deferred;

insert into parent (id,name) values (1,'Smith');
insert into parent (id,name) values (2,'Jones');

alter system flush shared_pool;

select
        chi.*
from
        child   chi,
        parent  par
where
        par.id = chi.id_p
;

select * from table(dbms_xplan.display_cursor);


      ID_P         ID NAME
---------- ---------- ------------
         1          1 Simon
         1          2 Sally
         2          1 Jack
         2          2 Jill

4 rows selected.


PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  1whubydgj8w0s, child number 0
-------------------------------------
select  chi.* from  child chi,  parent par where  par.id = chi.id_p

Plan hash value: 2406669797

-----------------------------------------------------------
| Id  | Operation         | Name  | Rows  | Bytes | Cost  |
-----------------------------------------------------------
|   0 | SELECT STATEMENT  |       |       |       |    11 |
|   1 |  TABLE ACCESS FULL| CHILD |     4 |    48 |    11 |
-----------------------------------------------------------

I get the same plan, so I get the same results – and notice that I flushed the shared pool before repeating the query so I haven’t fooled Oracle into reusing the wrong plan by accident – it’s a whole new freshly optimized plan.

Just to show what ought to happen here’s the last bit of the test case:


select  /*+ no_eliminate_join(@sel$1 par@sel$1) */
        chi.*
from
        child   chi,
        parent  par
where
        par.id = chi.id_p
;

select * from table(dbms_xplan.display_cursor);


      ID_P         ID NAME
---------- ---------- ------------
         1          1 Simon
         1          2 Sally
         1          1 Simon
         1          2 Sally
         2          1 Jack
         2          2 Jill
         2          1 Jack
         2          2 Jill

8 rows selected.


PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  5p8sp7k8b0fgq, child number 0
-------------------------------------
select /*+ no_eliminate_join(@sel$1 par@sel$1) */  chi.* from  child
chi,  parent par where  par.id = chi.id_p

Plan hash value: 65982890

-----------------------------------------------------------------------
| Id  | Operation                    | Name   | Rows  | Bytes | Cost  |
-----------------------------------------------------------------------
| Id  | Operation                    | Name   | Rows  | Bytes | Cost  |
-----------------------------------------------------------------------
|   0 | SELECT STATEMENT             |        |       |       |     5 |
|   1 |  NESTED LOOPS                |        |     4 |    60 |     5 |
|   2 |   NESTED LOOPS               |        |     4 |    60 |     5 |
|   3 |    INDEX FULL SCAN           | PAR_PK |     2 |     6 |     1 |
|*  4 |    INDEX RANGE SCAN          | CHI_PK |     2 |       |     1 |
|   5 |   TABLE ACCESS BY INDEX ROWID| CHILD  |     2 |    24 |     2 |
-----------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   4 - access("PAR"."ID"="CHI"."ID_P")


I ran this test on 11.2.0.4 – and then repeated it on 12.2.0.1: the bug is still present (although I thought I’d seen a MoS note saying it had been fixed in 12.1).

It’s always a little dangerous playing around with deferrable constraints – my view is that you should keep the interval of deferment as short as possible and don’t try to use it for doing anything other than correcting known data errors. At present if you have code that defers constraints and runs non-trivial queries afterwards you might want that code to start with an “alter session” to set the hidden parameter _optimizer_join_elimination_enabled to false (after checking with Oracle support, of course).


Partner Webcast – EMEA Identity & Security Partners Community Launch - Identity Security ...

Across EMEA, as organizations continue their journey to the cloud, they are looking for an integrated, intelligent and comprehensive security platform that can manage, better secure and automate...

We share our skills to maximize your revenue!
Categories: DBA Blogs

Pages

Subscribe to Oracle FAQ aggregator