You are on page 1of 68

IT’S YOUR PROJECT.

Run it any way you want to.


MARCH/APRIL 2014

Oracle Joins OpenStack Foundation OpenStack


capabilities will be integrated into a broad range of
Oracle products and cloud services / 21 An Easy
Drive to .NET Take advantage of the compact,
easily deployable Oracle Data Provider for .NET,
Managed Driver / 43 Writing PL/SQL in Oracle
Application Express Minimize the code you
write, be careful where you put it, and relocate
it to packages / 53 On Oracle Database 12c,
Part 4 Our technologist talks with Oracle product
management about Oracle Database 12c and the
Oracle Multitenant option / 59

CLOUD ENGINEERED
Oracle updates engineered systems to improve performance,
increase capacity, and deliver consolidated cloud services
2 VOLUME XXVIII - ISSUE 2 CONTENTS

SAFETY IN
TRANSFORMATION
UL, a global safety science
organization, transformed from a

CLOUD ENGINEERED single, nonprofit, US market-focused


organization to a multidivisional,
Oracle updates engineered systems to improve performance, multi-business-unit, for-profit global company.
increase capacity, and deliver consolidated cloud services. To support that transformation, UL implemented
Oracle’s Exalogic Elastic Cloud X4-2 / 18 a new Oracle-based infrastructure and business
Oracle’s Exadata Database Machine X4 / 19 software platform. —David A. Kelly
Oracle Big Data Appliance X4-2 / 20 / 32

Up Front / 5 NEWS / 21 Technology / 37 PL/SQL / 53


Oracle Joins OpenStack Writing PL/SQL in Oracle
FROM THE EDITOR / 5 Foundation Application Express
Engineered Examination OpenStack capabilities will Minimize the code you write,
—Tom Haunert be integrated into a broad be careful where you put it,
WORK IN range of Oracle products and relocate it to packages as
PROGRESS / 7 and cloud services.
ORACLE ADF / 37
much as possible.
Write It Down —Fred Sandsmark —Steven Feuerstein
REST for Everyone
Mark Rittman talks about
Build and consume database-
working with Oracle
technology and the benefits Community / 22 bound RESTful web services
with ease, using Oracle
of writing about work. PARTNER NEWS / 22 JDeveloper 12c and Oracle
—Tom Haunert
BOOK BEAT / 22 ADF. —Frank Nimphius
MASHUP / 10 ASK TOM / 59
ORACLE CLOUD .NET / 43 On Oracle Database 12c,
News, views, trends,
MARKETPLACE / 25 An Easy Drive to .NET Part 4
and tools Take advantage of the
ARCHITECT / 26 Our technologist talks with
SOA’s People Problem compact, easily deployable Oracle product management
At Oracle / 11 Are reluctant passengers Oracle Data Provider for
.NET, Managed Driver.
about Oracle Database 12c
slowing down your SOA train? and the Oracle Multitenant
EVENTS / 11 —Bob Rhubart —Christian Shay option. —Tom Kyte
Find out about upcoming CONSOLIDATED
PEER-TO-PEER / 27
technology and industry DATABASE REPLAY
All for One
events.
From sketching out a solution / 47 Comment / 63
RESOURCES / 13 to cheering on a team, groups Playing Nice Together
IN THE FIELD / 63
Your guide to Oracle can motivate and inspire. Use the Consolidated Privilege Analysis
webcasts, podcasts, white —Blair Campbell Database Replay feature It’s a cool Oracle Database 12c
papers, and more of Oracle Real Application security feature.
BRIEFS / 18 Testing in Oracle Database —Michelle Malcher
The latest product news 12c to gauge the impact of
consolidating workloads.
TIME CAPSULE / 64
Flashbacks: Culture. Industry.
—Arup Nanda
Oracle. —Rich Schwerin

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


PL/SQL shouldn't be
bomb disposal
get blown away...
SCAN THIS PAGE
WITH LAYAR APP FOR
ADDED EXPERIENCE

Oracle development made easy!


We think Oracle development should be like taking a walk in the park.
Easy development is the key to saving time and money. That’s why
we created the PL/SQL Developer tool. As simple as 1, 2, 3!
www.allroundautomations.com/plsqldev
4

Editorial
Editor in Chief Tom Haunert tom.haunert@oracle.com
Managing Editor Jan Rogers jan.rogers@oracle.com
Senior Editor Caroline Kvitka caroline.kvitka@oracle.com
Associate Editor  Patty Waddington
Contributing Editor and Writer  Blair Campbell
Technology Advisor  Tom Kyte
Contributors  Marta Bright, Jeff Erickson, Fred Sandsmark, Rich Schwerin, Leslie Steere
DESIGN
Senior Creative Director  Francisco G Delgadillo
Senior Design Director  Suemi Lam
Design Director  Richard Merchán
Contributing Designers  Jaime Ferrand, Arianna Pucherelli
Production Designers  Sheila Brennan, Kathy Cygnarowicz

Publishing
Vice President Jeff Spicer jeff.spicer@oracle.com
Publisher Jennifer Hamilton jennifer.hamilton@oracle.com +1.650.506.3794
Associate Publisher and Audience Development Director Karin Kinnear karin.kinnear@oracle.com +1.650.506.1985

Advertising sales
President, Sprocket Media Kyle Walkenhorst kyle@sprocketmedia.com +1.323.340.8585
Western and Central US, LAD, and Canada, Sprocket Media Tom Cometa tom.cometa@oracle.com +1.510.339.2403
Eastern US and EMEA/APAC, Sprocket Media Mark Makinney mark.makinney@sprocketmedia.com +1.805.709.4745
Advertising Sales Assistant, Sprocket Media Cindy Elhaj cindy@sprocketmedia.com +1.626.396.9400, x201
Mailing-List Rentals  Contact your sales representative.

Editorial Board
Ian Abramson, Karen Cannell, Andrew Clarke, Chris Claterbos, Karthika Devi, Kimberly Floss, Kent Graziano,
Taqi Hasan, Tony Jambu, Tony Jedlinski, Ari Kaplan, Val Kavi, John King, Steve Lemme, Carol McGury,
Sumit Sengupta, Jonathan Vincenzo, Dan Vlamis

Subscription Information Resources


Subscriptions are complimentary for qualified individuals who complete the form found at Oracle Products
oracle.com/oraclemagazine. For change of address, mail in label with the new address to: +1.800.367.8674 (US/Canada)
Oracle Magazine, P.O. Box 1263, Skokie, IL 60076-8263. Oracle Services
+1.888.283.0591
Magazine Customer Service Oracle Press Books
oracle@halldata.com  Fax +1.847.763.9638  Phone +1.847.763.9635 oraclepressbooks.com
Privacy
Oracle Publishing allows sharing of its mailing list with selected third parties. If you prefer that your
mailing address or e-mail address not be included in this program, contact Customer Service at
oracle@halldata.com.
Copyright © 2014, Oracle and/or its affiliates. All Rights Reserved. No part of this publication may be reprinted or other­wise reproduced without permission from the editors. ORACLE MAGAZINE IS PROVIDED ON
AN “AS IS” BASIS. ORACLE EXPRESSLY DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED. IN NO EVENT SHALL ORACLE BE LIABLE FOR ANY DAMAGES OF ANY KIND ARISING FROM YOUR
USE OF OR RELIANCE ON ANY INFORMATION PROVIDED HEREIN. The information 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. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Oracle Magazine (ISSN 1065-3171) is published bimonthly with a free subscription price by: Oracle, 500 Oracle Parkway, MS OPL-3C, Redwood City, CA 94065-1600. Periodicals Postage Paid at Redwood City,
CA, and additional mailing offices. • POSTMASTER: Send address changes to: Oracle Magazine, P.O. Box 1263, Skokie, IL 60076-8263.

Printed by Brown Printing

March/April 2014 Oracle.com/oraclemagazine


FROM THE EDITOR 5

Engineered Examination
Have you seen these Oracle engineered systems?
How often? Where?

J ust over five years ago, the January/


February 2009 issue of Oracle Magazine
Cursors ready, good luck, and . . . begin.
1. How many different Oracle engineered
was the first to feature Oracle Exadata systems are available?
Database Machine on the cover and in a 2. What is the newest—first-generation—
customer feature story. While Oracle’s Oracle engineered system?
hardware and engineered systems history 3. What generation is the latest Oracle
began in 2008, Oracle Exadata was only Exadata release ?
the first of many Oracle engineered 4. How many Oracle Magazine covers have
systems. And although Oracle Magazine’s featured Oracle engineered systems?
“coverage” began in 2009—after interior A. 3
news stories in the November/December B. 4
2008 issue—that January/February 2009 C. 5
NEXT STEPS customer cover story was only the first of D. More than 5
many stories about Oracle customers using 5. From January/February 2009 through
READ more about Oracle engineered systems Oracle Exadata and other Oracle engi- March/April 2014, how many orga-
oracle.com/us/products/engineered-systems neered systems. Oracle Magazine has also nizations that use Oracle engineered
SUBSCRIBE to Oracle Magazine continued to feature engineered systems systems have been featured in the pages
bit.ly/Kz7mqi
release news, and this issue’s cover spot- of Oracle Magazine?
DOWNLOAD Oracle Magazine for the iPad lights three updates (as of January 1, 2014) A. 3 to 7
bit.ly/1fSIto3
to the Oracle engineered systems family— B. 8 to 15
the latest releases of Oracle Exadata, Oracle C. 16 to 20
SEND MAIL TO THE EDITORS
Exalogic, and Oracle Big Data Appliance. D. More than 20
To celebrate the Oracle Exadata cover 6. How are Oracle customers using Oracle
Send your opinions about what you read in Oracle
Magazine, and suggestions for possible technical anniversary, in the spirit of social media engineered systems?
articles, to opubedit_us@oracle.com. You can interactivity and our expanded digital A. In public cloud services, including
also follow our @oraclemagazine Twitter feed or magazine distribution, I thought it would Oracle Cloud (cloud.oracle.com)
join us on Facebook at bit.ly/orclmagfb.
Letters may be edited for length and clarity and be interesting to ask you—rather than tell B. In private clouds
may be published in any medium. We consider you—about Oracle Exadata, other Oracle C. In hybrid clouds
any communications we receive publishable. engineered systems, and Oracle Magazine’s D. For consolidation
coverage of them. So here’s my first-ever E. For data warehousing
6. J: All of the above.
2013, and March/April 2014. 5. D: More than 20. “From the Editor” quiz. F. For online transaction processing
November/December 2012, November/December If you’re looking at the printed magazine G. For business analytics
2009, September/October 2010, May/June 2011,
of Oracle engineered systems: January/February or a digital print replica, the answers are H. For big data
4. D: Six covers have featured an image or images upside down at the bottom of this page. If I. For general-purpose computing
Virtual Compute Appliance. 3. Fifth generation.
Oracle Network Applications Platform. 2. Oracle you’re looking at the magazine on the iPad in J. All of the above
Data Appliance, Oracle ZFS Storage Appliance, and portrait/interactive mode or on oracle.com,
Oracle Exalytics In-Memory Machine, Oracle Big
Compute Appliance, Oracle Database Appliance, the answers will be hidden until you tap or Thanks for taking the quiz. How did you do?
Elastic Cloud, Oracle SuperCluster, Oracle Virtual click to see them.
Exadata Database Machine, Oracle Exalogic
Answers: 1. Nine engineered systems. Oracle Ready for the quiz? (Note: The time frame Tom Haunert, Editor in Chief
for these questions is as of January 1, 2014.) tom.haunert@oracle.com

CONNECT: bit.ly/aVgo69 bit.ly/orclmagfb twitter.com/oraclemagazine linkd.in/orclmag

ORACLE MAGAZINE MARCH/APRIL 2014


Simplify IT
With Hardware & Software
Engineered to Work Together
Big Data Appliance Oracle SuperCluster Sun ZFS Storage Appliance

Exalogic Elastic Cloud Exadata Database Machine

Exalytics In-Memory Machine Database Appliance

Oracle Engineered Systems

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
WORK IN PROGRESS BY TOM HAUNERT 7

Write It Down
Mark Rittman talks about working with Oracle technology
and the benefits of writing about work.

M ark Rittman is a
consultant, Oracle
Business Intelligence expert,
I also got involved with the
Oracle community many years
ago, and through it I ended up
blogger, author, Oracle writing for Oracle Technology
ACE Director, and frequent Network [OTN] and Oracle
contributor to Oracle Magazine. Magazine, and about five years
Rittman recently sat down ago, I took on the task of doing
with Oracle Magazine Editor an Oracle Business Intelligence
in Chief Tom Haunert to talk Enterprise Edition book
about how he got his start with (Oracle Business Intelligence 11g
Oracle technology, the benefits Developers Guide, 2012) for
of blogging, and the evolution Oracle Press. Writing that book
of business intelligence in was very rewarding. Of course,
the era of big data and cloud I learned a lot, but again, the
computing. The following is an feedback I’ve received has been
excerpt from that interview. fantastic as well.
Listen to the full podcast at Oracle Magazine: Tell us a little
oracle.com/magcasts. Oracle Business Intelligence expert, consultant, author, and Oracle ACE Director bit about the history of your
Mark Rittman reviews writings on Oracle technology.
Oracle Magazine: How did company blog and what the
you get started with Oracle goals and strategies are.
technology? I suppose that for about the last 15 years, Rittman: We started the Rittman Mead
Rittman: Many years ago, back in the late I’ve been working exclusively with Oracle blog (rittmanmead.com/blog) many years
’90s, I used to work for a bank in the UK that technology within the data warehousing ago, and, for one thing, it was a way for
was putting together a marketing project. area, and it’s been good fun. The technology me to write down what I was doing for the
My role at that point was to bring together has been evolving over time, and it’s been company. And one of the things we do at
lots of customer data and to analyze it, and an interesting area to be in. the company is try to recruit people who
pretty soon I reached the limits of what I Oracle Magazine: How did writing about are good writers and communicators, so a
could do on a PC with a spreadsheet. Oracle technology start for you, and where lot of the current content on the blog over
Then I heard about a new project going has it taken you? the last few years is from other people in
on at the bank—an Oracle data warehousing Rittman: I actually started about 10 or 12 the company.
project. It combined the worlds of marketing years ago with blogging. At that time, I We encourage the staff to post content,
and analytics. Oracle was an impressive started posting links to articles, writing and part of the reason is altruistic. We really
company even in those days, so I knew I had short comments, and so on. I was posting enjoy what we do, and we enjoy sharing it.
to get myself on that project as a business things about what was going on with the We want to see the industry move on and
analyst. Over the next couple of years, I world and with technology, and as I worked develop, but blogging also acts as a way of
worked my way into doing SQL queries, data with Oracle technology, I posted a few tips verifying what we’re doing. We’re sharing
warehousing, and reporting. I started off and mentions of things I was doing. our work, putting our arguments out for
working with Oracle Database and then got I found that writing things down and review, and trying to make sure we’re doing
more into data warehousing, ETL [extract, explaining them in detail in the blog was it correctly.
transform, and load], developer tools, really helpful to me, and the feedback I got Oracle Magazine: Do you have suggestions
and so on. I ended up leaving there after a was also really helpful. Part of my consultancy for bloggers or would-be bloggers on how to
few years and working for an automotive job is going out and helping customers, but keep and maintain a blog?
JOHN BLYTHE

company on its data warehouse project. And another big part of it is writing stuff down— Rittman: One of the things people often
after that I got into consultancy. communicating and showing what I’m doing. say to me is, “I don’t know what to write” or

ORACLE MAGAZINE MARCH/APRIL 2014


8 work in progress

“It’s been covered before.” People always


feel they’ve got to cover something new or
“Get stuff out there—make sure that you
something that hasn’t been spoken about show your work and that you explain what
before. I say to people, even if you’re cov-
ering something that’s been covered before,
you’re thinking, but get it out there and start
your perspective on it can be interesting. interacting with the community.”
There’s always an element that’s valuable.
I think there’s almost a kind of race among Oracle BI tools are particularly well suited and work with some of the product teams on
bloggers wondering what new thing they can for combining traditional data with what’s new features and so on.
cover today, but a lot of people reading blogs going on in the big data world. I guess we’re useful to customers,
are new to the technology or the area. Oracle Magazine: What do you see as the key because we’re a good source of information,
By writing things down, you’ll benefit use cases for BI cloud services? but also I think we’re useful to Oracle, in that
yourself by putting your thoughts together Rittman: I see two main use cases for cloud we’re an honest friend and critic of some of
in a coherent way. The feedback you get BI today. One is BI reporting in your cloud the products. We can give good, informed
will build your confidence as well. Also, it’s applications, such as CRM [customer rela- feedback on what the market is saying,
really easy to publish things these days, tionship management] or HCM [human what the customers want, what needs to be
so just give it a go. Get stuff out there— capital management]. Deploying this cloud improved, what is working well, and so on.
make sure that you show your work and BI, however, is a big, IT-centric task. Oracle Magazine: What’s next for you and
that you explain what you’re thinking, but People use or want to use cloud applica- Oracle technology?
get it out there and start interacting with tions in simple deployments as self-service Rittman: Big data and the cloud are big
the community. consumers, so cloud BI needs to be about focus areas for my company and me. New
Oracle Magazine: How have your own study making it as easy to use as search engines or datasources, bigger volumes of datasources,
and coverage of business intelligence [BI] any other cloud application and having APIs different insights, and different ways of
evolved, and how are you looking at big data and hooks into different new cloud data- analyzing data are all very interesting. The
and other technologies today? sources. That’s one use case. things we’re moving to the cloud, how they
Rittman: Having worked in the BI area The other cloud BI use case is all about work there, how we leverage that tech-
now for 10 or 12 years and having written a business agility. You don’t want to spend six nology, and how we make ourselves more
blog for that period of time, I can look back months provisioning new servers and hard- agile in the cloud are also very interesting
and see how things have changed. When I ware and so on for BI projects, so running BI from a BI perspective.
started, BI was all about reporting in a single in the cloud can help you get results more Releases of Oracle BI products will always
database, and often that database would quickly. Cloud BI enables you to spin up be interesting, and I’m really intrigued by
have data from a single application and all virtual BI servers in the cloud. the upcoming in-memory option for Oracle
the reporting was graphs and charts. So the two use cases boil down to these: Database. A lot of the work we do currently
What’s changed over the years starts with one is BI running in the cloud and interacting is in-memory, but it’s not been something
the perception of the value of BI, which has with cloud applications, and the second is all that’s been embedded deep in the database
gone up significantly along with its reach about business agility and how you can use before. There will be things you can do dif-
and pervasiveness. What that translates to the cloud to get results and value faster. ferently with the in-memory option, and the
in practice is an increase in the quantity and Oracle Magazine: You’re an Oracle ACE speed will change how you analyze things
variety of datasources. BI is not just about Director. Tell us about that: what’s and deliver different kinds of insights to dif-
databases now—it can also include other involved, what are the responsibilities, and ferent users. 
things: unstructured data, semistructured what are the benefits of being an Oracle
data, applications, and more. ACE Director?
Next Steps
The data that can be part of BI has Rittman: Oracle ACE Director is an inter-
changed a lot, and that obviously touches esting role. An Oracle ACE Director is very LEARN more about Oracle Business
on what’s termed big data. Big data is a fas- knowledgeable about Oracle products, has Intelligence solutions
cinating area, because people understand product experience, and can speak authori- oracle.com/bi
its value and there’s a lot of very innovative tatively about the products but isn’t an READ more Rittman
Rittman Mead blog
big data work going on outside the BI arena. Oracle employee. rittmanmead.com/blog
And at some point, you want to bring that One of the requirements for the program Oracle Magazine business intelligence columns
big data back into your structured environ- is to share our experiences with the Oracle bit.ly/1cci4Od
ment and report on it in a nice way with your community, including user groups. Another Oracle Business Intelligence 11g
BI dashboards, alerting systems, mobile big part is to interact with Oracle, so Oracle Developers Guide
amzn.to/J61vZm
devices, and so forth. ACE Directors participate in beta programs

March/April 2014 Oracle.com/oraclemagazine


The foundation of business network uptime.

APC by Schneider Electric Smart-UPS units


protect 24/7/365 network availability.
Safeguarding critical networking switches and routers
Your business depends on your business network. Protecting that network,
therefore, is more critical than ever. Known for their reliability for over 25 years,
APC™ by Schneider Electric Smart-UPS™ uninterruptible power supplies
eliminate costly downtime by providing reliable, network-grade power over a
wide range of utility conditions. They keep employees connected to business-
critical applications whether they are in house, at a co-location facility, or in
Intelligent battery backup
the cloud.
> Avoid costly power problems by keeping your IT
A Smart-UPS model for every need equipment and data safe and available with network-grade
power conditioning.
Whatever your IT needs and configuration, we have the right Smart-UPS
> Reduce operating and maintenance costs with a patented
model. The family offers multiple form factors (tower, rack optimized, and
green operating mode for high efficiency and intelligent
rack/tower convertible) to deliver flexibility for any environment. And you battery management that prolongs life and alerts well in
can scale runtime to business requirements. In addition, you can proactively advance of replacement.
manage the network closet remotely and optimize energy use through a > Save time with easy and convenient remote accessibility,
patented “green mode” on many models. Deployment is easy with optional safe operating system shutdown, and innovative
Schneider Electric installation services. Smart-UPS backup units: the energy management.
intelligent choice for your business network! > Achieve smarter productivity by tailoring a variety
of settings, including switched outlet control, to your
Business-wise, Future-driven.™ application needs via the intuitive LCD interface or software.

Reduce human-error downtime, too!


How Monitoring Systems Reduce
Human Error in Distributed Server
Rooms and Remote Wiring Closets
White Paper 103

Get guidance in our FREE white paper and enter to win


Revision 0

by Dennis Bouley

Contents
> Executive summary

a Samsung Galaxy Gear!


Visit: www.apc.com/promo Key Code: g184u Call: 888-289-APCC x6586

©2014 Schneider Electric. All Rights Reserved. Schneider Electric, APC, Smart-UPS, and Business-wise, Future-driven are trademarks owned by Schneider
Electric Industries SAS or its affiliated companies. All other trademarks are the property of their respective owners.
www.schneider-electric.com • 998-1209036_GMA-US_Gear
10
MashUp News. Views. Trends. Tools.

Your smartphone comes with a basic calculator, but these apps will do more.
CALCUL ATOR APPS

10bii Financial RealCalc Plus Mortgage MyScript


Calculator This full-featured Calculator Tired of missing the
Modeled after HP’s scientific calculator House shoppers tiny keys on your
famed 10BII Financial handles fraction can snap a picture smartphone screen?
Calculator, this conversion and of a house and then With this app you
app computes loan calculation; converts enter loan amount, input mathematical
payments, interest units for distance, interest, taxes, and operations—including
rates, amortization, area, volume, mass, other factors to exponentials, trig and
time value of money, and more; supports determine monthly log functions, and
investment value, binary, octal, and payments. Also constants—by writing
and more. US$5.99 hexadecimal modes; handles refinancing with a fingertip or
(iPhone, iPad, and does trig and accelerated stylus. Free (iPhone,
Android). functions in degrees, payments. Free iPad, Android). “At its core, creative
radians, or grads. visionobjects.com
bit.ly/1m8YvYs
US$3.49 (Android).
(iPhone, Android). confidence is about
bit.ly/1iaB7tC
bit.ly/1b66u3i believing in your ability
to create change in the
world around you. We
think this self-assurance,
this belief in your

A Case for
creative capacity, lies at
the heart of innovation.”

Multitasking
—Tom Kelley and David Kelley,
authors of Creative Confidence
(Crown Business, 2013)

Your iPhone needs a case, and you need to


carry a multitool for work and recreation. STAND UP FOR
Turn your iPhone case into a toolbox with YOUR RIGHTS
the TaskOne case. Packing a 2.5-inch Nearly 70 percent of
serrated knife, saw blade, screwdrivers, full-time American
pliers, wire strippers, bottle opener, Allen workers hate sitting, yet 86 percent
wrenches, and more, this light 89 G do it all day, every day. And when
polycarbonate-and-metal case is available they do get up, 56 percent of those
for iPhone 4, 4s, 5, and 5s. One downside: surveyed said it’s to get food. One
you’ll never get it through airport security. thousand full-time workers in the
US$79.99–$99.95. thetasklab.com continental US were surveyed.
Source: Ergotron JustStand Survey, juststand.org

TOP IOT GOVERNANCE


This Ball Gives Back
1%

CHALLENGES 2% 1%

Security and privacy rank highest on the 6%


list of governance challenges related If gadgets motivate you
to the Internet of Things (IoT). More 7% to leave your desk and
than 2,000 IT security and governance exercise, why not work
professionals were surveyed. 9% 38% on your basketball skills?
The 94Fifty Smart Sensor
INCREASED SECURITY THREATS Basketball has nine sensors
DATA PRIVACY 9% inside that measure and
IDENTITY/ACCESS MANAGEMENT
deliver real-time shooting
ATTACKS AGAINST CONNECTED DEVICES
COMPLIANCE REQUIREMENTS
and ball-handling feedback—including shot speed, backspin,
28% and shot arc—to an iOS device via a Bluetooth low energy
OWNERSHIP OF TECHNOLOGY/DATA OUTSIDE IT
THIRD-PARTY REQUESTS FOR DATA wireless connection. The free companion app trains you on
OTHER skills such as shot release speed and power dribbling, moves
I-HUA CHEN

THERE AREN’T ANY


you through personalized workouts, and lets you compete with
Source: ISACA 2013 IT Risk/Reward Barometer, isaca.org other players via social media. US$295. 94fifty.com

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


Events 11

Technology Events Oracle User Groups

Conferences and sessions to help you stay Oracle User Group Norway
Spring Seminar
on the cutting edge April 3–5, sailing from Oslo, Norway
ougn.no/a/320

Oracle User Group Finland Exadata


SIG Meeting
COLLABORATE 14 April 8, Espoo, Finland
bit.ly/ICWqab
April 7–11, Las Vegas, Nevada
This annual Oracle technology and applications Twin Cities Java User Group Meetings
forum is designed by and for users. More than 1,000 April 14 and May 12, Eagan, Minnesota
educational sessions based on presenters’ real-world bit.ly/19VE5wr
experiences are offered in 23 tracks. Continuing Piedmont Triad Oracle Users
professional education credits are available for the Group Meeting
Financial Modules track and select sessions in the April 16, Greensboro, North Carolina
stewartmc.com/ptoug
Business Intelligence/Data Warehousing/Enterprise
Performance Management track. Networking UKOUG Solaris SIG Meetings
events, special interest group sessions, and an April 16 and May 21, London, England
ukoug.org
exhibitor showcase are planned.
collaborate14.ioug.org Calgary Oracle Users Group Meetings
April 17 and May 15, Calgary, Alberta, Canada
coug.ab.ca
2014 Life Insurance Conference Gartner Customer Strategies and UKOUG Taleo SIG Meeting
April 7–9, Chicago, Illinois Technologies Summit April 24, London, England
fbit.ly/19AQnxS April 28–29, London, England ukoug.org
Attendees network with industry leaders and fgtnr.it/188oCOe Java User Group Frankfurt Meeting
learn about life insurance industry developments, Business and IT customer relationship manage- April 30, Frankfurt, Germany
marketing strategies, and product innovations. ment (CRM) leaders attending this summit jugf.de
learn about social and mobile CRM, big data, The Chartered Institute for IT, BCS
Devoxx France customer analytics, and customer experience. Berkshire Branch, Committee Meeting
April 16–18, Paris, France May 6, Reading, England
berkshire.bcs.org
fbit.ly/188ouOJ ACORD LOMA Forum
This combined conference and trade show May 4–6, Orlando, Florida OpenWest Conference
focuses on Java Platform, Standard Edition 8; fbit.ly/1eMKca4 May 8–10, Orem, Utah
Java Platform, Enterprise Edition 7; Java The Association for Cooperative Operations openwest.org
Standard Edition for Business; mobile; cloud Research and Development (ACORD) offers 10 Great Lakes Oracle Conference
computing; and big data. tracks for attendees to explore IT, e-business, May 13–14, Cleveland, Ohio
data analytics, and other subjects related to neooug.org/gloc
Higher Education Data insurance and financial services. Oregon and Southern Washington
Warehousing Conference Oracle User Group Meeting
April 27–30, Philadelphia, Pennsylvania Document Strategy Forum May 13, Portland, Oregon
oswoug.org
fhedw.org May 13–15, Greenwich, Connecticut
Created for university technical developers, fdocumentstrategyforum.com Northern California Oracle Users Group
administrators, data custodians, researchers, This high-level forum is for enterprises that Spring Conference
May 15, Santa Clara, California
and data consumers, this event includes a pre- create, produce, deliver, and manage transac- nocoug.org
conference training day. tional and customer communications.
JavaCro ’14
May 19, Zagreb, Croatia
Events locator Location Intelligence 2014 javacro.org
May 19–21, Washington DC
Oracle Events flocationintelligence.net UKOUG Public Sector HCM
oracle.com/events Customer Forum
Attendees discuss analysis of location-based
Getty Images

May 22, Solihull, England


Locate User Groups information from sensors, social media, indoor ukoug.org
oracle.com/technetwork/community
positioning, and other technologies.

oracle magazine March/april 2014


3G 9:41 AM

Reach More than 700,000 Oracle Customers


with Oracle Publishing Group

Connect with the Audience that Matters Most to Your Business


Oracle Magazine
The Largest IT Publication in the World
Circulation: 550,000
Audience: IT Managers, DBAs, Programmers, and Developers

Proft
Business Insight for Enterprise-Class Business Leaders to Help Them Build
a Better Business Using Oracle Technology
Circulation: 100,000
Audience: Top Executives and Line of Business Managers

Java Magazine
The Essential Source on Java Technology, the Java Programming Language,
and Java-Based Applications
Circulation: 125,000 and Growing Steady
Audience: Corporate and Independent Java Developers, Programmers,
and Architects

For more information


or to sign up for a FREE
subscription: Scan the
QR code to visit Oracle
Publishing online.

Copyright © 2012, Oracle and/or its affliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affliates. Other names may be trademarks of their respective owners. 113940
Resources 13

What’s New at Oracle


The latest videos, podcasts, blogs, and more

Webcasts systems experts from Oracle discuss how using Videos


“Announcing Exadata X4: What’s New” Oracle’s integrated hardware and software helps Oracle Systems for Oracle’s JD Edwards
fbit.ly/1kzZwbl Alpha Natural Resources get the most from its fbit.ly/18CNga8
Get the details about how Oracle Exadata X4 Oracle E-Business Suite investment. Discover how running Oracle’s JD Edwards
increases performance, enhances availability, EnterpriseOne solutions on Oracle systems
and expands manageability, making it possible “Modernize Your Enterprise with ERP can help accelerate response times, reduce IT
to improve business agility, reduce IT costs, and in the Cloud” costs, and give decision-makers the informa-
add real-time performance for consolidation and fbit.ly/18a6lQC tion they need.
database as a service. Find out from third-party analysts and Oracle
experts what questions to ask and how to weigh Simplicity and Elasticity with Oracle
“Plug into Defense-in-Depth with the potential benefits, challenges, and risks of WebLogic Server 12.1.2 Dynamic Clusters
Oracle Database 12c” choosing to operate enterprise resource planning fbit.ly/IHT9GQ
fbit.ly/18xs5Rp (ERP) systems in the cloud. Easily scale up new clusters in your cloud
Find out how Oracle Database 12c and a with Oracle WebLogic Server 12c’s dynamic
defense-in-depth security strategy can safe- “CFO Technology Insights: clustering capabilities.
guard your mission-critical data. Secrets of M&A Masters”
fbit.ly/18mixsf Oracle WebLogic Server 12.1.2 Installation,
“Managing Database as a Service: Hear from specialists at Oracle and Deloitte Configuration, Upgrade, and Patching
Calling All DBAs” about how to prepare your people, processes, and fbit.ly/IEsbQf
fbit.ly/1g70eiD IT infrastructure to make sure your mergers and Watch demonstrations of how to install, con-
Analyst firm Ovum delves into how database as a acquisitions drive shareholder value. figure, upgrade, and patch Oracle WebLogic
service facilitates the adoption of demand-led IT Server 12c using its new unified tools.
delivery and provides strategic opportunities for “Oracle Retail 14 Launch”
database administrators. fbit.ly/1bEkNQ6 Rapid Technology Migrations with Oracle
Oracle executives share what’s new in Oracle Migration Factory
“Introducing Oracle’s Most Powerful Retail 14, which provides planning, supply fbit.ly/IHTSaZ
Engineered System: Oracle chain, merchandising, commerce, consumer Find out how Oracle Migration Factory can help
SuperCluster M6-32” engagement, and analytic processes and solu- you migrate technology efficiently and with the
fbit.ly/189YtOV tions that enable enterprises to deliver on the lowest risk and cost.
Find out how to use Oracle SuperCluster M6-32 brand promise.
to run a full range of mission-critical databases E-Books
and applications on a single system in a consoli- Calculators Oracle Data Integration 12c E-Book:
dated private cloud environment. Hadoop Readiness Assessment The Path to the Future
fbit.ly/18iiW26 fbit.ly/IEsNFl
“Maximizing the Business Value of Oracle’s Answer 13 multiple-choice questions and learn Read an interactive e-book to get the latest
PeopleSoft on Oracle Systems” where you stand with developing business cases Oracle Data Integration resources, including white
fbit.ly/INTrwH and use cases for big data initiatives, purchasing papers, data sheets, and customer case studies.
Oracle customers discuss how running Oracle’s and running an Apache Hadoop cluster, and real-
PeopleSoft on Oracle systems helps drive pro- izing the value of big data. Oracle SuperCluster Family: Our Fastest and
ductivity and increase business insight. Most Scalable Engineered Systems
Assess Your Company’s IT Complexity fbit.ly/191cZau
“Maximize Business Innovation and IT fbit.ly/IszSJE Learn about Oracle SuperCluster engineered
Efficiency by Running Oracle E-Business Find out how complex your IT environment is. At systems, which combine servers, storage, net-
Suite on Oracle Systems” the end of this 18-question online survey, you’ll working, and software, engineered and optimized
fbit.ly/18CMmdR get a free, customized report and recommenda- to work together in a single machine to meet your
Executives from Alpha Natural Resources and tions to simplify IT and drive innovation. large-scale data center needs.

oracle magazine March/April 2014


14 Resources

overHEARD Oracle University


Oracle Enterprise Manager 12c Training
“The number one difference that has been noticed by our fbit.ly/1dQrLF2
users is the fact that we’ve been on Oracle Exadata for over Gain the Oracle Enterprise Manager 12c skills you
need to accelerate your journey to the cloud.
a calendar year now and during that entire year we have had
no unplanned downtime. We were averaging two unplanned Oracle Application Server and
downtimes per month.” Infrastructure Training
—Jeff Bauserman, Director of Business Applications, Alpha Natural Resources, in “Maximize Business fbit.ly/1gEVAG9
Innovation and IT Efficiency by Running Oracle E-Business Suite on Oracle Systems” (bit.ly/18CMmdR) Learn about Oracle’s leading Oracle WebLogic
Server 12c and Oracle Coherence 12c products.
Oracle VM: Application-Driven Virtualization Oracle Systems: The Best Platform for
for the Modern Data Center and the Cloud Oracle’s JD Edwards EnterpriseOne Oracle Cloud Software-as-a-Service Training
fbit.ly/1aVy5TM fbit.ly/1izZvZe fbit.ly/II4N4E
Find out why traditional virtualization is no longer See how running JD Edwards EnterpriseOne Prepare end users, administrators, and developers
enough. Learn how Oracle VM simplifies IT, solutions on Oracle systems offers enhanced to reap the benefits of Oracle Cloud services with
makes your life easier, and allows you to reduce business insight and faster reporting for Oracle Cloud software-as-a-service training.
risk and cost. enhanced decision-making.
Oracle Security Overview
Consulting Oracle Systems: The Best Platform for fbit.ly/18ivvum
“Oracle Enterprise Applications: Oracle’s Siebel CRM Take an online video course and learn about
The Roadmap to Fusion” fbit.ly/1bgGy7i Oracle’s solutions for security.
fbit.ly/1g74ajB Access a range of practical resources designed
Get expert information from Oracle Consulting to help you discover the advantages you can gain Optimized Data Center Training
about Oracle Fusion Applications’ modular imple- by migrating your customer relationship manage- fbit.ly/1bhHpBl
mentation options. ment (CRM) environment to Oracle’s systems. Get the expertise you need to transform your
existing data center infrastructure.
“Three Innovations Disrupting the Podcasts
Technology Migration Process” “Access Enterprise Applications from web locator
fbit.ly/IsAcrQ Tablets with Oracle Secure Global Desktop
Learn the keys to a successful technology migra- fbit.ly/1hMZbVN Oracle Blog Center
oracle.com/blogs
tion, from executive buy-in and architectural Find out how Oracle Secure Global Desktop can
Oracle Consulting
planning to the right tools and expertise neces- be used to access Oracle applications and other oracle.com/consulting
sary for your technology initiative. enterprise software using nearly any client device, Oracle Events and Webcasts
including tablet devices. oracle.com/events
White Papers Oracle Newsletters
“Improving Your Data Center Through “Alpha Natural Resources Runs Oracle oracle.com/newsletters
Integration: Oracle Delivers an Improved E-Business Suite on Oracle Systems and Oracle Podcast Center
oracle.com/podcasts
SuperCluster” Eliminates Unplanned Downtime”
Oracle University
fbit.ly/1bIBLhW fbit.ly/18a4Xxs bit.ly/ouoramag
Read what the Clipper Group has to say about Alpha Natural Resources executives discuss Oracle on Facebook
Oracle SuperCluster T5-8 and how it reduces the how running Oracle E-Business Suite on Oracle facebook.com/oracle
complexity of assembling, initializing, managing, systems helped the company eliminate unplanned Oracle on Google+
and optimizing a robust platform for mission- downtime and gain increased performance. bit.ly/LdGiM0
critical work. Oracle on LinkedIn
linkedin.com/company/oracle
“University of Central Florida Runs Oracle’s
Oracle on Twitter
Resource Centers PeopleSoft on Oracle Systems and twitter.com/oracle
Oracle Systems: The Best Platform for Increases Productivity” Oracle Support
Oracle E-Business Suite fbit.ly/1aAaoQY oracle.com/support
fbit.ly/1bhGeSp Leaders from the University of Central Florida My Oracle Support
Discover how running Oracle E-Business Suite reveal how they improved system performance by myoraclesupport.com
on Oracle systems can help you improve business four times and reduced annual hardware mainte- My Oracle Support Communities
communities.oracle.com
flows, stimulate growth, and boost revenue. nance costs by more than US$120,000.

March/April 2014 Oracle.com/oraclemagazine


YOUR DESTINATION FOR ORACLE AND JAVA EXPERTISE
Written by leading technology professionals, Oracle Press books offer
the most definitive, complete, and up-to-date coverage of the latest
OCA, OCP, and upgrade exams available.

OCP Upgrade to OCA Oracle Database 12c OCA Oracle Database 12c
Oracle Database 12c SQL Fundamentals I Installation and Administration
Exam Guide Exam Guide Exam Guide
Sam Alapati Roopesh Ramklass John Watson
This self-study tool offers coverage Prepare for OCA Exam 1Z0-061 Get complete details on all
of OCP Exam 1Z0-060. Electronic with this comprehensive guide. objectives for OCA Exam 1Z0-062.
content includes two practice Electronic content includes two Electronic content includes two
exams and a PDF eBook. practice exams and a PDF eBook. practice exams and a PDF eBook.

Available in print and eBook formats

www.OraclePressBooks.com @OraclePress OraclePress


ADVERTISING SUPPLEMENT

Improving Business Agility


and Cost Savings with Large Data Volumes
Smart partitioning enables IT organizations to better leverage their corporate data by
improving application performance while simultaneously minimizing costs.

R educing costs and improving agility are top


business initiatives that have a direct impact on IT
spending priorities. The challenge many database
administrators face, however, is trying to keep costs down
while simultaneously increasing effciencies when large data
How does smart partitioning work,
and what are its benefts?
With smart partitioning, data can be proactively
organized physically in the underlying database to
maximize performance. This simplifes future data
management processes when data eventually becomes
eligible for archiving or even deletion. As a result, IT
organizations can minimize application management
and maximize performance while simultaneously
reducing costs, without the need to invest in larger
hardware or spend time continuously tuning the
application.

What differentiates Informatica’s smart


partitioning solution from the competition?
Informatica Smart Partitioning, a differentiating
feature of Informatica Data Archive, a highly scalable,
high-performance data archiving software, can help
IT teams improve application performance—and do
so cost-effectively. Based on the underlying Oracle
Database partitioning capability, customers realize
Julie Lockner, Vice President of Information Lifecycle Management at Informatica
improved performance, reduced data footprint,
and streamlined operational effciencies without
volumes accumulate in underlying application databases. Julie moving production data out of the database while
Lockner, vice president of Information Lifecycle Management using existing hardware. The solution is completely
at Informatica, explains how smart partitioning can help transparent to the application. Informatica Smart
Oracle customers solve this challenge. Partitioning eliminates the need to remove data out
of the production database without changing the way
Q: With IT budgets either remaining fat or users access data. Informatica Smart Partitioning is a
increasing only minutely, how can database smarter alternative to database archiving, especially
administrators maintain application performance for Oracle E-Business Suite.
with the explosion of big data in the enterprise?
A: Investing in more powerful hardware to keep up How can smart partitioning improve performance
with business requirements is one option; another for Oracle E-Business Suite customers?
option is to implement a data archive solution. By deploying a solution that automatically segments
However, a combination of Informatica’s Smart the Oracle data against specifc Oracle E-Business
Partitioning with Oracle ZFS is an ideal option and Suite criteria, each segment can be accessed and
an effective solution. managed as an individual unit while maintaining
[PARTNER Q&A

Key Benefts of Informatica Data


Archive with Smart Partitioning
referential integrity. This ensures end users beneft
from improved performance without changing how and Oracle ZS3 Storage Appliance
they leverage the data, because each segment can > Storage cost savings
be accessed and managed individually. Business > Simplifcation and automation of a complex process
users can self-select how much data is processed > Re-allocation of IT resources
either in a query or a report. This gives users full > Centralized administration tools
control over the performance benefts without > Process automation/simplifcation
requiring the applications DBA to lift a fnger. > End-user satisfaction
> High performance and high availability
Here’s an example: an electronic components leader > Reduced storage footprint, energy use, and cost
took control of data growth in an Oracle E-Business with Oracle Hybrid Columnar Compression for Oracle Database
Suite 12 environment as its IT team fought to > Storage effciency with integrated software
effciently manage growing ERP data volumes. The
data footprint caused degradation in performance,
impacting end users and fnancial analysts.
Performance needed to be fxed and a hardware
With Informatica Smart Partitioning,
upgrade was not an option for budget and logistical
reasons. With Informatica Smart Partitioning, reports reports that took two hours now
that took two hours now complete in 20 minutes. complete in 20 minutes.
The technology not only transformed application
performance and reduced complexity—it also IT investment. Neither upgrading the hardware
signifcantly lowered the cost of data by reducing platform nor archiving were options, because the
the footprint by 60 terabytes and streamlined deployment was new and data was not eligible for
the way the critical environment is managed. The archiving. Using Informatica Smart Partitioning, the
solution was implemented in days with a quick company has increased sales growth by improving
six-month return on investment. the performance of the sales commission system,
lowered the time needed to process data by one
How does smart partitioning ultimately help fourth, and reduced the demand for storage by 200
organizations better achieve their business goals? gigabytes per quarter. This was accomplished with
Let’s take the example of a global the existing hardware without the need to archive or
telecommunications enterprise. Large data purge production data. Previously, backups, clones,
volumes impacted the ability of its sales team to and maintenance were taking multiple day outages
achieve optimum productivity due to unacceptable to accomplish. The company had three full-time
performance of its Oracle E-Business Suite incentive database administrators working on maintenance
compensation implementation. The company and performance. The company now has one full-
had reached a point where the business users time and one part-time database administrator to
were not able to use the application wasting the accomplish the same tasks.

For more information, please


visit www.Informatica.com/solutions/oracle/
18 Product Resources

TUTORIALS AND VIDEOS Oracle’s Exalogic Elastic Cloud X4-2 Now Available
Oracle ILOM CLI x86 Next Boot Task Oracle’s Exalogic Elastic Cloud X4-2, the “Enterprises have been looking for
This Oracle Integrated Lights Out Manager latest release of the Oracle Exalogic engi- an integrated solution that provides the
command-line interface interactive simu-
neered system, combines more-powerful highest levels of application performance,
lation tutorial shows you how to configure a
hardware and software to deliver extreme rapid installa-
temporary next boot device.
processing, very large memory capacity, and tion, and flexible
„bit.ly/KtiOUu
a comprehensive range of application deploy- deployment. Only
Importing OBIEE Data into ment architectures that can be deployed on a Oracle Exalogic
Microsoft Excel single, optimized engineered system. delivers superior
This tutorial for business analysts covers
Exalogic Elastic Cloud X4-2 provides performance with
steps to import data from Oracle Business
higher throughput than previous releases single-vendor
Intelligence Enterprise Edition subject
areas into Microsoft Excel via native Open and, coupled with Oracle’s Exabus tech- support for
Database Connectivity. nology, delivers near-native response times Java and Oracle
„bit.ly/JYFueZ for virtualized applications, resulting in Applications,”
greater consolidation benefits. Exalogic says Thomas
Java EE 7: Implementing JMS 2.0
Elastic Cloud X4-2 provides 50 percent Kurian, executive
Shared Subscriptions in the Java
more cores per node and 33 percent more vice president of
SE Environment
This tutorial covers how to implement Java storage capacity with the Oracle ZFS product develop-
Message Service 2.0 (JMS 2.0) shared Storage ZS3 series appliances, compared to ment at Oracle.
nondurable subscriptions and shared durable the previous generation. bit.ly/1dhmq3p
subscriptions in the Java Platform, Standard
Edition (Java SE) environment.
„bit.ly/1cwmjTY Oracle Unveils Oracle SQL Developer 4.0
Oracle Mobile and Social Series The latest release of Oracle’s integrated forms to Oracle Database 12c.
Topics in this tutorial series include Native development environment, Oracle SQL “Harnessing the power of enterprise data
Mobile Login using Oracle Mobile and Developer 4.0, streamlines Oracle Database has never been easier for the more than
Social Access Management, Setting Up 12c adoption and helps increase produc- 3.3 million developers who use Oracle SQL
the Environment for Mobile and Social tivity. It allows users to manage pluggable Developer,” says Michael Hichwa, vice presi-
Access Management Hands-On, and databases and enhance reporting with dent of software development at Oracle.
Social Login using Oracle Mobile and dozens of additional charting options. “Leveraging Oracle SQL Developer 4.0 as a
Social Access Management. Users can also streamline development free support to Oracle Database 12c, organi-
„bit.ly/1dqorub with an enhanced command-line interface, zations can adopt the world’s most capable
Oracle Application Testing improve code with source control support, database quickly and easily.”
Suite 12.3: How to Install and speed migration from third-party plat- bit.ly/1dhoatp
Oracle Flow Builder
This 15-minute video provides step-by-
step instructions to install Oracle Flow Oracle Eloqua Delivers Better Customer Experiences
Builder and the prerequisite software. Oracle has updated Oracle Eloqua Marketing a detailed view of the prospect. AppCloud,
„bit.ly/19MY4Dh Cloud Service, its single platform that helps which provides a broad range of marketing
Java Mission Control and Flight marketers improve targeting, engagement, applications, has also been expanded.
Recorder Demo Series conversions, and analysis. Product enhance- “With the latest release of Oracle Eloqua,
This video series is an introduction to ments allow marketers to provide sales we are able to provide our customers with
the new Java Mission Control and Flight teams with a more-detailed view of their a single and flexible platform to manage
Recorder tools included with Java starting prospects, enable more-secure access to campaigns with owned, earned, and paid
with Java 7 Update 40.
marketing resources and data, and deliver a media objectives,” says John Stetic, vice
„bit.ly/1cTwJy9
clearer view of pipeline performance to sales president of product managment at Oracle.
Oracle Sales Cloud Series and marketing teams. New features include “This integration not only provides an
This series of tutorials introduces the AdFocus, a platform intuitive and engaging user experience
different Application Composer objects to dynamically create, but, more importantly, optimizes the
you can use to customize information in manage, and measure performance of marketing campaigns by
customer, consumer, contact, and sales
display ads; and improving targeting, engagement, conver-
account team pages.
Profiler, a social user sions, and analysis across digital, social,
„bit.ly/1kmfb3k
I-HUA CHEN

interface that pro- and mobile channels.”


vides sales reps with eloqua.com/products

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


BRIEFS 19

Oracle Linux 6.5 Released Exadata Database


The latest release of the Oracle Linux oper- ability for applications to share a crypto- Machine X4 Increases
ating system, Oracle Linux 6.5, delivers graphic data store that crypto toolkits can Performance, Capacity
extreme performance, advanced scalability, use for processing trusted certificates. Oracle’s fifth-generation flagship database
and reliability for business-critical enter- “Oracle continues to bring the latest machine, the Exadata Database Machine X4
prise applications. Linux innovations to the market, providing series, is now available with new hardware
Oracle Linux 6.5 includes Unbreakable customers with the features and capabili- and software to accelerate performance,
Enterprise Kernel Release 3, installed ties necessary for their business-critical increase capacity, and improve effi-
by default, which enables users to test, workloads,” says Wim Coekaerts, senior vice ciency and quality of service for database
validate, and certify against the most president of Linux and virtualization engi- deployments. The new release focuses on
up-to-date Oracle Linux distribution. The neering at Oracle. “With full DTrace integra- improving online transaction processing
only Linux distribution to support DTrace, tion and default install of the Unbreakable (OLTP), database as a service (DBaaS), and
Oracle Linux now offers complete integra- Enterprise Kernel Release 3, features that data warehousing.
tion with this popular dynamic tracing are above and beyond the generic enterprise Performance of OLTP-oriented workloads
framework for superior observability, Linux 6.5, Oracle Linux 6.5 delivers the best has been accelerated by quadrupling the
troubleshooting, and performance anal- enterprise Linux solution to date.” flash memory capacity through a combi-
ysis. New security features include the bit.ly/1gxD6HS nation of larger physical flash and unique
ultra-high-speed flash compression. A
single rack Oracle Exadata now supports 88
Oracle User Groups Recognized for Education Programs TB of user data in flash—a capacity that is
Oracle has established the Oracle User initiative on the International Oracle User sufficient to hold the majority of OLTP data-
Group Membership Initiative to help its user Group Community website (iouc.org). bases entirely in flash memory.
groups promote new and innovative pro- “Customers join user groups to network The extreme performance and capacity
grams that increase customer engagement, and share best practices, and they repre- of Oracle Exadata easily allows hundreds
education, and membership. sent Oracle’s most active and involved cus- of databases to be
Initially, two groups have been rec- tomers. The entire user group community consolidated in a
ognized and have received development also serves as a key input for Oracle cus- DBaaS architecture
funding: Independent Oracle Users Group tomer feedback that results in enhanced into a single rack,
(IOUG) for its educational content and Oracle products, services, and streamlined enabling greatly
awareness of Oracle engineered systems, business practices,” says Jeb Dasteel, reduced costs and
and Belgium Java User Group (BeJUG) for chief customer officer at Oracle. “We are improved agility.
Devoxx4Kids, an initiative designed to teach honored to help encourage new ideas to Performance of
computer programming to children. further the value users groups bring to data warehousing
Oracle user groups and their affiliates Oracle customers.” workloads has
interested in nominating programs for ioug.org increased with new
future awards can find information on the bejug.org flash caching algo-
rithms that focus on
table and partition
Oracle Virtual Networking Improves Application Performance scan workloads.
Oracle has unveiled enhancements to Oracle mance by four times, reduce infrastructure Tables that are larger
Virtual Networking to help organizations complexity by 70 percent, and cut LAN and than flash are now
further improve infrastructure performance, SAN capital expenditures by 50 percent. automatically partially cached in flash and
reduce cost and complexity, and simplify “Oracle continues to help enterprises read concurrently from both flash and disk
storage and server connectivity. reduce the complexity in their data center to speed throughput.
Oracle Virtual Networking is an open by expanding software-defined infrastruc- “Oracle Exadata Database Machine
architecture data center fabric that sim- ture capabilities to our extensive portfolio is the best platform on which to run the
plifies complex data center deployments of SPARC servers and Oracle Solaris,” says Oracle Database, and the X4 release
with a wire-once solution and simple Raju Penumatcha, senior vice president of extends that value proposition,” says
software-defined network configurations. product development at Oracle. “Customers Oracle President Mark Hurd. “As private
Enhancements include support for Oracle moving to virtualization and cloud can database clouds grow in popularity, the
SuperCluster M6-32 and Oracle Solaris I/O reap the benefits from our broad support strengths of Oracle Exadata around perfor-
multipathing as well as integration with of servers, OS, and hypervisors to achieve mance, availability, and quality of service
Oracle Linux and Oracle VM. It can help business agility from their infrastructure.” set it apart from all alternatives.”
organizations improve application perfor- bit.ly/13YVgLL bit.ly/1lFqQp4

ORACLE MAGAZINE MARCH/APRIL 2014


20 BRIEFS

Oracle Big Data Appliance X4-2 Delivers Oracle Enterprise Manager 12c
Oracle Big Data Appliance X4-2, now avail- Özbütün, senior vice president of data ware- Broadens DBaaS Support
able, includes the entire Cloudera Enterprise housing and big data technologies at Oracle. Oracle has expanded Oracle Enterprise
technology stack and 33 percent more “Now that Oracle Big Data Appliance comes Manager 12c to support the multitenant
storage capacity for a total of 864 TB with the entire architecture and pluggable databases of
per rack. The new appliance is a com- Cloudera Enterprise Oracle Database 12c, making it easy to offer
prehensive big data platform optimized technology stack database as a service (DBaaS) and consoli-
for both batch and real-time processing and a significant date databases in clouds. Oracle Enterprise
that uses CDH (Cloudera’s Distribution increase in storage Manager 12c adds new automation capabili-
Including Apache Hadoop), Oracle capacity, enterprises ties to enable quick provisioning of database
NoSQL Database, Cloudera Impala, and can build an even clouds through self-service, saving admin-
Cloudera Search to satisfy diverse com- more cost-effective istrators time and effort. These new capa-
puting requirements. big data platform bilities can help organizations adopt Oracle
“Oracle Big Data Appliance X4-2 con- that can help gen- Database 12c faster and pave the way to a
tinues to raise the big data bar, offering erate new business DBaaS delivery model.
the industry’s only comprehensive appli- value quickly and “With the new release of Oracle
ance for Hadoop to securely meet enter- effectively.” Enterprise Manager 12c, customers can
prise big data challenges,” says Çetin bit.ly/16QOLd2 quickly deploy pluggable database-as-a-
service solutions that realize the advantages
of Oracle Database 12c’s new multitenant
Oracle Buys Responsys architecture,” says Sushil Kumar, vice
Oracle has agreed to acquire Responsys, riences across marketing interactions. president of product strategy and business
the leading provider of enterprise-scale “Recognizing the unique needs of the development at Oracle.
cloud-based B2C marketing software. The CMO in B2B and B2C industries, the Oracle bit.ly/VJ2aPP
recent addition of Responsys extends Oracle Marketing Cloud is now the only platform
Customer Experience Cloud, which includes to unite enterprise-class leaders in these
Oracle Commerce, Oracle Sales, Oracle historically distinct marketing-automation
Consumer Goods Industry
Service, Oracle Social, and Oracle Marketing fields,” says Oracle President Mark Hurd. Excellence Recognized
Cloud solutions. By bringing together “Our strategy of combining the leaders The 2013 Oracle Consumer Goods Industry
Responsys and Oracle Eloqua Marketing across complementary technologies signi- Excellence Awards were presented to five
Cloud Service in the Oracle Marketing Cloud, fies Oracle’s overwhelming commitment to regional and global consumer goods com-
Oracle equips chief marketing officers that winning and serving the CMO better than panies that use Oracle technologies. The
support industries with B2C or B2B business any other software company in the world.” categories and
models to drive exceptional customer expe- oracle.com/responsys winners: Integrated
Sales and Marketing/
Retail and Consumer
Oracle Buys Corente Insights: The Clorox
Oracle has entered into an agreement to a complete technology portfolio for cloud Company, Oakland,
acquire Corente, a provider of software- deployments with SDN offerings that virtu- California; Business
defined networking (SDN) technology for alize both the enterprise data center LAN and Transformation: Land O’Lakes, Arden Hills,
wide area networks (WANs). Corente’s the WAN, decreasing time to deployment of Minnesota; Integrated Sales and Marketing/
software-defined WAN virtualization services and increasing security and manage- Trade Promotion Management: Mars
platform accelerates deployment of cloud- ability across the enterprise ecosystem. Chocolate North America, Hackettstown,
based applications and services by allowing “Oracle customers need networking New Jersey; Product Innovation
customers to provision and manage global solutions that span their data centers and Management: Mary Kay, Dallas, Texas;
private networks connecting to any site in a global networks,” says Edward Screven, chief and Business Management and Control:
secure, centralized, and simple manner. corporate architect at Oracle. “By combining Schreiber Foods, Green Bay, Wisconsin.
Corente’s Cloud Services Exchange Oracle’s technology portfolio with Corente’s “This year’s award winners are further vali-
delivers, secures, and manages distributed industry-leading platform extending dation of how leading consumer goods com-
applications over diverse networks, globally software-defined networking to global net- panies are innovating and transforming their
and to any site over any IP network, regard- works, enterprises will be able to easily and businesses through the use of technology,”
less of the type of transport, access, applica- securely deliver applications and cloud ser- says Cassie Moren, senior director of con-
I-HUA CHEN

tion, or provider involved. vices to their globally distributed locations.” sumer goods industry marketing at Oracle.
Corente and Oracle are expected to deliver oracle.com/corente bit.ly/L7KkYS

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


News By Fred Sandsmark 21

Oracle Joins OpenStack


Foundation
OpenStack capabilities will be integrated into a broad
range of Oracle products and cloud services.

O racle has joined the OpenStack


Foundation as a corporate sponsor, and
plans to integrate OpenStack capabilities
private cloud, and then use completely dif-
ferent tools in their public cloud.”
“OpenStack is a generic cloud manage-
into a broad set of Oracle products and ment product that does not itself include
cloud services. a hypervisor,” Coekaerts adds. “OpenStack
OpenStack is a global community of provides plug-ins and support for a variety
developers and cloud computing technolo- of hypervisors. Customers like the fact that
gists who are collaborating to create an having a single front-end API lets them
open source platform for public and private manage, potentially, multiple types of
clouds. Oracle announced OpenStack- hypervisors. We want to make sure that
compatible API integration for Oracle Oracle customers can benefit from the
Exalogic Elastic Cloud at Oracle OpenWorld interoperability with OpenStack.”
2013 and sponsorship of OpenStack in Flierl believes that OpenStack is one
December 2013. element of an emerging model in which
Joining the OpenStack Foundation for- developers have unlimited access to infra-
malizes Oracle’s contributions and signals structure with zero-touch provisioning.
the company’s intention to integrate “That’s very much what customers
OpenStack capabilities into many Oracle Wim Coekaerts, Senior Vice President, Linux and expect—an infrastructure layer that just
Virtualization Engineering, Oracle
products, including Oracle Solaris, Oracle becomes a commodity,” he says. “But to
Linux, Oracle VM, Oracle Virtual Compute support production needs, that infrastruc-
Appliance, the Oracle ZFS Storage ZS3 says Markus Flierl, vice president of Oracle ture needs to be available and reliable,
series, Oracle Flash Storage Systems, and Solaris. “We plan to help make OpenStack and those are areas where we at Oracle
Oracle’s StorageTek tape systems. Oracle a more mature solution—and one with can really add value. As a result of Oracle’s
will also work to make Oracle Exalogic support from Oracle that extends from testing and participation in OpenStack,
Elastic Cloud, Oracle Compute Cloud storage and networking, to compute, to the our customers can expect a higher level of
Service, and Oracle Storage Cloud Service VMs [virtual machines] themselves.” availability than if they stitch cloud solu-
compatible with OpenStack. Flierl adds that Oracle’s active partici- tions together themselves.” 
Oracle’s decision to step up corporate pation in the OpenStack community will
involvement in the OpenStack project was help ensure that Oracle customers using
driven by customer interest, according OpenStack have more flexibility in building Fred Sandsmark is a freelance contributor to
to Wim Coekaerts, senior vice president, and managing their cloud environments. Oracle Magazine.
Linux and virtualization engineering at “Our goal in participating in OpenStack is to
Oracle. “OpenStack today is a popular ensure that Oracle solutions are compatible Next Steps
project, and a lot of people are looking with the rest of the projects that make up
at how to use it to build private clouds,” OpenStack,” he says. “This means that if a LEARN about
Oracle cloud computing solutions
Coekaerts says. “It’s a fast-moving project, company is using OpenStack and wants to oracle.com/cloud
but it’s still in its early stages.” run a hybrid solution—where they’re using Oracle Solaris
While many organizations are using a private cloud and Oracle Cloud—they can bit.ly/omagsolaris
OpenStack for their developer clouds, few move elements of their clouds back and Oracle VM
are using it in production environments forth and apply the same abstraction to oracle.com/virtualization
Bob Adler

because its various elements are incom- create and tear down their VMs. They don’t OpenStack
openstack.org
plete, immature, or not thoroughly tested, want to have to use one set of tools in their

oracle magazine March/April 2014


22 Book Beat

Oracle Database 12c environment, discussing the tools used in Partners Earn Oracle Exadata
PL/SQL Programming the development process, and exploring
numerous Java technologies and practices. Optimized Status
By Michael McLaughlin
He also demonstrates the new, fully duplex Two Oracle partners have earned Oracle
Oracle Press
WebSocket web connection technology
oraclepressbooks.com Exadata Optimized status for their solu-
and its support in Java EE 7. The guide
also covers new language features in Java tions. Oracle Exadata Optimized status
Written by Oracle ACE
Platform, Standard Edition 8 (Java SE 8), is part of the Oracle Exastack Optimized
Michael McLaughlin,
such as lambda expressions and the new program, through which Oracle partners
Oracle Database 12c
Java SE 8 Date and Time API.
PL/SQL Programming can develop, test, and tune their applica-
offers in-depth information on the PL/SQL tions on Oracle Exadata Database Machine,
language and its extensibility to develop
Oracle PL/SQL Programming,
applications. With full coverage of the latest
Sixth Edition Oracle Exalogic Elastic Cloud, and Oracle
features and tools, this guide provides By Steven Feuerstein and SuperCluster engineered systems.
examples of web applications in native Bill Pribyl GE Digital Energy, a division of Oracle
PL/SQL, JSP, and PHP. The book explains O’Reilly Media Gold Partner GE, achieved Oracle Exadata
how to access and modify database oreilly.com
information, construct powerful PL/SQL Optimized status for Smart Metering
statements, execute effective queries, Thoroughly updated for Operations Suite
and deploy security. A Netflix case study Oracle Database 12c, the (SMOS) version 4.0.1.
example is used throughout the book as the sixth edition of Oracle
SMOS communi-
basis for all coding examples. The examples PL/SQL Programming, reveals new PL/SQL
collectively provide you with a reference features and provides code samples, cates with, operates,
both to how various programming concepts ranging from simple examples to complex and manages a util-
work and how components fit together to and complete applications, in the book ity’s smart meter
solve real-world problems. and on the companion website. The book
network and provides
covers language fundamentals, advanced
Troubleshooting Oracle Performance, coding techniques, and best practices for back-office integra-
Second Edition using Oracle’s procedural language. You tion between smart
will learn how to get PL/SQL programs up meter networks and
By Christian Antognini
and running quickly by following the book’s
Apress
instructions for executing, tracing, testing,
other systems such as
apress.com outage management
debugging, and managing PL/SQL code.
You’ll also gain an understanding of new applications.
Troubleshooting Oracle
Oracle Database 12c features and new con-
Performance, Second Noetix, an Oracle
ditional compilation directives.
Edition is a guide to diag- Gold Partner, achieved
nosing and resolving
performance problems in applications
Practical Oracle Database Appliance Oracle Exadata
backed by Oracle’s database engine. By Bobby Curtis, Fuad Optimized status for NoetixViews 6.2, an
This second edition has been updated Arshad, Erik Benner, Maris operational reporting solution, and Noetix
to cover the latest developments in Elsins, Pete Sharman, and Analytics 5.3, a packaged data warehouse
Oracle Database 11g Release 2 through Yury Velikanov
solution. Noetix provides instant opera-
Oracle Database 12c. Author Christian Apress
Antognini provides a systematic approach apress.com tional reporting and packaged analytics for
to addressing the underlying causes of Oracle Applications.
poor database application performance. Practical Oracle Database gedigitalenergy.com
He freely shares his experience while Appliance walks you through the components
and implementation of Oracle Database
noetix.com
explaining how the Oracle Database
engine executes SQL statements. Appliance. You will learn how to install and
configure Oracle Database Appliance with
Professional Java for confidence, make the right choices between OpenText Unveils Content
Web Applications the various configurations in order to realize
Management for
your performance requirements, manage
By Nicholas S. Williams
and monitor the appliance to meet business Oracle E-Business Suite
Wrox
requirements, and protect your data through OpenText, a provider of enterprise informa-
wrox.com
proper backup and recovery procedures.
tion management solutions and an Oracle
The book is appropriate for Oracle database
This guide shows Java Platinum Partner, has unveiled OpenText
administrators or system administrators
software developers and
who currently manage or will be imple- Extended ECM for Oracle E-Business Suite.
software engineers how
menting Oracle Database Appliance within The new application combines OpenText
to build complex web
a small to midsize business, or who are
applications in an enterprise environment. Content Suite, an enterprise content man-
using the virtualization feature set to deploy
Author Nicholas S. Williams begins with an agement solution for unstructured data,
numerous appliances within a large enter-
introduction to Java Platform, Enterprise
prise with many branch locations. with Oracle E-Business Suite to enhance
Edition 7 (Java EE 7) and the basic web
application, and then moves on to setting information management, governance,
up a development application server Look for other Oracle books at bit.ly/NjG3KM. and discovery.
opentext.com

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


Partner News 23

TEAM Informatics Releases Bulk Mitchell & Associates Becomes Platinum Partner and Oracle Business
Loader for Oracle WebCenter Accelerators Qualified
TEAM Informatics, an Oracle Gold Mitchell & Associates has achieved Oracle The company also has achieved Oracle
Partner with Oracle WebCenter exper- Platinum Partner status in recognition of Business Accelerators Qualified status for
tise, has released Bulk Loader for Oracle its knowledge and experience with Oracle’s JD Edwards EnterpriseOne. Oracle Business
WebCenter Content. Bulk Loader enables JD Edwards EnterpriseOne and Oracle’s JD Accelerators are powerful, easy-to-use,
organizations to process large volumes of Edwards World. Mitchell & Associates has cloud-based rapid implementation tools
unstructured content stored in file shares, more than 20 years of international busi- that can reduce the time and costs of
including content in disparate groups and ness and technology service experience implementing enterprise applications for
sites. Bulk Loader crawls file shares to dis- with JD Edwards enterprise resource plan- growing businesses.
cover files and then arranges discovered ning solutions. maa-imcs.com
objects into manifests by content owner.
From those manifests, content owners
can apply actions to the content, and
Partners Earn Oracle Validated Integration
Bulk Loader processes the content in real The following seven partners have earned enables real-time invoice processing from
time or at a scheduled time outside of Oracle Validated Integration, demon- multichannel capture to payment within
business hours. strating that their software products have Oracle E-Business Suite.
teaminformatics.com been tested by Oracle to work with Oracle Oracle Gold Partner Justifacts Credential
Applications and specific Oracle Fusion Verification: Oracle Validated Integration
Middleware solutions. between Justiweb and Oracle Taleo Business
Certus Solutions Announces Oracle Platinum Partner CRMIT Solutions: Edition Cloud Service. This integration
Oracle Accelerate for Midsize Oracle Validated Integration between enables Justiweb background checks to be
Companies Solution for Financial CRM++ Asterisk Telephony Connector requested and retrieved via Oracle Taleo
and Professional Services and Oracle Sales Cloud. CRM++ Asterisk Business Edition Cloud Service. More than
Certus Solutions, an Oracle Gold Partner, Telephony Connector integrates open source 100 background search options are avail-
has announced Engage Service Wrap, an Asterisk PBX telephony solutions with able from Justiweb, including criminal
Oracle Accelerate for Midsize Companies Oracle Sales Cloud. background checks, Social Security number
solution for midsize financial and pro- Oracle Gold Partner Extended Content verification, employment verification, and
fessional services companies. Based on Solutions: Oracle Validated Integration degree confirmation.
Oracle Human Capital Management Cloud, between MediaStore 2.0 and Oracle Oracle Gold Partner RIVS: Oracle
Certus Engage Service Wrap delivers WebCenter Sites 11g and Oracle ATG Web Validated Integration between RIVS Digital
global human resources, talent manage- Commerce 10. MediaStore is a digital asset Interview 2.0 and Oracle Taleo Business
ment, compensation, benefits, payroll, management solution based on Oracle Edition Cloud Service. The integration
workforce lifecycle, recruitment, and WebCenter Content that allows assets to be allows RIVS digital interviews to be created
learning functions. published to Oracle WebCenter Sites and and reviewed within Oracle Taleo Business
certus-solutions.com Oracle ATG Web Commerce. Edition Cloud Service. RIVS provides written,
Oracle Gold Partner Intellinum: Oracle voice, and video interviewing options.
Validated Integration between MWA Express Oracle Gold Partner Thomson Reuters:
Orasi Software Earns Gold Server and Oracle E-Business Suite 12.1. Oracle Validated Integration between
Partner Status MWA Express Server allows personalization ONESOURCE Indirect Tax Integration and
Orasi Software, a software testing services of Oracle Mobile Supply Chain Applications Oracle E-Business Suite 12.2. ONESOURCE
provider, has earned Oracle Gold Partner and Oracle Warehouse Management to Indirect Tax Integration determines and
status. Orasi has delivered testing services streamline operations, add and enforce busi- calculates tax based upon the attributes of
to Oracle customers for more than a decade. ness rules, and improve the user experience. a transaction, reduces manual jurisdiction
Orasi helps Oracle customers verify Oracle Personalizations can be applied at the site, code or tax code assignments, and provides
E-Business Suite configuration, workflow, responsibility, organization, and user levels. robust, vendor-charged tax and accrual func-
upgrade activities, business process, and Oracle Gold Partner ITESOFT: Oracle tionality for procure-to-pay process flows.
data requirements, Validated Integration between ITESOFT crmit.com
and its services .Balance 2.5 and Oracle E-Business Suite extended-content.com
include test automa- 12.1. ITESOFT.Balance integrates supplier intellinum.com
tion, performance invoices processed by external applications itesoft.co.uk
Lindy Groening

testing, and scal- into Oracle E-Business Suite. It accesses justifacts.com


ability testing. data controls in Oracle Purchasing and rivs.com
orasi.com Oracle Payables, extracts line item data, and tax.thomsonreuters.com

oracle magazine March/April 2014


National Geographic Education supports the
mission of the National Geographic Society to
TOGETHER ORACLE AND inspire people to care about the planet by
NATIONAL GEOGRAPHIC EDUCATION ARE creating compelling educational materials for
young people and the adults who teach them.

Leading the Way NG Education provides unique learning


experiences to educators and advocates for
improved education in geography, the
in Ocean Education environmental sciences, and other disciplines
that are critical to understanding our world.
and Marine Research With support from Oracle, National Geographic
Education is engaged in a major project to
develop teacher leaders in marine ecology and
create materials about ocean science and
geography for students, families, the ocean
recreation community, and the general public.

Support our work today.


Visit nationalgeographic.org/education.

National Geographic is a 501(c)(3) organization. PHOTOGRAPH BY ENRIC SALA


Partner News 25

Jade Global Delivers Oracle


Warehouse Management Oracle Cloud Marketplace

Oracle Accelerate for Midsize Oracle Cloud Marketplace partner solutions Oracle Gold Partner Perceptive Software:
Companies Solution for leverage Oracle Cloud platform services and The enterprise content management and
Semiconductor Companies Oracle software-as-a-service (SaaS) appli- business process management solutions
cations. Six partners have recently released provide access to scanned documents,
solutions to Oracle Cloud Marketplace. electronic files, e-mail, and video within
Jade Global, an Oracle Platinum Partner, has
Oracle Gold Partner Earnix: The banking Oracle Sales Cloud.
announced an Oracle Accelerate for Midsize
and insurance solutions integrated with Oracle Silver Partner CloudsPlus: The
Companies solution using Oracle Warehouse Oracle Sales Cloud empower financial Microsoft Exchange integration solution
Management and designed for semicon- services companies to leverage predictive synchronizes Microsoft Outlook e-mail,
ductor companies. Jade’s new offering modeling and decision-making tools to calendar, tasks, and contacts with Oracle
align customer offers. Sales Cloud.
eliminates manual entry and automates and
Oracle Gold Partner Gainsight: The Oracle Silver Partner Veer West LLC:
optimizes material handling processes to customer success application suite enables FormAssembly enables web form creation
improve order fulfillment time and supply companies using Oracle Marketing Cloud to through a drag-and-drop interface, along
chain visibility. It incorporates Jade’s rapid, monitor customer satisfaction and product with data centralization and synchroniza-
engagement in real time, generate predic- tion with third-party applications.
phased-implementation methodology, and
tive alerts for at-risk customers, and iden-
leverages integrations tify up-sell opportunities. earnix.com
for contract manufac- Oracle Gold Partner iEnterprises: Lotus gainsight.com
turers and third-party Notes Connector facilitates integration ienterprises.com
logistics companies, between Lotus Notes and Oracle Sales
perceptivesoftware.com
Cloud, and synchronizes Lotus Notes
Lindy Groening

as well as inventory cloudsplus.com


e-mail, calendar, to-dos, and address books
value visibility. to and from Oracle Sales Cloud. formassembly.com
jadeglobal.com

MEETING THE DEMANDS


OF TOMORROW
AND DELIVERING
HIGH-PERFORMANCE NOW

As a leader in Applications Performance Optimization, Cybernoor can optimize your


Oracle environment to ensure your system performs well and scales. As the data footprint
continues to increase along with the complexity of business requirements, delivering a high
performance system is crucial to the success of the business. Contact Cybernoor to learn
about our proven performance tuning solutions, and ensure your system is prepared for
tomorrow’s challenges.

Cybernoor Corporation I www.cybernoor.com I +1.925.924.0400

oracle magazine March/April 2014


26 Architect By Bob Rhubart

SOA’s People Problem


Are reluctant passengers slowing down your SOA train?

B ased on my conversations with various


experts in service-oriented architecture
“Understanding why the benefits of SOA because of a lack of
trust with respect to the available services,”
(SOA), the consensus is that SOA tools and people don’t want says Mark Dutra, senior principal product
technology have achieved a high level of
maturity. Some even use the term industrial­
to cooperate is manager for SOA governance at Oracle.
“Visibility is the key to mitigating trust
ization to describe the current state of SOA. almost as important issues. Visibility into which services are
Given that scenario, one might assume that available; how those services were designed,
SOA has been wildly successful for every as explaining the built, and tested; who is using the services;
organization that has adopted its principles.
Obviously SOA could not have achieved
business case.” and how they are performing all helps build
confidence in the service portfolio and
—Lonneke Dikmans, Oracle ACE Director
its current level of maturity and industri- facilitate service reuse.”
alization without having reached a tipping Of course, building that confidence
point in the volume of success stories to Schmiedel, solution architect at Opitz requires something more than a warm smile
drive continued adoption. But some organi- Consulting. That helps to shift the focus and a hearty handshake. “Ensure that the
zations continue to struggle with SOA. The from siloes to services and get SOA on track. right tools are in place to promote team
problem, according to some experts, has To that end, Oracle ACE Director Lonneke collaboration and to provide visibility over
little to do with tools or technologies. Dikmans, a managing partner at Vennster, existing assets,” advises Weir. Those tools
“One of the greatest challenges to stresses the importance of replacing can include Oracle WebCenter to create
implementing SOA has nothing to do with individual, uncoordinated projects with a a knowledge-sharing portal, and Oracle
the intrinsic complexity behind a SOA focused program that promotes commu- Enterprise Repository for service visibility
technology platform,” says Oracle ACE Luis nication, cooperation, and service reuse. and lifecycle governance. But, as Dikmans
Augusto Weir, senior Oracle solution director “Having support among lead developers and points out, the office water cooler and
at HCL AXON. “The real difficulty lies in architects helps, as does having sponsors coffee machine are also tools you can use—
dealing with people and processes from that see the business case and understand catalysts for conversation in a well-mounted
different parts of the business and aligning the strategic value,” she says. charm offensive to get people on board to
them to deliver enterprisewide solutions.” But even with such support, there drive SOA success. 
What can an organization do to meet will be those who resist the necessary
that challenge? “Staff the right people,” says changes. “Understanding why people don’t
Bob Rhubart
Weir. “For example, the role of a SOA archi- want to cooperate is almost as important
(bob.rhubart@oracle.com)
tect should be as much about integrating as explaining the business case,” says
is manager of the
people as it is about integrating systems. Dikmans. “You have to sell it to everyone.”
architect community
Dealing with people from different depart- What you need to sell is the fact that a
on Oracle Technology
ments, backgrounds, and agendas is a huge disparate collection of services does not
Network (OTN), the host
challenge. The SOA architect role requires constitute SOA. Bridging siloes is a matter
of the OTN ArchBeat podcast series, and the
someone that not only has a sound archi- of eliminating the “not invented here” syn-
author of the ArchBeat blog (blogs.oracle
tectural and technological background but drome and mistrust that can keep one team
.com/archbeat).
also has charisma and human skills, and can from using a service developed by another.
communicate equally well to the business Here, too, according to Dikmans, the role
Next Steps
and technical teams.” of the SOA architect comes into play by exer-
The SOA architect’s communication skills cising the authority to place a strong focus on
learn more
are instrumental in establishing service service reuse, and by taking steps to clearly “Old Habits Die Hard in the New SOA World”
orientation as the guiding principle across communicate which services are to be reused. bit.ly/1gkgY3N
the organization. “A consistent architecture Both points are greatly aided by making ser- Industrial SOA, an article series on OTN
comprising both business services and IT vices and other reusable assets highly visible, bit.ly/1ckwN5m
services can comprehensively redefine the readily available, and easily trusted. “9 Tips for Organizational Maturity in SOA”
bit.ly/JHUC01
role of IT at the process level,” says Danilo “Some organizations struggle to achieve

CONNECT: blogs.oracle.com/archbeat facebook.com/brhubart twitter.com/brhubart linkedin.com/in/bobrhubart

March/April 2014 Oracle.com/oraclemagazine


Peer-To-Peer by Blair Campbell 27

All for One


From sketching out a solution to cheering on a team, groups can motivate and inspire.

Lakshmi Sampath Bjoern Rost Ahmed Aboulnaga

Company: Dell Inc., a multinational IT Company: Portrix Systems, an Oracle partner Company: Raastech, a systems integrator
corporation and provider of managed services and consulting and professional consulting services company
Job title/description: Oracle E-Business Suite Job title/description: Founder and managing specializing in Oracle Fusion Middleware
architect/strategist for corporate IT, responsible director, responsible for collaborating with Job title/description: Technical director,
for architecture, business analysis, technology independent software vendors and managing providing technical management and consulting
evaluation and direction, implementations, and a team that implements and operates related to the Oracle Fusion Middleware stack
application support infrastructure stacks Location: Washington DC
Location: Austin, Texas Location: Hamburg, Germany Oracle credentials: Oracle Certified Expert
Length of time using Oracle products: More Oracle credentials: Oracle Certified (Oracle SOA Architect, Oracle SOA Infrastructure
than 15 years Professional (Oracle Database 10g), Oracle Implementation) with 18 years of experience
Virtual Desktop Infrastructure 3 Certified using Oracle products
Implementation Specialist, Sun ZFS Storage
Appliance Certified Implementation Specialist,
What’s your favorite tool on the job? The and Sun Flash Storage Certified Implementation
Form Personalization feature in Oracle Specialist, with 10 years of experience using What’s your favorite tool on the job? The
E-Business Suite 12. You can do so much Oracle products whiteboard. Nothing beats sketching out
with personalization—including moving it a design, spending hours defending the
across instances through FNDLOAD—and, How did you get started in IT? As a teenager, technical merits of your solution, and
unlike customized applications, Oracle some friends and I founded a club that watching your colleagues tear it apart. In
solutions support it. organized LAN parties—mostly for the kick my opinion, the whiteboard has been—and
Which Oracle solutions are you currently of getting to play with networking and Linux will continue to be—one of the few tools
finding most valuable? Oracle Fusion server technologies. That fascination with that improves technical architectures while
Middleware really gives IT a significant technology stuck, and I ended up with a job fostering teamwork and collaboration.
time-to-solution advantage, thanks to that allows me to continue playing with the What technology has most changed your
its modularity and its ability to work latest technologies. life? I know it sounds clichéd, but . . . the
across heterogeneous environments. One You’ve taken Oracle University [OU] classes internet. Just 15 years ago, I bought a 600-
component of Oracle Fusion Middleware in the past. What led you to do this? I page book hoping to find a paragraph on
that we use extensively for all our application wanted to learn in a structured manner and the function I needed help with. Nowadays,
integrations is Oracle SOA Suite. In particular, also get away from daily business to focus my entire solutions are a click away.
doing SOA integrations using Oracle Service thoughts on learning. I flew to New York and What would you like to see Oracle, as
Bus has made our lives much simpler. San Francisco for my OU classroom training, a company, do more of? I’d love to see
What’s been your favorite Oracle technology which allowed me to both enjoy classes in Oracle build next-generation automated
conference experience? COLLABORATE 12, English and see some amazing places. intelligence into most products. Think
in Las Vegas, Nevada, where I was honored What’s been your favorite Oracle technology automatic segment space management or
with the Member of the Year award by conference experience? Being there at dynamic garbage collection, but times a
the Oracle Applications Users Group. The Oracle OpenWorld 2013 in San Francisco, thousand. It’s not far-fetched to think that
conference was an awesome experience— which coincided with the final races of products can mature to a point where they
great content, excellent networking, and lots the America’s Cup—and the greatest do the analysis that we as administrators do
of knowledge sharing. turnaround in sports history. today and take action accordingly. 

Learn more about the Oracle ACE program at oracle.com/technetwork/community/oracle-ace.

oracle magazine March/April 2014


ADVERTISING SUPPLEMENT

Anderson Hay & Grain Extends


Its Oracle Application to Its Roots

E
stablished by its family founders more than a half a containers of feed each year. In addition, the company has
century ago, Anderson Hay & Grain has become the recently expanded into the Southwest, procuring alfalfa
leading US exporter of animal forage. Its reputation from growers in California, Utah, Arizona, and New Mexico.
for the highest quality products has made Anderson the While the business model might seem simple,
preferred supplier for dairies in Japan and Korea, horse Anderson’s operation is remarkably complex. Each day,
tracks in Hong Kong, and horse lovers in the Middle East. hundreds of containers must be received, loaded with
Anderson has more than 300 employees, with more than the right product, and then shipped and tracked to
500 employed during its seasonal peak. Its staff is head- their destinations. The quality of each shipment must
quartered in Ellensburg, Washington, and its buyers are be tracked as well, from planting through delivery. Then
located across the western United States. there are the vagaries of global business: rising and
falling energy costs, varying market demand, fuctuat-
A Great Idea Gets Growing ing exchange rates, and the list goes on. “We have had
Every thriving business begins with a great idea. For Ron people come in and say ‘Hay company? How complex
Anderson, cofounder of Anderson Hay & Grain, the vision can that be?’” Mirro says. “We are very complex when it
was clear: turn the local business of producing animal feed comes to a logistics model and to matching the quality
into a global enterprise. Western farmers grow some of the of product with the customer’s needs.”
fnest Timothy and alfalfa hay and grass straw in the world.
Ports in Portland, Oregon; Tacoma and Seattle, Washington; Utilizing IT Services to Support a Global Business
and Long Beach, California, offer ready access to Pacifc To manage the many variables, it’s critical to have
Rim nations such solid, current data available. But Anderson Hay’s
as Japan, where expanding business made demands on its information
farmers produce infrastructure that a home-grown IT system could not
high-quality dairy meet. Change was needed and Anderson chose Oracle
and meat products E-Business Suite. Anderson also moved to a new IT
(like famous Kobe support model. The Oracle suite would be managed
beef) but lack not by the Anderson IT team, but by an outsourcing
space to grow company. “We wanted to focus on what do we do well:
forage. The ques- growing and acquiring the right forage for our custom-
tion was how to ers, ensuring that it’s manufactured to their specs and
bring product and delivered on time throughout the year,” Mirro says.
customer together While the software suite delivered results for Anderson,
across the Pacifc. the initial service provider did not. Mirro looked at all
High-value imports like computers, televisions, and the options, from bringing the work back in house
clothing arrive at US ports protected in steel containers the to using a different outsource vendor. Reliability and
size of truck trailers. Because imports exceeded exports, security were key criteria. “If the Oracle suite should
many containers left port empty. Where others saw a fail,” Mirro says, “it would absolutely shut our busi-
waste of money, Anderson saw opportunity. Shippers ness down.” After interviewing and visiting several
were paying to return the containers, empty or not, and competitors, Mirro chose AT&T to host and manage the
they were happy to ship containers flled with Anderson’s Oracle E-Business Suite business application software
forage products at rates the farmers in Japan could afford. and subsequently implement an enhanced version of
“They felt they could offer us cheap rates and that our Oracle Business Intelligence Enterprise Edition. This
products would provide good ballast,” says Nathan Mirro, gives users a “dashboard” view of up-to-the-moment
IT director for Anderson. business status. With an IT team numbering just two
From its start with dairy farmers, Anderson has ex- people, Mirro depends heavily on his AT&T support
panded to the Japanese beef industry and to other Asian team. “I don’t have time to chase issue after issue,”
markets: Korea, Taiwan, China, Vietnam, Malaysia, and he says. “I really need to know that when I have
Singapore. Today Anderson Hay & Grain exports 22,000 communicated a problem, I am understood and that
[APPLICATION MANAGEMENT CASE STUDY

they are going to follow up. We can then focus on our core screen tablet devices. “Typically apps are written for their
business, which is selling hay and straw products. ease of use,” Mirro says. “We turned to AT&T, the pioneers
“Oracle is big, but we want it to be treated as small in of a lot of mobile solutions. Rather than us going out and
our business,” he continues. “AT&T has made it a small trying to fnd the right vendor that will work with AT&T and
thing. Now I don’t have to sweat the small stuff, because with Oracle, we asked AT&T to help us fnd the right solu-
they are sweating it for me.” tion.” Actsoft coupled with AT&T was the answer.
Anderson Hay utilized Actsoft Advanced Wireless Forms
Data from the Roots of the Business to create an electronic contract designed
Mirro next wanted to extend the functionality to the feld specifcally for use on tablets. “It’s very
and to purchasing. As buyers for Anderson Hay signed easy to use. You point, select, and We wanted to focus on
contracts with producers across the West, they entered choose dropdown options and lists of what do we do well:
product quality grades, volumes, delivery schedules, prices, values,” Mirro says, “so we can step the growing and acquiring
and dozens of other key details in multipart paper forms buyer through the process.” Now as soon the right forage for our
with over 50 felds in all, plus notes. They then sent the as the buyer completes a contract, the customers, ensuring that
agreements to headquarters, where the data was manu- farmer enters an electronic signature and
it’s manufactured to their
ally entered in the Oracle applications. Forms could be the buyer presses “submit.“ The contract
specs and delivered on
incomplete, delayed, or lost. Some buyers would enter moves over the AT&T wireless network
into handshake agreements with the producers, planning to the Actsoft server and then into the
time throughout the year.”
to fll out their contract forms at a later time. Errors and Oracle Purchasing and Oracle Inventory —Nathan Mirro, IT Director,
Anderson Hay & Grain
oversights would result, and the possibility of damage to modules hosted by AT&T. Buyers’ trucks
Anderson Hay’s image was a serious concern, especially as are equipped with printers and mobile
the company worked to build its reputation among new hotspots so farmers get a printed copy on the spot.
producers throughout the West. Gone are the delays caused by mail transport, incom-
“Getting that information in was always a challenge plete forms, and incorrect data entry. Completing a contract
during the frenzy of harvest,” Mirro says. “We’re buying moves so quickly that buyers can enter 30 percent more
in May through September to last us through June or July useful data (such as import requirements), yet still save
of the following year. We’re committing a lot of dollars in time. Mirro is tracking other performance indicators and
a very short period of time. It’s a real coordinated dance sees the possibilities of increased improvement. “The
of commitments, down payments on products, cash turns, delay from a contract being handwritten to being entered
and the speed of product movement. All that information averaged 72 hours,” says Mirro. He estimates that once it
was on a piece of paper, being sent by courier up to our arrived on site, each paper contract required a 30-minute
corporate headquarters for entry into our Oracle system.” review to ensure it was complete. Today, that review might
As managers met for Monday status reviews, they had take 30 seconds. “Now that it’s electronic, we are down to
to worry that key data might be missing. “There was al- ten minutes end to end, fully validated and imported.”
ways a gap you had to worry about,” Mirro says. “Is there Mirro has set a goal that 80 percent of his 18 buyers
a bunch of business out there that we just don’t know will use the tablet contract. The incentive to the buyers is
about yet?” Overbuying in one area can impact forecasts the time saved, because they now can complete the deal
in another. Information delays could impact purchasing onsite. “The buyers can enter a lengthy contract in fve to
trends that in turn could hamper the forecasting of cash ten minutes, inputting all the different felds, and get the
fow and accounts payable processing, ultimately costing signature of the vendor right then. It really improves their
millions of dollars. world,” says Mirro.
The company had tried to solve the paper problem Indeed, improvements extend all across the Anderson
before, using laptop computers and virtual private network Hay supply chain: from the growers who win faster con-
(VPN) connections to link buyers directly into the Oracle frmation of sales; to the managers matching supply and
system. “None of those really stuck,” Mirro says. “The demand, cost, and sales price; and to the shippers and
people who are really good buyers are very relational farmers who need the right fodder at the right place, and
people. And typically they’re kind of low tech. That was the right on time. n

[
challenge—how do we take nontechnical people, give them
a piece of high-end technology, and make it so easy to use
that there’s a high adoption rate?” For more information contact
an AT&T Representative or visit
Working with the Pioneers www.att.com/oracle
The answer came with the arrival of user-friendly touch-
ADVERTISING SUPPLEMENT

Increase Your Human Resources Potential


Accenture Human Capital Management Solutions for Oracle help organizations gain
productivity, accelerate business performance, and achieve lower total cost of ownership.

A ccenture helps organizations achieve high


performance with Accenture Human Capital
Management Solutions for Oracle by providing
a combination of industry and functional capabilities; a
longstanding Oracle alliance; and skilled consultants who
predictive analytics. We’ve seen that changes
in HCM technology are challenging the business
to think creatively across industries and HR
functions, particularly in the area of manager and
employee experience. Both want a “consumer
deliver strategy, implementation, upgrade, and application experience,” whether it’s capturing a performance
outsourcing solutions across the Oracle Human Capital review, processing a transfer, or looking up a
Management (Oracle HCM) portfolio. Tony paycheck. Companies are viewing their employees
Diaz, managing director for Accenture’s as customers, and they want to make sure the
Oracle Human Capital Management customer experience is as integrated, seamless,
practice in North America, and Brandon and user-friendly as possible. That’s where cloud
Johnson, managing director for Accenture’s solutions can come into play.
Oracle Human Capital Management
Cloud Solutions practice in North America, Q: What are the main benefts of an HCM
discuss how Accenture helps clients cloud solution?
migrate to Oracle HCM Cloud to help TD: HCM cloud solutions can allow companies to
ensure accelerated and predictable project continually upgrade their software so they are able
outcomes. to take advantage of the latest HR capabilities. With
the embedded analytics in Oracle HCM Cloud, HR
Q: What trends are you seeing managers can access and analyze their data more
in the area of human resources easily so they can make better HR decisions faster.
(HR) technology? Legacy systems can have dated user interfaces,
Tony Diaz, Managing Director, Oracle TD: One of the biggest trends we’re whereas cloud solutions will have modern, easy-
HCM Practice, Accenture seeing in HR technology, from to-use interfaces that the cloud provider will
midmarket companies to large continue to update. Finally, cloud solutions can be
enterprises, is the emergence of cloud technology integrated with other systems in the enterprise,
and our clients’ plans to migrate to a cloud solution. helping information to fow cohesively and enabling
Our clients are assessing their current platforms and organizations to do more with their data.
looking for the benefts of a cloud solution that allows
for cost transparency, improved employee experience Q: Why has Accenture chosen Oracle as a provider
with enhanced user interfaces, and scalability. in the HCM space?
BJ: Oracle provides a leading HCM cloud solution.
Q: Is technology changing HR as we know it? Organizations ready to implement the entire
BJ: Technology’s dramatic advances are challenging portfolio can reap the benefts of an integrated
how HR leaders operate. Cloud applications such as solution and consistent user interface across core
Oracle HCM Cloud can give their business greater HR, benefts, payroll, and talent management. In
fexibility—streamlining their policies, procedures, addition, Oracle HCM Cloud gives customers the
and processes to achieve more effcient business option to move to the cloud at their own pace;
models. Oracle HCM Cloud also positions them to customers can move to the cloud gradually by
adopt digital HR tools and processes they didn’t implementing strategic modules or they can migrate
have before, such as social collaboration and their entire platform to Oracle HCM Cloud.
[HCM PARTNER Q&A
Accenture Delivery Tools and
Q: What Oracle HCM Methods for Oracle HCM Cloud
Cloud solutions does
Focusing on your most pressing priorities, Accenture helps you take
Accenture provide?
HR out of the back offce to help empower your HR leaders to make
BJ: Accenture can strategic decisions and play a vital role in your business. Here are some
offer true end-to-end ways we help organizations:
services—from system
implementation to HR Assessment—Let our experienced team help you evaluate your
many other critical landscape and determine a specifc direction for your Oracle HCM Cloud
Brandon Johnson, Managing services, such as solution. Leverage our Saas Decision Tree for Oracle HCM to determine if
Director, Oracle HCM Cloud methodology-driven an upgrade, SaaS implementation, or a hybrid of on-premises and cloud
Solutions Practice, Accenture offerings is the right next step for your organization.
project management,
change management, training, and knowledge HR Application Implementation— Help increase productivity, accelerate
sharing. Accenture Talent & HR Services is skilled business performance, and lower your cost of ownership by turning a
in HR transformation and helps global companies maze of systems into a well-integrated HR platform when you move
think globally versus locally. Our implementation your HR systems to Oracle HCM Cloud.
services combine our deep understanding of
Talent Management Implementation—Implement Oracle Talent
cloud technology with our industry-leading HCM Management Cloud to help source, recruit, develop, and retain talented
methodology—backed by our global Accenture employees. Oracle Talent Management Cloud may be implemented as
Solution Factories for Oracle HCM. Our application a stand-alone solution by opting to keep your existing HCM platform
outsourcing services help clients manage their and integrate it with Oracle Talent Management Cloud applications such
cloud solutions using a service delivery framework. as Oracle Fusion Applications Cloud Service or Oracle Taleo Enterprise
Cloud Service products. Or you can implement the integrated Oracle
Q: What value does Accenture bring to HCM Cloud solution, which is one of the most comprehensive, industry-
Oracle HCM customers? leading cloud solutions available.
TD: Accenture is an experienced systems integrator Computing Accelerator for Oracle HCM Cloud—Explore which business
for Oracle and has completed more than 2,500 applications are a ft for possible migration to the cloud and
human resources information technology projects which migrations would beneft your enterprise, and identify the
for more than 100 clients around the world. accompanying risks and opportunities.
With our deep knowledge of Oracle solutions,
we help our clients make strategic decisions Solution Factory for Oracle HCM Cloud—Our solution factory leverages
the Accenture Global Delivery Network to help you deliver Oracle HCM
about implementing Oracle HCM. What does the
Cloud solutions consistently and reliably.
next release mean for your organization? What
capabilities do you want to take advantage of, Jumpstart Toolkit for Oracle HCM Cloud—Use our toolkit to help
and how? What kind of change management plan accelerate project phases including conversion and integration activities
should support this transformation? With more than while leveraging Oracle HCM Cloud tools and templates.
10,000 experienced human capital management
Global Deployment Accelerator for Oracle HCM Cloud—The accelerator
practitioners and 20 years of experience, we have
helps to support your global or enterprise Oracle HCM Cloud
a track record of helping worldwide enterprises deployment, while accounting for regional variances such as cultural
develop strategies, design and build solutions, and approaches, regulatory issues, and go-to-market channels.
run operations. Using more than 50 industrialized
global delivery centers and our extensive solutions,
we can help reduce HR operating expenses. n

Accenture Human Capital Management Solutions for Oracle have helped


organizations reduce their human resources application and infrastructure operating
expenses. For more information please visit www.accenture.com/us-en/Pages/
service-oracle-human-capital-management-cloud.aspx
Copyright © 2013 Accenture. All rights reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture.
A major business
transformation at UL
required a technology
transformation. UL chose
Oracle as its strategic
infrastructure and business
software provider. “Oracle
knows what it takes to run a
large, global, multidivisional,
Andrea Mandel

multi-business-unit
company like ours,” says
Christian Anschuetz,
CIO at UL.
33

SAFETY IN
TRANSFORMATION
Oracle solutions support a business transformation at UL.
BY DAVID A. KELLY

W hen you’re in the middle of transforming a


business, you should be focused on your
customers. The right technology partner
UL’s business transformation started several years ago.
UL had been a single business, focused primarily on the US
market, and it was structured as a nonprofit. Today it provides
new and diversified services across the globe and has recently
can focus on the business transformation technology restructured as a for-profit entity. These major changes required
and help you keep your focus where it should be. a significant change to the business itself. To support that trans-
formation, UL implemented a new Oracle-based infrastructure
That’s why UL, a global safety science organization, and business software platform.
picked Oracle as its strategic infrastructure and “Oracle knows what it takes to run a large, global, multidivisional,
multi-business-unit company like
business software provider. ours,” says Anschuetz. “Our confidence
“The mission of UL is to SAFETY IN ENGINEERING in Oracle’s ability to do what we need
to do to run our company was one
create safer living and working Oracle engineered systems, including Oracle
Exadata Database Machine and Oracle Exalogic of the key elements that supported
environments. It is imperative Elastic Cloud (shown here), are pre-integrated our transformation efforts. It allowed
to reduce cost and complexity while increasing
that we focus on executing on productivity and performance. us to focus on changing our process
and people, instead of worrying
our mission versus spending
about the technology.”
our time managing software,”
says Christian Anschuetz, WORLDWIDE OPPORTUNITY
Founded in 1894, UL started as a
CIO at UL (formerly known as North American company. Its business
Underwriters Laboratories), model was based on having a limited
number of highly sophisticated super-
based in Northbrook, Illinois.
labs that handled all types of testing
“We have so many important for all its customers.
activities to focus on—including Today, UL is a global company oper-
ating in 58 markets, servicing 110 coun-
how to create value for our
tries. The modern UL has 74 labs and
customers—that we can’t 11,000 employees worldwide, and more
afford to be spending time than 50 percent of its revenue comes
from outside the United States. The
worrying about the technology company also has made 33 acquisitions
that runs our company.” in the last two years.

ORACLE MAGAZINE MARCH/APRIL 2014


34

Christian Anschuetz, CIO at UL, sees the business benefits of Oracle’s expertise and support of UL’s transformation. “We took advantage of Oracle’s depth of
knowledge and breadth of experience to get this transformation done. . . . Oracle is at the very center of what we’re doing now, and it’s providing the foundation for the
second century of growth for our company.”

“UL is an increasingly diverse company, with a different footprint and standards up front, so that by the time a product is manufac-
than we had just a few years ago,” says Anschuetz. tured, it can quickly enter the supply chain and the market.
“Our transformation has all been about putting an organiza-
Business and IT Transformation tion and services in place that can help our customers win in the
For UL, focusing on its customers and their needs was the ultimate marketplace,” says Anschuetz. “We’ve changed our orientation, our
goal of the transformation. The company helps its customers create mindset, and our portfolio of products and services to all focus on
new products that can navigate a complex set of global regulations helping our customers move as quickly as possible from ideation to

Tips for Success

When it comes to large, transformational projects, technology transformation success: about customizations.
Christian Anschuetz, CIO at UL, feels strongly that 1. Get and keep the unwavering, absolute full 5. Put your best people on the transformation
CIOs and executives shouldn’t hesitate. “Even commitment of your executive suite and full time. This isn’t a side job.
though large-scale technology transformation your boss. 6. Get the highest level of executive sponsorship
projects fail, you don’t need to be afraid,” says 2. Define and execute a communication plan. from your partners.
Andrea Mandel

Anschuetz. “You simply have to approach the 3. Create and follow official guidelines for 7. Move fast and iterate. Break the project
challenge in the right way in order to succeed.” implementing the transformation. into chunks.
Anschuetz has the following eight tips for 4. Clearly define who will make decisions 8. Build momentum and never stop driving.

March/April 2014 Oracle.com/oraclemagazine


35

getting their products on the shelves.” users, as well as providing fine-grain access
With all those business changes came snapshot rights to those users so that the critical
huge, fundamental changes to the infra- UL information that UL provides is appropri-
structure technology. The organization ul.com ately safeguarded. At the same time, UL
needed to be able to seamlessly support Location: Northbrook, Illinois is leveraging Oracle Fusion Middleware
multiple, distributed geographical locations. Employees: 11,000 to create new opportunities from its
Oracle products: Oracle Database; Oracle
After evaluating different technology vast sources of data. “Oracle SOA Suite
E-Business Suite (more than 40 distinct
solutions, UL decided to implement the full modules, including Oracle iReceivables, Oracle is the connective tissue that we’re using
Oracle stack, from Oracle Exadata and Oracle iProcurement, and Oracle Compensation to connect legacy and new applications
Exalogic engineered systems up to an uncus- Workbench); Oracle SOA Suite (including Oracle together to allow us to harvest and create
tomized Oracle E-Business Suite deploy- Enterprise Service Bus and Oracle Business value from the hundreds of thousands of
Activity Monitoring); Oracle Fusion Middleware;
ment. UL selected Oracle E-Business Suite transactions we have with our customers
Oracle Identity Management; Oracle
for its completeness and robust functionality, Exadata; Oracle Exalogic; Oracle Exalytics; every single year,” says Anschuetz.
Oracle Exadata and Oracle Exalogic for speed Oracle Business Intelligence Enterprise And while UL has put the foundation for
and scalability, Oracle Fusion Middleware to Edition; Oracle WebCenter; Oracle Business big data in place with Oracle solutions such
integrate non–enterprise resource planning Intelligence Applications; Oracle Enterprise as Oracle Exadata and Oracle Exalytics,
Governance, Risk, and Compliance Manager;
(ERP) functions and systems from acquired the company is focused on smart data and
Oracle Enterprise Manager; Oracle Application
companies, and Oracle Identity Management Integration Architecture; Siebel applications on helping its customers distill the critical
to control both user and customer access. information needed to optimize their prod-
Partnering with a single vendor, Oracle, pro- ucts and services.
vided UL with higher degrees of integration; faster implementation “Our new Oracle-based platform is going to allow us to intel-
times; and, most importantly, a capable partner that fundamentally ligently combine our services with information to create more value
invested in the transformation’s success. for our customers and ourselves,” says Anschuetz. “It’s not just
When the technology transformation was complete, UL had about creating a giant repository or big data warehouse. It’s about
the entire worldwide company using a single instance of Oracle moving data fluidly to the right point at the right time to create
E-Business Suite running on Oracle Exadata and Oracle Exalogic. UL the right value.”
completed the final part of its 18-month deployment in December
2013, on time and under budget. In fact, the project was so suc- Building a Safer Future
cessful that UL was able to expand the scope of the project mid- With its technology and business transformation projects complete,
stream to include the integration of three additional businesses that UL is finding that success builds on success. “As a result of IT and
had been acquired during the project’s implementation. business transformation, we’re going to be even more effective in
“As a CIO, I’ve completed several ERP implementations. I’ve the marketplace,” notes Anschuetz.
never seen anything like this anywhere,” says Anschuetz. “It was due And for UL, a key part of developing that winning momentum was
to the superlative team we have and the great commitment of the leveraging Oracle’s expertise. “We took advantage of Oracle’s depth
CEO. In less than 18 months, we completely transformed our front- of knowledge and breadth of experience to get this transformation
end and back-end systems. We went into this project knowing the done. We trusted they knew it better than we did, and our trust
risks, but we chose Oracle as a partner because we have a lot of faith paid off,” says Anschuetz. “Oracle is at the very center of what we’re
and confidence in Oracle.” doing now, and it’s providing the foundation for the second century
As anyone would expect, UL did encounter a couple of hardware of growth for our company.” 
and software problems during deployment. However, in both cases,
Oracle provided production patches within 24 hours. “Oracle was
not going to allow a technology problem to stop our company from
David A. Kelly (davidakelly.com) is a business, technology, and travel
focusing where it needed to focus, which was on the business trans-
writer who lives in West Newton, Massachusetts.
formation problem,” says Anschuetz.

Next Steps
Benefits and Big Data
UL’s new Oracle-based stack provides significant benefits. “We
WATCH
have better line of sight into the consumption behavior of our UL and the Big Data Challenge
customers so we can understand where they’re deriving value bit.ly/1b6tBia
and where we can focus ourselves to extend and create even more UL Standardizes ERP Processes for Over 60,000 Manufacturers
value,” says Anschuetz. bit.ly/1cCAzr6
UL is using Oracle Identity Access Manager to provide a security LEARN more about Oracle engineered systems
oracle.com/us/products/engineered-systems
framework for identifying and authenticating internal and external

oracle magazine March/April 2014


Oracle Cloud
Applications
HCM
Human Capital
Recruiting ERP
Talent Financials
Procurement
CRM Projects
Sales
Supply Chain
Service
Marketing

More Enterprise SaaS Applications


Than Any Other Cloud Services Provider

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Java Developer ORACLE ADF BY FRANK NIMPHIUS 37

ORACLE JDEVELOPER, ORACLE APPLICATION DEVELOPMENT FRAMEWORK

REST for Everyone


Build and consume database-bound RESTful web
services with ease, using Oracle JDeveloper 12c and
Oracle ADF.

A ddressing the popularity of RESTful web


services in application development, the
new Oracle JDeveloper 12c integrated devel-
contract that allows create, read, update,
and delete (CRUD) operations to be encoded
only through the HTTP methods GET, PUT,
work with the Oracle ADF REST data control,
the resources will be formatted as XML.
Note: The department and employee
opment environment (IDE) provides declara- POST, and DELETE on a specific server- entities in the hands-on steps in this article
tive support for building and consuming side resource. Compared to traditional use Java Architecture for XML Binding (JAXB)
Representational State Transfer (REST) SOAP-based web services that require you annotations to produce the XML represen-
services in Java. In addition, the new Oracle to define hundreds of operations such as tation. JAXB can also be used to produce
Application Development Framework (Oracle getEmployees or updateOrder, the REST API JSON, but JSON will not be explored here.
ADF) release includes a new data control for is relatively easy to use.
REST services that are to be used as business Because of this simplicity, REST services REST IN JAVA
services for Oracle ADF web applications. are lightweight and provide flexibility in REST services and REST clients can be
This article provides an overview of REST their implementations that developers can developed according to the Java API for
service development in Oracle JDeveloper 12c easily explore. For example, each server- RESTful Web Services (JAX-RS) standard.
and, in its hands-on instructions, steps you side resource and how it is represented (its The Reference Implementation of the
through building and consuming a database- format) are negotiable between the client JAX-RS standard is the Jersey open source
bound REST service in Oracle ADF. and the server. Well-known formats include project, which is also the technology used in
XML, JavaScript Object Notation (JSON), Oracle JDeveloper 12c for building and con-
REST IN A NUTSHELL and HTML. suming REST services in Java.
To work with REST in Oracle JDeveloper 12c In the hands-on part of this article, you JAX-RS defines annotations that enable
and to follow the hands-on instructions in will create and work with two resources: developers to bind a uniform resource
this article, you don’t need to be a REST web department and employee. To have them identifier (URI) to Java methods in a plain
services expert. This section introduces the
basic REST concepts and principles you’ll
need, providing enough information that
you’ll be able to easily follow and under-
stand the hands-on instructions.
Working with REST is all about working
with resources addressed by URLs. The term
resource is abstract in REST and can refer to
anything from a person, an order, or a booking
to a list of employees, rows queried from a
database table, and more. The key principle
in REST is that no state is kept on the client
or the server and all context information
is encoded in the request or contained in
the response payload. Another important
concept in REST, Hypermedia as the Engine of
Application State (HATEOAS), means that the
response to a request contains enough infor-
mation that the client can determine how to
continue working with the application.
I-HUA CHEN

For the client to communicate with the


server, REST defines an extremely simple Figure 1: Master-detail view of the completed sample application

ORACLE MAGAZINE MARCH/APRIL 2014


38 Oracle adf

old Java object (POJO), based on the HTTP Oracle JDeveloper 12c application you will zip file content.
method being used in the request. To bind build, some parts of the hands-on applica- 2. Open the oramag030414/starter/
a Java method to a URI, the @Path annota- tion have been prebuilt for you. OraMagEjbRestService folder, and select
tion is used. The optional @ParamName Note: To access the departments and the OraMagEjbRestService.jws file. Click
and @QueryPram annotations are used for employees data, you’ll use two classes— Open to load the workspace.
extracting parameters from the request URI. DepartmentService and EmployeeService— 3. Select Window -> Database ->
To associate a Java method with a spe- to implement the REST web services. For the Databases, and expand the
cific HTTP method used with a REST URI, purposes of this article and the hands-on OraMagEjbRestService node to
JAX-RS defines the following annotations: activity, the code within each class will be display the hrconn node.
abbreviated. In a real-world implementa- 4. Right-click hrconn, and select Properties
Annotation Description tion, you would typically support the full from the menu. Edit the database con-
@GET Marks a Java method in a POJO to handle CRUD methods for each resource. nection information to work with your
GET requests for a URI
database setup. Test the changes (click
@POST, @PUT Mark methods that update or create a
resource for a URI Getting Ready Test), and click OK.
@DELETE Marks a method to handle the deletion of The two Oracle JDeveloper 12c workspaces Next, start the Oracle WebLogic Server
a server-side resource for a URI
required for the hands-on instructions instance integrated with Oracle JDeveloper.
in this article, one for the REST service To start the Oracle WebLogic Server, select
In addition, @Produces and @Consumes and one for the sample application, are Run -> Start Server Instance.
annotations are used for a Java method to contained in the o24adf-2065567.zip file, If this is the first time you’ve run the
define the payload format of a request as located at bit.ly/18NIYgm. integrated Oracle WebLogic Server, a Create
well as the format of the response so that Download the zip file and unzip it into Default Domain dialog box will open. Create
clients and the server can negotiate the con- a directory whose name does not contain a password for the default Oracle WebLogic
tract of their communication. blank-space characters. Server domain.
As you will see, with Oracle JDeveloper 12c, The OraMagEjbRestService workspace Note: To ensure that the integrated
you can build Java-based REST services contains a ready-made EJB Model project Oracle WebLogic Server listens for localhost
declaratively by using a configuration wizard and a project to expose the EJB model as a and the IP address of your computer, don’t
that adds all these annotations for you. REST service. It requires access to the Oracle select an address from Listen Address.
Database HR sample database schema. To Click OK to save your changes and to
Sample Application Overview prepare this workspace for your environ- create and configure the default domain for
In following this article’s hands-on instruc- ment, you must configure the database con- Oracle ADF. The Oracle WebLogic Server will
tions, you will build a master-detail Oracle nection for the workspace. To configure the create a default domain and start the server.
ADF web application that queries data from connection, do the following: Note: Wait for the integrated Oracle
the database through Enterprise JavaBeans 1. In Oracle JDeveloper 12c, select File -> WebLogic Server to start before proceeding
(EJB)–backed REST services; Figure 1 shows Open and navigate to the directory con- to the steps in the next section. The first
the application. To limit the scope of the taining the unpacked sample application time you start the server, it builds the Oracle

Figure 2: HTTP Analyzer displaying the result for the GET request

March/april 2014 Oracle.com/oraclemagazine


39

WebLogic Server domain, which may take whenever a Get request is issued to the figuration, because it includes support for
several minutes. REST root URI (oramag/department). update and delete operations.
13. Click Next. 20.  In the Application Navigator, in
Creating the Department REST Service 14. Click OK in the Return Type Warning RestService, Application Sources,
To create the department REST service, dialog box. The hands-on sample uses oramag.sample.one, two, four-
begin by selecting Window -> Applications. JAXB annotations added to the EJB enti- teen, and rservice, right-click the
The OraMagEjbRestService workspace con- ties to parse Java objects to XML and vice EmployeeService.java class and choose
tains two projects: versa, so you can ignore this dialog box. Create RESTful Service.
• The Model project uses Oracle TopLink and 15. Click Finish. Oracle JDeveloper opens the 21. In the Create RESTful Service from Java
an EJB session bean to query and update DepartmentService.java class in the Java Class dialog box, change the Root Path
the Departments and Employees tables in code editor. The class shows the getAll input field to oramag/employee.
the HR schema. method annotated with 22. In the Configure HTTP Methods table,
• The RestService project references the edit the methods as follows:
EJB session bean in the Model project @GET
from two JavaBeans—DepartmentService @Produces("application/xml") Name getByDepartmentId

.java and EmployeeService.java—to read @Path("/") Type GET

and write data. The two JavaBeans repre- Consumes <leave empty>

sent the resources you will now expose as The DepartmentService class itself is Produces application/xml

REST services. annotated with @Path to identify the Path /{departmentId}

To create the department service, do root URI for this REST resource:
the following: Name update

5. In the Application Navigator, expand the @Path("oramag/department") Type POST

RestService project node, Application Consumes application/xml

Sources, oramag.sample.one, two, 16. Right-click the DepartmentService.java Produces <leave empty>

fourteen, and rservice. file, and choose Test Web Service to test Path /

6. Right-click the DepartmentService the REST service in the HTTP Analyzer.


.java file entry, and choose Create 17. Click Send Request in the opened HTTP Name removeById

RESTful Service. Analyzer window to issue a Get request Type DELETE

7. In the Create RESTful Service from Java for the REST web service base URI and Consumes <leave empty>

Class dialog box, change the Root Path obtain a list of departments, as shown in Produces <leave empty>

input field text to oramag/department Figure 2. Path /{employeeId}

to define the base URI to access the 18. The log window shows a REST
department source. service base URL that looks similar 23. Next, select the GetByDepartmentId
8. In the Configure HTTP Methods table to http://127.0.0.1:7101/hr- method and edit the Configure
(note that you may need to resize the restservice-context-root/resources/ Parameters table as follows:
dialog box to see the full label string), oramag/department/.
select the getAll entry. The getAll() 19. Make a note of the actual REST URL—you Name departmentId

public method in DepartmentService will need it later. Data Type int

.java accesses the EJB business service What you just did: You used Oracle Annotation PathParam

to query a list of departments from the JDeveloper’s wizard for creating Parameter departmentId

Departments table in the HR schema and RESTful services to REST-enable the Default <leave empty>

returns the result as an XML response. DepartmentService class and to expose the Encoded <leave unchecked>

9. Because read requests in REST are Get public getAll() method for GET access. The
requests, select GET from the Type REST-specific annotations added to the Java 24. Next, select the removeById method
column for the getAll entry. file are from Jersey, the Java EE 6 JAX-RS and edit the Configure Parameters table
10. No input arguments are required, so REST Reference Implementation bundled as follows:
leave the Consumes field empty. with Oracle JDeveloper. Finally, you tested
11. Click the … button to the right of the the REST service, using Oracle JDeveloper’s Name employeeId

Produces field, select application/xml, integrated HTTP Analyzer. Data Type int

and click OK. Annotation PathParam

12. Double-click in the Path field, and add a Creating the Employee REST Service Parameter employeeId

forward slash (/) as a value. This way a list Next, configure the EmployeeService class Default <leave empty>

of departments is queried and returned as a REST service, which requires more con- Encoded <leave unchecked>

oracle magazine March/april 2014


40 Oracle adf

25. Click Finish and OK to confirm the file content. 46. Click Next and then Test URL Connection.
Return Type Warning. 31. Open the oramag030414/starter/ 47. Click Finish when the test is successful.
26. To test the service, right-click the OraMagRestClientApp folder, and select Otherwise, check and correct the pro-
EmployeeService class and choose Test the OraMagRestClientApp.jws file. vided REST URI.
Web Service. 32. Click Open to load the workspace. What you just did: In this section, you
27. Change the URL field value in the HTTP 33. Select the Model project, and choose created a REST data control for the depart-
Analyzer to http://localhost:7101/ File -> New -> From Gallery -> Business ment resource. The data control exposes a
hr-restservice-context-root/ Tier -> Web Services -> Web Service Data single method for the service GET request
resources/oramag/employee/60, and Control (SOAP / REST) from the Oracle and expects an XML response to represent
confirm the change by pressing the JDeveloper menu and the New Gallery a list of departments. The XML response is
Enter key. dialog box, and click OK. defined by an XSD that has been created
28. Click Send Request to see the list of 34. In the Create Web Service Data Control in preparation for this sample application
employees for department 60. dialog box, enter DepartmentRestDC in with the File -> New -> From Gallery ->
29. Make a note of the service root the Name field. Business Tier -> TopLink/JPA -> JAXB XML
URL, http://127.0.0.1:7101/hr- 35. Select REST. Schema from Content Model option in the
restservice-context-root/resources/ 36. Click the green plus (+) icon next to the OraMagEjbRestService -> RestService project.
oramag/employee. Connection field.
What you just did: You successfully config- 37. In the Create URL Connection dialog Creating the Employee REST
ured the two JavaBeans in the RestService box, enter DepartmentsRestConn in the Data Controls
project as services. Each service represents Name field. The employee REST data control you will
a resource: a department or an employee. 38. Enter http://127.0.0.1:7101/hr-rest- build next is a bit more complex than the
In this section, you performed a more service-context-root/resources/ department data control, because it exposes
complex configuration that included input oramag/department in the URL three REST HTTP methods—for GET, POST,
arguments defined for methods. Endpoint field. and DELETE—and also needs to define
The getByDepartmentId and removeById Note: The URL Endpoint URL does not input arguments for GET and DELETE. To
methods both required a single input argu- have an ending slash. create the employee REST data controls,
ment. Adding /{name} to the REST URI path 39. Click OK, and then click Next in the Create 48. With OraMagRestClientApp open in
adds an annotation that enables the request Web Service Data Control dialog box. the Oracle JDeveloper Application
to reference a resource, such as a depart- 40.  Click the green plus (+) icon next to the Navigator, right-click the Model project
ment, by a unique locator. Resource Paths label. and select New -> Web Service Data
So the annotated method would know 41. Change the Resource Paths value from Control (SOAP / REST).
where to get the required input argument, /path0 to /, and select GET. 49. In the Create Web Service Data Control
you added the PathParam annotation with 42. Enter getAllDepartments as the dialog box, enter EmployeeRestDC in the
the name of the variable in the request. The Method Display Name value for GET. Name field.
name of the variable is the same as the vari- 43. Click Next. 50.  Select REST.
able name added to the REST path, such as 44. Select getAllDepartments under 51. Click the green plus (+) icon next to the
departmentId in /{departmentId}. Resource Methods, and click the browse Connection field.
Note: The Oracle JDeveloper log window button (magnifier icon) next to the 52. In the Create URL Connection dialog
(Window -> Log) shows the URL for Response XSD field. box, enter EmployeesRestConn in the
the REST Web Application Description 45. In the dialog box, open the xsd folder, Name field.
Language (WADL) file. Clicking this link select the DepartmentsList.xsd file, and 53. Enter http://127.0.0.1:7101/hr-rest-
opens the WADL file in a tab panel, showing click Open. If no XML Schema Definition service-context-root/resources/
all resource URIs and their HTTP methods (XSD) file is provided, Oracle JDeveloper oramag/employee in the URL
defined for the service. will generate one when verifying the Endpoint field.
REST URIs. 54. Click OK and then Next in the Create Web
Creating the Department REST Note: Because generated files usually Service Data Control dialog box.
Data Controls require some editing, this sample 55. Click the green plus (+) icon next to the
REST services are consumed in Oracle ADF application provides predefined Resource Paths label.
by use of the new REST service data control XSD files. Due to a known issue in 56. Change the Resource Paths value
(REST DC). To create the REST DC model, Oracle JDeveloper 12.1.2.0, however, from /path0 to /##departmentId##,
30.  In Oracle JDeveloper, select File -> Open it is recommended that you use and select GET. Enter
and navigate to the directory containing generated XSD files in your own getEmployeesByDepartment as the
the unpacked sample application zip application development. Method Display Name value for GET.

March/april 2014 Oracle.com/oraclemagazine


41

Note: The ##departmentId## flag 68. Click Next, and then click Test Data Controls panel, and drop it in the
defines parameters in the Oracle ADF URL Connection. Employees area in the visual page editor.
REST data control. The parameter names 69. Click Finish when the test is successful. 80.  Choose Table/List View -> ADF Table
will show as arguments to the methods Otherwise, check and correct the pro- from the Create menu.
in the data control panel. vided REST URI. 81. In the Create Table dialog box, select
57. Again, click the green plus (+) icon next 70.  In the Application Navigator, expand Single Row and Read-Only Table.
to the Resource Paths label. the Data Controls panel and refresh it by Optionally, reorder the employee attri-
58. Change the Resource Paths value from clicking the refresh button (icon with butes so they’re in a more logical order
/path0 to /, and select POST. Enter two arrows). The two data controls are if you like.
updateEmployee as the value of Method now displayed. 82. Click OK.
Display Name for POST. What you just did: In this section, you 83. In the Edit Action Binding dialog box,
59. Again, click the green plus (+) icon next created a REST data control for the enter #{bindings.departmentId.
to the Resource Paths label. employee resource with three methods inputValue} as the departmentId value
60.  Change the Resource Paths value for read, update, and delete operations and click OK.
from /path0 to /##employeeId##, and on the REST service. Using ##<name>##, 84. Click the table in the Employees area of
select DELETE. Enter removeEmployee you defined parameters to hold the values the visual editor. The bread crumb at the
as the value of Method Display Name for the REST method calls. Note that the bottom of the visual editor should be the
for DELETE. DELETE operation is not used in this sample af:table#t1 crumb, highlighted (bold-
61. Click Next. application (but regard adding this opera- faced), as the last element. If not, click
62. Select removeEmployee from the tion as your homework). The POST opera- the bread crumb to select the table.
Resource Methods list, and enter a tion—updateEmployee—is implemented 85. Open the Property Inspector (Window ->
default value of 100 for employeeId (in for you in the completed sample application, Properties), navigate to the
the URL Parameters section). explained at the end of this article. PartialTriggers property under the
Note: The 100 value is used to verify Behavior category, and enter ::b1 ::b2
that the REST method request is valid Building a Master-Detail Page ::b3 ::b4.
at design time. A later version of Oracle With the REST services and the REST data Note: ::b1 through ::b4 are the IDs
JDeveloper will make this check optional. controls created, the final step is to build a of the navigation buttons that should
(No delete will be processed, however.) master-detail page. To create the master- trigger a table refresh. Whenever
63. Select updateEmployee from the detail page, the user navigates the list of depart-
Resource Methods list, and click the 71. With the OraMagRestClientApp work- ments, the employee list will refresh
browse button (magnifier icon) next to space open, in the Application Navigator, to display only the employees of the
the Payload XSD field. expand the ViewController project and selected department.
64. In the Open dialog box, open the xsd the Web Content -> pages node. 86. Save your work.
folder, select the Employee.xsd file, and 72. Double-click the DeptEmp.jsf page to 87. In the Application panel, right-click
click Open. open it in the visual page editor. the DepEmp.jsf file in the ViewController
Note: The update method of the REST 73. Expand the Data Controls panel and -> Web Content -> pages node and
service has a single object argument then the DepartmentRestDC -> choose Run.
of type Employee. Because this type is getAllDepartments() -> Return -> 88. Use the navigation buttons in the
defined as a JAXB object, it can be mar- departmentList node. Departments section to change
shaled and unmarshaled to and from 74. Drag the alldepartments entry from the display and watch the employee
XML. Therefore, you’ll provide the XML the Data Controls panel, and drop it in list refresh.
representation of the argument. the Departments area in the visual What you just did: In this section, you
65. Select getEmployeesByDepartment from page editor. created and tested a master-detail page
the Resource Methods list and click the 75. Choose ADF Form from the Create menu. that uses the department REST service,
browse button (magnifier icon) next to 76. Check Read-Only Form in the Create the department REST data control, and the
the Response XSD field. Form dialog box. employee REST data control you created in
66. In the Open dialog box, open the xsd 77. In the Include Controls For section, previous sections.
folder, select the EmployeesList.xsd file, select Row Navigation and click OK.
and click Open. 78. In the Data Controls panel, expand RUNning the Completed Sample
67. Enter a default value of 60 for the EmployeeRestDc -> Application
departmentId (in the URL Parameters getEmployeesByDepartment -> Return -> A completed sample application is provided
section). Again, this is used for REST URI employeeList node. in the download for this article. In addition
verification only at design time. 79. Drag the allemployees entry from the to the master-detail view, the completed

oracle magazine March/april 2014


42 Oracle adf

sample application shows how to update With the DeptEmp.jsf page displayed in Frank Nimphius is a senior principal product
data for a selected employee. To run the your browser, select an employee record manager for Oracle JDeveloper and Oracle ADF.
completed sample, and click Edit Selected Employee to test the He is a coauthor of Oracle Fusion Developer
89. In Oracle JDeveloper, open the update function. Provide changes to the Guide: Building Rich Internet Applications with
OraMagEjbRestService.jws workspace employee record, and click Submit. Changes Oracle ADF Business Components and Oracle
in the oramag030414/completed/ show in the employee table and—as com- ADF Faces (McGraw-Hill).
OraMagEjbRestService folder and con- mitted data—in the database.
figure the database connection to point Note: Building a REST-based update Next Steps
to the HR sample schema. form with the Oracle ADF REST data control
90.  Run the service by right-clicking the is an advanced topic that is not covered in DOWNLOAD
sample application for this article
DepartmentService.java file in the this article.
bit.ly/18NIYgm
RestService project and choosing Test
READ more about Oracle ADF
Web Service. This will deploy the service Conclusion oracle.com/technetwork/developer-tools/adf
to the integrated Oracle WebLogic Server. With Oracle JDeveloper 12c, you can inte- JAX-RS Reference Implementation—Jersey
91. Next, select File -> Open and navigate grate a RESTful service into your Oracle open source
jersey.java.net
to the oramag030414/completed/ ADF applications, using the REST service
Developing Applications with Oracle ADF Data
OraMagRestClientApp directory con- data control. This article showed how to
Controls: Chapter 5, “Exposing Web Services
taining OraMagRestClientApp.jws. build a master-detail browse page based on Using the ADF Model Layer”
Select the file, and click Open. previously created REST services. An online bit.ly/1bqU74k
92. Finally, locate the DeptEmp.jsf page in video tutorial at bit.ly/IVKQHE explains WATCH
the ViewController project, right-click it, how to update remote REST services from the REST updatable forms video tutorial
bit.ly/IVKQHE
and choose Run. Oracle ADF. 

Go where the conversation lives.


Connect with Oracle Magazine on your favorite social
channel and be a part of our growing community.

Join Us.

OracleMagazine Oracle Magazine @OracleMagazine

Print. Digital. Mobile.

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.

March/april 2014 Oracle.com/oraclemagazine


Database Developer .NET By Christian Shay 43

Oracle Data provider for .net

An Easy Drive to .NET


Take advantage of the compact, easily deployable
Oracle Data Provider for .NET, Managed Driver.

O racle Data Provider for .NET (ODP.NET)


is Oracle’s free, high-performance ADO
.NET-compliant data access provider that
migration example; and explain what is
required to enable distributed transac-
tions. Along the way, I’ll alert you to a few
.NET, Managed Driver, is also distributed by
itself as a very small xcopy install.)
To do design-time work with Visual
gives .NET developers access to all the fea- “gotchas” that can catch first-time users. Studio—such as to use ADO.NET Entity
tures of Oracle Database with .NET languages Data Model Designer (Entity Designer) or
such as C# or VB.NET. At the same time, ODP Requirements to create TableAdapters and data sets—you
.NET supports all the features of ADO.NET I’ll be using Microsoft Visual Studio 2012 in will also need Oracle Developer Tools for
and the .NET Framework, such as the Entity this walk-through, and to follow the steps, Visual Studio.
Framework object-relational mapper. you will need access to Visual Studio 2010 Start by downloading Oracle Developer
ODP.NET is now available in two flavors. or later. Note that you will also be installing Tools for Visual Studio with Oracle Data
The first, ODP.NET, Unmanaged Driver, Oracle Developer Tools for Visual Studio Access Components, a software bundle
contains unmanaged code, meaning that (sometimes referred to as ODT), which that includes the 32-bit Oracle Data
some of the libraries it relies on have been does not support Visual Studio Express. If Access Components along with Oracle
compiled directly to machine code rather you are using Visual Studio Express, you Developer Tools for Visual Studio (Visual
than to .NET bytecode. ODP.NET 12.1 intro- won’t be able to perform the portion of this Studio is a 32-bit application). Visit the
duces the second flavor, ODP.NET, Managed walk-through that involves connecting in Oracle .NET Developer Center at oracle
Driver, which is fully managed, meaning that Server Explorer (the server management .com/technetwork/dotnet, and click
the entire driver and supporting client and console for Visual Studio) and generating a the Download tab at the top of the page.
networking libraries have been compiled to TableAdapter and a data set. Click 32-bit ODAC with ODT Downloads,
.NET bytecode and run entirely inside the You will also need access to Oracle and then select the newest version of
Common Language Runtime, the .NET virtual Database 10g Release 2 (10.2) or later, with ODTwithODAC…zip available (Release 12.1 or
machine. For those who have a Java back- access to the HR sample schema. You can later). Unzip this file into a temporary direc-
ground, it may be useful to compare ODP download Oracle Database at bit.ly/epBiUG. tory, and then run setup.exe at this location.
.NET, Unmanaged Driver, to “thick” JDBC and (The HR schema is included with the basic
ODP.NET, Managed Driver, to “thin” JDBC. installation option, but you can create it Installing ODP.NET, Managed Driver
One of the most compelling features manually by installing the Oracle Database The ODTwithODAC installation package
of ODP.NET, Managed Driver, is its size: examples and running the HR create script.) uses Oracle Universal Installer. When the
it consists of no more than two dynamic Finally, ODP.NET, Managed Driver, requires installer’s Welcome screen appears, click
link libraries (DLLs), consuming less than .NET Framework 4 or later. Next, and on the next screen, enter the
10 MB of total disk space. Because this Oracle home name in the Name field and
includes everything necessary—no other Download ODP.NET, Managed Driver the Oracle home path in the Path field
Oracle client or networking libraries are ODP.NET, Managed Driver, is included with and click Next. By default, the installer will
required—deployment can be very simple several free downloads available on the populate these fields with a proposed new
and can easily utilize Microsoft deployment Oracle Technology Network website at Oracle home name and path. (Generally, you
technologies such as ClickOnce deployment bit.ly/1j7ZV8y. It is part of Oracle Data should install new versions of Oracle soft-
or Web Deploy. Side-by-side deployment Access Components 12.1 and later, where ware into a new Oracle home.)
of different versions of ODP.NET is simpli- it is listed as Oracle Data Provider for The next screen shows a list of product
fied, and in many cases, there is no longer .NET, including both the unmanaged and components available for installation.
any need to consider whether a deployment managed ODP.NET. Oracle Data Access Deselect everything except Oracle Data
target is 32-bit or 64-bit. Components (referred to in the user inter- Provider for .NET, Oracle Developer Tools
In this article, I’ll demonstrate how to face as ODAC) is packaged with Oracle for Visual Studio, Oracle Data Access
download and install ODP.NET, Managed Universal Installer and as an xcopy install, Components Documentation for Visual
Driver; show how to configure networking; which is a zipped set of files and some batch Studio, and Oracle Instant Client, and
walk through an unmanaged-to-managed files used to copy and configure them. (ODP click Next. Depending on your environ-

oracle magazine March/April 2014


44 .Net

ment, you may see a Database Connection using Oracle.DataAccess.Client; box, enter the User name and Password;
Configuration screen. If so, optionally enter using Oracle.DataAccess.Types; select EZ Connect for Connection Type; and
the connection details for your database then enter the database host name, port
and click Next. You may also be prompted Build and run the application (press F5 number, and database service name. Click
to select which version(s) of Visual Studio or select Debug -> Start), and then click the Test Connection to test the connection, and
you would like to integrate with. If so, select application button to verify that the data the when the connection is successful, click OK.
the version(s) and click Next. Finally, on the button handler code is retrieving from the Next, go back to the Toolbox, and in the
Installation Summary screen, click Install to EMPLOYEES table in the Oracle Database Data section, drag DataGridView onto the
start the installation. After several minutes, it sample HR schema is displayed. form design surface. In the DataGridView
will complete and you can close the installer. Next you will automatically generate a Tasks menu, click Choose Data Source, and
TableAdapter and a data set to display data then click the Add Project Data Source link.
Creating an Application That Uses inside a DataGridView. Automatic code In the dialog boxes that follow, for Data
ODP.NET, Unmanaged Driver generation (using a TableAdapter or Entity Source Type, choose Database; for Database
For those who have experience with unman- Framework, for example) relies on data- Model, choose Dataset; and for Choose Your
aged ODP.NET, perhaps the best way to base connections set in Server Explorer. (If Data Connection, select the Server Explorer
understand the differences between the you want your application to use unman- connection you just created. Choose Yes
unmanaged and managed drivers is to aged ODP.NET in the autogenerated code, to include the password in the connection
perform a migration between the two. Before connect in Server Explorer by using ODP string and Yes to save the connection string
you can do that, you need a working applica- .NET, Unmanaged Driver. Conversely, if you in the application configuration file. In the
tion that uses ODP.NET, Unmanaged Driver. want your application to use managed ODP Database Objects dialog box, drill down into
Download the download.zip example .NET, you need to connect in Server Explorer Tables and select the EMPLOYEES table.
code file from bit.ly/L6IMxq. Extract the by using ODP.NET, Managed Driver.) Build and run the application, and the
files into a temporary directory. Now create a connection to Oracle EMPLOYEES table data should display in
Next, create a new Winform project in Database in Server Explorer. Select the DataGridView.
Visual Studio: Launch Visual Studio, and View -> Server Explorer, right-click Data
choose File -> New -> Project -> Windows Connections, and choose Add Connection. In Migrating from Unmanaged to
Form Application. Drag a button from the the Add Connection dialog box, click Change Managed ODP.NET
Common Controls section of the Toolbox for the Data source field. In the Change Data Migrating code based on ODP.NET,
onto the form. Double-click the button to Source dialog box, choose Oracle Database Unmanaged Driver, to the managed driver
access the code behind it. In the button_ for Data source and choose ODP.NET, is relatively straightforward. The main tasks
Click() handler, add the code from the Unmanaged Driver for Data provider. are as follows:
button_click.txt file, part of the extracted Click OK. In the Add Connection dialog • Modify the using clauses in your code.
download.zip file. (For reference, the code is
also shown in Listing 1.) Modify the code so Code Listing 1: The button_Click() handler code
that datasource in the connection string has
the correct host name, port, and service_ string conString = "User Id=hr; password=hr;" +
name for your database. You can find this
//EZ Connect Format is [hostname]:[port]/[service_name]
information in any TNSNAMES.ORA file you //Examine working TNSNAMES.ORA entries to find these values
have used to connect to this database. "Data Source=localhost:1521/pdborcl; Pooling=false;";
In Solution Explorer, under your
//Create a connection to Oracle
project, right-click References and choose
Add Reference. In the dialog box, click OracleConnection con = new OracleConnection();
Assemblies and then find the Oracle con.ConnectionString = conString;
con.Open();
.DataAccess assembly (Version 4.x). If there
are multiple references, hover over a selec- //Create a command within the context of the connection
tion to view the path and confirm that it is //Use the command to display employee names and salary from Employees table
OracleCommand cmd = con.CreateCommand();
located in the Oracle home where you just cmd.CommandText = "select first_name from employees where department_id = 60";
installed ODP.NET and Oracle Developer
Tools for Visual Studio. Select Oracle //Execute the command and use datareader to display the data
OracleDataReader reader = cmd.ExecuteReader();
.DataAccess, and click OK. Go back to the while (reader.Read())
code window containing the button_Click() {
handler, and add the following using MessageBox.Show("Employee Name: " + reader.GetString(0));
}
clauses at the top:

March/April 2014 Oracle.com/oraclemagazine


45

• Replace the references in your project to with no managed driver support or very ronment variables and is therefore not asso-
use ODP.NET, Managed Driver. limited support include user-defined types, ciated with a specific Oracle home location.
• Edit your TableAdapters and Entity Models XMLDB features and datatypes, Oracle As a result, configuration usually takes place
to use the managed driver. Advanced Queuing, the client result cache, inside .NET config files (such as machine
• Confirm that the Oracle Database features bulk copy, and the Transaction Guard feature .config, app.config, or web.config). Some of
used by your application are supported by of Oracle Database 12c. Check “Differences these .NET config file entries can optionally
the managed driver. between the ODP.NET Managed Driver and point to a directory where SQL*Net configu-
To migrate the sample Winform appli- Unmanaged Driver” (bit.ly/1j2kMtP) in ration files such as TNSNAMES.ORA can be
cation you created based on ODP.NET, Oracle Data Provider for .NET Developer’s loaded. If you want to omit .NET config file
Unmanaged Driver, to use ODP.NET, Guide, because additional features will be entries altogether, you can include SQL*NET
Managed Driver, instead, click Oracle supported over time. configuration files in the working direc-
.DataAccess in Solution Explorer under your When you are performing a migration, tory of the application or use the SQL*Net
project references and press the Delete key be aware that there is a difference between EZConnect connection string format.
to delete it. how the managed and unmanaged drivers During ODP.NET installation, a TNS_
Then right-click References and choose parse connection strings. The managed ADMIN entry is added to machine.config,
Add Reference. In the dialog box, click driver takes any difference between two and this entry points to the directory where
Assemblies and then find the Oracle connection strings, including extra spaces TNSNAMES.ORA, SQLNET.ORA, and LDAP
.ManagedDataAccess assembly (Version between connection string attributes, to .ORA files can be used by the application.
4.x). If there are multiple references, hover mean that the strings are different, and this Note that by default during installation,
over a selection to view the path and confirm will result in the creation of an additional machine.config for the 32-bit or the 64-bit
that it is where you just installed ODP.NET connection pool. With the unmanaged .NET Framework—but not both—is updated.
and Oracle Developer Tools for Visual Studio. driver, only the connection string attributes Depending on which package you down-
Select Oracle.ManagedDataAccess, and are compared for differences in determining loaded, you may need to manually run the
click OK. In the code window containing if a new connection pool is needed. If you appropriate configure.bat file in the ODP
the button_Click() handler code you edited discover during unmanaged-to-managed .NET\managed directory in the Oracle home
earlier, replace the two using clauses refer- migration testing that unwanted additional if you want to configure both 32-bit .NET
encing Oracle.DataAccess.Client and Oracle connection pools are being created, this dif- Framework and 64-bit .NET Framework.
.DataAccess.Types with the following: ference is the likely culprit. To view this TNS_ADMIN entry, open
the machine.config file for the 32-bit .NET
using Oracle.ManagedDataAccess.Client; Networking Configuration with Framework on your machine (because you
using Oracle.ManagedDataAccess.Types; ODP.NET, Managed Driver installed 32-bit ODP.NET), and search for
Configuring ODP.NET, Managed Driver, for TNS_ADMIN.
Figure 1 shows the updated using direc- networking (or other settings) is a bit dif- In addition to or instead of using SQL*Net
tives and project references. ferent from configuring the unmanaged connection aliases inside the TNSNAMES
Next, edit the TableAdapter to use the driver, because the managed driver does not .ORA pointed to by the TNS_ADMIN
managed driver. In Solution Explorer, look at the Windows registry or at most envi- machine.config value, you may also include
right-click DataSet and choose View
Designer. In the Dataset Designer, right-
click EMPLOYEESTableAdapter and choose
Properties. In the properties pane for
TableAdapter, expand the Connection group
and modify the Provider property to use
Oracle.ManagedDataAccess.Client. Rebuild
and run the application, and verify that it
now works with the managed driver.
In addition to making these modifica-
tions, verify that the application features
being used are supported in ODP.NET,
Managed Driver. Oracle Data Provider for
.NET Developer’s Guide, at bit.ly/
1hfQmRS, specifies whether each ODP.NET
class is supported with the managed driver. Figure 1: Setting the using directives in the code (left) and in the project references (right) to use
At the time of this writing, feature areas ODP.NET, Managed Driver

oracle magazine March/April 2014


46 .Net

definitions for aliases inside .NET config TNSNAMES.ORA file found in the working .ManagedDataAccess.dll. You can find this
files. To add a connection alias to the app directory of the application. DLL in the ODP.NET\managed\x86 and ODP
.config file used by your application, double- Many other parameter values can be .NET\managed\x64 directories in your Oracle
click App.config in Solution Explorer to set in the .NET config files. For informa- home. As indicated by the directory names,
open it in the editor. Add the contents of tion on additional ODP.NET, Managed there is one assembly for 32-bit Windows and
the appconfig.txt file, part of the extracted Driver, configuration settings, see “Oracle one for 64-bit Windows. The DLL should not
download.zip file. (Listing 2 includes the Data Provider for .NET, Managed Driver be added to the references in your project; it
contents of a sample App.config file with Configuration” in Oracle Data Provider for will be implicitly loaded when it is needed.
a similar appconfigalias connection alias.) .NET Developer’s Guide. In addition to deploying the assembly,
Open the application code you edited you will need to provide access to an OraMTS
earlier, and modify the connection string Distributed Transactions recovery service to resolve in-doubt trans-
variable value conString such that Data Many .NET applications use distributed actions. Otherwise, you will receive error
Source=appconfigalias;. Rebuild the appli- transactions. A distributed transaction is a messages such as “ORA-1591: lock held by
cation, and run it again. Click the button transaction that affects several resources, in-doubt distributed transaction.” OraMTS is
on the form, and verify that you are able to such as an Oracle Database table and a part of the Oracle Data Access Components
connect and return data with the App.config MySQL database table. For a distributed and Oracle Database on Windows installa-
datasource you created. transaction to commit, all participants must tions, and the service can be installed on the
The order of precedence for resolving guarantee that any change to data will be same machine as your application or on a
TNS aliases is as follows: at application permanent. If a single participant fails to remote machine that has a properly config-
startup, ODP.NET, Managed Driver, looks for make this guarantee, any changes to data ured MSDTC service. If your recovery service
a dataSources section in the <oracle within the transaction must be rolled back. is on a remote machine, you can set the
.manageddataaccess.client> section in In .NET programming, distributed transac- OMTSRECO_IP_ADDRESS and OMTSRECO_
one of the .NET config files and caches any tions are made possible via System PORT values in the <distributedTransaction>
aliases found there. Next the driver looks .Transactions, which utilizes the Microsoft section of your .NET config file to tell ODP
for a TNS_ADMIN setting in one of the Distributed Transaction Coordinator .NET where the recovery service is located, as
config files and caches the entries in any (MSDTC), a service installed with Windows. shown in Listing 2.
TNSNAMES.ORA file found in the direc- To enable distributed transactions with
tory that TNS_ADMIN points to. If there is ODP.NET, Managed Driver, the Oracle Conclusion and Request
neither a dataSources section nor a TNS_ .ManagedDataAccessDTC.dll assembly I’ve just walked you through the installation,
ADMIN setting in a config file, it will load a must be deployed, along with Oracle migration, and configuration of ODP.NET,
Managed Driver. Please download it, give it
Code Listing 2: Example App.config content with parameters for ODP.NET, Managed Driver a try, and let me know what you think on the
ODP.NET forum, at bit.ly/1m28q27. 
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
Christian Shay is a product manager in the
</configSections> .NET Technologies group at Oracle.
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> Next Steps
</startup>
<oracle.manageddataaccess.client>
<version number="*"> DOWNLOAD
<dataSources> ODP.NET, Managed Driver
<dataSource alias="appconfigalias" descriptor=" bit.ly/1j7ZV8y
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
source code for this article
(HOST=localhost)(PORT=1521))
bit.ly/L6IMxq
(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
</dataSources> VISIT
<settings> the Oracle .NET Developer Center
<setting name="TNS_ADMIN" value="C:\tnsfiles"/> oracle.com/technetwork/dotnet
</settings> the ODP.NET forum
<distributedTransaction> bit.ly/1m28q27
<setting name="OMTSRECO_IP_ADDRESS" value="mydtc" />
<setting name="OMTSRECO_PORT" value="2040" />
LEARN
<setting name="ORAMTS_SESS_TXNTIMETOLIVE" value="240" />
more about ODP.NET, Managed Driver
</distributedTransaction>
applications
</version> bit.ly/1aHvRfq
</oracle.manageddataaccess.client> FOLLOW OracleDOTNET on Twitter
</configuration> @OracleDOTNET

March/April 2014 Oracle.com/oraclemagazine


DBA Consolidated Database Replay by Arup Nanda 47

Oracle Database 12c and ORACLE REAL APPLICATION TESTING

Playing Nice Together


Use the Consolidated Database Replay feature of Oracle
Real Application Testing in Oracle Database 12c to gauge
the impact of consolidating workloads.

T he lead DBA at Acme Bank, John, is


pondering project challenges and
hosting several visitors­—from the CIO to
to put a stop to any further efforts until the
DBAs proved that the database consolida-
tion would not be detrimental. The DBAs
Note: To create the example environ-
ment—including the CONTEMP and CLASSIC
databases and the workloads to be captured
the manager of applications—in his office. have captured the application workloads for testing—and follow along with the steps
Acme has embarked on an ambitious and via the Database Replay feature of Oracle in this article, execute the setup.sql script
expensive project to consolidate databases to Real Application Testing from the various provided with the Oracle-hosted online
save on processing power and administration databases and replayed them individu- version of this article at bit.ly/18PjwXE.
expenses. However, after two of its applica- ally against the consolidated database to
tions were started on its new consolidated see the viability of their consolidation Consolidation
database, Acme encountered a unique issue approach, but the replays haven’t uncov- Acme runs two sales applications—an older
no one had expected. The applications each ered the issues that were later caused by the one called Classic and a newer one called
have their own distinct workload pattern, concurrent execution of the applications. Contemporary (or Contemp, for short)—on
and prior to consolidation, the usage of What everyone in John’s office wants to two databases that bear the same names
resources such as I/O and CPU stayed under know is if there is a way to replay the appli- as the applications. Acme management
the maximum available in their respective cation workloads from many databases believes that, considering the similar nature
servers. However, when the applications were concurrently on the consolidated database. of the applications, these two databases
moved onto the same database—as Jill, the A related question is whether there is an should be merged into one. Jill chooses a
manager of the applications, demonstrates easy and definitive way to identify the spe- new database called TGTDB to hold both
by pointing to the chart shown in Figure 1— cific databases that can successfully be con- applications. The issues now are (1) whether
the timing of peak usage of one application solidated into groups. For example, applica- these two databases can be consolidated
coincided with that of the other and pushed tions A and B may cause serious issues when successfully and (2) whether any changes to
the combined resource usage of both appli- colocated, but A and C may not. TGTDB are needed for this consolidation to
cations above the maximum available. There is, assures John—with the be successful.
Additionally, before the consolidation, Consolidated Database Replay feature of Jill mentions that she has already cap-
each database had its own set of tables Oracle Real Application Testing in Oracle tured the workload from the CONTEMP and
to hold common data such as employee Database 12c. CLASSIC databases. (She points everyone
information and currency exchange rates.
For the consolidation, however, the DBAs
Maximum Available Capacity
created just one set of common tables.
With these applications running on the
same database, Jill observed that rows of
the common tables were locked by one
application and requested by the other at
the same time. These lock waits—not seen
Load

when the applications were running in their 1


tion
respective databases—were significantly lica
App
pronounced in the consolidated database
n2
and negatively affected the performance of ca t io
A p p li
both applications.
These bad experiences cast serious
Time
doubts on the feasibility of the consolida-
tion exercise, forcing Acme management Figure 1: Load patterns of two applications

oracle magazine March/april 2014


48 Consolidated Database Replay

to the Oracle Magazine January/February Code Listing 1: Checking connections of captures


2008 article “Better Workload, Better
Testing” [bit.ly/1jkxbKH] for information CONN_ID SCHEDULE_CAP_ID CAPTURE_CONN
on how to capture the workload.) John ——————————————— —————————————————————— ——————————————————————————————————————————————————————————————————————
1 1 (DESCRIPTION=(CONNECT_DATA=(SERVER=DEDICATED)
takes over and shows everyone the steps
(SERVICE_NAME=CLASSIC)(CID=(PROGRAM=C:\oracle\
for replaying Jill’s captured workloads from product\12.1.0\dbhome_2\bin\sqlplus.exe)
both databases in the new TGTDB database (HOST=server1)(USER=classic)))(ADDRESS=
(PROTOCOL=TCP)(HOST=192.168.1.100)(PORT=1522)))
running on the tgtsvr server.
1. First John copies the captured workload 2 2 (DESCRIPTION=(CONNECT_DATA=(SERVER=DEDICATED)
files from the source systems to the (SERVICE_NAME=CONTEMP)(CID=(PROGRAM=C:\oracle\
product\12.1.0\dbhome_2\bin\sqlplus.exe)
tgtsvr server, using the scp tool, which
(HOST=server2)(USER=contemp)))(ADDRESS=
is for remote file copying. He uses the (PROTOCOL=TCP)(HOST=192.168.1.101)(PORT=1521)))
following command to transfer the files
from the CLASSIC database server:
directories by issuing the following :ret := dbms_workload_replay.add_
$ scp *.wrc tgtsvr:/home/oradb/ SQL statement: capture('RATCLASSIC');
ratclassic dbms_workload_replay.end_replay_
begin schedule;
For the CONTEMP database, John dbms_workload_replay.process_ end;
uses the same command but replaces capture('RATCLASSIC');
ratclassic with ratcontemp. dbms_workload_replay.process_ 8. John initializes the consolidated replay
2. He creates a directory to hold all the cap- capture('RATCONTEMP'); schedule to replay the consolidated work-
tured workload files: end; load, using the following SQL statement:

$ mkdir /home/oradb/ratcons 6. The consolidated replay will read the begin


workload captured in the RATCONS dbms_workload_replay.initialize_
3. He copies the individual capture directo- directory, but John first needs to identify consolidated_replay
ries to the newly created directory: the repository of consolidated workload ('SALES_RAT_CONS_REPLAY','RAT_
files to the database. He uses the fol- CONS_SCHED');
$ cp -r /home/oradb/ratclassic/home/ lowing SQL statement: end;
oradb/ratcons
$ cp -r /home/oradb/ratcontemp/home/ begin 9. John points out the connect strings that
oradb/ratcons dbms_workload_replay.set_replay_ the captured workloads used in their
directory ('RATCONS'); source systems and adds that what they
4. The rest of the activities occur on the end; will use in the system where they are
TGTDB database as the SYS user. John being replayed may not be the same,
connects to TGTDB as SYS and creates 7. John reminds everyone that there are two because the databases are different.
directory objects so that the directories subdirectories with captured workloads: The connect strings need to be updated
are recognized by the database: RATCLASSIC, from the CLASSIC database, before replay starts. First he checks the
and RATCONTEMP, from the CONTEMP connections used in the replay by issuing
SQL> create or replace directory database, in the RATCONS parent direc- the following SQL statement:
ratcons as '/home/oradb/ratcons'; tory. He sets up a consolidated workload
replay schedule and marks the subdirec- select conn_id, schedule_cap_id,
SQL> create or replace directory tories that contain the workload to be capture_conn
ratclassic as '/home/oradb/ratcons/ used in the consolidated replay, using the from dba_workload_connection_map;
ratclassic'; following SQL statement:
The output is shown in Listing 1.
SQL> create or replace directory var ret number 10. Directing everyone’s attention to the
ratcontemp as '/home/oradb/ratcons/ begin output, John explains that the con-
ratcontemp'; dbms_workload_replay.begin_replay_ nections in the workload capture used
schedule('RAT_CONS_SCHED'); different servers (shown as values for
5. He preprocesses the individual work- :ret := dbms_workload_replay.add_ the HOST parameter)—server1 and
loads captured in the respective capture('RATCONTEMP'); server2 and service names classic and

March/april 2014 Oracle.com/oraclemagazine


49

contemp—and will not work in the new


TGTDB database during replay. The
consolidated replay sessions will need
to use a new connection called TGTDB
in the new system. John uses the fol-
lowing SQL to remap the connections
to TGTDB:

Figure 2: Consolidated database replay report


begin
dbms_workload_replay.remap_
connection ( at the end of the commands, John MAX(ID)
connection_id => 1, explains, is to make the processes run in —————————
schedule_cap_id=>1, the background. 11
replay_connection =>'TGTDB' 13. While the workload replay clients are
); running, he starts the replay process in He uses the ID from the result (11) in the
dbms_workload_replay.remap_ the database by issuing the following following SQL to output the workload report:
connection ( SQL statement:
connection_id => 2, set long 999999
schedule_cap_id=>2, begin spool rat_cons_report.html
replay_connection =>'TGTDB' dbms_workload_replay.start_ select dbms_workload_replay.report(11,
); consolidated_replay; 'HTML')
end; end; from dual;
spool off
11. With these preparations completed, That’s it, he declares. The new TGTDB
John is ready to start the consolidated database is now replaying both captured John stores the output in an HTML file by
replay. First he prepares the database for workloads—CLASSIC and CONTEMP— using the spool command.
the workload replay by issuing the fol- simultaneously. When the workloads John opens the rat_cons_report.html
lowing SQL statement: are running, everyone turns to focus on HTML file in a web browser and points out
monitoring the performance of the TGTDB a small section—shown in Figure 2 —that
begin database in Oracle Enterprise Manager displays some critical statistics for the
dbms_workload_replay.prepare_ Cloud Control. captured and replayed workloads. The most
consolidated_replay; important statistic is “DB Time,” which
end; Analysis is—as the name suggests—the database
The best way to assess the effectiveness time consumed by the sessions captured in
This puts the database into a state of the target database for handling the the workload. Referring to the output, John
in which it expects to replay a captured consolidated workload, John explains, is points out that the source workloads con-
workload (instead of processing regular to examine the performance of the data- sumed a combined total of 43.180 seconds
user transactions). base while the consolidated workload is in their respective databases. However,
12. From a different UNIX shell prompt, replaying. Jill arranges for the DBA team when they were both replayed on the TGTDB
he starts the workload replay clients by to watch the target system and returns to database simultaneously, they consumed
using the following commands: John’s office to continue the replay activity. 94.440 seconds—more than twice the
When the replay clients finish processing original length of time.
$ wrc system/oracle replaydir=/home/ the captured workloads, the wrc processes What could be the reason for the
oradb/ratcons & he kicked off earlier exit gracefully. With increased consumption shown in “DB
$ wrc system/oracle replaydir=/home/ the consolidated workload replay complete, Time,” Jill wonders. Could it be that the
oradb/ratcons & John wants to get a comprehensive report captured workload did some extra work? To
of the replay process, and the first step to answer that, John points to the next statistic
John starts as many workload replay getting that report is to identify it. He gets in the HTML file—“Average Active Sessions.”
client (wrc) processes as the number of the unique identifier of the replay activity The 0.35 value of the captured workload
workloads captured earlier. In this case, by issuing the following SQL statement: is almost the same as the 0.34 value in
he starts two processes, because he is the replay. The variance of 0.01 between
about to replay two captured workloads. select max(id) capture and replay can be ignored, John
The purpose of using the & symbol from dba_workload_replays; explains. The third statistic (“User calls”), he

oracle magazine March/april 2014


50 Consolidated Database Replay

continues, shows the number of SQL state-


ments issued and is the same for capture
and replay.
These statistics indicate that the work-
load is essentially the same during both
capture and replay but that the “DB Time”
consumption more than doubled during the
consolidated replay. From the report, John
draws the initial conclusion that the TGTDB
database—as tested—will not be able to
handle the consolidated workload. (Later
the DBA team watching the performance of
the TGTDB database while the consolidated
workload was being replayed reports that the Figure 3: The “DB Time Distribution” section of the compare period report
performance was terrible during the replay—
buttressing John’s original assessment.) through 13 again. Now the same workload set trimspool on
The consolidated replay test is a land- has been replayed twice—once each on spool comp_period_rep.html
mark achievement for the Acme DBAs, espe- the old and the new storage systems. John print ret
cially Jill. She realizes that had she consoli- executes the following SQL statement to get spool off
dated the CLASSIC and CONTEMP systems the unique IDs of these two replays:
into the TGTDB database, the new system John opens the comp_period_rep.html
would have been sluggish and the effort select id, status, to_char(start_ HTML file in a web browser and points
would have been deemed a failure. The con- time,'mm/dd/yy hh24:mi:ss') start_time Jill to the “DB Time Distribution” section
solidated replay test prevented a negative from dba_workload_replays; (shown in Figure 3). “Total DB Time” has
outcome. Regardless of the test outcome, been reduced from 94.440 to 30.010—a
however, the CIO reminds everyone that ID STATUS START_TIME threefold improvement. The other parts of
these two databases must be consolidated ——— ————————————— ——————————————————————— the report (not shown) confirm the improve-
and a way to avoid sluggish performance 11 COMPLETED 11/26/13 16:36:40 ments seen in the second replay, after the
must be found. 21 COMPLETED 11/28/13 04:54:13 storage changes were made. This proves
To alleviate the performance problem, beyond any reasonable doubt that the
Jill sees two options: (1) increase the CPU The replays with IDs 11 and 21 are from storage enhancements will indeed lead to
capacity of the server so that the database before and after the storage changes, better, acceptable results.
will get enough CPU cycles to meet the con- respectively. To see the impact of the The CIO is happy to hear that. From his
solidated database demand or (2) improve storage changes, John creates a compare perspective, consolidating two databases
the I/O performance so that the database period report to compare the two replays: shrinks the server footprint (which, in turn,
will not have to do as much work. The CIO decreases power, cooling, and insurance
warns that before she adds any system var ret clob requirements) and reduces demands on sys
upgrades to the project tasks, she should begin admins and DBAs. Even taking the storage
be 100 percent confident that the system dbms_workload_replay.compare_period_ cost into account, this is a less expensive
upgrade will resolve the problem and enable report ( option. But the biggest benefit, the CIO pro-
the two databases to be consolidated. Jill replay_id1 => 11, claims, comes from stepping into the con-
has a gut feeling that the storage upgrade replay_id2 => 21, solidation project with certainty and reduced
alone will solve the problem, but a gut format => dbms_workload_capture. risk, thanks to the consolidated replay.
feeling is not a definitive test result, so she type_html, By the way, that is just one way to
is reluctant to make that call. She looks to result => :ret); solve the problem, John continues. Not
John for some reassurance. end; all databases consume the same amount
There is no need to guess, John helpfully of resources. A less expensive alterna-
responds. The effect of a storage enhance- John puts the results from the ret variable tive may be to consolidate a demanding
ment can be easily predicted. The storage into an HTML file by executing the following: database with a less demanding one. For
team changes the underlying storage of the example, the initial consolidated workload
TGTDB database to a new system with much set long 999999 replay demonstrated that the CONTEMP
better response time, and John repeats the set lines 3200 and CLASSIC databases should not coexist
consolidated replay by executing steps 8 set pages 0 in a database such as TGTDB running on

March/april 2014 Oracle.com/oraclemagazine


51

its original storage system. But it may be one database. Using the Consolidated Arup Nanda (arup@
possible to consolidate CLASSIC and a less Database Replay feature of Oracle Real proligence.com) has
demanding database into TGTDB without Application Testing, John showed how Jill been an Oracle DBA
changing the storage system. To deter- can accurately measure that impact. The since 1993, handling
mine which combinations will work, John consolidated replay testing techniques John all aspects of database
explains, all Jill needs to do is repeat the demonstrated can be used for all types of administration, from
earlier steps with different source data- consolidation scenarios: relocating various performance tuning to security and disaster
base workloads and analyze the results in databases into a single database as dif- recovery. He was Oracle Magazine’s DBA of the
another compare period report. A source ferent schemas, creating various databases Year in 2003 and received an Oracle Excellence
workload needs to be captured only once; as pluggable databases in a multitenant Award for Technologist of the Year in 2012.
it can be replayed several times. And, John container database under Oracle Database
reminds everyone, this feature can replay 12c’s multitenant architecture, creating
any captured workload; there is no special separate databases in different virtual NEXT STEPS
capture for consolidated replays. Jill could machines, or any combination of these
READ Oracle-hosted online article content
not be happier. techniques. The goal in any case is the
bit.ly/18PjwXE
same: accurate prediction of the impact
READ more about Oracle Real Application
CONCLUSION of consolidation. And the Consolidated Testing
In the course of database consolidation, Database Replay feature of Oracle Real bit.ly/KoOCda
one of the big challenges for Jill and the Application Testing enables exactly that. “Better Workload, Better Testing”
bit.ly/1jkxbKH
management at Acme was to predict (Consolidated replay is also available in the
the impact of workloads from several Oracle Enterprise Manager Cloud Control DOWNLOAD Oracle Database 12c
bit.ly/1czAk2I
databases running simultaneously on 12c interface.) t

Polar Bears International


is a trusted voice focused
on funding scientific research
for the survival of this
magnificent animal.
Polar Bears International
also funds educational
programs that are inspiring
people to reduce their
carbon emissions.
Conservation through Research and Education
www.polarbearsinternational.org

Help Us Help the Polar Bear Photo © R&C BuChanan

ORACLE MAGAZINE MARCH/APRIL 2014


Database Application Developer PL/SQL BY STEVEN FEUERSTEIN 53

ORACLE DATABASE, ORACLE APPLICATION EXPRESS

Writing PL/SQL in Oracle


Application Express
Minimize the code you write, be careful where you put it,
and relocate it to packages as much as possible.

O racle Application Express and PL/SQL:


what a great combination—and what a
sense of déjà vu!
enhance the site and support more PL/SQL
Challenge players. This article shares what
we’ve learned about ways to write PL/SQL in
reflected right there in the characters you
typed—and can change.
The downside of 100 percent coding for
It’s very easy for me to deeply appreciate the Oracle Application Express environment. applications is that developers are gener-
Oracle Application Express, due to my history ally much less productive and the resulting
with Oracle application development tech- POINT-AND-CLICK VERSUS CODING code is much less structured than applica-
nology. I joined Oracle in 1987 and stayed for In the world of Oracle Application Express, tion code developed with a RAD framework,
five years. During that time, PL/SQL was first developers spend a lot of time pointing at such as Oracle Application Express (or
made available in SQL*Forms V3 and then certain options with a cursor and clicking Oracle JDeveloper). A framework means
more generally as a programming language choices, thereby specifying many behaviors that you cannot help but build your applica-
for applications based on Oracle Database. for an application without having to write tion according to the rules and formats sup-
PL/SQL was such a joy to use in any (or much) code. It’s a true rapid applica- ported by the framework—so anyone else
SQL*Forms V3. Rather than working with tion development (RAD) environment and trained in Oracle Application Express has
the clumsy and limited step-based triggers a very easy way to build applications, but a pretty good chance at maintaining what
of SQL*Forms V2, I could write real algo- it doesn’t have to be this way. Working in a you built.
rithms by using a real language. I could different environment, you could write (and Therefore, I am happy to trade off some
more quickly develop applications that maintain) an application entirely in code, loss of control for dramatic improvements in
could handle more-complex logic, and I was using PHP or Java along with the usual cast productivity and maintainability. Yet I have
able to improve the usability of the forms. of characters: JavaScript, Cascading Style also found that unless I am careful about how
I could maintain my applications much more Sheets (CSS), and HTML. I leverage Oracle Application Express, I can
easily, now that I could read the logic in There’s a certain comfort in that: you still create big problems for those who will
PL/SQL blocks. have total control, and anything and every- come after me in maintaining the PL/SQL
Yet even with (or because of?) that rela- thing that happens in the application is Challenge application.
tively early version of PL/SQL and the rela-
tively primitive nature of SQL*Forms V3, I
ran into all the same challenges I encounter
now with Oracle Application Express.
Today I work with Oracle Application
Express to implement the PL/SQL Challenge
website (plsqlchallenge.com), which offers
daily, weekly, and monthly quizzes on
PL/SQL, SQL, deductive logic, and database
design. I mostly write the back-end code
(PL/SQL packages), and my son, Eli, has
primary responsibility for the website itself,
but we move back and forth between these
two sides of the application.
We have been able to build—and
maintain—a robust, feature-rich site with
a very small team. We have, however, also
I-HUA CHEN

struggled with ways to improve the maintain-


ability of our codebase to make it easier to Figure 1: Quiz Details page with Reviewer Actions

ORACLE MAGAZINE MARCH/APRIL 2014


54 PL/SQL

Key Challenges for Developers in Code Listing 1: Condition on the Reviewer Actions region
Oracle Application Express
First, let me make clear: this is not an article DECLARE
about general best practices for Oracle l_dummy CHAR (1);
BEGIN
Application Express development. I am not
SELECT 'x'
nearly expert enough with the product to INTO l_dummy
offer such guidance. Instead, I will focus FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
WHERE dr.user_id = :ai_user_id
on the key challenges Oracle Application
AND dr.domain_reviewer_id = qr.domain_reviewer_id
Express developers will face when it comes AND qr.question_id = :p659_question_id;
specifically to writing the PL/SQL code in
RETURN TRUE;
their applications.
EXCEPTION
These developer challenges can generally WHEN NO_DATA_FOUND
be summed up as follows: there’s too much THEN
RETURN FALSE;
code inside the Oracle Application Express
WHEN TOO_MANY_ROWS
application and not enough code in PL/SQL THEN
packages and views. RETURN TRUE;
END;
When a framework can do a lot of work
for you (that is, generate code instead of
requiring you to write all of it), it is very Code Listing 2: Condition on the Reviewer Actions region, take 2
tempting to want to spend too much time in
that framework. I click this button, I select DECLARE
that HTML widget to use here, I write some l_dummy CHAR (1);
l_author_id PLS_INTEGER;
code for an item’s condition, I write some BEGIN
more code for a page-level process (an SELECT ‘x’
Oracle Application Express element that is INTO l_dummy
FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
used to execute PL/SQL code and control WHERE dr.user_id = :ai_user_id
rendering of the page, among other things), AND dr.domain_reviewer_id = qr.domain_reviewer_id
and so on. AND qr.question_id = :p659_question_id;

Before you know it, you are spending RETURN TRUE;


almost all of your time inside Oracle EXCEPTION
WHEN NO_DATA_FOUND
Application Express, copying code from
THEN
one process to another, writing query after SELECT qu.author_id
query, updating this table, inserting into INTO l_author_id
FROM qdb_questions qu
that table.
WHERE qu.question_id = question_id_in;
The result? Lots of repetition (the
same query in multiple places or the same RETURN l_author_id = :ai_user_id;
WHEN TOO_MANY_ROWS
rule written out in multiple conditions)
THEN
and, soon, a sense of being lost in your RETURN TRUE;
own application. END;

Guidelines for PL/SQL in Oracle • Avoid repetition of code whenever pos- particular focus on ways to avoid repetition.
Application Express sible. This advice is not specific to Oracle My next article will discuss how to manage
I suggest following these guidelines when Application Express; it is one of the most SQL statements in your Oracle Application
writing PL/SQL code in Oracle Application important guidelines for high-quality pro- Express application and, in particular, how
Express applications: gramming overall. and when to use table functions.
• The only SQL statements you should write • Keep the volume of code inside the Oracle
in the Application Builder (the Oracle Application Express application to a Move Code to Packages and Views
Application Express UI for building appli- minimum. Move as much code as possible Oracle Application Express makes it pos-
cations) are queries to populate reports to PL/SQL packages. sible to design applications while mini-
and tables. Even then, you should simplify This article focuses on specific tech- mizing the volume of code that developers
those queries as much as possible through niques and features you can leverage in have to write. Still, unless you are building
use of views and, for some complex sce- Oracle Application Express to improve the a very simple application, you will write a
narios, table functions. maintainability of your PL/SQL code, with a whole lot of SQL and PL/SQL logic. I rec-

March/april 2014 Oracle.com/oraclemagazine


55

ommend that you keep the code that’s in Code Listing 3: P659_IS_REV_OR_AUTH/On Load - Before Header process code
Oracle Application Express to an absolute
minimum and move as much of that logic BEGIN
as possible into packages and views. (In CASE
WHEN qdb_review_mgr.is_reviewer_for_quest_domain (
my next article, I will address views and
:ai_user_id,
how they relate to when and where to write :p659_question_id)
SQL statements in Oracle Application OR qdb_content.question_author_id (:p659_question_id) =
:ai_user_id
Express applications.)
THEN
To make it easier (possible) to maintain :p659_is_rev_or_auth := qdb_config.c_yes;
your application in Oracle Application :p659_show_answers := qdb_config.c_yes;
ELSE
Express, you need to avoid repetition
:p659_is_rev_or_auth := qdb_config.c_no;
and hide complexity. Clearly, if the same END CASE;
complex expression is copied and pasted END;
into several items to control their con-
ditional display, it is going to be hard to Code Listing 4: The parameterless function relying on the V function
remember to change that expression in all
locations when a bug is discovered. FUNCTION is_reviewer_or_author
Wouldn’t it be so much better if all RETURN BOOLEAN
that functionality were moved to a function IS
l_dummy CHAR (1);
and then the function were simply called l_author_id PLS_INTEGER;
as needed? BEGIN
Let’s take a look at an example: Page 659 SELECT 'x'
INTO l_dummy
is the PL/SQL Challenge (plsqlchallenge.com) FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
Quiz Details page. You visit this page after WHERE dr.user_id = v ('ai_user_id')
you’ve taken a quiz or that quiz is over. AND dr.domain_reviewer_id = qr.domain_reviewer_id
AND qr.question_id = v ('p659_question_id');
Players must be restricted in what they can
see here, depending on their quiz status. In RETURN TRUE;
addition, this page is used by reviewers, and EXCEPTION
WHEN NO_DATA_FOUND
if you are a reviewer, you’ll see a Reviewer THEN
Actions toolbar, as shown in Figure 1. For SELECT qu.author_id
nonreviewers, this and other areas on the INTO l_author_id
FROM qdb_questions qu
screen should not be displayed. WHERE qu.question_id = v ('p659_question_id');
For this Quiz Details page in the Oracle
Application Express Application Builder, I RETURN l_author_id = v ('ai_user_id');
WHEN TOO_MANY_ROWS
set the condition on the Reviewer Actions THEN
region as shown in Listing 1, and it works RETURN TRUE;
exactly as intended. But as I continue to END;

test the page, I realize I need this same


expression to control the display of an item then I copy/paste this new solution into and add this IS_REVIEWER_OR_AUTHOR
in another region. No problem. A quick those other items in other regions on other function to the package specification:
copy/paste applies the condition. Oh, wait! pages—and hopefully I don’t miss any.
There’s another item needing the same But what if I do miss any of those items? FUNCTION is_reviewer_or_author (
condition. Problem solved again, with And what about my productivity? And, last user_id_in IN INTEGER,
another simple, quick copy/paste. but far from least, what happens when question_id_in IN INTEGER)
Why shouldn’t I copy and paste the logic? others have to maintain this page? How will RETURN BOOLEAN
It’s not like it’s going to change. they ever have any idea of the number of
Oh really? The very next day, I realize that places they need to change when they fix or The implementation is precisely what
the situation is a bit more complex: besides upgrade the application? I had in the condition on the Reviewer
the reviewers, the author of a quiz should be There has got to be a better way, and there Actions region, plus the function header.
able to see that toolbar and the other items. certainly is: move that logic to one of my Then I create an item named P659_IS_
That’s easy enough. So I go back to the packages, hide it behind a function, and then REV_OR_AUTH, along with an On Load
Reviewer Actions region and change the call that function in the Application Builder. - Before Header process to set the value of
condition to the code in Listing 2. And So I open the qdb_review_mgr package that item, containing the code in Listing 3.

oracle magazine March/april 2014


56 PL/SQL

An experienced Oracle Application Code Listing 5: IS_REVIEWER_OR_AUTHOR function as parameterized function


Express developer might suggest that I
should instead create a computation to spe- CREATE OR REPLACE FUNCTION is_reviewer_or_author (
cifically set the value of an application or a user_id_in INTEGER,
question_id_in IN INTEGER)
page item. I would agree, except that I also
RETURN BOOLEAN
set the value of another item in that PL/SQL IS
block, determined by the same logic as that l_dummy CHAR (1);
of P659_IS_REV_OR_AUTH. Because a com- l_author_id PLS_INTEGER;
BEGIN
putation is item-specific, a process makes SELECT 'x'
more sense in this context. INTO l_dummy
And now my condition for the region and FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
WHERE dr.user_id = user_id_in
all items is nothing more than AND dr.domain_reviewer_id = qr.domain_reviewer_id
AND qr.question_id = question_id_in;
:P659_IS_REV_OR_AUTH = qdb_config.c_yes
RETURN TRUE;
EXCEPTION
(Yes, that’s right. I even try to avoid WHEN NO_DATA_FOUND
hard-coding Y in my Oracle Application THEN
SELECT qu.author_id
Express code.)
INTO l_author_id
By moving this logic to my packaged FROM qdb_questions qu
function, I not only greatly clean up the logic WHERE qu.question_id = user_id_in;
on page 659 and reduce the chance of intro-
RETURN l_author_id = user_id_in;
ducing bugs in the future but I also increase WHEN TOO_MANY_ROWS
the percentage of reusable code in my appli- THEN
cation. The IS_REVIEWER_OR_AUTHOR RETURN TRUE;
END;
function can be (and is) called from other
packaged subprograms and other pages in
the application. to the back-end subprogram. The Oracle the needed items by name from inside
Joel Kallman, director of software devel- Application Express V function makes it the function. I recommend that instead
opment for Oracle Application Express, also possible to obtain the value of an item of calling the V function, you pass all item
suggests that developers can achieve further from its name. So I could have written the values to functions and procedures through
simplification and deeper reuse by defining IS_REVIEWER_OR_AUTHOR function as parameters, as shown in Listing 5.
this logic as an authorization scheme shown in Listing 4. With a parameterized function, Oracle
in Oracle Application Express and then And then I could call the function from Application Express can check at the time of
applying that scheme wherever needed. Application Builder as compilation of any process or condition that
One benefit of doing this is that you can calls this function whether the item name
quickly identify, in the Application Builder, IF qdb_review_mgr.is_reviewer_or_author is misspelled (and therefore undefined).
all the places where a particular authori- THEN And reading a call to this function inside the
zation scheme is used. An authorization application, anyone can also see immedi-
scheme isn’t dramatically different from the There are, unfortunately, two big prob- ately that the function relies on the values
conditional display of something (as imple- lems with this approach: of the user ID and the question ID, making it
mented above). But authorization schemes 1. If the name of the item ever changes, much easier to maintain the code.
typically are used for, well, authorizations, that name change will be “hidden” Now that we’ve looked at one very spe-
which is the purpose of this function. behind the literal and will not be felt cific example of how to avoid code repeti-
Apply this same process rigorously until testing—runtime, that is—instead tion and hide complexity, it is time to come
throughout your application and across all of compile time. up with more-general guidelines:
developers on your team, and you will soon 2. The person maintaining the application 1. Keep the code volume in your Oracle
find that you have reached a kind of critical cannot tell by looking at the function call Application Express application to an
mass of reusable code: new subprograms, what it is dependent on and will have to absolute minimum. Rather than write
new conditions, and new processes that open the package body and search out extensive anonymous blocks in your pro-
require little more than calls to previously the code. cesses and conditions, move that code
defined functions and procedures. My V function approach to the IS_ into stored program units and replace the
You must also be very careful about how REVIEWER_OR_AUTHOR function does not “fat” code with “thin” subprogram calls.
you pass information from the application have any parameters. Instead, it references 2. Pass item values to stored subprograms

March/april 2014 Oracle.com/oraclemagazine


57

in List of Values widget that can be reused


throughout your application. The bad news is
that unless you are careful, you can easily end
up with lots of duplication in those LOVs.
I ran into this problem in the PL/SQL
Challenge application. The application
offers quizzes on multiple “domains” (SQL,
Figure 2: Three versions by domain LOVs PL/SQL, and so on), each of which has its
own set of versions. When you define a
via parameters. Avoid the use of the V point. Inside your PL/SQL code, a fine way quiz, you specify the minimum version for
function to get the value of a variable by to avoid hard-coded literals is to declare a that quiz. Players can also filter quizzes by
its name. constant and then “hide” the value behind minimum version, so the LOV is needed
3. Do not create schema-level functions the name of the constant. on different pages and on each page, the
or procedures. Instead, use packages In Oracle Application Express, although domain ID is used in the WHERE clause of
exclusively. you can still reference that constant in the LOV query, as in
I recommend packages over schema- many places, you should also consider
level functions or procedures (CREATE using substitution strings, static variables SELECT version_name display,
OR REPLACE PROCEDURE), because that (constants) defined at the application level. domain_version return_value
is the only way to keep your back-end The value of a substitution string can be FROM qdb_domain_versions
code from turning into a nightmare. referenced throughout the application with WHERE domain_id = :p2010_domain_id;
Again, the back end of the PL/SQL this syntax:
Challenge application, which consists of So off we go, merrily building our applica-
more than 1,900 procedures and func- &STRING_NAME. tion, being very productive, as is generally
tions collected into 40 packages, offers an the case with Oracle Application Express.
excellent example. One of the main pack- In PL/SQL Challenge, for example, Eli And one day I’m looking through our list of
ages, qdb_content (QDB, the application and I have built a generic platform for taking LOVs and discover that we have three dif-
prefix for PL/SQL Challenge, stands for Quiz quizzes. Because a different usage of this ferent LOVs that all seem to offer the same
Database), manages content for quizzes. platform will not necessarily be called list but for different pages, as shown in
This package contains 180 procedures and PL/SQL Challenge, we use a substitution Figure 2.
functions (and the package body contains string for some of the appearances of that Just looking at the names of those LOVs
more than 6,800 lines of code, bringing to name, as in makes me shudder. They are the same
mind another best practice and technique except for the page number. As a developer
covered in “PL/SQL Enhancements” in the Welcome to the &PLCH_QUIZ_NAME.! trained in data normalization, I think that
September/October 2013 issue of Oracle it just doesn’t seem right for a name to
Magazine [bit.ly/19A05QI]: when packages Careful use of substitution strings will contain information about the location in
get too large, you should break them up reduce the cost of maintenance of your which it was used. Yet each LOV has to be
to make them more manageable. Oracle own application and make it more flexible. filtered by a different page item, so I figure I
Database 12c offers the ACCESSIBLE_BY Another side benefit of using substitu- have no choice. Or do I?
clause to make it easier to do this). tion strings is that they can be modified I open the source queries for these LOVs
Put your own code into many tightly by a developer during the installation of an in an attempt to gain clarity and find that
focused packages whose names reflect that application that has Supporting Objects. I am, indeed, correct. The only differences
focus, making it easy to find existing sub- (Supporting Objects is a feature of Oracle between these LOVs is the use of a different
programs and to figure out where to put new Application Express, but I cannot cover it in page item in the WHERE clause, as shown in
ones. Moving as much logic as possible into this article, due to space constraints.) these queries for the 2010 and 2051 LOVs:
packages also greatly increases the likeli-
hood that you can make a basic change in SHARE LISTS OF VALUES ACROSS SELECT version_name display_value,
logic or fix a bug with nothing more than a MULTIPLE PAGES domain_version_id return value
package recompilation. If you have foreign keys defined on your FROM qdb_domain_versions
tables, you almost certainly will be using WHERE domain_id = :p2010_domain_id
USE SUBSTITUTION STRINGS lots of lists of values (LOVs)—from which the ORDER BY 1
You all know that you should never hard- user picks a valid choice for a column or an
code literal values in your applications, item—in your application. The good news is SELECT version_name display_value,
because they are likely to change at some that Oracle Application Express offers a built- domain_version_id return value

ORACLE MAGAZINE MARCH/APRIL 2014


58 PL/SQL

Answer to Last Issue’s Challenge

The PL/SQL Challenge question in last


issue’s “Sophisticated Call Stack Analysis”
article focused on the new UTL_CALL_STACK
package in Oracle Database 12c. The quiz
demonstrated that with this package, the call
stack will include the names of nested sub-
programs. Only choice (b) is correct.

to build applications rapidly and to change


those applications over time to keep up with
changing user requirements. If you are not
careful about how you write the code inside
those applications, it will be increasingly
difficult to keep up with user requests.
Conversely, if you are careful to avoid
repetition and hide all the complex logic in
your application behind carefully designed
package interfaces, it will be easier to satisfy
user requirements and therefore easier to
keep users happy.
In my next article, I will explore the chal-
lenge of how best (and when) to write SQL
Figure 3: New LOV using dynamic query statements in the Application Builder. t

FROM qdb_domain_versions quite completely generic, but it solves my Steven Feuerstein


WHERE domain_id = :p2051_domain_id problem. We can then remove several LOVs, (steven.feuerstein@
ORDER BY 1 replacing them with a single LOV that can be software.dell.com) is
used on any page. Dell’s PL/SQL evangelist.
Even though I am far from being an Oracle Goodbye to (the worst of the) hard- He is an Oracle ACE
Application Express expert, it’s immediately coding; goodbye, repetition! Director; widely read
clear to me that it really would be better if I learned a few lessons from author; and creator of PL/SQL Challenge, a quiz
page-specific item references were not stuck this experience: site for Oracle technologists. More information is
inside a named LOV. These LOVs do not • Assume that the Oracle Application available at plsqlchallenge.com.
“live” inside a single page and can, theoreti- Express team has thought of such issues.
cally, be used across an entire application. • Check the documentation and especially NEXT STEPS
Yet with a page reference in an LOV, its inline help whenever you are doing some-
usage is restricted or—even worse—error- thing that seems suboptimal. READ Oracle-hosted online article content
bit.ly/1dgQ6mr
prone. Surely there must be a way to nor- • Always take the most soft-coded, dynamic
malize the LOV. approach possible. DOWNLOAD
Oracle Database 12c
And there is: I can define an LOV with a The Oracle-hosted online version of bit.ly/fherki
dynamic query. So I create a new LOV that this article at bit.ly/1dgQ6mr includes this Oracle Application Express
contains neither the page number in its issue’s PL/SQL Challenge question and bit.ly/1iikZ9j
name nor a hard-coded page item reference information and recommendations for TEST your PL/SQL knowledge
in the query, as shown in Figure 3. using declarative logic when possible in plsqlchallenge.com
Now the only requirement for using this Oracle Application Express. READ more Feuerstein
bit.ly/omagplsql
LOV is that the current page in the Oracle
READ more about
Application Express application must CLEAN CODE -> HAPPY USERS Oracle Database 12c
contain an item of the form It’s nice when you can write code so that you oracle.com/database
like it and other developers can maintain PL/SQL
:PNNNN_domain_id it, but what really matters is the impact on oracle.com/technetwork/database/features/plsql
your users. Oracle Application Express
oracle.com/technetwork/developer-tools/apex
where NNNN is the page number. So it’s not Oracle Application Express enables you

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


Database Application Developer and DBA ASK TOM BY TOM KYTE 59

ORACLE DATABASE 12c

On Oracle Database 12c,


Part 4
Our technologist talks with Oracle product
management about Oracle Database 12c and the
Oracle Multitenant option.

U sually I take three or four user-


submitted questions from the past
two months and present those questions
C O NS O LIDATE A ND S IMPLIF Y

and answers here in each Ask Tom column. Manage a self-contained


In the last three and in this and the next ERP C RM DW pluggable database for
column, however, I take a look at some key each application
Oracle Database 12c features. These features
are all part of the “12 Things About Oracle Share memory and
Database 12c” presentation I gave at Oracle background processes across
OpenWorld 2012 in San Francisco. (You the container database
can find the slides for that presentation on
asktom.oracle.com on the Files tab.) The first Perform common operations—
three Oracle Database 12c features I looked CONTAINER DATABASE including backup and upgrade—
at were improved defaults, bigger datatypes, at the container database level
and top-n queries. Next I discussed a new
row-pattern-matching clause and how undo
Oracle Multitenant delivers database consolidation, shared memory and background processes, and common
for temporary tables has changed in Oracle management operations via a container database and a self-contained pluggable database for each application.
Database 12c. In the last issue, I covered
some partitioning improvements, adaptive sible for product management of the Oracle pressure to consolidate and to realize the
execution plans, and enhanced statistics. Multitenant option. benefits of cloud computing. There are eco-
In this issue, I’m taking a different Kyte: Oracle Multitenant is the theme of our nomic pressures to consolidate—to reduce
approach to discuss the #1 new capability of conversation today—one of my 12 things floor space, power costs, and license costs.
Oracle Database 12c. What follows is a con- about Oracle Database 12c. Briefly, what is There are operational pressures to provide
versation I had with the product manager Oracle Multitenant? cloud-based agility, including rapid, low-
for the Oracle Multitenant option, Patrick Wheeler: Oracle Multitenant is a new option cost self-service provisioning and delivery of
Wheeler. I hope you enjoy this change from in Oracle Database 12c that provides a standardized services. What’s needed is the
my usual style. multitenant architecture for consolidating right balance of database isolation and an
Kyte: Please tell us a little about your history databases and simplifying operations in ability to manage many databases as one.
with Oracle. the cloud. It is in production and available Kyte: You’ve just laid out a good case for
Wheeler: I joined Oracle in 1986 and worked today. With this new architecture, we can consolidation, but it’s not new. The ques-
as a consultant and consulting practice help customers reduce capital expenses and tion these days is not so much whether to
manager for several large financial institu- operating expenses and increase agility— consolidate as how to consolidate.
tions in London and San Francisco. I was and it’s easy to adopt. Wheeler: Exactly. Companies have tried
closely involved with the development of Kyte: We’ve both been at Oracle for a long various approaches to consolidating
Oracle CASE and was responsible for its time, and Oracle has always had the best databases. They might have tried virtual
worldwide launch. database system. Why did we need to machines, for instance, but with VMs
In 1995 I joined Siebel Systems and was change our architecture? you replace physical sprawl with virtual
a member of the Founder’s Circle. At Siebel Wheeler: Well, our customers’ requirements sprawl, and virtual sprawl is still expensive
I-HUA CHEN

I was a data architect and director of data are constantly evolving, and so must our to manage. Additionally, you replicate the
modeling. Now back at Oracle, I am respon- technology. Companies are facing enormous overhead of database and OS software in

ORACLE MAGAZINE MARCH/APRIL 2014


60 ASK TOM

each VM, and this limits the consolidation a multitenant container database [CDB]. [Oracle RAC] or Oracle Active Data Guard.
density or the number of applications you From the operations point of view, this is Wheeler: Yes, and these can be expensive,
can host in a single server. the database. We now have a single shared when you consider how many databases our
Kyte: Yes, but you can get better consolida- system global area [SGA] and a single set of typical customers have to manage.
tion density by stacking multiple databases background processes that are shared by all Kyte: Right. Many of our customers have hun-
in a single server. the PDBs in that CDB. dreds of databases—some have thousands.
Wheeler: You can, but it’s still not optimal. Kyte: This is what gives us the great consoli- Wheeler: And now you can consolidate
When you fire up a new database, you dation density in the multitenant architec- those hundreds of databases into a handful
have to allocate a new shared-memory ture, right? With 20 background processes of CDBs—maybe a dozen or so. Instead of
area and kick off a new set of background per database, if I stack, say, 30 databases having hundreds of databases to back up,
processes—20 of them. You repeat this for into a single server, I’ll need 600 back- patch, and so on, you’ve got only those few.
every new database you start, and these ground processes. But with the multitenant This ability to manage many databases as
replicated processes quickly consume the architecture, consolidating each of these 30 one (or at least as a few) greatly reduces
available resources in the system, thereby databases as PDBs in a single CDB, I’ll need operating expenses.
limiting the ultimate consolidation density. only 20 background processes. Kyte: Another way to look at this is that DBAs
Kyte: Prior to Oracle Database 12c, some of Wheeler: Exactly. And it’s not just the are freed from the time-consuming and
our customers took a schema consolida- number of background processes that error-prone chore of doing all this adminis-
tion approach, with a single large server matters here; it’s also their nature. We’ve tration on all these databases and are able
and a single big database. Each application done various consolidation scalability tests to add value and improve quality of service
“back end” is hosted in a single schema. that demonstrate this. Let’s say some of
It’s typically been a struggle to change the your 30 example databases are OLTP-heavy.
applications to achieve this, but where That means there are lots of database writes BACK U P M U LTIPL E
these customers have been successful, they and log writes. The database writer [DBWR]
DATABAS ES
have realized significant gains in consolida- and the log writer [LGWR] are both heavy,
tion. Then they find that there’s a trade-off high-priority processes. With separate data-
between these consolidation gains and bases, you have these various DBWR and
agility. They’ve lost granular control. LGWR processes competing with each other,
Wheeler: These were precisely our consid- leapfrogging to the front of the queue. We
erations as we designed the Oracle multi- observed increases in L3-cache misses, and
tenant architecture. this was a major factor limiting scalability.
Kyte: Will you please describe the new In contrast, running the same workloads
multitenant architecture? in the same number of PDBs consolidated
Wheeler: With the multitenant architec- into a single CDB, we had a single LGWR with
ture, each application’s back-end database two slaves purring along very comfortably.
becomes a pluggable database [PDB]. The Kyte: Oracle Multitenant delivers better
pluggable part is new, but what hasn’t throughput and better scalability. Configure a single backup for the entire container
database with Oracle Multitenant.
changed is that a pluggable database is Wheeler: Yes, exactly.
a fully functional, self-contained Oracle Kyte: You’ve explained how Oracle
PATCH AND UPGRA D E
Database instance. From an application’s Multitenant can save customers capital ONE DATABASE
point of view, it hasn’t changed in any way. expenses by consolidating more applica-
Kyte: Right, because requiring our cus- tions per server. Earlier on you mentioned
tomers to make application changes to that customers could also reduce operating
adopt a new database architecture is not a expenses. How is that?
reasonable expectation. Wheeler: The simple question “What
Wheeler: Exactly, and no application changes is a database?” gets different answers,
are required to upgrade the database to be a depending on the vantage point. From an
PDB in the multitenant architecture. application’s point of view, the PDB is the
Kyte: So that’s the database part. What database, but from the operations point of
about the pluggable part? view, the CDB is the database.
Wheeler: In the multitenant architecture, Kyte: So when you say “from an operations
we introduce a new concept, the root data- point of view,” you’re talking about typical
I-HUA CHEN

base. Lots of individual PDBs can be plugged DBA tasks such as patching, backup, or
Patch the container database to upgrade all the
into a single root and can together form configuring Oracle Real Application Clusters pluggable databases with Oracle Multitenant.

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


61

generally. Rather than struggling to keep Wheeler: Yes, and yes.


PROVISION DATABAS ES
their head above water, they can add value Kyte: Well, that’s certainly an improvement
RAPIDLY
in a more strategic way. from the way things were with schema
I can see the benefits of being able to consolidation. But when people talk about
“manage many as one,” as you put it, but cloud-based agility, they mean much more
in reality, you don’t always want all of your than patching and backups. They’re also
databases to be managed in lockstep. That talking about flexibly adapting to changing
was one of the big downsides of the schema workloads, efficient migration of applica-
consolidation model we talked about earlier. tions through changing service-level agree-
I’ll give you a specific example: patching. ments [SLAs], and so on. What can Oracle
When you consider the whole stack, you’ve Multitenant deliver in these areas?
got the server with the Oracle Database Wheeler: That’s a great question—two great
instance running on it. But on top of all questions, in fact. Let me take them in turn. PROD DEV/QA
that are the application tiers, and it’s the First, flexible adaptation to changing
application that the customer cares about. workloads. This is where our tight inte-
Oracle Multitenant enables fast provisioning via full
If any given application is not yet certified gration with Oracle RAC comes into play. clones and faster snapshot clones.
at a particular patch level, it means that all Configuring Oracle RAC is an operational
applications must wait to be upgraded until task, so it follows that in Oracle RAC, the Now, a pluggable database is a portable
that one laggard is ready to go. This is the CDB is opened across the entire cluster, database. If you want to upgrade (or down-
sort of real-world problem that customers in keeping with the “manage many as grade) the SLA for a specific PDB, simply
complain to me about. one” theme. However, consistent with unplug it from its current CDB and plug it
Wheeler: Now you’re touching on another the “granular control where appropriate” into a CDB managed at the appropriate SLA.
theme of Oracle Multitenant. We’ve dis- theme, individual PDBs can be opened Kyte: Another thing I gather from what
cussed savings in capital expenses and selectively in specific nodes—strictly you’re describing here is that just because
operating expenses. The phrase I like to use speaking, instances—of the cluster. We call you can “manage many as one,” it doesn’t
for operating expense reduction is “manage this affinitization of a PDB to an instance, mean that you should have only one CDB.
many as one but retain granular control and technically we achieve it by opening the Wheeler: Exactly. You could easily have a
where appropriate.” And the theme we’re services of the specific PDBs in the desired dozen CDBs—say, for different SLA tiers or
moving to now is agility. nodes. Now, let’s say that at a particular for upgrade via unplug/plug—and still be
Kyte: Typically there’s been a trade-off stage of the business cycle, the cluster is doing it right.
between operating expense reduction heavily loaded. By moving the services of Kyte: Great! Now, you know that I talk to a
and agility. a PDB from a more heavily loaded node to lot of DBAs. Typically there are two major
Wheeler: Not with Oracle Multitenant. I’ll a less heavily loaded one, we can flexibly pain points. You’ve talked about one of
give you a few examples: adjust to this changing workload. It is easy them: patching. The other is provisioning of
For backups, you can configure a single to imagine various comparable scenarios. new databases.
backup for the entire CDB, but you can do a This is really unprecedented flexibility, so Wheeler: Pain is the word! You can tell who
point-in-time recovery of an individual PDB. I like to say that Oracle Multitenant makes the DBAs are in an audience by mentioning
In the case of patches, database version Oracle RAC better, and Oracle RAC makes provisioning and seeing who winces! Seri–
is an operational concept, so it applies at Oracle Multitenant better. ously, though, we’ve got a great story to tell
the CDB level. If you apply a patch at the Kyte: What about the second question? about provisioning in Oracle Multitenant.
CDB level, all the PDBs in that CDB will be Wheeler: Oracle Multitenant and moving It’s all based on a capability we call cloning.
upgraded in one fell swoop. But—back to your between SLA tiers: in many cases, SLA We can create local clones (from a PDB in the
real-world example—this isn’t always prac- tiers—which typically define things such same CDB) or remote clones (across a data-
tical. In that case, create a second CDB and as performance and availability—corre- base link to a remote CDB). You’re a SQL guy,
patch that to the new level. You can upgrade spond to specific combinations of database so you’ll like this: cloning a PDB is achieved by
individual PDBs by unplugging them from options such as Oracle RAC and Oracle a single SQL statement. Security guys like this,
the first CDB (let’s say at Oracle Database 12c Active Data Guard. As discussed, these too, because all that is required is database
Release 12.1.0.1) and plugging them into the are things defined at the CDB level. So, for access—not OS access. And everyone likes
second one (perhaps at Release 12.1.0.2). example, you might define Gold service as it because it is fast. What we call full clones
Kyte: Nice! And the point is that any PDB “Oracle RAC and Oracle Active Data Guard,” are fast. Even faster—ridiculously fast—are
that isn’t ready to upgrade doesn’t have to Silver as “Oracle Active Data Guard only,” snapshot clones. Snapshot clones are built on
I-HUA CHEN

move. Presumably it’s a faster way to apply and so on. And because these are opera- a capability of the underlying file system—
the patch as well. tional things, you’d have a CDB for each SLA. where available—called copy-on-write.

ORACLE MAGAZINE MARCH/APRIL 2014


62 Ask Tom

Kyte: Copy-on-write is established, proven software as a service [SaaS], database as a one of these with Oracle Database
technology. So we’re leveraging this to service [DBaaS], and distribution of pack- Configuration Assistant.)
deliver thin provisioning of pluggable data- aged apps and data. Then change the applications to work
bases. I am imagining the productivity gains Kyte: All of this sounds great, but when with Oracle Multitenant. But wait! No
in a development and testing environment. I talk to customers about consolidation, application changes are required to adopt
You know the situation: dozens, maybe a big concern is always contention for Oracle Multitenant.
hundreds, of engineers each working on shared resources. I mean, you don’t want Kyte: So there is no Step 3.
individual copies of a handful of “golden any individual PDB to run away with all the Wheeler: There is no Step 3!
master databases.” With snapshot cloning, resources of the system. Kyte: This really is a very dramatic advance
they can rapidly refresh these databases Wheeler: No, that is a very reasonable in our database architecture. We’ve dis-
with minimal incremental storage or server concern, but we’ve got a great solution. We cussed several benefits here in some detail.
load. I can even imagine this being done on enhanced the Resource Manager feature of Please summarize them for me.
a self-service basis. Oracle Database to be able to control things Wheeler: With Oracle Multitenant, you can
Wheeler: Cloning is a great use case for such as CPU, sessions, parallel execution • Reduce capital expenses by supporting
Oracle Multitenant and a great feature to servers, and even I/O (on Oracle Exadata). more applications per server
justify migrating to it. By definition, your By using the simple-yet-powerful concepts • Reduce operating expenses by managing
development and testing environments of shares and caps, you can simply define many databases as one, delivering stan-
are not production, so the very develop- policies that determine how resources are dardized services—even self-service
ment and test engineers you want to shared between the PDBs. • Increase agility with rapid, low-cost
become proficient in the new technology Kyte: So a high-priority system would have provisioning and through “pluggable
will use it in their day-to-day business. lots of shares, and a low-priority system portability”
And as you mentioned, the organization’s would have just a few shares. • Adopt this new architecture easily 
productivity increases and the quality of Wheeler: Yes, and you’d probably want to
work goes up as hidden development and cap the lower-priority system to limit the Tom Kyte is a database
testing costs are eliminated. resources it can use. The shares represent evangelist in Oracle’s
Kyte: Rapid, low-cost provisioning of data- a guaranteed minimum share of resources Server Technologies
bases is a huge leap forward from the painful allocated to a PDB—if they’re needed. But division and has worked
process of the past. Sometimes it can take if they’re not needed, those resources will for Oracle since 1993. He
weeks—even months—to work through the be available for the other PDBs. Sometimes is the author of Expert
bureaucracy to create a new database. this is called overprovisioning, which might Oracle Database Architecture (Apress, 2005,
Wheeler: Yes. We’ve already covered reduc- sound like a bad thing, but in many situa- 2010) and Effective Oracle by Design (Oracle
tions in capital expenses and operating tions it’s a great thing and a key advantage Press, 2003), among other books.
expenses. These can be very significant, but of consolidation.
they are incremental reductions. Now, if you Kyte: It’s so much more flexible than instance Next Steps
can create a database in minutes—say, for caging, where you’re capped at a specific
ad hoc analysis of a new opportunity—you number of CPUs. Even if the other CPUs are ASK Tom
Tom Kyte answers your most difficult technology
might be able to seize it and be first to idle, you’re boxed in and can’t use them.
questions. Highlights from that forum appear in
market. If it’s going to take weeks to create This really sounds like a tremendous this column.
that database, the opportunity may well advance in our database architecture. asktom.oracle.com
have slipped away and it won’t even be Many customers are already adopting it or FOLLOW Tom on Twitter
@OracleAskTom
worth bothering. With rapid self-service planning to do so shortly. How easy is it to
READ more Tom
provisioning, we’re talking about a differ- upgrade to Oracle Multitenant?
bit.ly/omagasktom
ence in kind, not in degree. Rather than Wheeler: It’s very easy. Easy as 1-2-3:
Expert Oracle Database Architecture: Oracle
incremental savings off the bottom line, Step 1: Upgrade your database system in Database 9i, 10g, and 11g Programming
we’re talking about the potential of adding place, just as you always have done. Direct Techniques and Solutions, Second Edition
amzn.to/ckGXaR
significantly to the top line. upgrades from Oracle Database 10g
Kyte: I like it! We could talk much more Release 2 and Oracle Database 11g Release 1 DOWNLOAD Oracle Database 12c
bit.ly/epBiUG
about provisioning, but there must be many and Release 2 are supported. The result
LEARN more about
other use cases for Oracle Multitenant. Can is Oracle Database 12c in what we call Oracle Database 12c
you name a few? non-CDB—the old architecture. oracle.com/database
Wheeler: Yes, it offers a very flexible archi- Step 2: Adopt this non-CDB as a PDB. Oracle Multitenant
tecture. A few obvious use cases include Basically this means plugging it into a oracle.com/database
bit.ly/1aexnSw
consolidation of disparate applications, precreated CDB. (You can simply create

March/april 2014 Oracle.com/oraclemagazine


In the Field by Michelle Malcher 63

Privilege Analysis
It’s a cool Oracle Database 12c security feature.

I must admit that I am excited about all of


the security features that are part of the
You can grant, test, tion in the DBA_UNUSED_PRIVS table, you
can continue to maintain least privilege
new Oracle Database 12c release. I am sure verify, modify, and and verify that users have access only to the
that everyone securing databases and pro-
viding audit details is just as excited (even
maintain a set of objects and roles they need.
How do you maintain least privilege?
if they don’t openly admit it). Of course, least privilege roles Privilege Analysis generates reports and
Oracle Database has provided a secure con- information in tables to automate scripts
figuration and a strong security solution for and access rights. for maintaining permissions instead of gen-
a long time now, but Oracle Database 12c erating reports you can review to see what
delivers new unified auditing and easier Querying the DBA_USED_PRIVS, DBA_ permissions are granted. This automation
security maintenance. USED_OBJPRIVS, DBA_UNUSED_PRIVS, and makes it easy to limit access to only the
For example, the new Privilege Analysis DBA_UNUSED_OBJPRIVS tables provides needed objects and roles.
feature in Oracle Database 12c (part of the details for developing a script to create a role Privilege Analysis is just one of the new
Oracle Database Vault option) provides a with the privileges used or a script to revoke security features in Oracle Database 12c.
way to maintain least privilege by reporting unused privileges. Here’s an example: There are plenty of new features to look
on the permissions that a user is actually at in Oracle Database 12c, and you’ll find
using and not just the permissions a user has --Generate a script great information from the user group com-
been granted. Maintaining least privilege --to revoke permissions munity—including the Independent Oracle
involves granting the privileges and access to SELECT 'revoke '||OBJ_PRIV||' Users Group (IOUG)—on how to take advan-
objects that are required and revoking privi- on '||OBJECT_OWNER||'.'|| tage of these features. 
leges and access that are not required. OBJECT_NAME||' from ' ||USERNAME||';'
Although audit reports of users with FROM DBA_UNUSED_PRIVS;
privileged access and what roles are granted Michelle Malcher
can be pulled from the DBA_ROLE_PRIVS This is very useful and simplifies the (michelle_malcher@ioug
and DBA_TAB_PRIVS dictionary tables, these request to grant the same permissions to .org) is president of IOUG.
reports show only what permissions are another user without overgranting permis- She is an Oracle ACE
available. With the new Privilege Analysis sions. With the Privilege Analysis feature, Director with more than
feature, reports can show which of these instead of granting a user full permissions 15 years of experience
privileges are actually being used and provide on a schema or even granting a DBA role, you in database development, security, design, and
information about the database, roles, and can grant, test, verify, modify, and maintain a administration. Malcher is a coauthor of Oracle
context privileges. The DBMS_PRIVILEGE_ set of least privilege roles and access rights. Database 12c: Install, Configure & Maintain
CAPTURE package will turn on the privileges With Privilege Analysis, audit questions Like a Professional (Oracle Press, 2013) and
analysis and generate the report: have gone past the simple “who has what Securing Oracle Database 12c: A Technical
privilege?” to ask for more details. Privilege Primer (Oracle Press, 2013).
BEGIN Analysis helps provide answers to the fol-
DBMS_PRIVILEGE_CAPTURE.CREATE_CAPTURE lowing questions: Next Steps
(NAME => 'dba_capture_all_privs', Why are these permissions granted? The
DESCRIPTION=> analysis shows what the user is accessing JOIN IOUG
'privilege_analysis_example_for_all_ and verifies why the permissions are there. ioug.org
users', TYPE => DBMS_PRIVILEGE_ (The answer goes beyond stating that the LEARN more about
Oracle Database 12c
CAPTURE.G_DATABASE); user wanted the permissions or that this is oracle.com/database
END; what you grant all users of the application.) Oracle Database 12c security features
BEGIN Do users have access to more than they Securing Oracle Database 12c: A Technical Primer
DBMS_PRIVILEGE_CAPTURE.GENERATE_RESULT need? If you are maintaining least privilege, bit.ly/1kVW9M9
(NAME => 'dba_capture_all_privs'); the answer here will be no. Because you are ATTEND COLLABORATE 14
collaborate14.ioug.org/ioug-forum
END; able to revoke privileges based on informa-

oracle magazine March/april 2014


64
Time Capsule Flashbacks: Culture. Industry. Oracle. BY RICH SCHWERIN

1959 Club? Stop


1955
“ PLEASE ACCEPT MY RESIGNATION. I DON’T WANT TO
BELONG TO ANY CLUB THAT WILL ACCEPT PEOPLE
LIKE ME AS A MEMBER.”
—GROUCHO MARX

In a telegram to the Friar’s Club of Beverly Hills, from Groucho and Me (Random
House, 1959). What’s a telegram? Fifty-five years later, dramatic exits—whether
SHARE in jest or not—are announced in 140 (or fewer) electronic characters.
Side of fries with
your vacuum tube
logic circuitry,
ma’am? Elvis is on
the radio, Ray Kroc’s
first McDonald’s
opens, and a group of
IBM 701 mainframe
users forms SHARE,
1975
the first computer
user group.

Homebrewed
Early computer hobbyists form the Homebrew Computer Club in Menlo Park, California,
designing and building their own computers; the first meeting inspires Apple cofounder
Steve Wozniak to design the Apple I.

1977 1993 IOUG


Focusing on empowering database administrators, the International

Camp Oracle Users Group forms. Renamed the Independent Oracle Users
Group in 2006, IOUG delivers education, shares best practices, and provides

CPU
networking opportunities for DBAs worldwide.

Archery, canoeing,
or BASIC? Fairfield
University’s Dr.
Michael Zabinski
2013
founds National JUGs
Computer Camps. From Abidjan to Warsaw,
Then: Parents sent hundreds of Java user groups
(JUGs) share a passion for all
postcards. things Java, and Java Magazine
Now: Campers features this global community
tweet updates. on the cover of the March/April
2013 issue.

Collaborate
2006

The Independent Oracle Users


Group, Oracle Applications
Users Group, and Quest If you started your own user group, what would you name
International Users Group host the first YOUR TURN it? Visit Facebook/OracleMagazine and let us know.
GETTY IMAGES

COLLABORATE, an annual Oracle user


conference, in Nashville, Tennessee.
bit.ly/orclmagfb
This year? Viva Las Vegas, Baby.

MARCH/APRIL 2014 ORACLE.COM/ORACLEMAGAZINE


Optimize
Your Apps
for Engineered Systems

“Customers get powerful technology with low TCO.”


—Sage

“Allows us to compete and win against larger ISVs.”


—IBIS

“It means easy implementation, fast time to market.”


—Sterci, a Bottomline Technologies Company

Recognized by Oracle. Preferred by Customers.

oracle.com/partners/goto/exastack

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Other names may be trademarks of their respective owners.

You might also like