You are on page 1of 64

Introducing RaptorXML

See the complete list of supported specifcations and platforms, and download RaptorXML at
www.altova.com/raptorxml
Ultra-high performance
Ultra-low memory foot print
Cross platform
Optimized for parallel computing
The new, hyper-fast XML and XBRL server
from the makers of XMLSpy

XBRL mandates and Big Data trends are producing huge, ever increasing
amounts of XML and XBRL data. Now, there is fnally a modern, lightning-fast
server to validate, process, transform, and query all of it: RaptorXML.
Standards Support:
XML 1.0, 1.1
XML Namespaces
XML Base
XInclude 1.0
XLink 1.0
XML Schema 1.0, 1.1
XPath 1.0, 2.0, 3.0
XSLT 1.0, 2.0, 3.0
XQuery 1.0, 3.0
Oasis Catalogs V1.1
XBRL 2.1
XBRL Dimensions
XBRL Formula 1.0
XBRL Functions
XBRL Definition Links
raptorxml
ALTOVA

SERVER 2013
Mapping & Instance Generation
Rendering & Report Generation Taxonomy Development
Part of the complete family of XBRL solutions from Altova
Untitled-1 1 9/27/13 3:04 PM
The Business
of Growing
Land OLakes invests in
Oracle engineered systems
to plant the seeds of change
Record-
Breaking
Oracle OpenWorld, JavaOne,
and MySQL Connect deliver a
week of innovative technology
NOVEMBER/DECEMBER 2013
ENGINEERING
AS A SERVICE
Organizations deploy database as a service
in private clouds with Oracle Exadata
Information Acceleration Oracle Database
In-Memory option delivers query results 100 times
faster and doubles transaction processing rates / 14
C Is for Cloud, Consolidation, and Customers
Oracle customers drive the genesis and marquee
features of Oracle Database 12c / 15 The Next
Big Wave Explore mobile frontiers with Oracle ADF
Mobile / 38 SQL in PL/SQL Enhancements
Oracle Database 12c enhances writing and executing
SQL in PL/SQL / 51 On Oracle Database 12c,
Part 2 Our technologist nds a match for his SQL
and makes his undo temporary / 55
ND13_COVER.indd 1 10/9/13 9:44 AM
Untitled-1 6 9/27/13 2:54 PM
Untitled-1 7 9/27/13 2:54 PM
2
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
VOLUME XXVII - ISSUE 6 CONTENTS
EVENTS / 6
Find out about upcoming
technology and industry
events.
RESOURCES / 7
Your guide to Oracle
webcasts, podcasts, white
papers, and more
BRIEFS / 10
The latest product news
NEWS / 14
Information Acceleration
The Oracle Database
In-Memory option redefines
speed. Fred Sandsmark
PARTNER NEWS / 18
BOOK BEAT / 18
ARCHITECT / 21
Become a Better
Architect
Single steps you can take
today Bob Rhubart
PEER-TO-PEER / 22
User Group Hug
Three peers tout the benefits
of Oracle user groups, new
features, and old favorites.
Blair Campbell
TIME CAPSULE / 60
Flashbacks: Culture. Industry.
Oracle. Rich Schwerin
ORACLE ADF / 38
The Next Big Wave
Explore mobile frontiers with
Oracle ADF Mobile.
Frank Nimphius
BUSINESS
ANALYTICS / 43
Integrate and Analyze
Combine structured and
unstructured data for
analysis and new insights.
Mark Rittman
DATABASE STORAGE
MANAGEMENT / 47
Automatic Data
Optimization
Learn how to enable
information lifecycle
management to
automatically move data to
lower-cost storage tiers and
compress it. Arup Nanda
At Oracle / 6
Community / 18
Technology / 38
Comment / 60
FROM THE EDITOR / 4
Quintessential and
Collaborative Tom Haunert
MASHUP / 5
News, views, trends,
and tools
Up Front / 4
Cover: I-Hua Chen
Organizations are turning to Oracle Exadata for
consolidation and deployment of database as a service
in private clouds. David A. Kelly
/ 28
ENGINEERING
AS A SERVICE
Oracle OpenWorld, JavaOne,
and MySQL Connect deliver a
week of innovative technology
to 60,000 people onsite and
2.1 million people online. Tom Caldecott
/ 24
The second-largest cooperative in the
United States, Land OLakes invests in
Oracle engineered systems to plant the
seeds of change. Marta Bright
/ 34
RECORD-BREAKING
THE BUSINESS
OF GROWING
INTERVIEW / 15
C Is for Cloud,
Consolidation, and
Customers
Oracle customers drive the
genesis and marquee features
of Oracle Database 12c.
Tom Haunert
PL/SQL / 51
SQL in PL/SQL
Enhancements
Oracle Database 12c
enhances writing and
executing SQL in PL/SQL.
Steven Feuerstein
ASK TOM / 55
On Oracle Database 12c,
Part 2
Our technologist finds a
match for his SQL and makes
his undo temporary.
Tom Kyte
ND13_TOC_R1.indd 2 10/10/13 2:06 PM
3
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
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 thomas.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.9440, x201
Mailing-List Rentals
Contact your sales representative.
RESOURCES
Oracle Products
+1.800.367.8674 (US/Canada)
Oracle Services
+1.888.283.0591
Oracle Press Books
oraclepressbooks.com
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 Merchn
Contributing Designers
Jaime Ferrand, Arianna Pucherelli
Production Designers
Sheila Brennan, Kathy Cygnarowicz
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
Subscriptions are complimentary for qualified individuals who complete the
form found online at oracle.com/oraclemagazine. For change of address, mail
in label with the new address to: Oracle Magazine, P.O. Box 1263, Skokie, IL
60076-8263.
MAGAZINE CUSTOMER SERVICE
oracle@halldata.com Fax +1.847.763.9638 Phone +1.847.763.9635
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 2013, 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
Oracles 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
United States Postal Service Statement of Ownership,
Management, and Circulation.
Oracle Magazine, ISSN 1065-3171, is published bimonthly (six issues each
year) with a free subscription price by Oracle Corporation. The office of
publication and the general business office are located at 500 Oracle
Parkway, Redwood City, CA 94065. The publisher is Jennifer Hamilton
Bingo; the editor is Thomas Haunert; the managing editor is Jan Rogers;
and the owner is Oracle Corporation, all at the above address. Known stock-
holders owning or holding 1 percent or more of the total amount of stock is
Lawrence J. Ellison at the above address. There are no known Bondholders,
Mortgagees, or Other Security Holders Owning or Holding 1 Percent or More
of Total Amount of Bonds, Mortgages, or Other Securities. The Issue Date
for the following data is September/October 2013. Average No. Copies Each
Issue During Preceding 12 months: Total Number of Copies (Net press run):
347,656; Paid/Requested Outside-County Mail Subscriptions stated on
Form 3541: 219,403; Sales Through Dealers and Carriers, Street Vendors,
Counter Sales, and Other Non-USPS Paid Distribution: 78,394; Total Paid
and/or Requested Circulation: 297,798; Free Distribution by Mail: 3,624;
Free Distribution Outside the Mail: 44,759; Total Free Distribution: 48,382;
Total Distribution: 346,180; Copies Not Distributed: 1,476; Total: 347,656;
Percent Paid and/or Requested Circulation: 86.0%. No. Copies of Single
Issue Published Nearest to Filing Date: Total Number of Copies (Net press
run): 259,244; Paid/Requested Outside-County Mail Subscriptions Stated
on Form 3541: 213,970; Sales Through Dealers and Carriers, Street Vendors,
Counter Sales, and Other Non-USPS Paid Distribution: 5,939; Total paid
and/or Requested Circulation: 219,909; Free Distribution by Mail: 3,548;
Free Distribution Outside the Mail: 34,352; Total Free Distribution: 37,900;
Total Distribution: 257,809; Copies not Distributed: 1,435; Total: 259,244;
Percent Paid and/or Requested Circulation: 85.3%. This Statement of
Ownership, Management, and Circulation was filed October 1, 2013 by Karin
Kinnear, Associate Publisher and Audience Development Director.
ND13_TOC.indd 3 10/8/13 4:08 PM
4
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
FROM THE EDITOR
Quintessential and
Collaborative
Conferences and technology are about participation
and information.
O
racle OpenWorld San Francisco and an
Oracle Database release are quintes-
sential Oracle events, but both are massive
and impossible to describe in a single post,
blog, or note from the editor. Both events also
benefit from growing participation and ever-
increasing reporting from a range of sources.
BIGGER AND MORE PERSONAL
Growing participation certainly describes
the attendance at Oracle OpenWorld and
the colocated JavaOne and MySQL Connect
events in San Francisco. A record-setting
60,000 people attended in person, and
another 2.1 million folks followed the pro-
ceedings online.
And this is just one opinion, but the
increased attendance did not make the
conference experience less personal. In
fact, changes to the setup on Howard Street
and new and updated Oracle OpenWorld
programming that focused on social media,
customer experience, and human capital
management services emphasized the
importance of collaboration and community.
If you werent able to participate in real
time in Oracle OpenWorld, JavaOne, or MySQL
Connect or you were there and want to relive a
moment or two, check out Record-Breaking
in this issue, visit the Oracle OpenWorld blog
(bit.ly/19qps2A), and watch on-demand video
content on the Oracle OpenWorld Live 2013
channels (bit.ly/1gbKV6w). And when youre
done with 2013, sign up to be notified when
registration opens for Oracle OpenWorld 2014
(bit.ly/1f6qEAc).
WHAT IS THAT MAGAZINE DOING NOW?
One challenge with reporting on an Oracle
Database release is that so much goes into
and so much comes out of that development
effort. In the Oracle Database 12c launch
webcast, Oracle Senior Vice President Andy
Mendelsohn pointed out that 2,500 person-
years of development and 1.2 million hours
of testing produced more than 500 new
features in the new database release. We
dont have a practical way to cover all the
development years and testing hours in this
magazine, but we do have ways of reporting
on some of those 500 new features.
You may have noticed (the Oracle
Magazine editors certainly hope you did)
the beginning of our Oracle Database 12c
coverage in the September/October 2013
issue. That issue included Oracle Database
12c in the customer-focused Plug into
the Cloud cover feature; the Cloud
Computing Breakthrough news story;
Time to Upgrade, from IOUG President
Michelle Malcher; and Oracle Database 12c
technology deep dives into some of the 500
new database features, by Tom Kyte, Steven
Feuerstein, and Arup Nanda.
This issue continues the coverage of Oracle
Database 12c with an Andy Mendelsohn
interview as well as more technology deep
dives into the Oracle Database 12c 500
by the aforementioned Kyte, Feuerstein,
and Nanda. It also includes coverage of the
Oracle OpenWorld 2013 announcement of
the Oracle Database In-Memory option for
Oracle Database 12c (see the Information
Acceleration news story).
Andspoiler alert!more Oracle
Database 12c content is in the works for the
next issue of Oracle Magazine.
Tom Haunert, Editor in Chief
tom.haunert@oracle.com
LEARN more about
Oracle OpenWorld
oracle.com/openworld
Oracle Database 12c
oracle.com/database
WATCH Oracle OpenWorld 2013 video
bit.ly/1gbKV6w
NEXT STEPS
CONNECT: bit.ly/aVgo69 bit.ly/orclmagfb twitter.com/oraclemagazine linkd.in/orclmag
Send your opinions about what you read in Oracle
Magazine, and suggestions for possible technical
articles, to opubedit_us@oracle.com. You can
also follow our @oraclemagazine Twitter feed or
join us on Facebook at bit.ly/orclmagfb.
Letters may be edited for length and clarity and
may be published in any medium. We consider
any communications we receive publishable.
SEND MAIL TO THE EDITORS
Catch Up on Oracle Editor Videos
Representatives of Oracles magazinesEditors
in Chief Aaron Lazenby, Profit; Caroline Kvitka,
Java Magazine; and Tom Haunert, Oracle
Magazineparticipated in Oracle OpenWorld
Live 2013 video programming. Most of the inter-
views featured Oracle customers and technolo-
gists telling their own stories about business and
technology success; the interviews are available
at bit.ly/177vpkb.
Subscribe to Profit magazine, Java Magazine,
and Oracle Magazine at bit.ly/1gbPjCE.
ND13_EdNote.indd 4 10/8/13 3:39 PM
5
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
MashUp
News. Views. Trends. Tools.
Get Fit in Style
While personal activity trackers are nearly ubiqui-
tous, the new Misfit Shine adds a stylish touch. Like
competing fitness trackers, Shine monitors walking,
biking, and sleep, and syncs with a smartphone or
computer via Bluetooth. But its polished aluminum
finish, and ability to be worn as a wristband, lapel
pin, or necklace, lets you take it from marathon to
black-tie cocktail party with ease. It even doubles as
a wristwatch and uses a standard replaceable battery.
Shine is also water resistant. US$119.95.
misfitwearables.com
The Find
In addition to
scanning barcodes
and comparing
prices from major
online and physical
retailers, this app
lets you set price
alerts, provides
coupons, and
locates nearby
stores offering your
products. Free (iOS).
thefind.com
Nextag Shopping
Search for products
from thousands of
merchants, then
sort results by price
(including tax and
shipping), ratings,
and more. The app
also includes product
reviews and can
send price-drop
alerts. Free (Android,
iPhone, iPad,
Windows Phone).
nextag.com
PriceGrabber
This companion app
to PriceGrabber
.com claims to find
the lowest price on
millions of products
from thousands of
stores. It includes
product and
merchant reviews
and calculates taxes
and shipping. Free
(Android, iPhone,
iPad). pricegrabber
.com
RedLaser Barcode
& QR Scanner
Created by eBay, this
app compares prices
from thousands of
retailers, including
local stores in the US.
It also offers coupons
and integrates
your credit cards
and loyalty cards.
Free (Android, iOS,
Windows Phone).
redlaser.com
62%
C
O
M
P
A
R
I
S
O
N

S
H
O
P
P
I
N
G

A
P
P
SNearly 6 in 10 smartphone owners comparison-shop using a mobile device while in a
physical store, according to Parago.
1
If youre holiday shopping, these apps can help.
USE OF CLOUD SERVICES
ON THE LIST
Nearly 50 percent of
marketers surveyed say
that data is the most
underutilized asset in
their organization. Less than 10 percent
currently use the data they have in a sys-
tematic way, and just 18 percent have a
single, integrated view of customer action.
However, 71 percent plan to implement a
big data analytics solution in the next two
years. More than 2,200 marketers world-
wide were surveyed.
Source: Teradata Data-Driven Marketing Survey
2013, teradata.com
Rather than being forced
into a state of perpetual
distraction . . . we can
approach information
technologies in a way
that is mindful and nearly
effortless and that
contributes to our ability
to focus, be creative, and
be happy.
Alex Soojung-Kim Pang, author of
The Distraction Addiction (Little, Brown
and Company, 2013)
Cloud Services Continue to Grow
Use of all types of cloud services steadily increased from
2012 to 2013. Results from a survey of nearly 150 people in June
2013mostly attendees of Cloud Computing Expowere com-
pared with results from the same survey conducted a year earlier.
Source: TwinStrata, twinstrata.com/cloud-survey-2013
38%
49%
46%
52%
28%
44%
40%
2013 2012
Need to get a realistic printout of your desktop gnome or
corporate mascot? The MakerBot Digitizer Desktop 3D Scanner
uses a camera and two lasers to create a standard-format 3-D
digital file of any physical object up to 8 inches in diameter, 8
inches tall, and 6.6 pounds in weight. That file can then be printed
on a desktop 3-D printer or shared with the growing online 3-D
printing community. 3-D modeling or CAD experience is not
required. US$1,400 (without gnome). makerbot.com/digitizer
B
I
G
D
A
T
A
SCAN
IN 3-D
Software
as a Service
Platform as
a Service
Infrastructure
as a Service
Cloud
Storage
1 Source: Dynamic Pricing in a Smartphone World: A Shopper Showrooming Study, parago.com/news/showroomingstudy
ND13_MashUp.indd 5 9/25/13 10:16 AM
6
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
EVENTS
Technology Events
Conferences and sessions to help you stay
on the cutting edge
JD Edwards INFOCUS
December 24, Denver, Colorado
f
bit.ly/16J3RU0
This event offers in-depth education about
Oracles JD Edwards EnterpriseOne applica-
tions and kicks off year-long special interest
group (SIG) programs.
Big Data World Congress
December 34, Munich, Germany
f
bigdatacongress.com
More than 40 speakers and 500 attendees
explore infrastructure for big data, analytics,
in-memory computing, machine learning, the
Internet of Things, and social data.
ICDM 2013: IEEE International
Conference on Data Mining
December 710, Dallas, Texas
f
icdm2013.rutgers.edu
This international forum is for researchers and
developers whose focus includes statistics,
machine learning, pattern recognition, databases,
data visualization, and knowledge-based systems.
Gartner Data Center Conference
December 912, Las Vegas, Nevada
f
gtnr.it/16NYDYX
Professionals attending the Gartner Data
Center Conference choose from tracks that
focus on servers, cloud computing, enterprise
mobility, operating systems, IT operational
excellence, storage and facilities, business
continuity, and disaster recovery.
SANS Cyber Defense Initiative 2013
December 1219, Washington DC
f
bit.ly/16NYDIs
This event covers security, IT auditing,
security management, penetration testing,
and computer forensics. It also offers
hands-on, immersive training on how to miti-
gate cyber attacks.
National Retail Federation Annual
Convention and Expo
January 1215, New York, New York
f
bigshow14.nrf.com
Nicknamed Retails BIG Show, this annual
gathering includes education and thought
leadership on topics ranging from mobile
retailing to sustainability.
Oracle Business Intelligence
Warehousing and Analytics Summit
January 1416, Redwood City, California
f
biwasummit.com
This summit brings together Oracle ACE experts,
customers, Oracle partners, and Oracle product
experts. Focus areas include advanced analytics,
big data, business intelligence and visualiza-
tion, enterprise performance management, and
spatial technologies.
UKOUG Technology
Conference 2013
December 24, Manchester, England
This annual conference covers major technology
topics, including big data, cloud, mobility analytics,
virtualization, collaboration, social, and security.
Deep dives, labs, and networking activities are on the
agenda, as are highlights from Oracle OpenWorld
2013. www.tech13.ukoug.org
ORACLE USER GROUPS
Suncoast Oracle Users Group
Holiday Event
December 3, Ybor City, Florida
soug.org
Houston Oracle Users Group
Christmas Social
December 5, Houston, Texas
houg.org
New Zealand Oracle Users Group
Committee Meeting
December 6, Auckland, New Zealand
bit.ly/13yeEOF
South East Michigan Oracle User
Professionals Meeting
December 10, Southfield, Michigan
bit.ly/13Pfjv4
Houston Users Group Meeting and
Casino Night
December 11, Houston, Texas
bit.ly/14uM6oo
Kansas City Java User Group Meetings
December 11 and January 8, Leawood, Kansas
kcjava.org
Portland Java Users Group Meeting
December 17, Portland, Oregon
pjug.org
Chicago Java Users Group
Downtown Meetings
December 17 and January 21, Chicago, Illinois
cjug.org
UKOUG Solaris SIG Meeting
December 18, London, England
ukoug.org
Memphis Java User Group Meeting
December 19, Memphis, Tennessee
memphisjug.org
Chartered Institute for IT, BCS
Berkshire Branch Committee Meeting
January 7, Reading, England
bit.ly/15AGXLI
New England Java Users Group Meeting
January 9, Waltham, Massachusetts
nejug.org
PackerLand Users Group Meeting
January 9, Fond du Lac, Wisconsin
bit.ly/14K2LLG
Northeast Ohio Oracle Users Group
Business Meeting
January 25, Independence, Ohio
neooug.org
Austin Java Users Group Meeting
January 28, Austin, Texas
austinjug.org
G
E
T
T
Y

I
M
A
G
E
S
Oracle Events
oracle.com/events
Locate User Groups
oracle.com/technetwork/community
EVENTS LOCATOR
ND13_Events.indd 6 9/25/13 10:38 AM
7 RESOURCES
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
Whats New at Oracle
The latest videos, podcasts, blogs, and more
WEBCASTS
Plug Into the Cloud with
Oracle Database 12c
f
bit.ly/149HX9g
Oracle executives and technical experts
discuss Oracle Database 12cs innovative multi-
tenant architecture.
Announcing Oracle SuperCluster T5-8:
Our Fastest Engineered System
f
bit.ly/18DxJ9r
Learn how Oracle SuperCluster T5-8 acceler-
ates consolidation and private cloud deploy-
ments with dramatic performance improvements
for a lower TCO.
Announcing Oracle Cloud Application
Foundation
f
bit.ly/19877h9
View a panel discussion by customers and
industry leaders, along with demonstrations
of Oracle WebLogic Server, Oracle Coherence,
Oracle Enterprise Manager, and Oracle devel-
oper tools.
Storage and Applications Engineered
Together: Oracle Has It, NetApp Doesnt
f
bit.ly/15K6uEs
Analyst Marc Staimer of Dragon Slayer Consulting
and Oracle storage executives discuss why
application-engineered storage is essential.
Online Forum: Oracle Solaris and
Oracles SystemsThe Best Platform
for Oracle Software
f
bit.ly/165jRkM
Take an in-depth look at how Oracle Solaris is
coengineered with Oracles systems and software
to deliver the best possible user experience.
Virtualization and Cloud Made
Simple and Easy with Oracles Latest
Engineered System
f
bit.ly/13F7PNT
Wim Coekaerts, senior vice president of Linux
and virtualization at Oracle, unveils a system that
can dramatically enhance data center operations,
reduce business risk, lower costs, and support a
mix of operating systems and applications.
Security Inside Out: Latest Innovations in
Oracle Database 12c
f
bit.ly/11tcH8b
Hear from experts how Oracle Database 12c
keeps businesses ahead of evolving security
threats and regulations with security controls
such as sensitive data discovery, real-time data
redaction, and privilege analysis.
Identity Auditing: Techniques for Reducing
Operational Risk and Internal Delays
f
bit.ly/18LBdDw
Oracle identity management expert Neil Gandhi
and representatives from (ISC)
2
share identity-
auditing techniques that reduce operational risk.
MySQL Cluster 7.3: New Features for
Internet-Scale Performance with Carrier-
Grade Availability
f
bit.ly/1c8ZisJ
Learn the new features included in MySQL
Cluster 7.3 to automatically scale database ser-
vices while maintaining five 9s availability.
VIDEOS
Developing Applications with Oracle
Application Development Framework Mobile
f
bit.ly/14DOIWF
View an in-depth, interactive presentation cov-
ering mobile development with Java and HTML5.
The Top Five Things to Look For in a Cloud
Provider When It Comes to Security, Part 3
f
bit.ly/13aHW5r
Deloitte Principal Irfan Said shares how to
mitigate risk in the cloud, along with the top five
things to look for in a cloud provider.
Identity Governance and Key Identity
Management Trends
f
bit.ly/145xbYn
Larry Samuels of NEC Australia hosts a round-
table discussion with Oracle experts to discuss
key identity management trends and issues.
Linux Containers Explained
f
bit.ly/172X8Uz
In this whiteboard presentation, Oracle Senior
Product Manager Lenz Grimmer explains how
Linux containers work.
E-BOOKS
Database Storage for Dummies,
Oracle Edition
f
bit.ly/18Dy0tg
Get insight into how to choose the right database
storage solutions and how to optimize database
storage for maximum performance and efficiency.
WHITE PAPERS
Oracle Multitenant
f
bit.ly/172iXpz
Get the technical details about Oracle
Multitenant, a new option for Oracle Database 12c
that simplifies consolidation, provisioning,
upgrades, and more.
Plug Into the Cloud with Oracle
Database 12c
f
bit.ly/1f04UBM
Discover the new capabilities in Oracle Database
12c, including multitenancy, optimized storage
and compression, continuous access, security,
and more.
Deliver Next-Generation Applications
with Industry-Leading Oracle WebLogic
Server 12c Release 12.1.2
f
bit.ly/18gUiNR
Read an overview of the new features in the latest
version of Oracle WebLogic Server.
Solving Data Management and Scalability
Challenges with Oracle Coherence 12c
f
bit.ly/13KPNNk
Discover how Oracle Coherence is scaling applica-
tions with real-time data processing and cache
updates to meet mobile and cloud demands.
ND13_Resources.indd 7 9/25/13 12:16 PM
8
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
RESOURCES
Oracles Internet of Things Platform:
The M2M Platform for a Connected World
f
bit.ly/18v9NBc
Read about Oracles platform to address the
Internet of Things and machine-to-machine
(M2M) communication.
Oracle Virtual NetworkingDelivering
Fabric Virtualization and Software-
Defined Networks
f
bit.ly/16AwBxS
This International Data Corporation (IDC) white
paper examines the business and technological
factors driving network virtualization and profiles
the Oracle Virtual Networking products that are
used to deliver software-defined networks.
From Database Clouds to Big Data: 2013
IOUG Survey on Database Manageability
f
bit.ly/18WmsBi
A newly released Independent Oracle Users Group
(IOUG) membership survey sheds light on tough
database management challenges and makes
recommendations for overcoming them.
READ_ME_FIRST: What Do I Do with All of
Those SPARC Threads?
f
bit.ly/16o5F2i
Read this technical white paper to learn how to
take advantage of the new SPARC servers, which
provide more than 1,000 compute threads.
Why Use Oracle VM for Oracle Databases
f
bit.ly/1b9rb01
Read this independent lab validation report
comparing Oracle VM to a leading virtualization
solution and concluding that Oracle VM is best for
Oracle Databases in all performance categories.
Month in the Life of an Oracle Exadata
Admin, Part 2: Operations
f
bit.ly/13DhXJN
Find out what it takes to manage a high-
performance database environment running on
Oracle Exadata and what to expect when you
move your database operations to a preinte-
grated engineered system.
CALCULATORS
Business Process Management Maturity
Assessment Tool
f
bit.ly/1cHnTCV
Get a customized report that breaks down your
business process management maturity and sug-
gests next steps to help you advance.
Service-Oriented Architecture Maturity
Assessment Tool
f
bit.ly/14wWm6h
Take an easy online assessment to learn your
service-oriented architecture maturity and find
out how to move to the next level.
RESOURCE CENTERS
Oracles Data Integration Resource Center
for Oracle Applications
f
bit.ly/1912It1
Access white papers, screencasts, and customer
testimonials that describe how to gain more value
from your Oracle Applications using Oracles best-
in-class data integration solutions.
Unlock New Big Data Insights with MySQL
and Hadoop
f
bit.ly/1eqIN7c
View technical articles, white papers, and web-
casts to learn how to unlock new insights lever-
aging MySQL and Hadoop.
SOCIAL MEDIA UPDATES
Oracle ADF Architecture TV
f
bit.ly/18xN08j
Discover Oracle Application Development
Framework (Oracle ADF) development and satisfy
design, architecture, development, deployment
best practices, and more.
Oracle Coherence YouTube Channel
f
bit.ly/16j8Yti
Watch dozens of new webcasts and video
tutorials on how Oracle Coherence can scale
your business applications and reduce your
operational costs.
Oracle WebLogic YouTube Channel
f
bit.ly/13e5MNz
Watch how-to videos that showcase numerous
timely topicssuch as dynamic clustering, elastic
Java Message Service, and more.
MySQL YouTube Channel
f
bit.ly/14wVsGX
Subscribe to the official MySQL channel on
YouTube and watch informative demos, tutorials,
and technical presentations.
PODCASTS
Upgrade to Oracle E-Business Suite 12
in the Cloud with Oracle Managed Cloud
Services
f
bit.ly/1dVOHNu
Hear how Oracle Managed Cloud Services is
helping companies like Michael Baker Corporation
successfully upgrade straight to the cloud.
This is a breakthrough release that makes cloud computing
better, a lot better. [Oracle Database 12c is] the first multi-
tenant database designed for the cloud. Its fundamentally
new multitenant architecture enables you to create multiple,
pluggable databases to support modern cloud deployments.
Oracle President Mark Hurd in Plug Into the Cloud with Oracle Database 12c (bit.ly/149HX9g)
OVERHEARD
Oracle Blog Center
oracle.com/blogs
Oracle Consulting
oracle.com/consulting
Oracle Events and Webcasts
oracle.com/events
Oracle Newsletters
oracle.com/newsletters
Oracle Podcast Center
oracle.com/podcasts
Oracle University
bit.ly/ouoramag
Oracle on Facebook
facebook.com/oracle
Oracle on Google+
bit.ly/LdGiM0
Oracle on LinkedIn
linkedin.com/company/oracle
Oracle on Twitter
twitter.com/oracle
Oracle Support
oracle.com/support
My Oracle Support
myoraclesupport.com
My Oracle Support Communities
communities.oracle.com
WEB LOCATOR
ND13_Resources.indd 8 9/25/13 12:16 PM
HowMonitoringSystems Reduce
Human Error in DistributedServer
Rooms andRemote WiringClosets
White Paper 103
Revision 0
by Dennis Bouley
Contents
>Executive summary
What does 1 hour of downtime
cost your business?
BANKING
Wake up your network!
Protect switches and routers
with APC by Schneider Electric
Smart-UPS battery backup.
24/7/365 network uptime
Today, protecting your business network is more critical than ever.
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 the cloud. The
Smart-UPS family offers tower, rack, and convertible form factors
to deliver flexibility for any environment. And Schneider Electric
installation services make deployment a breeze! Trusted by millions
worldwide, Smart-UPS backup units are the intelligent choice!
Avoid costly power problems by keeping your IT equipment and
data safe and available with network-grade power conditioning.
Reduce operating and maintenance costs with a patented green
operating mode for high efficiency and intelligent battery management
that prolongs life and alerts you well in advance of replacement.
Save time with easy and convenient remote accessibility, safe operating
system shutdown, and innovative energy management.
Achieve smarter productivity by tailoring a variety of settings, including
switched outlet control, to your application needs via the intuitive LCD
interface or software.
Gain the peace of mind that comes with full equipment compatibility and
25 years of reliability from the industry leader.
Reduce human-error downtime, too!
Get guidance in our FREE white paper and enter to win
a Google Nexus 10 tablet!
Visit www.apc.com/promo Key Code d668u Call 888-289-APCC x6561
TM
per hour
> $5,220.80
RETAIL
per hour
> $9,774.80
MEDIA
per hour
> $4,789.60
HOSPITALITY
per hour
> $1,544.80
INSURANCE
per hour
> $14,836.80
*Reference: Schneider Electric White Paper #52 (assuming 40 employees)
Business-wise, Future-driven.

2013 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.sohne|der-e|eotr|o.oom 998-1209030_GMA-S_Nexus
Untitled-1 1 9/27/13 3:45 PM
10 Product Resources
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
TUTORIALS/VIDEOS
Oracles SPARC M6-32 Server
Virtualization Options
This interactive demo explains the virtual-
ization features of Oracles SPARC M6-32
server. It includes discussions of dynamic,
bounded, and logical domains and explains
the differences between hypervisor and
logical domains.

bit.ly/19fbo1M
Creating JAX-RS 1.1 Web Services
on the Oracle Java Cloud
This tutorial explains the steps required
to locally develop a JAX-RS RESTful web
service and then deploy it to an Oracle Java
Cloud instance.

bit.ly/19V0tXr
Stock Trading and Analysis Using
Oracle NoSQL Database
This video discusses the features of Oracle
NoSQL Database in terms of managing fast
data and big data. It shows a stock trading
and analysis application built on top of
Oracle NoSQL Database as an example.

bit.ly/1hiw1Jk
Publish Your Applications with
Oracle Cloud Marketplace
This video illustrates the advantages of
publishing applications with Oracle Cloud
Marketplace, which provides a targeted
channel where independent software
vendors and integrators can showcase
their products.

bit.ly/16UU9Mj
Oracle Enterprise Manager 12c:
Deploy JVM Diagnostics and
ADP Engines
In Part 1 of this three-part video series, you
will learn how to deploy the JVM Diagnostics
Engine and the Application Dependency and
Performance Engine in Oracle Enterprise
Manager Cloud Control 12c.

bit.ly/1eXiH0q
DBaaS Private Cloud Using Oracle
Enterprise Manager Cloud Control
12c and Exadata Database Machine
In this tutorial, which includes a brief
introduction to cloud computing, you will
learn about database as a service (DBaaS)
and Oracle Exadata Database Machine.
Then you will delve into the steps required
to establish an Oracle Enterprise Manager
Cloud Control 12c DBaaS private cloud on
an Oracle Exadata Database Machine.

bit.ly/1bp4ysh
Oracle Improves Cloud-Enabled Customer Experience
Oracle has made significant enhancements
to its cloud-enabled customer experience
(CX) portfolio. The enhancements to Oracle
Customer Experience Cloud support sales,
marketing, commerce, and service orga-
nizations by delivering a more interactive,
social, and mobile
experience.
Organizations
need to be able to
easily establish the
operational systems
and infrastructure
that are required in order to deliver simple,
integrated, and relevant experiences across
all channels and touchpoints, says Ken
Volpe, senior vice president of Oracle product
development. With the social, mobile,
and interactive enhancements across the
Oracle CX portfolio, we are in a better posi-
tion than ever to help organizations create
great customer experiences. Our customers
can take advantage of the new capabilities
immediately in the cloud to meet customer
demands and increase revenue.
bit.ly/GztAH7
New SPARC and Oracle SuperCluster Machines Unleashed
Oracle has delivered new systemsthe
SPARC M6-32 server and Oracle SuperCluster
M6-32that dramatically redefine the price/
performance equation in the high-end server
market. The SPARC M6-32 server, with up to
32 terabytes of memory and as many as 384
processor cores, can run entire applications
and databases in memory to deliver unprec-
edented performance. The massive memory
of the SPARC M6-32combined with its
comprehensive, zero-overhead, no-cost
virtualization capabilitiesmakes it an ideal
consolidation platform for mission-critical
workloads. It also supports electrically iso-
lated dynamic domains, which provide com-
plete security, service, fault, and resource iso-
lation for maintaining maximum availability
and isolation of consolidated workloads.
Oracle SuperCluster M6-32, Oracles
fastest and most scalable engineered
system, integrates SPARC M6-32 servers
with Oracle Exadata Storage Servers opti-
mized for Oracle Database performance. It
can boost performance by 10 to 20 times
for business-critical applications such as
financial close, cost management, projec-
tions, and planning with Oracle In-Memory
Applications to help change business
dynamics and enable organizations to
discover new growth opportunities, make
smarter decisions, and accelerate workloads.
The SPARC M6-32 server and Oracle
SuperCluster M6-32 fundamentally change
data center economics by combining high-
end computing performance and availability
with the cost efficiency of entry-level servers,
says John Fowler, executive vice president
of systems at Oracle. With our big memory
machines, you can run huge databases
and applications in
memory to accelerate
performance 10 or 20
times and experience
mainframe-like
reliability without
paying the high
premiums built into
other vendors high-
end systems.
bit.ly/14YQNLH
Oracle Introduces Two StorageTek Devices
Oracle has introduced the StorageTek
T10000D tape drive, which offers up to 8.5
terabytes of native capacity per cartridge
and native data rates of 252 megabytes per
second, and the StorageTek Linear Tape File
System, Library Edition, which helps make
tape storage easier to manage, at a lower cost.
Oracles new StorageTek T10000D tape
drive clearly demonstrates Oracles con-
tinued leadership and innovation in enter-
prise tape storage technology, says James
Cates, vice president of hardware develop-
ment at Oracle. When you add StorageTek
Linear Tape File System, Library Edition,
capabilities and Oracle innovations in both
data integrity and monitoring, Oracle is
taking a commanding lead in storage.
bit.ly/IPqOHD
L
I
N
D
Y

G
R
O
E
N
I
N
G
ND13_Briefs.indd 10 10/8/13 3:06 PM
11 BRIEFS
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
Exalytics In-Memory Machine T5-8 Delivers
Oracle has unveiled Exalytics In-Memory
Machine T5-8, an engineered system based
on Oracles SPARC T5-8 server with 4 terabytes
of memory per machine to drive extreme
performance for business intelligence (BI) and
enterprise performance management appli-
cations. Built with industry-leading hardware,
leading BI software, and in-memory database
technology, Exalytics In-Memory Machine
T5-8 is designed to deliver the best speed-of-
thought analytical in-memory performance
for customers wanting to consolidate multiple
analytical applications on a single platform.
Data provides the critical competitive
advantage, but only for those who are able
to uncover business insights in a timely
manner, says Paul Rodwick, vice president
of product management at Oracle. Exalytics
In-Memory Machine T5-8 enables organiza-
tions to quickly garner powerful insights into
their data, allowing them to make smarter
decisions, faster.
bit.ly/omagexalytics
Oracle Updates Oracle Enterprise
Resource Planning Cloud
Extending the industrys broadest and most
advanced cloud portfolio, Oracle has deliv-
ered updates to Oracle Enterprise Resource
Planning Cloud that enable organizations to
improve insight, accelerate decision-making
with real-time information access, increase
productivity through social business objects,
and manage controls effortlessly. It includes
Oracle Financials Cloud, Oracle Procurement
Cloud, and Oracle Project Portfolio
Management Cloud.
In this constantly changing global busi-
ness environment, it is increasingly impor-
tant for companies to simplify business
processes, increase productivity, and control
costs, says Rondy Ng, senior vice president
of applications development at Oracle.
Oracle Enterprise Resource Planning Cloud
is helping customers drive performance
across the enterprise.
bit.ly/GztvU5
Oracle Unveils Mobile Enterprise
PLM Solution
Extending its commitment to the rapidly
expanding mobile workforce, Oracle
has introduced Agile Product Lifecycle
Management Mobile. This solution helps
mobile workers increase productivity by pro-
viding complete visibility into Oracles Agile
Product Lifecycle Management processes
from the Apple iPad. Built on Oracle ADF
Mobile, it also enables partners to quickly
and easily develop and expand applications
and processes for Agile Product Lifecycle
Management customers.
Optimizing all aspects of the product
lifecycle gives organizations the opportunity
to boost their competitive edge by driving
process efficiency, accelerating innovation,
and ensuring quality control, says John
Kelley, vice president of product value chain
strategy at Oracle. With the introduction
of Agile Product Lifecycle Management
Mobile, Oracle has made it easier than ever
to securely access and manage PLM data at
any time or from any location. This flexibility
drives efficiencies across the product life-
cycle by supporting strategic and operational
decision-making and product innovation.
bit.ly/18lZlg3
Oracle Virtual Compute Appliance Unveiled
Oracle Virtual Compute Appliance enables
customers to go from power-on to produc-
tion in about an hour and deploy ready-to-
run virtual machines in just a few minutes.
This new engineered system enables rapid,
repeatable software-defined infrastructure
deployment for almost any x86 applica-
tion and workload. Oracle Virtual Compute
Appliance is a wire-once system that
comes fully assembled and ready to run pro-
duction workloads with minimal, software-
defined configuration.
Oracle Virtual Compute Appliance is
unique not only in accelerating virtual infra-
structure deployment but also in speeding
deployment of the complete application
stacks through Oracle VM Templates, says
Wim Coekaerts, senior vice president of Linux
and virtualization engineering at Oracle.
bit.ly/16QPs6o
Oracle Applications Leverage Oracle Database In-Memory Option
Oracle has announced enhanced in-memory
applications that leverage the Oracle Database
In-Memory option of Oracle Database 12c,
which helps organizations accelerate database
performance for analytics, data warehousing,
reporting, and online transaction processing
(OLTP). Applications that benefit from the
new option include Oracles JD Edwards
EnterpriseOne and PeopleSoft applications,
Oracle In-Memory Cost Management, and
Oracle Value Chain Planning.
JD Edwards EnterpriseOne In-Memory
Project Portfolio Management and JD
Edwards EnterpriseOne In-Memory Sales
Advisor enable customers to increase
revenue and profitability by making faster
and more efficient business decisions.
PeopleSoft In-Memory Project Discovery
helps organizations avoid project failures by
providing visibility into projects.
Oracle In-Memory Cost Management
delivers real-time insight into all aspects of
cost management, enabling organizations
to maximize gross margins and profits and
enhance product cost structures by opti-
mizing component costs.
Oracle Value Chain Planning applications,
including Oracle In-Memory Consumption-
Driven Planning and Oracle In-Memory
Performance-Driven Planning, help orga-
nizations understand and respond to end-
customer demand; analyze and plan massive
amounts of supply chain data; and get
better, more timely business insights.
The release of Oracle In-Memory
Applications will help organizations not only
complete load runs faster but also discover
new insights for efficiencies that would pre-
viously have been overlooked, says Steve
Miranda, executive vice president of applica-
tions development at Oracle.
bit.ly/15kNFf7
ND13_Briefs.indd 11 10/8/13 3:07 PM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
12 BRIEFS
New MySQL Workbench 6.0
MySQL Workbench 6.0 is now available with
a redesigned user interface and features that
enable users to simplify MySQL database
development, design, and administration.
Expanding data volumes and web, cloud, and
mobile computing growth have increased
management challenges for database pro-
fessionals. This new release helps developers
and administrators better manage dynamic
data environments.
To address scalability and performance
challenges of web, mobile, and cloud environ-
ments, organizations around the world are
using MySQL, says Tomas Ulin, vice presi-
dent of MySQL engineering at Oracle. MySQL
Workbench 6.0 is a major update that fea-
tures a number of new enhancements based
on community feedback. This release makes it
easier than ever for administrators and devel-
opers to design, develop, and manage their
MySQL databases.
bit.ly/GA2r7m
New Oracle ZFS Storage ZS3 Appliances Improve Efficiency
The latest Oracle ZFS Storage Appliance
products, the Oracle ZFS Storage ZS3 series,
enable organizations to improve operational
efficiencies, reduce data center costs, and
increase business application performance.
The Oracle ZFS Storage ZS3 series takes
advantage of Oracle-only storage features
and capabilities such as Oracle Intelligent
Storage Protocol, introduced in Oracle
Database 12c, which automates Oracle
Database tuning and administration. It also
leverages new heat map and automatic data
optimization capabilities of Oracle Database
12c that apply different compression levels
through the data lifecycle to deliver con-
sistently high database performance and
reduced storage capacity. Finally, the Oracle
ZFS Storage ZS3 appliances use Oracle
Hybrid Columnar Compression to compress
Oracle Database data by 10x to 50x, signifi-
cantly reducing the amount of storage and
bandwidth required.
The Oracle ZFS
Storage ZS3 appli-
ances also feature
real-time, dynamic
application-aware
performance and
health analytics,
which enable orga-
nizations to visualize CPU, cache, protocol,
disk, memory, networking, and system-
related dataall at the same time.
Oracles ability to deliver application
engineered storage is a major differentiator
that enables customers to maximize perfor-
mance, efficiency, and productivity at a sig-
nificantly lower cost than the competition,
says Scott Tracy, vice president of software
development at Oracle. The new Oracle ZFS
Storage ZS3 appliances demonstrate the raw
power and value that hardware and software
engineered systems can provide.
bit.ly/x5J4ij
Change Data Capture for BI & Analytics
Supports all major databases including Oracle, IBM DB2, MS SQL Server, IBM Informix, MySQL,
Sybase, IBM PureData System/Netezza, HP Vertica, Actian Vectorwise, Cloud systems and more
Real-time data replication
Change Data Capture with log-reading
Continuous, automated updates
Non-intrusive, low overhead, easy to use
CANT GET
ACCESS TO
REAL-TIME DATA?
WEVE GOT A BETTER WAY!
http://info.hitsw.com/Oracle20136
FREE PAPER
Tips for Change Data Capture
in BI and Analytics
T +1.408.345.4001 | www.hitsw.com | info@hitsw.com
Copyright 2013 HiT Software, Inc., A BackOfce Associates, LLC Company. All rights reserved. HiT Software, HiT Software logo, and DBMoto are either trademarks or registered trademarks of HiT Software
and BackOfce Associates, LLC in the United States and other countries. All other trademarks are the property of their respective owners.
C
M
Y
CM
MY
CY
CMY
K
hitsw_OracleMag_DBMotoCDC_BI-A_18Sep-NovDec13.pdf 1 9/18/2013 4:25:21 PM
ND13_Briefs.indd 12 10/8/13 3:07 PM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
13 BRIEFS
Oracle Delivers Near-Zero Data Loss Data Protection
Oracle has unveiled Oracle Database
Backup Logging Recovery Appliance, the
industrys first backup appliance engi-
neered specifically for database protection.
This Oracle engineered system delivers
near-zero data loss data protection,
minimal impact on user performance, and a
massively scalable architecture.
Unlike solutions that require periodic
backups of all the data
in databases, this
new appliance pro-
cesses and stores only
changed data, reducing
the impact of backups
on production servers
and networks while
reducing storage costs.
It is massively scal-
able, enabling a single
appliance to handle the
data protection require-
ments of thousands of databases in a data
center or region.
In addition to offering Oracle Database
Backup Logging Recovery Appliance for on-
premises use, a new Oracle service, Oracle
Database Backup Cloud Service, enables
organizations to back up their on-premises
Oracle Database instances directly to Oracle
Cloud or replicate their on-premises Oracle
Database Backup Logging Recovery Appliance
to Oracle Cloud for added protection.
Businesses today cant afford to lose
critical data, incur long downtimes, or suffer
application slowdowns, says Juan Loaiza,
senior vice president of systems technology
at Oracle. Oracle Database Backup Logging
Recovery Appliance is the first product to
move beyond the decades-long paradigm
of ineffective nightly backups to deliver a
solution that meets the need for complete
protection of critical business data.
bit.ly/GzvOXp
Polar Bears International
is a trusted voice focused
on funding scientic research
for the survival of this
magnicent 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
Big Data: More Secure
Oracle Big Data Appliance now includes
enterprise-class security capabilities for
Hadoop. It offers integrated enterprise secu-
rity with preconfigured Kerberos authentica-
tion, LDAP-based authorization, and robust
centralized auditing with Oracle Audit Vault
and Database Firewall. In addition, Oracle
has introduced new versions of Oracle
Big Data Connectors and Oracle NoSQL
Database that provide enhanced function-
ality, performance, and scalability.
Hadoop systems and NoSQL databases
have proven to be groundbreaking tech-
nology for big data management, says
etin zbtn, senior vice president of data
warehousing and big data technologies
at Oracle. With the latest enhancements
to Oracle Big Data Appliance, Oracle is
addressing the enterprise-grade security
and performance customers require in big
data solutions.
bit.ly/16QOLd2
ND13_Briefs.indd 13 10/8/13 3:08 PM
14
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
NEWS BY FRED SANDSMARK
I
n his opening night
keynote address at Oracle
OpenWorld 2013 in San
Francisco, Oracle CEO Larry
Ellison announced the Oracle
Database In-Memory option
for Oracle Database 12c, which
dramatically accelerates
database performance.
The Oracle Database
In-Memory option accelerates
queries on data warehouses
and online transaction pro-
cessing (OLTP) databases
such as enterprise resource
planning (ERP) systems.
Furthermore, it accelerates
queries on live transactional
data without compromising transaction pro-
cessing speed. We figured out a way to not
only speed up query processing by a couple
of orders of magnitude but at the same time
at least double your transaction processing
rates, Ellison said.
Combining existing in-memory row
and new in-memory column data formats
is key to this dramatic improvement in
performance. Oracle Database can now
maintain data in both row and column
formats simultaneously, storing the column
data in memory with high compression.
Transactional logging (for rollback and other
purposes) is done only on the row store.
Theres actually very little overhead in
maintaining the column store in memory
in addition to Oracles traditional row
store, Ellison explained. Once we have
the column store, we can process data at
ungodly speeds.
The new in-memory columnar format
in the Oracle Database In-Memory option
eliminates the need for analytic indexes. This
makes analytic queries 100 times faster and
OLTP and batch processing two to three times
faster than queries and processes executed
without the Oracle Database In-Memory
option, Ellison said. The DBA doesnt have
to figure out what to index and what not
to index, he explained. The column store
covers all the dataeverything runs fast. This
makes database design much easier, and
makes tuning, in this case, unnecessary.
Turning on the Oracle Database
In-Memory option requires just three simple
steps: one that specifies how much memory
will be used by the in-memory column store,
one that says which tables or partitions
should reside in the column store, and one
that drops the existing analytic indexes.
And as simple as it is to
activate the Oracle Database
In-Memory option, activation
is also the end of the configu-
ration process. Flip a switch,
and all your existing applica-
tions run much faster, Ellison
said. There are no changes to
SQL. There are no changes to
your applications. There are no
functions that are restricted.
Everything that works today
works with the Oracle Database
In-Memory option turned
on. Theres no unloading and
reloading of data.
Every application that
you wrote, every application
that you boughteverythingruns without
a single change to the application, Ellison
emphasized.
And the Oracle Database In-Memory
option works beautifully with the Oracle
Multitenant option in Oracle Database 12c,
so all of this technology is cloud-ready,
Ellison concluded. Every database that you
have now will be easier to tune, it will run
faster, it will be just as reliable and just as
secure as it is today.
O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
Information Acceleration
The Oracle Database In-Memory option delivers query
results 100 times faster and doubles transaction
processing rates.
WATCH highlights of Larry Ellisons
keynote address
bit.ly/1bmPTO6
LEARN more about
Oracle Database In-Memory option
bit.ly/18loHut
Oracle In-Memory Applications
bit.ly/15kNFf7
NEXT STEPS
Fred Sandsmark is a freelance technology
writer in the San Francisco Bay Area.
Once we have the
column store, we
can process data at
ungodly speeds.
Larry Ellison, CEO, Oracle
ND13_News_R1.indd 14 10/10/13 2:11 PM
15 INTERVIEW BY TOM HAUNERT
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
A
ndy Mendelsohn, senior vice president
of database server technologies at
Oracle, sat down with Tom Haunert, Oracle
Magazine editor in chief, to talk about the new
customer-driven technologies and innovations
in Oracle Database 12c. The following is an
excerpt from that interview. Listen to a podcast
of the full interview at oracle.com/magcasts.
Oracle Magazine: Oracle Database 12c was
released in June and launched in July, and the
product release numbering has gone from
11 to 12. And the g that stood for grid in 11g is
now c, for cloud. What drove the change?
Mendelsohn: Five years ago, when we started
designing Oracle Database 12c, our customers
wanted a different c: consolidation. They
wanted to make it possible to lower the total
cost of ownership for running their databases.
And to do that, they wanted to get the kind
of benefits people get from virtualizationto
reduce the number of servers running their
databasesbut they also wanted to reduce
the total number of databases they had to
manage, which was not something they were
getting from virtualization.
Our customers asked for consolidation,
so we created the multitenant architecture,
which enables them to consolidate hundreds
of their databases into one physical Oracle
Database instance.
This new architecture supports both lower
capital expenditures and lower operational
costs. So in the original design, the c behind
Oracle Database 12c was for consolidation.
Oracle Magazine: Oracle Database 12c
includes more than 500 new features. What
are some of the categories or focus areas of
these new features?
Mendelsohn: From a planning standpoint,
cloud and consolidation were a major focus,
and thats where the multitenant architec-
ture came from. But we also continued to
focus on traditional key database develop-
ment areas: high availability, data ware-
housing and big data analytics, compression
and data optimization, performance and
scalability, security and compliance.
Oracle Magazine: Tell us more about the
multitenant architecture, and what it means
for developers, DBAs, and businesses.
Mendelsohn: You can most easily under-
stand the new architecture by comparing
it to server virtualization. When you take a
piece of hardware and virtualize it, you create
logical servers called virtual machines, and
those virtual machines look and feel like
real hardware servers to applications. Your
applications can run on them and not know
that theyre running on a virtual machine
as opposed to a physical machine. And you
do this to consolidateto take hundreds of
servers and consolidate them into hundreds
of VMs on just one or two servers.
With Oracle Database 12c, were doing
something very similar for the database.
Were taking a database instancewhich
we now call a container databaseand
were virtualizing it. That container can now
contain as many as 252 virtual databases,
which we call pluggable databases.
So now you can take hundreds of separate
databases that could be on 100 separate
servers today and consolidate them into one
container database. You can move each of
these separate Oracle Database 11g or Oracle
Database 10g database instances into this
one container. Each of the old instances now
runs in its own pluggable database, which is
essentially a virtual database.
And after you move your schema and
your data into this pluggable database, your
application runs against the pluggable data-
base as though it were a physical database.
The pluggable database looks and feels like
a physical Oracle Database instance, so you
dont have to rewrite your application to run
in this environment.
Everything just works; the only line of
code you have to change is the connect
string. Everything else is unchanged. Its vir-
tualization for databases.
We understand that a lot of customers
have initiatives to implement virtualization
of their hardware servers. The good news is
that hardware virtualization and multitenant
container databases are complementary: the
customers can simply create the container
database in a VM.
And with pluggable databases, they also
get much denser consolidation than they
had before, because instead of hundreds of
database instanceswith all their separate
shared memory and background processes
and so onnow they just have one container
database with one shared memory area and
one set of background processes. A container
database also enables DBAs to manage many
Andy Mendelsohn, Senior Vice President,
Database Server Technologies, Oracle
B
O
B

A
D
L
E
R
C Is for Cloud, Consolidation,
and Customers
Oracle customers drive the genesis and marquee features
of Oracle Database 12c.
ND13_Interview.indd 15 10/8/13 2:46 PM
16 INTERVIEW
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
as one: a single command at the container
database level can back up, recover, and
create a standby for all the pluggable data-
bases in the container. This greatly lowers
the costs of managing the databases.
Oracle Magazine: What is your top-feature
list for Oracle Database 12c?
Mendelsohn: When we designed Oracle
Database 12c, we identified what we thought
would be the marquee features of the release.
Multitenancythe multitenant architec-
turewas by far the #1 feature of the release.
The development project to design and build
the new multitenant architecture was huge.
We had to modify virtually all the compo-
nents of the database product to support it.
As part of the project to support
multi tenancy, we also enhanced Oracle Real
Application Testing, so that now you can do
consolidated replays in Oracle Database 12c.
You can take multiple database workloads
that you want to consolidate into a single
database, and you can capture and replay
those workloads all together. This enables
you to predict how those workloads will
behave when theyre all running together in
a consolidated environment. Its important
to note that multitenancy also makes it very
easy to implement database as a service and
software as a service.
Another marquee feature in Oracle
Database 12c is for analytics for big data and
data warehousing: SQL Pattern Matching.
With SQL Pattern Matching, weve extended
SQL so that you now can very easily express
queries on time-ordered data to look for
patterns in the data. Also, we implemented
high-performance algorithms to do this
pattern matching.
For example, lets say youre looking at
stock trading data patterns. You can look
for the classic W patternwhere the stock
price peaks, then goes down for a short-term
low, and peaks again. SQL Pattern Matching
can be applied to web log analysis, financial
analysis, data analysis, and telecommuni-
cations data analysis. Before SQL Pattern
Matching, this type of analysis required
thousands of lines of code to implement
now you can do it in a few lines of SQL.
For high availability in Oracle Database 12c,
we added a marquee feature called Active
Data Guard Far Sync.
In the past, if you had a standby database
more than, say, 100 kilometers [60 miles]
away from the primary, you had to use an
asynchronous Data Guard configuration, for
performance reasons, which meant that if the
primary database went down, the standby
database potentially could lose the last few
seconds or minutes worth of transactions.
Now, with Oracle Database 12c and Active
Data Guard Far Sync, you can have the standby
database across continents, across oceans
thousands of miles apartand still ensure
that theres zero data loss if the primary data-
base goes down. All the transactions will be
available on the standby database.
Storage optimization is another big
feature area. In Oracle Database 11g, we
introduced advanced compression, and this
has been a very popular option for Oracle
Database 11g customers. The storage optimi-
zation feature customers asked for next was
better data lifecycle management.
Lets say theres an order processing
system and the data starts out really hot: its
being inserted and updated. The orders are
hot for the first couple of weeks, then they
start cooling off, and then theyre read-only.
And then after a year, they become very
rarely accessed and are retained for compli-
ance reasons only.
In Oracle Database 12c, to understand this
data lifecycle, weve introduced the notion of a
heat map, where we capture the last time data
was read or written in a block or a partition.
Based on that data, DBAs can now set up poli-
cies that say things like After the data hasnt
been updated for a month, compress the
data, using row compression. Or if youre on
Oracle Exadata, go compress the data, using
columnar compression. And then maybe
after the data hasnt been read for six months,
you can have a policy that says, Automatically
move that data to a low-cost storage tier.
Or if youre on Oracle Exadata, you can set
up a policy that says, Automatically compress
that data, using archive compression to get
much denser compression. And so this whole
storage optimization capability is another
marquee feature in Oracle Database 12c.
The last marquee features Ill mention are
for data security. We added two very powerful
data security features to Oracle Database 12c:
the first is something we call data redac-
tion. Data redaction is a capability that lets
a DBA introduce rules into the database that
let customers deal with compliance issues.
For example, lets say a call center operator
is able to look at the personal information
of customers. Then an auditor comes along
and finds this out and says, No, youve got
to fix that immediately. In the past, that was
a change to an application, to make sure the
call center operator couldnt see that data.
In Oracle Database 12c, the DBA can now
institute a rule that says, If somebody with
the call center role is looking at this data,
always mask the data before you present it as
a result of a SQL query. Thats data redac-
tion in Oracle Database 12c.
We also added privilege analysis to
Oracle Database 12c. Privilege analysis lets
us track what kinds of privileges different
users of the database need in order to get
their jobs done.
Theres this notion of the principle of least
privilege: always make sure your database
users get the least privileges necessary to do
their jobs. And with privilege analysis in Oracle
Database 12c, we can now see exactly what
privileges all the different users are exercising,
and then we can, at the push of a button, help
DBAs remove privileges that are not needed in
the everyday work life of a user.
Another marquee feature in Oracle Database
12c is for analytics for big data and data
warehousing: SQL Pattern Matching.
Andy Mendelsohn, Senior Vice President, Database Server Technologies, Oracle
LEARN more about Oracle Database 12c
oracle.com/database
DOWNLOAD Oracle Database 12c
bit.ly/epBiUG
LISTEN to the interview
oracle.com/magcasts
NEXT STEPS
ND13_Interview.indd 16 10/8/13 2:46 PM
Join the Oracle Press Community: www.OraclePressBooks.com
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 Oracle products and technologies available.
@OraclePress OraclePress
Available in print and eBook formats
Oracle Big Data Handbook
Tom Plunkett et al.
Learn best practices for acquiring,
organizing, analyzing, and leveraging
unstructured data.
Oracle NoSQL Database
Maqsood Alam, Aalok Muley,
Chaitanya Kadaru, Ashok Joshi
Find out how to store big data in
low-cost, low-impact, highly scalable
and available data stores.
Oracle Database 12c New
Features
Robert G. Freeman
Maximize the enhanced
capabilities available in the
latest database release.
Oracle Database 12c SQL
Jason Price
Find out how to access
Oracle databases through
SQL statements and construct
PL/SQL programs.
Untitled-1 1 9/27/13 3:51 PM
18 Book Beat
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
the role of the administrator, and enterprise
database capabilities. The book is an essen-
tial beginners resource that walks readers
through database configuration, administra-
tion, programming, backup and recovery,
and high availability. Each chapter includes
a list of specific skills, practical exercises
for applying those skills, self-assessments
for checking projects, expert Q&A sections,
and quizzes to test mastery of the material.
It also includes in-depth introductions to
SQL and PL/SQL, advice for managing large
databases, and information on using Oracles
engineered systems.
Getting Started with Oracle
WebLogic Server 12c:
Developers Guide
By Fabio Mazanatti Nunes
and William Markito Oliveira
Packt
packtpub.com
Getting Started with Oracle
WebLogic Server 12c:
Developers Guide provides a practical, hands-
on introduction to Oracle WebLogic Server
12c. Written for beginners and intermediate
users, the book will help developers create a
complete Java Platform, Enterprise Edition 6
application leveraging Oracle WebLogic Server
features such as Java Message Service (JMS),
SOAP, and RESTful web services. It includes
content on Oracle WebLogic Servers key
features and step-by-step instructions, with
screenshots and code samples, to help readers
understand and apply important concepts.
Oracle Big Data Handbook
By Tom Plunkett, Brian
Macdonald, Bruce Nelson,
Mark Hornick, Helen Sun,
Khader Mohiuddin, Debra
Harding, Gokula Mishra,
Robert Stackowiak, Keith
Laker, and David Segleau
Oracle Press
oraclepressbooks.com
Cowritten by members of Oracles big
data team, Oracle Big Data Handbook
provides coverage of Oracles products
for acquiring, organizing, analyzing, and
leveraging unstructured data. The book
discusses technologies essential for suc-
cessful big data implementationsincluding
Apache Hadoop, Oracle Big Data Appliance,
Oracle Big Data Connectors, Oracle NoSQL
Database, Oracle Endeca solutions, Oracle
Advanced Analytics, and Oracles open
source R offeringsand offers strategies for
using them. The handbook also includes best
practices for migrating from legacy systems
to an enterprise big data infrastructure.
Look for other Oracle books at bit.ly/NjG3KM.
Smart ERP Solutions Achieves
Oracle Exadata Ready and Oracle
Exalogic Ready Status
Oracle Platinum Partner Smart ERP
Solutions has announced that its add-on
offerings for Oracles PeopleSoft applications
have achieved Oracle Exadata Ready and
Oracle Exalogic Ready status. Smart ERPs
release-independent
offerings, HCM
Solutions 3.0 and
Financials Solutions
3.0, provide auto-
mated employee and
vendor onboarding
capabilities and
enable intelligent
electronic forms
capabilities to
reduce paper usage.
smarterp.com
eMeter Achieves Oracle Exadata
Optimized Status
eMeter, a Siemens
business and Oracle
Gold Partner, has
achieved Oracle
Exadata Optimized
status for its EnergyIP
7.6 Smart Grid
Application Platform. Oracle Exadata
Optimized status demonstrates that
EnergyIP has been tested and tuned with
Oracle Exadata Database Machine.
emeter.com
AdvancedEPM Consulting
Achieves Oracle PartnerNetwork
Specialization for Oracle Data
Relationship Management
AdvancedEPM Consulting, an Oracle
Platinum Partner and Oracle Hyperion
consulting firm that focuses on enterprise
performance management and master
data management, has achieved Oracle
PartnerNetwork Specialized status for
Oracle Data Relationship Management.
This is AdvancedEPMs seventh Oracle
specialization.
advancedepm.com
Oracle Database 12c:
The Complete Reference
By Bob Bryla and
Kevin Loney
Oracle Press
oraclepressbooks.com
Oracle Database 12c: The
Complete Reference shows
readers how to use the new tools and cloud
enhancements of Oracle Database 12c to
maintain a scalable, highly available enter-
prise platform and reduce complexity. This
authoritative guide covers database instal-
lation, configuration, tuning, and admin-
istration and shows you how to build and
populate Oracle databases, perform effective
queries, design applications, and secure
data. The book also contains a comprehen-
sive appendix covering Oracle Database
commands, keywords, features, and func-
tions. Electronic content includes all code
examples from the book and a PDF e-book.
RMAN Recipes for Oracle
Database 12c
By Darl Kuhn, Sam Alapati,
and Arup Nanda
Apress
apress.com
Oracles flagship data-
base product includes a
wide-ranging set of features to aid database
administrators in the all-important tasks
of data recovery and safeguarding against
data loss. Oracle Recovery Manager (Oracle
RMAN) is at the heart of that feature set and
is the tool most often used to initiate data-
base backup and recovery operations. RMAN
Recipes for Oracle Database 12c provides
an example-driven approach to database
recovery with Oracle RMAN and provides step-
by-step solutions for the gamut of backup and
recovery tasks that an administrator might
need to perform. Readers will also learn how
Oracle Database can manage backup files
via the Fast Recovery Area, how to automate
backup and recovery tasks with scripts, how
to troubleshoot Oracle RMAN problems and
optimize Oracle RMAN performance, and how
to recover a lost control file or online redo log.
Oracle Database 12c:
Install, Configure, and Maintain
Like a Professional
By Ian Abramson, Michael
Abbey, Michelle Malcher,
and Michael Corey
Oracle Press
oraclepressbooks.com
Filled with easy-to-follow
tutorials, this guide provides detailed cov-
erage of core Oracle Database 12c concepts,
I
-
H
U
A

C
H
E
N
ND13_Partner.indd 18 9/26/13 11:04 AM
19 PARTNER NEWS
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
I
-
H
U
A

C
H
E
N
DocVentive and Windward Earn Gold Partnership
Two Oracle partners with document-
related solutions have earned Oracle Gold
Partner status.
DocVentive, a provider of document
publishing services and solutions, earned
Oracle Gold Partner status as an authority
in Oracle Documaker, Enterprise Edition,
and Oracle Documaker, Standard Edition.
DocVentive solutions
address document
automation require-
ments in insurance,
financial services, and
the public sector. The
company manages
new Oracle Documaker, Enterprise Edition
implementations, and also helps customers
migrate from legacy platforms.
Windward, which provides embedded
reporting and document generation software
solutions, earned Oracle Gold Partner status
for delivering enhanced Oracle reports that
help Oracle Database users gain insights into
their data. OEMs and enterprise customers
use Windwards Oracle reporting tools to
place Oracle data into templates designed
in Microsoft Word and Excel and make them
available in a variety of formats.
docventive.com
windward.net
Four Partners Earn Platinum-Level Status
Four Oracle partners have earned Oracle
Platinum Partner status.
Ataway was recognized for its expertise
across five Oracle solution areas, including
Oracle SOA Suite; Oracles PeopleSoft
Human Capital Management, PeopleSoft
PeopleTools, and PeopleSoft Financials; and
Oracle Business Process Management Suite.
IT Convergence was acknowledged for its
years of Oracle practice and its expertise in
Oracle E-Business Suite 12 and Oracle Fusion
Applications. IT Convergence provides con-
sulting, education, development, enterprise
cloud, and managed services.
MindStream Analytics was recognized
for its expertise and excellence in deliv-
ering services for Oracle Hyperion Financial
Management, as well as its expertise in Oracle
Business Intelligence Enterprise Edition
and Oracle Essbase. MindStream Analytics
focuses on helping clients improve business
understanding and decision-making.
Novensys Dynamics Srl achieved rec-
ognition for its expertise in implementing
Oracle products, including Siebel Customer
Relationship Management. Novensys pro-
vides hardware and software for enterprise
resource planning, supply chain manage-
ment, customer relationship management,
and business intelligence.
ataway.com
itconvergence.com
mindstreamanalytics.com
novensys.com
Performance Architects
Launches Oracle Exalytics
Discovery Center
Performance Architects, an Oracle Platinum
Partner, has launched the Performance
Architects Oracle Exalytics Discovery Center.
The new center offers current and prospec-
tive customers an environment to evaluate
Oracle Exalytics. Performance Architects
provides industry-specific, functional, and
technical proof-of-concept and pilot services
using real customer data.
performancearchitects.com
Three Partners Achieve Oracle
Validated Integrations
Three Oracle partners have achieved Oracle
Validated Integrations, indicating that their
solutions are designed in a reliable, standard-
ized way, have been tested as functionally
and technically sound, and operate and
perform as documented.
Corporate Screening Services, an Oracle
Gold Partner, has achieved Oracle Validated
Integration of its background screening
solution with Oracle Taleo Enterprise Cloud
Service. The solution simplifies background
screening for Oracle Taleo customers .
Q Software Global, an Oracle Gold Partner,
has achieved Oracle Validated Integration
of its security and compliance suite, Q
Software Version 5, with Oracles JD Edwards
EnterpriseOne 9.1. Q Software Version 5
enables Oracles JD Edwards EnterpriseOne
customers to create and manage a robust
security environment.
Riverbed Technology, an Oracle Gold
Partner, has achieved Oracle Validated
Integration of its Riverbed Stingray Traffic
Manager 9.1 with Oracle E-Business Suite
12.1. The solution is a software application
delivery controller that helps optimize end-
user services by inspecting, transforming,
prioritizing, and routing application traffic.
corporatescreening.com
qsoftware.com
riverbed.com
Intelenex Achieves Oracle Business Accelerators Qualified Status for
Oracle E-Business Suite
Oracle Platinum Partner Intelenex, an Oracle
Accelerate for Midsize Companies solu-
tion provider, has achieved Qualified status
on Oracle Business Accelerators for Oracle
E-Business Suite. Oracle Business Accelerators
are cloud-based implementation tools that
can reduce implementation time and costs.
Intelenex delivers consulting and implemen-
tation services for Oracle Applications.
intelenex.com
Infonova R6 Achieves Oracle Exadata Ready Status
Oracle Gold Partner Infonova has announced
that Infonova R6 version 6.4 has achieved
Oracle Exadata Ready status. Infonova sup-
ports R6 version 6.4 with Oracle Exadata
Database Machine, Oracle Solaris 11, Oracle
Linux, and Oracle VM. R6 version 6.4 is a
multitenant, fully convergent platform for
telco and cross-industry business models. It
delivers capabilities for partnering orchestra-
tion, monetization, and automated revenue
sharing allocation.
infonova.com
ND13_Partner.indd 19 9/26/13 11:05 AM
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.
oracle.com/partners/goto/exastack
It means easy implementation, fast time to market.
Allows us to compete and win against larger ISVs.
Customers get powerful technology with low TCO.
Sterci, a Bottomline Technologies Company
IBIS
Sage
Optimize
Your Apps
for Engineered Systems
Recognized by Oracle. Preferred by Customers.
Untitled-1 1 9/27/13 3:55 PM
21 ARCHITECT BY BOB RHUBART
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
T
here is no magic potion or wonder drug
that will instantly turn you into a great
architect. You still need a unique combina-
tion of technical and communication skills
and experience to succeed in that role. So
youre going to have to work at it, and given
the pace of change in information tech-
nology, that work will be ongoing.
But that doesnt mean there arent steps
you can take today, right now, to become a
better architect. And youll be happy to know
that those steps arent all that difficult or
complicated.
For instance, Anthony Meyer, architec-
ture leader at Westfield Insurance, suggests
that you spend more money on coffee.
The major hurdle for IT architects isnt
the validity of their approach, says Meyer.
Its in getting buy-in. The problem, Meyer
suggests, is in the foundational misun-
derstanding between architects and their
partners: the implementers, sponsoring
executives, and project managers.
While a 20-page presentation
explaining the technical merits may be
needed, buying the right partner a cup of
coffee can sometimes be a more effective
way to deal with pushback, Meyer says. Ill
be the first to say that coffee wont solve
every issue. But in terms of a single step,
coffee and conversation can go a long way
toward building more-productive relation-
ships and getting ideas adopted.
Hot beverages arent involved in Oracle
ACE Director Lonneke Dikmans sugges-
tion, but she places a similar emphasis on
communication and stresses that buy-in is
a two-way street. Get involved, she says.
Too often I see architects who come up with
decisions and rules without committing
themselves to the results of those decisions
and rules.
Dikmans, a managing partner at Vennster,
suggests that architects must understand
that their actions can have consequences
for other stakeholders. Those consequences
must be discussed early and openly with
stakeholders so that management, archi-
tects, and developers understand why the
decisions were made and how they will be
implemented. Know what it takes to create
the proposed solution, says Dikmans. Talk
to the developers; participate in the project.
Oracle ACE Director Ronald van
Luttikhuizen, also a managing partner at
Vennster, echoes his colleagues emphasis
on involvement.
Dont turn your back on something after
you have architected and designed it, van
Luttikhuizen says. Keep involved in the
realization of the proposed solutions. This
will force you to create viable and feasible
solutions and avoid ivory tower architecture.
Involvement in the realization will improve
your insights and experience with new and
alternative solutions, other patterns that can
be applied, new trends, and unforeseen pit-
falls. These experiences can then be applied
in new solutions, making you a better and
more adaptive architect.
In applying those experiences, it is impor-
tant to remember that technical skills alone
do not make a great architect. Many archi-
tects come from a technical background,
says Jeff Davies, a SOA architect, developer,
and evangelist and a senior principal product
manager at Oracle. The most important
thing they can do is to understand the stra-
tegic objectives of their companies. It is only
with this understanding that they will be
able to direct their technical skills, and the
skills of others in IT, toward better serving
the company.
Eric Stephens, an enterprise architecture
director at Oracle, takes Davies suggestion
a step further. The one single step to being
a better IT architect is to stop being an IT
architect, he says. The most successful IT
professionals I know, regardless of title or
role, are the ones that are business focused.
From an enterprise architecture perspective,
the technology is, at best, half of the overall
architecture equation.
Stephens sees a trend among many in the
community to separate business architec-
ture from enterprise architecture. I suspect
that this is because of an emphasis on tech-
nology among enterprise architects. Whether
one agrees with that approach is irrelevant.
My point is that the better architects are
business centric.
Youve heard from a quintet of skilled,
successful architects. Now its up to you.
READ
The Most Important IT Career Skill
bit.ly/11Lduyr
LISTEN to
Who Gets To Be a Software Architect?
bit.ly/11K35Sf
all ArchBeat podcasts
bit.ly/otnarchpod
NEXT STEPS
Bob Rhubart
(bob.rhubart@oracle
.com) is manager of the
architect community
on Oracle Technology
Network, the host of the
Oracle Technology Network ArchBeat podcast
series, and the author of the ArchBeat blog
(blogs.oracle.com/archbeat).
Become a Better Architect
Single steps you can take today
CONNECT: blogs.oracle.com/archbeat facebook.com/brhubart twitter.com/brhubart linkedin.com/in/bobrhubart
The one single step
to being a better
IT architect is to
stop being an IT
architect.
Eric Stephens, Enterprise Architecture
Director, Oracle
ND13_architect.indd 21 9/26/13 2:16 PM
Learn more about the Oracle ACE program at oracle.com/technetwork/community/oracle-ace.
22
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
PEER-TO-PEER BY BLAIR CAMPBELL
User Group Hug
Three peers tout the benefits of Oracle user groups, new features, and old favorites.
What technology has most changed your life?
Oracle Database. Using it has given me the
honor of presenting at Oracle OpenWorld, on
the APAC OTN Tour, and at TROUG [Turkish
Oracle User Group] conferences. Ive also
blogged about my experiences with Oracle
Database [see kamranagayev.com] and helped
to establish the Azerbaijan Oracle User Group
[AzerOUG]both of which have expanded my
social circle.
How are you using social media in your
work? As a blogger, I try to share problems
I encounter in my daily job. I also record
step-by-step video tutorials and share
them on YouTube, Twitter, and Facebook.
And whenever Im at an Oracle-related
conference, I tweet from almost every
session I attend about anything new.
Youve taken Oracle University [OU] classes
in the past. What led you to do this? I wanted
to learn Oracle from Oracle. OU classes are
very well structured. Theyve really helped
me to update my skills and prepare for the
Oracle certification exams.
Whats your favorite tool on the job? DTrace
is a very powerful analysis toolother
similar tools just arent as intuitive. And
performance analysis is so important for
ensuring security, which is the focus of
my business. I also appreciate the fact
that DTrace can be utilized in both Oracle
Enterprise Linux and Oracle Solaris.
What are your favorite mobile applications?
Evernote and Oracle Hardware Virtual Tour
(bit.ly/15AIcuh)a 3-D product catalog.
Whats your favorite Oracle technology
user group? The Korea Oracle Solaris
User Network. Im the groups chairman.
The technical understanding among our
members is high, and we really help each
other. As a member, you can get truly
valuable technical assistance through the
Q&A section of the groups online bulletin
boardand thats also a great place to
create and share technical documentation.
We also promote knowledge sharing through
a variety of conferences and offline seminars.
How did you get started in IT? I really got
started while pursuing a PhD in nuclear
physics in the mid 90s. I was using a Sun
workstation and essentially being the system
administrator for it. This led me to become
a Sun system administrator, and from there
I got to work with Oracle technologyand
realized that I actually preferred being a DBA.
Whats your favorite technique on the job?
Using the Oracle wait interface. The Oracle
code is well instrumented, and being
able to see where a session or statement is
spending time is a very useful technique.
Which new features in Oracle Database
are you currently finding most valuable?
I do a lot of consolidation work with Oracle
Exadata, and the pluggable databases in
Oracle Database 12c are great for that.
Whats your go-to Oracle reference
book? Practical Oracle8i [Addison-Wesley
Professional, 2000] by Jonathan Lewis and
Optimizing Oracle Performance [OReilly
Media, 2003] by Cary Millsap and Jeff Holt.
These books are more than 10 years old now,
but theyre still valid today. I know I was a
better DBA after reading them.
Company: NoBreak Company, a provider of
consulting services and technical support for
security systems and solutions
Job title/description: Senior consultant,
responsible for Oracle Solaris system tuning,
troubleshooting Oracle Solaris security, and
auditing information security, among other tasks
Location: Seoul, South Korea
Oracle credentials: Oracle Certified Associate
(Oracle9i Database), Sun Certified Java
Programmer (Java 2 Platform, Enterprise
Edition 1.2), and Sun Certified System
Administrator (Oracle Solaris 8), with 13 years
of experience using Oracle products
SUK KIM
Company: e-dba, an Oracle Platinum Partner
providing managed services and professional
services support
Job title/description: Senior principal
consultant, part of a team of Oracle Exadata
DBAs focused exclusively on e-dba Oracle
Exadata customers
Location: Oxford, England
Length of time using Oracle products:
14 years
JASON ARNEIL
Company: Azercell Telecom, the leading mobile
telecom operator in Azerbaijan
Job title/description: Oracle DBA, responsible
for maintaining, tuning, and troubleshooting
databases
Location: Baku, Azerbaijan
Oracle credentials: Oracle Certified Master
(Oracle Database 10g), Oracle Certified
Professional (Oracle9i Database, Oracle
Database 10g, Oracle Database 11g), and
Oracle Certified Expert (Oracle Real Application
Clusters), with 7 years of experience using
Oracle products
KAMRAN AGAYEV A.
ND13_Peer.indd 22 9/26/13 2:23 PM
3G 9:41 AM
Re 00
wit r
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
Prot
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 afliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its afliates. Other names may be trademarks of their respective owners. 113940
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
24
BY TOM CALDECOTT
Oracle OpenWorld, JavaOne, and MySQL Connect deliver
a week of innovative technology.
RECORD-
BREAKING
Conference attendees
enjoyed music
and spectacular
views at the Oracle
Appreciation Event on
Treasure Island.
Oracle President
Mark Hurd
appeared live from
Oracle OpenWorld
on CNBCs Closing
Bell with host
Maria Bartiromo.
ND13_conference_wrap.indd 24 10/9/13 10:14 AM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
25
Oracle President
and CFO Safra
Catz talked
about Oracles
strategy for
simplifying IT at
the Leaders Circle
@ OpenWorld
program.
Oracle CEO
Larry Ellison
discussed
accelerating
queries on data
warehouses
with the Oracle
Database
In-Memory
option.
O
racles San Francisco conferences have come and
gone for 2013. But for the 60,000 people from 145
countries who attended and the 2.1 million people
who followed the conferences onlinea new attendance
recordthe experience, information, and contacts made
were investments in the future.
Like past conferences, this years gathering of business
and technology professionals was the place to learn about
the latest in technology and trends as well as to network
with Oracle experts, partners, and customers. The confer-
ences featured 2,555 sessions, 3,599 speakers, 500 partner
and customer exhibits, 408 demos, and a wide variety of
hands-on labs and meetups. O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
;

H
A
R
T
M
A
N
N

S
T
U
D
I
O
S
;

F
L
I
C
K
R
ND13_conference_wrap.indd 25 10/9/13 10:14 AM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
26
Tom Caldecott is a writer in Oracles brand marketing group.
Hot technology topics included big data and analytics, cloud com-
puting, and the Internet of Things, to name a few. In his opening keynote,
Oracle CEO Larry Ellison introduced three Oracle breakthroughs, which
were on view at the Engineered Systems Showcase and DEMOgrounds:
Oracle Database In-Memory option to Oracle Database 12c, which delivers
queries that are 100 times faster for real-time analytics as well as doubling
transaction processing rates; the SPARC M6-32 server, with 32 terabytes of
dynamic random access memory (DRAM) and double the number of cores
of Oracles previous-generation SPARC M5 servers; and Oracle Database
Backup Logging Recovery Appliance, which delivers data protection for
near-zero data loss.
As in years past, conferencegoers attended JavaOne; MySQL Connect;
and/or Oracle OpenWorld, which included two special programs, Oracle
PartnerNetwork Exchange @ OpenWorld for partners, and Leaders Circle
@ OpenWorld for partner and customer executives. HCM @ OpenWorld,
Cloud @ OpenWorld, and CX @ OpenWorld were among special focus
areas at this years conference as well.
Attendees watched live coverage of keynotes and sessions through
Oracle OpenWorld Live, a news and information show that was available
on oracle.com and broadcast onsite. This year Oracle OpenWorld Live pro-
gramming featured 32 segments with customers, partners, and luminaries.
The conferences also offered new attractions for fun and relaxation,
including two bocce ball courts, a make-your-own-cupcake bar, and wine
tasting, in addition to the always popular Oracle Appreciation Event on
Treasure Island, which featured music by Maroon 5 and The Black Keys.
Some of the most significant record-setting events during conference
week were not at the conferences but on San Francisco Bay. After being
down eight races to one in the 34th Americas Cup competition, ORACLE
TEAM USA won eight consecutive races to win the cup, setting a record for
the greatest comeback in the history of the 162-year event. What better
way to finish off an exceptional week?
After coming back
from a seven-race
deficit in the
34th Americas
Cup, ORACLE
TEAM USA
team members
celebrated their
historic win.
Maroon 5
entertained
the crowd at
the Oracle
Appreciation
Event.
O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
;

H
A
R
T
M
A
N
N

S
T
U
D
I
O
S
;

F
L
I
C
K
R
;


O
R
A
C
L
E

T
E
A
M

U
S
A

/

P
H
O
T
O
:

G
U
I
L
A
I
N

G
R
E
N
I
E
R
;


O
R
A
C
L
E

T
E
A
M

U
S
A

/

P
H
O
T
O
:

S
A
N
D
E
R

V
A
N

D
E
R

B
O
R
C
H
ND13_conference_wrap.indd 26 10/9/13 10:15 AM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
27
Oracle Chief
Corporate
Architect Edward
Screven presented
a keynote called
The State of the
Dolphin at MySQL
Connect.
JavaOne
attendees relaxed
and networked at
a reception in the
Taylor Street Caf.
ND13_conference_wrap.indd 27 10/9/13 10:16 AM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
28
I
-
H
U
A

C
H
E
N
Deploy a world-class private cloud with Oracle Exadata.
BY DAVID A. KELLY
O
racle Exadata Database Machine is
known for great compute performance,
and over the past few years, it has also
become known as a great platform for any
type of Oracle Database workload, from data
warehousing to online transaction processing
(OLTP). But now organizations are turning to
Oracle Exadata for business efficiencies and
private cloud solutionsfor consolidation and
database as a service (DBaaS).
DBaaS is essentially the evolution of
database consolidation, as organizations
reduce the number of different database
servers they have deployed, says Oracles Tim
Shetler, vice president of product management
for Oracle Database.
DBaaS goes beyond database consolidation,
by enabling many databases to share a common
platform, so organizations can get much-more-
effective utilization of hardware resources while
also enabling database self-service capabilities.
We see DBaaS as a journey. After
organizations consolidate on the Oracle Exadata
platform, they can reduce costs further by
deploying a DBaaS self-service infrastructure on
top of the Oracle Exadata platform, says Shetler.
ENGINEERING
AS A SERVICE
ND13_Exadata.indd 28 10/8/13 3:53 PM
ND13_Exadata.indd 29 10/8/13 3:54 PM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
30
CHECKING INTO THE UNIVERSITY OF
MINNESOTAS DATABASE HOTEL
For an inside look at how DBaaS works in
the real world, its worth checking into the
University of Minnesotas database hotel.
We call our implementation of DBaaS
a database hotel, says Andy Wattenhofer,
DBA manager at the University of Minnesota.
Its just a nicer-sounding way of saying
hosted database services.
Regardless of what its called, the univer-
sitys DBaaS implementation is having a big
and positive effect on both IT and the University of Minnesotas users.
With more than 50,000 students, the University of Minnesota in
Minneapolis is one of the largest universities in the United States.
The universitys centralized IT group not only has to support all
those students but also must provide support and services to more
than 40 departments and colleges within the university. In the past,
each of those departments had its own collection of applications,
systems, and databases, many of which the centralized IT group
needed to support.
Thats why over the past few years, Wattenhofers team developed
its database hotel as a way of providing faster, more flexible, and
more efficient database services to all the university departments.
Specifically, his organization built an Oracle technology-based infra-
structure that consolidated the databases and many servers from the
various departments down to two Oracle Exadata systems.
The University of Minnesota currently has two Exadata Database
Machine X2-2 half-rack systems from Oracle, with four database
nodes each and roughly 30 terabytes of usable disk space for each
of the Oracle Exadata systems. The university is using Oracle Real
Application Clusters (Oracle RAC) for high availability and the Data
Guard feature of Oracle Database, Enterprise
Edition, for disaster recovery capabilities.
The deployment has been live in production
since May 2011.
To create the database hotel,
Wattenhofers team took the individual
databases required for different applications
and turned them into schemas in a shared
Oracle Database instance.
The database hotel model takes the
Oracle Database concept of a schema and
positions it more like a database, says
Wattenhofer. Weve taken one large shared instance and created a
model where people can create one or more schemas to build their
applications. They can have roles, login credentials, security, and all
of the standard infrastructure they would expect.
The universitys database hotel enables each database schema to
share temp spaces, undo spaces, system tablespaces, and the other
resources across multiple databases instead of duplicating those
resources across many servers and databases. Now we just have
everything in one place, so were sharing resources and administra-
tive overhead, says Wattenhofer. Weve also reduced resource
utilization by not having to build all these memory structures across
all the different servers.
Another big benefit for the university is that the centralized IT
team is now able to efficiently manage all the database-related back-
end operations.
You can go from one database to the next, and it works exactly
the same way, so weve really reduced administrative overhead, says
Wattenhofer. And we can do things a lot more quickly. We can patch
quickly. We can do backups more quickly. We can back up the entire
stack in about an hour.
Organizations already using Oracle Database can
implement a database-as-a-service (DBaaS) solu-
tion by using a schema consolidation approach
with Oracle Database 11g, or they can step up to
the Oracle enterprise DBaaS architecture, which
is composed of three core components: Oracle
Exadata Database Machine, Oracle Database 12c,
and Oracle Enterprise Manager Cloud Control 12c.
Oracle Database 12c is ideal for DBaaS, because
of its multitenant architecture, says Oracles Tim
Shetler, vice president of product management
for Oracle Database. The Oracle Database 12c
multitenant architecture provides pluggable data-
bases, which means that organizations can have
many databases plugged into the same database
container, sharing system resources so that overall
resource requirements are significantly lower.
Oracle Database 12cs multitenant architecture
is also a great enabler for providing more-efficient
DBaaS. In addition to consolidating databases,
Oracle Database 12cs multitenant architecture
can consolidate many database resource require-
ments into one common pool of resources. With
the multitenant architecture, everything from
memory and background processes to backups,
patching, and upgrades can be shared and consol-
idated, all while database isolation is maintained.
Oracle Enterprise Manager Cloud Control
12c also provides robust support for DBaaS.
The tool includes a service module that enables
organizations to easily provision databases
without involving the IT department as well as
to set up chargeback plans that allocate cost
according to whats used.
The combination of Oracle Exadata as a plat-
form; Oracle Database 12c, with its multitenant
architecture; and Oracle Enterprise Manager Cloud
Control 12c creates a complete solution thats ideal
for providing DBaaS, says Shetler.
Oracle Enterprise DBaaS Architecture
We can do backups more quickly. We can back up the entire stack in
about an hour. Now, instead of just managing backups, were working
on projects that add value to the university.
Andy Wattenhofer, DBA Manager, University of Minnesota
University of Minnesota
umn.edu
Location: Minneapolis, Minnesota
Students: 50,000+
Oracle products: Oracle Database 11g
Release 2, Oracle Exadata Database
Machine, Oracle Enterprise Manager, Oracle
Real Application Clusters, PeopleSoft
product family
SNAPSHOT
ND13_Exadata.indd 30 10/8/13 3:55 PM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
31
M
A
R
K

L
U
I
N
E
N
B
U
R
G
But saving on administrative overhead is
only one benefit. An important value propo-
sition for the universitys Oracle Exadata
based solution was that it would free up
valuable IT personnel for more-productive
activities, such as creating new applications
or working with the users and departments
on projects. Now, instead of just managing
backups, were working on projects that add
value to the university, says Wattenhofer.
I wanted to move our staff into more-
valuable work that really contributes value
to the mission of the university.
COMPRESSION AND PERFORMANCE
Wattenhofer has also found the capa-
bilities of Oracle Exadatas Exadata Hybrid
Columnar Compression feature useful. We
identified one database that had around
350 gigabytes of data, and the Oracle
Exadata compression brought it down to
around 30 gigabytes. On top of that, you
can also get a bit of performance gain, says
Wattenhofer. Not only did our performance
not degrade because of compression, but we
also found that some queries were running
faster as a result of compression.
Other key benefits, says Wattenhofer,
are Oracle Exadatas Exadata Smart Scan
feature and storage capabilities. As one
might expect, a universitys applications
get pummeled during fall and spring regis-
tration, when thousands (or tens of thou-
sands) of students are scheduling classes.
During the student registration process,
the university has a goal of returning results
within a few seconds. Although the univer-
sity has always striven to make the process
as efficient as possible, the first time it ever
achieved its multisecond goal for returning
results was after the universitys database
was moved to the database hotel running
on Oracle Exadata.
INCREASED EFFICIENCY AND STANDARDIZATION
Another big benefit of DBaaS for the University of Minnesota is that
it provides an efficient way for the centralized IT group to make it
easier for individual departments to manage their own databases yet
remove maintenance requirements such as backups and patching.
In effect, by using the centralized DBaaS service, departments get a
free DBA looking over their shoulder, backing up systems as needed,
ensuring that the appropriate patches are installed, and maintaining
appropriate security measures. And with database services provided
through Oracle Exadata, everyone on the new DBaaS platform auto-
matically inherits benefits such as security standards compliance.
They dont even have to think about it. Its a free add-on for them,
says Wattenhofer.
Providing DBaaS also means that the universitys departments
can create and deploy solutions much faster than in the past, which
means that checking into the universitys database hotel doesnt
take a lot of time. Its pretty easy for us to create a new schema in the
database and give credentials to the users. They can just point their
application at the new schema, says Wattenhofer. It takes us about
five minutes to spin up a new database.
The University of Minnesota refers to its Oracle Exadatabased database-as-a-service implementation as a
database hotel. Weve taken one large shared instance and created a model where people can create one or
more schemas to build their applications, says Andy Wattenhofer, DBA manager at the University of Minnesota.
ND13_Exadata.indd 31 10/8/13 3:56 PM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
32
At a high level, Oracles engineered system approach has assisted
Wattenhofers work. One of the biggest benefits to me is that we
didnt have to go through the pain of implementing all the tech-
nology thats in Oracle Exadata, says Wattenhofer. It was already
done for us, so we were able to give our users a highly available
system over the course of two months, from delivery to production.
USING ORACLE EXADATA TO OPEN DOORS TO CUSTOMERS
When it comes to overhead, revolving, sliding, or other specialty
residential and commercial doors, Overhead Door is the worldwide
leader. But when Overhead Door needed to open doors with its cus-
tomers through a better, faster, and more agile IT infrastructure, the
company turned to Oracle and Oracle Exadata.
Based in Lewisville, Texas, Overhead Door is a 92-year-old, nearly
US$1 billion company focused on manufacturing, distributing,
installing, and servicing a wide range of openers and doors, from
residential and commercial garage doors and revolving, automatic
sliding, and pedestrian doors to truck doors and ramps. The company
manufactures, installs, and services the doors, and the companys
products are sold through OEMs; dealers; distributors; and retailers
such as Lowes, Home Depot, and Amazon. Overhead Door is owned
by Sanwa Holdings Corporation of Japan and has more than 3,500
employees; 17 manufacturing locations across the United States,
Mexico, and the United Kingdom; and about 100 company-owned
sales and service centers across North America.
In 2009 Overhead Door acquired its largest competitor, Wayne-
Dalton, which meant a significantly larger combined company as
well as a more complex IT footprint. The organizations used dif-
ferent legacy ERP systems, and after a strategic business assess-
ment the following year, the leadership of Overhead Door realized
that to continue optimizing business processes, it would need to
invest in a new IT platform.
It became evident that our existing
technology platforms were not going to get
us where we needed to go, says Larry Freed,
CIO at Overhead Door.
In 2011 the company embarked on an
evaluation and selection process for a best-
in-class solution that would support the
requirements of the business and align
with the strategic initiatives it had com-
mitted to. By the end of 2011, the company
decided to rip and replace all of its legacy
environments with a new Oracle technology
based platform.
We made a strategic decision to commit
to Oracle, says Freed. Specifically, the
company decided to implement the full Oracle stack, from hardware
up to Oracle Applications. Overhead Door kicked off its replatform
effort (known internally as Project Everest) in January 2012, with a
global blueprinting process, and started implementation in October
2012. The companys first business unit went live on the new Oracle
platform in September 2013, and the company is continuing rollouts
to the rest of its business units over the next two years.
Since the company has grown, and continues to grow, through
acquisition, wed like this to become the platform that enables us
to grow, says Freed. Now, whether we grow through acquisition or
organically, we have a very robust set of capabilities we can deploy.
Oracle Exadata Database Machine plays an important part in
Overhead Doors new IT and business strategy. The organization has
two Exadata Database Machine X2-2s deployed, one in production
and one in development and testing. Because its an engineered
system, Oracle Exadata gives us a leg up on speed, performance, and
service to our employees and customers, says Freed. With Oracle
Exadata and Oracle technologies, weve built a private cloud that we
can scale and adjust very quickly as business conditions change.
For Overhead Door, an important part of the transformation was
enabling closer relationships with its customers, across all its chan-
nels. One of the drivers for us was customer intimacy. We didnt
want our infrastructure plumbing to be a problem in achieving
that, says Freed. The Oracle Exadata platform gives us the ability
to have really good speed and performance that enables us to be
much easier to do business with.
In addition, by upgrading to an Oracle Exadata platform,
Overhead Door now has the power to analyze and understand its
business and customers in ways it never could before. This was
really a business transformation enabled by a technology plat-
form, says Freed. And we felt that Oracle Exadata was going to
bring that capability to the table for us by enabling us to manage
huge amounts of data effectively as well as
provide new services and integration capa-
bilities through a customer portal.
In addition to transforming the business,
Oracle Exadata has transformed database
management operations. I think our ability
to manage databases within this single engi-
neered environment really gives us a leg up
on our competition, says Freed. It also gives
our team the flexibility to be able to manage
a very complex database environment
without nearly the amount of effort it would
have taken with our previous solutions.
In the end, Overhead Doors new Oracle
technologybased architecture is less about
Overhead Door
overheaddoor.com
Location: Lewisville, Texas
Employees: 3,500+
Oracle products: Oracle E-Business Suite,
Demantra demand management applications,
Oracle Transportation Management, Oracle
CRM On Demand, Oracle Governance Risk
and Compliance, Oracle Identity Management,
Oracle Business Intelligence, Oracle Business
Intelligence Enterprise Edition, Oracle VM,
Oracle Exadata Database Machine,
x86 servers, Oracle Fusion Middleware,
Oracle Database
SNAPSHOT
I think our ability to manage databases within this single engineered
environment really gives us a leg up on our competition.
Larry Freed, CIO, Overhead Door
ND13_Exadata.indd 32 10/8/13 3:56 PM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
33
technology and more about achieving business objectives. Our
Oracle Exadatabased environment is very powerful, says Freed.
Using Oracle Exadata as our database platform brings us the
power and capability we need in order to differentiate ourselves
in the marketplace.
DATABASE SERVICES FOR THE FUTURE
As competition continues to increase and the available time to
market decreases, organizations have to find new ways to stay ahead.
One way to do that is to focus on IT solutions, such as DBaaS, that
provide users with more control and the ability to respond more
quickly to business change while enabling IT personnel to focus on
projects that truly add value to the business.
Staying ahead of the competition also requires being ready
for company acquisitions, organic business growth, the
continuing explosion of data, and the new business questions
that will follow that new data.
From the growth and scale perspective, Oracle Exadata can meet
our needs, concludes Freed. With the Oracle stack and Oracle
Exadata, we now have a single, unified platform that should be able
to fit just about anything we bring on board.
David A. Kelly (davidakelly.com) is a business, technology, and travel
writer who lives in West Newton, Massachusetts.
LEARN more about Oracle Exadata
oracle.com/exadata
Oracle Database
oracle.com/database
Oracle Private Database Cloud
bit.ly/GBXIkH
Oracle Enterprise Manager 12c
bit.ly/175NHTV
NEXT STEPS
Oracle Exadata Database Machine plays an important part in Overhead Doors new IT and business strategy. With Oracle Exadata and Oracle technologies, weve built
a private cloud that we can scale and adjust very quickly as business conditions change, says Larry Freed, CIO at Overhead Door.
P
A
U
L

S
.
H
O
W
E
L
L
ND13_Exadata.indd 33 10/8/13 3:57 PM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
THE BUSINESS
OF GROWING
Land OLakes invests in Oracle engineered systems
to plant the seeds of change. BY MARTA BRIGHT W
E
S

R
O
W
E
L
L
ND13_LOL.indd 34 9/26/13 4:22 PM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
C
lose to 21 million American farmers produce,
process, and sell food and fiber products, and
nearly US$136 billion in farm goods were
exported in 2011. Chief among these producers is the
Land OLakes cooperative, which has been a part of
the American landscape for nearly a century.
An iconic brand, Land OLakes has grown far beyond
its roots as a small cooperative of dairy farmers with
forward-thinking ideas about producing and packaging
butter. Supported by a variety of technologies, including
Oracle Exadata and Oracle Exalogic, Land OLakes
has become a Fortune 500 company and is now the
second-largest cooperative in the United States, with
annual sales of more than US$14 billion. Over the
years, Land OLakes has expanded its operations into
a variety of subsidiaries, including WinField Solutions
(WinField), which provides farmers with a wide variety
of crop seeds and crop protection products, and Purina
Animal Nutrition, which provides farmers and ranchers
with a wide variety of animal nutrition products.
ND13_LOL.indd 35 9/26/13 4:23 PM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
FIRMLY ROOTED IN COOPERATION AND TECHNOLOGY
The dairy and farm product giant has been a user of Oracles JD
Edwards EnterpriseOne enterprise resource planning (ERP) appli-
cations for more than a decade, and the Oracle footprint extends
across Land OLakes and the WinField and Purina Animal Nutrition
subsidiaries. Weve been a longtime JD Edwards EnterpriseOne ERP
customer across multiple divisions, explains Mike Macrie, vice pres-
ident and CIO at Land OLakes. Our growth into our current Oracle
footprint began about four years ago, when we invested heavily in
Oracles technology platform and applications.
For example, back in 2010, Land OLakes introduced Oracles
Demantra demand planning applications and Oracle Transportation
Management, which the company promptly integrated with its
existing JD Edwards EnterpriseOne system to improve shipping and
delivery operations. In the case of WinField, the company began
focusing more heavily on the Oracle technology stackincluding
Oracle Exadata, Oracle Exalogic, and the
Oracle WebCenter platformto handle some
of the complexities of the seed business.
Like the Land OLakes dairy products
business, WinField functions as a whole-
saler: it sells seed and crop protection prod-
ucts and services to local co-op members
who, in turn, sell to farmers. To support the
operation, WinField has grafted an array of
Oracle technologies together with existing
proprietary systems. This includes the R7
Toolan interactive web-based, mobile
platform that aids agronomic decision-
makingand the companys web-based
seed ordering system, Connect3.
What makes seed sales unique and chal-
lenging is that they are directly tied to seasonal
purchasing. Theres somewhat of a Black
Friday in the seed business, explains Tony
Taylor, director of technology services at Land
OLakes. WinField is a US$5 billion company
that sells all of its seed during about a six-
week period of time. With such a hugely com-
pressed sales cycle, speed and efficiency in the
online ordering experience are essential. Add
to that heightened customers expectations,
and if transactions are running in minutes
rather than seconds, customers arent going to use that system.
To support its co-op members, WinField uses Oracle Endeca
Information Discovery technology in its Emerald Extras Equinox
program, which helps co-op members better understand behaviors
and patterns in the farming market. We can glean information
that tells us, for instance, who has bought 1,000 acres of seed but
maybe has bought only 500 acres worth of protection products
such as herbicides, granular micronutrients, adjuvants, and seed
treatments, explains Macrie.
Through its partnership with GEOSYS, WinField uses the R7
Tool to gather and analyze huge volumes of imaging data, which
it uses to help farmers make smarter agronomic decisions and
ultimately gain higher yields.
WinField also drills down into information that, for instance, dis-
plays details in January about a particular farmer who typically pur-
chases seed and products in November but has not yet ordered. This
Land OLakes and its subsidiaries view the Oracle platformincluding Oracle Exadata and Oracle Exalogic
as a powerful consolidation system. We can essentially do more with less on these engineered systems
than we can on traditional platforms, says Land OLakes Vice President and CIO Mike Macrie (right), with
Land OLakes Director of Technology Services Tony Taylor.
For more than a decade, Land OLakes has been
running Oracles JD Edwards EnterpriseOne to
meet the enterprise resource planning (ERP)
requirements of Purina Animal Nutrition, one
of the largest producers of animal feed, and
WinField, a business that sells crop protection
solutions and seed to farmers. In 2006, the
companys dairy foods division was hindered
by the lack of integration between its business
units, so it combined its 12 manufacturing plants,
40 third-party warehouses, and 23 contract
manufacturing facilities on a single instance
of its JD Edwards EnterpriseOne and Oracle
Transportation Management solution.
Land OLakes plans to upgrade the dairy foods
divisions JD Edwards EnterpriseOne environment
in the next 12 to 18 months while moving the appli-
cation tier onto Oracle Exalogic and the back-end
Oracle Database instance onto Oracle Exadata.
With everything weve already got in place, com-
bined with future Oracle investments, we think
were going to get all the performance we need for
our growing environment, says Tony Taylor, direc-
tor of technology services at Land OLakes.
JD Edwards EnterpriseOne
M
A
R
K

L
U
I
N
E
N
B
U
R
G
ND13_LOL.indd 36 9/26/13 4:29 PM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
37
provides WinField the information it needs
in order to perform proactive outreach to
farmers to find out if they simply havent had
time to place an order. Were able to help
farmers and our co-op members, even in
cases where were not sure whether its going
to directly benefit Land OLakes or WinField,
says Macrie. Because this is truly a coopera-
tive system, these are the people we work for,
and were willing to invest in them.
HARVESTING THE REWARDS
Prior to implementing Oracle technology and
applications, WinField was struggling with
its legacy web-based sales portal. It was
one of our first custom-built applications,
and it was a customer-facing application for
WinField, says Taylor. It didnt have a lot of
the functionality we were looking for, so we
rebuilt it around the Oracle framework, which
includes Oracle Database 11g Release 11.2,
Oracle Exadata and Oracle Exalogic, and
Oracle Endeca applications, leveraging our
JD Edwards EnterpriseOne ERP back end for
order processing. WinField also built the
front-end order entry component through
its Connect3 system, making it accessible
through Oracle WebCenter.
According to Taylor, the expansion of the
Oracle footprint continued at both WinField
and Land OLakes as a byproduct of Oracles
own integration strategy. The continued
integration strategy of Oracle is attractive to
us, because it not only addresses the appli-
cation tier but also goes down through the technology stack, says
Taylor. It made a lot of sense for us to leverage the Oracle stack
through and through, and eventually that evolved all the way into
engineered systems.
WinField considered all of its technology optionsregardless of its
existing Oracle investmentswhen it conducted a series of business
intelligence technology evaluations, testing other solutions against
Oracle Exadata. When we started to deploy Oracle business intel-
ligence, we had it sitting on our standard HP-UX back end, running our
Oracle Database instance, and immediately we started to experience
very slow performance in some of the analytics and queries, notes
Taylor. We had this really great tool, and we were giving our customers
some really great insights, but because the performance wasnt there,
they were just ready to drop it and quit using it. Through all that
testing, we couldnt get the performance we desired with any solution
other than Oracle Exalogic and Oracle Exadata.
When WinField went live with its Oracle business intelligence
solution, it had its application tier on Oracle Exalogic and the data-
base tier on Oracle Exadata. Since we went live, weve scaled that
environment probably to a user base that has
tripled in size, and the system continues to
hold up and perform very well, says Taylor.
WinField is now benefiting from a trans-
action and analytics environment that is
approximately 15 times as fast as it was with
its legacy environments.
Both Macrie and Taylor are supportive of
taking their Oracle investment to the next
level. Were considering investing in Oracle
Exalytics, says Macrie. With the under-
lying technologies of the Oracle application
platform, we see Oracle Exalytics as a com-
petitive advantage, because its completely
integrated and optimized and built to out-
perform other industry solutions.
Macrie feels strongly that Oracle Exalytics
also has the potential to outperform the
improvements already gained with Oracle
Exalogic and Oracle Exadata. Moving to
Oracle Exalytics would also free the Oracle
Exalogic environment for Land OLakes to
begin virtualizing with Oracle VM. Our
strategy is to virtualize the Oracle Exalogic
box and use it as the ERP application plat-
form going forward, he says.
Land OLakes and its subsidiaries also view
the Oracle platform as a powerful consolida-
tion system. We can essentially do more with
less on these engineered systems than we can
on traditional platforms, Macrie says. The
same operations on this integrated platform
require less CPU, memory, and floor space
than if they ran on a nonintegrated platform.
Both Macrie and Taylor see a great future at WinField with Oracle
products. I think theres real value in what Oracle is doing in the
end-to-end integrationfrom the hardware platform and engi-
neered systems through the middleware stack and up through the
applications, says Taylor. If youre an Oracle customer today and
youre not using the combined strength of the total solution, I think
youre missing an opportunity.
Land OLakes/Purina Animal Nutrition/
WinField Solutions
landolakesinc.com
purinamills.com
winfield.com
Headquarters: Arden Hills, Minnesota
Industry: Agriculture
Employees: 9,000
Oracle products: Oracle Database 11g Release
11.2, Oracle Real Application Clusters (Oracle
RAC), Oracle Advanced Compression, Oracle
Partitioning, Oracle GoldenGate, Oracle
GoldenGate Veridata, Demantra demand plan-
ning applications, JD Edwards EnterpriseOne,
Oracle Endeca applications, Oracle
Transportation Management, Oracle Enterprise
Manager (10g, 11g, and 12c), Oracle Universal
Records Management, Oracle WebCenter
Imaging, Oracle WebCenter Capture, Oracle
SOA Suite, Oracle WebLogic Suite, Oracle
WebCenter Portal, Oracle Application
Integration Architecture Foundation Pack,
Oracle Data Integrator, Exadata Storage
Server Software, Exalogic Elastic Cloud
Software, Oracle Application Management
Pack for JD Edwards EnterpriseOne, Oracle
Database Lifecycle Management Pack, Oracle
Diagnostics Pack, Oracle Tuning Pack, Oracle
SOA Management Pack Enterprise Edition,
Oracle Management Pack for WebCenter,
Oracle Secure Enterprise Search, Oracle
Identity and Access Management Suite,
Oracle Management Pack Plus for Identity
Management, Oracle Cloud Management Pack
for Oracle Fusion Middleware, Oracle Business
Process Management Suite
SNAPSHOT
Marta Bright is a senior writer with Oracle Publishing.
LEARN more about
Oracle Exadata
bit.ly/15GAILn
Oracle Exalogic
bit.ly/14STsU9
Oracle Exalytics
bit.ly/17VK8mu
NEXT STEPS
ND13_LOL.indd 37 9/26/13 4:24 PM
38 Java Developer
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
The Latest Infographics: Mobile Business Statistics for 2012, onforb.es/13xwpmE
The Next Big Wave
Explore mobile frontiers with Oracle ADF Mobile.
I
n his article The Latest Infographics:
Mobile Business Statistics for 2012,
Mark Fidelman, a contributing writer to the
Forbes website, presents several interesting
facts and statistics about the current and
predicted future usage of mobile devices. A
clear trend in this article is that business is
going mobile and that in only a few years,
the number of mobile devices will signifi-
cantly outnumber that of wired devices and
PCs used at work and at home. One message
to extrapolate from this is that mobile appli-
cation development is the next big wave in
enterprise application development.
However, enterprise developers adding
mobile as an access channel to enterprise
business systems need to maintain the same
data validation, business logic, and security
levels as for traditional applications. And the
mobile world is a diverse set of platforms
and operating systemsa far more complex
landscape than the four or five browsers that
developers have had to support in enterprise
web-enabled solutions of the past.
For enterprise application developers,
a promising strategy for conquering these
go mobile challenges is to embark on a
hybrid mobile development approach that
replaces the burden of device-specific native
programming with a consistent development
model that uses standard technologies such
as HTML, CSS, JavaScript, and Java and can be
run across multiple platforms. One develop-
ment tool suited for such a hybrid mobile
application strategy is the Oracle ADF Mobile
feature of Oracle Application Development
Framework (Oracle ADF).
This article introduces Oracle ADF Mobile
and presents a hands-on mobile develop-
ment and deployment exercise.
ORACLE ADF MOBILE OVERVIEW
Oracle ADF Mobile is a declarative develop-
ment and application runtime environment
that uses standards-based technologies
including HTML, CSS, JavaScript, and Java
to deliver a hybrid solution for building,
deploying, and running cross-platform on-
device native mobile applications on Apple
iOS and Google Androidpowered devices.
As shown in Figure 1, Oracle ADF Mobile
applications execute in a specific runtime
environment: the Device Native Container.
This container hosts the Oracle ADF Mobile
application, is written in the native language
for the target device, and enables applica-
tions to access mobile device services such
as the address book and the camera. Oracle
ADF Mobile enables you to integrate and
choose between three user interface tech-
nologies according to your requirements and
your teams skill sets:
Local HTML. HTML5 pages execute on the
mobile device in the context of Oracle ADF
Mobile. Data and device interaction is pro-
grammed with provided Oracle ADF Mobile
JavaScript and Java APIs as well as Apache
Cordova APIs.
Oracle ADF XML. The declarative option for
building applications in Oracle ADF Mobile
uses JavaServer Faceslike user interface
components that are bound to remote or
local data through the Oracle ADF binding
layer and data controls. Files of this type
use the file extension amx.
Remote URL content. This option enables
developers to integrate remote web
content, such as mobile pages built
with Apache Trinidad mobile browser
components, with Oracle ADF Mobile
applications.
All user interfaces are displayed in a web
engine context, the web view, which means
that views in Oracle ADF Mobile are not
compiled to native code but are executed as
HTML, JavaScript, and CSS. Developers use
the aforementioned user interface technolo-
gies in Oracle ADF Mobile featuresa feature
is a reusable module, made up of one or more
screens, that executes in its own web view. At
runtime, applications can dynamically switch
between features, and mobile application
users will not be able to tell if they are working
with a local HTML page, remote web content,
or Oracle ADF Mobile XML (AMX) pages.
Figure 1: Simplified Oracle ADF Mobile block diagram
ORACLE ADF MOBILE
Mobile Device (iOS, Android)
Device Native Container
Device
Services
HTML5 and JavaScript
Web View
Local HTML Remote
URL
Cordova
Java Virtual
Machine
Encrypted
SQLite DB
SOAP WS
REST WS
Camera
Calendar
Address
Book
GPS
Oracle ADF
XML and
Task Flow
L
I
N
D
Y

G
R
O
E
N
I
N
G
ND13_ADF.indd 38 9/26/13 2:45 PM
39 Java Developer
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
ORACLE ADF BY FRANK NIMPHIUS
Using the open source Apache Cordova
libraries, Oracle ADF AMX and local HTML
pages can access mobile device services, such
as the camera, phone, or address book, and
invoke Java executed in the Oracle ADF Mobile
Java Virtual Machine (JVM). An encrypted
instance of the SQLite database is provided
for each application for storing data locally for
offline use, which is particularly useful if con-
nectivity cannot be guaranteed. The SQLite
database is accessed through Java.
To query and update remote data in
mobile application models, Oracle ADF
Mobile uses standard SOAP and REST
services for CREATE, READ, UPDATE, and
DELETE (CRUD) operations.
SAMPLE APPLICATION OVERVIEW
The hands-on instructions in this article use
the declarative Oracle ADF development
approach in Oracle ADF Mobile and step you
through building a two-page application
that queries employee data from a provided
Oracle ADF Business Components Java API
for XML Web Services service. Oracle ADF
Business Components is a feature of Oracle
ADF that is not an integral part of the Oracle
ADF Mobile solution but, rather, provides a
convenient set of web services for the mobile
application to utilize.
Figure 2 shows the two mobile screens
you build by following the hands-on instruc-
tions in this article. The list of employees
is categorized by the initial letter of the
employees last name. Selecting (by tapping)
the employee with the last name Baer in
the image to the left navigates to the detail
screen for that employee.
Note that an earlier Oracle Magazine
article, Consume Early, Consume Often (in
the September/October 2012 issue, bit.ly/
11DkUTV), explains best practices and recom-
mendations for exposing Oracle ADF Business
Components to the service interface.
GETTING READY
Before following the steps in this article,
download and install the Studio edition of
Oracle JDeveloper 11g Release 2 (11.1.2.4).
It is available as a free download on Oracle
Technology Network at bit.ly/KDqHjA. You also
need access to an Oracle Database instance
with an unlocked sample HR schema.
INSTALLING THE MOBILE EXTENSION
Oracle ADF Mobile is not provided with
Oracle JDeveloper 11g Release 2 (11.1.2.4).
Oracle ADF Mobile must be downloaded
and installed separately as an extension.
To download and install Oracle ADF Mobile,
launch Oracle JDeveloper 11g Release 2,
select Help -> Check for Updates, and click
Next in the Check for Update dialog box.
Ensure that Search Update Centers is
selected and the Official Oracle Extensions
and Updates option is checked, and click
Next. Select the ADF Mobile extension, and
click Next.
Accept the license agreement, by clicking I
Agree, and click Next to download and install
the mobile extension. Click Finish after the
extension files have been downloaded, and
click Yes to restart Oracle JDeveloper.
Note: If you are accessing the internet
through a proxy server, you must provide the
proxy settings before opening the Check for
Updates center. Select Tools -> Preferences ->
Web Browser and Proxy to do this.
PREPARING ORACLE ADF BUSINESS
COMPONENTS FOR DEPLOYMENT
Download the o53adf-1958733.zip sample
application at bit.ly/1abVfsj, and unzip the
file into a directory that does not contain
blank spaces in the name.
Note: The o53adf-1958733.zip file also
contains the completed sample application.
Refer to the readme.txt file contained in the
download for the configurations required to
run the completed mobile application. Also
note that the completed application contains
an additional chart component for displaying
the employee salary. (The instructions for
building the chart are not part of this article.)
The sample application is an Oracle ADF
Business Components model configured for
deployment as a JAX-WS SOAP-based web
service that the Oracle ADF Mobile applica-
tion can connect to and consume. The only
change needed in the sample application is to
the database connection used by the Oracle
ADF Business Components Model project to
point to your HR database schema. To make
the change, follow these instructions:
1. In Oracle JDeveloper, select File -> Open
and navigate to the directory containing
the unpacked sample application.
2. Open the Oramag091013/adfBcHrSer-
vice folder, and select the adfBcHrService
.jws file. Click Open to load the workspace.
3. Select View -> Database -> Database
Navigator, and expand the
adfBcHrService node to display hrconn
in the Database Navigator node.
4. Right-click hrconn, and select Properties Figure 2: The Browse Employees and Show Detail screens
ND13_ADF.indd 39 9/26/13 2:46 PM
40 ORACLE ADF
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
from the menu. Edit the database con-
nection information to work with your
setup. Test the changes, and click OK.
Next, start the Oracle WebLogic Server
instance integrated with Oracle JDeveloper.
To start the Oracle WebLogic Server, select
Run -> Start Server Instance.
If this is the first time youve run the
integrated Oracle WebLogic Server, a Create
Default Domain dialog box will open. Create
a password for the default Oracle WebLogic
Server domain.
Note: To ensure that the integrated Oracle
WebLogic Server listens for the localhost and
the IP address of your computer, dont select
an address from Listen Address.
Click OK to save the changes and to create
and configure the default domain for Oracle
ADF. The Oracle WebLogic Server will create
a default domain and then start the server.
Wait for the IntegratedWebLogicServer
started. message on the Running:
IntegratedWebLogicServer tab before pro-
ceeding to the steps in the next section.
DEPLOYING THE MODEL
The Oracle ADF Business Components model
provides a deployment profile you can use to
deploy the Oracle ADF Business Components
service to the Oracle WebLogic Server
instance integrated in Oracle JDeveloper
or to a standalone Oracle WebLogic Server
instance. This article assumes that deploy-
ment will be to the integrated server
instance. To deploy the Oracle ADF Business
Components model:
5. If it is not already open, open the log
window, by choosing View -> Log.
6. Choose Application -> Deploy ->
ADFBC_ADFBC_HR_SERVICE to initiate
the deployment.
7. Select Deploy to Application Server, and
click Next.
8. Ensure that the IntegratedWebLogicServer
option is selected and the Override
modules of the same name box is
checked, and then click Next.
9. Ensure that Deploy to all instances in
the domain and Deploy as standalone
Application are selected, click Next, and
then click Finish.
10. Check the deployment process by
selecting the Deployment tab in the log
window. After successful deployment,
open a browser window and type the fol-
lowing URL into the URL address field:
http://<your _IP_address>:7101/
adfservice/HrAppModuleService?wsdl.
This will display the contents of the Web
Services Description Language (WSDL)
file in your browser.
11. Copy the URL to the clipboardyou will
need it later when designing the Oracle
ADF Mobile access to the service.
BUILDING THE WORKSPACE
The following instructions guide you through
building the basic skeleton of the Oracle ADF
Mobile sample application.
12. In Oracle JDeveloper, choose File -> New
and then General -> Applications.
13. Select the Mobile Application (ADF) entry
in the Items list, and click OK. (Note that
if you dont see the Mobile Application
(Oracle ADF) template, that is most likely
because you didnt complete installation
of the ADF Mobile extension.)
14. On the Create Mobile Application
(ADF) screen, provide the following
information:
15. Click Next.
16. Click Finish to accept the default naming
and package structures for the two proj-
ects that Oracle JDeveloper creates for
the Oracle ADF Mobile workspace.
17. When youre finished, Oracle JDeveloper
will open the adfmf-features.xml file in
the editor. If you dont see this editor,
navigate to the ViewController ->
Application Sources -> META-INF folder
in the Application Navigator and double-
click this file.
18. On the adfmf-features.xml tab, click the
green plus (+) icon next to the Features
label to create a new Oracle ADF Mobile
feature.
19. Enter BrowseEmployees in the Feature
Name field. Keep all the other default
settings, and click OK.
20. Still in the adfmf-features.xml editor,
select the Content tab and click the green
plus (+) icon next to the File field.
21. Select Task Flow from the list, and enter
EmployeeBtf.xml in the File Name
field. Click OK. Oracle JDeveloper creates
a bounded task flow and opens it on the
EmployeeBtf.xml tab.
22. If it is not already open, open the Oracle
JDeveloper Component Palette, by
choosing View -> Component Palette.
23. In the Component Palette, select the
View activity and drag and drop it onto
the task flow diagram. Name the activity
BrowseEmployees.
24. Drag and drop a second View activity
from the Component Palette to
the task flow diagram, and name it
ShowEmpDetails.
25. Select the Control Flow Case element
in the Component Palette, and
draw a connection line between the
BrowseEmployees and ShowEmpDetails
views. Name this connection
showDetails.
26. Select the Control Flow Case element in
the Component Palette, and draw a con-
nection line between the ShowEmpDetails
and BrowseEmployees views. Name this
connection browseEmp.
Note: It is not necessary to create
an explicit connection from
ShowEmpDetails to BrowseEmployees,
because an implicit connection with the
name _back is automatically created.
However, if you want to add animation to
the navigation transition, using explicit
navigation is required.
27. Select the showDetails control flow
case, and open the Property Inspector by
choosing View -> Property Inspector.
28. In the Property Inspector, change the
Transition property in the Behavior cat-
egory to flipRight to add some animation
at runtime.
29. Repeat Steps 27 and 28 for the browseEmp
control flow case. This time choose flipLeft
as the Transition property value.
What you did: In this section, you created
a new Oracle ADF Mobile application
workspace and added a feature for Oracle
ADFrelated content. Further, you created
Application
Name
OraMagSepOct13
Directory <Select a folder that has
no blank spaces in its
pathname.>
Application
Package
Prefix
oramag.sample.sepoct.
thirteen
ND13_ADF.indd 40 9/26/13 2:46 PM
41 ORACLE ADF
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
a bounded task flow in which you designed
the navigation flow between the two screens
used in the sample mobile application.
Next you will create a web service data
control connection to the Oracle ADF
Business Components service for querying
data from the Oracle HR schema.
CREATING THE DATA CONTROL
30. In the Application Navigator, select the
ViewController project node and choose
File -> New.
31. Under Categories, select the Business
Tier -> Web Services node and, under
Items, select Web Service Data Control
(SOAP / REST).
32. Click OK to start the Create Web Service
Data Control wizard.
33. Enter OraMagHrAdfBc in the Name field
for the Web Service Data Control, and
ensure that SOAP is selected.
34. Paste the WSDL URL from earlier into
the URL field, and ensure that the
Copy WSDL Locally option is selected.
The deployed Oracle ADF Business
Components web service is accessible
from the following URL:
http://<your _IP_address>:7101/
adfservice/HrAppModuleService?wsdl.
Note: If you test the mobile applica-
tion from a native device instead of a
simulator, you need to use the IP address
or the domain name of the integrated
Oracle WebLogic Server to ensure that
the server is accessible from the mobile
device over the wireless network.
35. Click Next.
36. Select all web service methods, by clicking
the shuttle button with the two blue
right-pointing arrows, and click Finish to
accept the remaining default settings.
37. Ensure that the ViewController project is
selected, and expand the Data Controls
accordion in the Application Navigator.
Click the blue arrows (refresh) located
on top of the Data Controls panel to
refresh the view. The OraMagHrAdfBc
data control entry should appear,
together with the Oracle ADF Mobile
DeviceFeatures and ApplicationFeatures
data controls.
Note: This article does not dive into all of
the available data controls for Oracle ADF
Mobile. NEXT STEPS includes a link
that points to a follow-up tutorial.
38. Save your work.
What you did: In this section, you
created a data control connection to the
remote web service for later declarative
UI-to-data binding. Next you create the
BrowseEmployees view.
CREATING THE BROWSEEMPLOYEES VIEW
39. On the EmployeeBtf.xml tab, double-
click the BrowseEmployees activity in the
bounded task flow diagram.
40. In the Create ADF Mobile AMX Page
dialog box, uncheck the Primary Action
and Secondary Action checkboxes and
keep the other default settings. Click OK.
41. On the BrowseEmployees.amx tab,
change the value property of the
amx:outputText component from
Header to Browse Employees to change
the display title of the mobile screen.
42. Expand the Data Controls accordion
panel in the Application Navigator.
43. Expand the OraMagHrAdfBc ->
findAllEmployees(Object, Object) ->
Return node.
44. If it is not already open, open the
Structure window by selecting View ->
Structure.
45. Click in the BrowseEmployees.amx page
to ensure that its structure is shown in
the Structure window.
46. On the Data Controls panel, drag
the result collection element,
located in the OraMagHrAdfBc ->
findAllEmployees(Object, Object) ->
Return path, onto the Panel Page node in
the Structure window and drop it. Then
choose ADF Mobile List View from the list.
47. Keep the default selections in the
ListView Gallery, and click OK.
48. Keep the default selections in the Edit
Action Binding dialog box, and click OK.
49. In the Edit List View dialog box, under
List Item Content, select LastName as the
value in the Value Binding field.
50. For Divider Attribute, select LastName.
51. For Divider Mode, select First Letter, and
then click OK.
What you did: You created an Oracle ADF
Mobile AMX page to list the employee data
by employee last name. By dragging the
findAllEmployees result node, you started
creating a list view that shows employees
by their last name with the first letter of the
last name as a group-by condition. Next,
you will implement row selection support
for the list view.
52. Click the Bindings tab at the bottom of
the BrowseEmployees.amx editor.
53. To pass the selected employee ID to
the detail page, you need to extend the
Oracle ADF binding used by the list view
to include the EmployeeId attribute. To
do this, first select the result entry in the
Bindings section and click the pencil icon.
54. In the Edit Tree Binding dialog box, in
the Available Attributes list, with the ctrl
key pressed, select the DepartmentId
and EmployeeId attributes and click
the button with the single right-arrow
icon to shuttle the attributes to the
Display Attributes list. This makes the
DepartmentId and EmployeeId values
available on the page where they can be
referenced from expression language (EL).
55. Click OK.
56. Switch back to the source code view, by
clicking the Source tab at the bottom of
the BrowseEmployees.amx editor.
57. In the Structure window, expand the List
View item and select the List Item entry.
Then, if it is not already open, open the
Property Inspector, by choosing View ->
Property Inspector.
58. In the Property Inspector, for the Action
property in the Behavior section, select
showDetails.
59. Save your work.
60. If it is not already open, open the
Component Palette, by choosing View ->
Component Palette.
61. Expand the Operations category in the
Component Palette, and drag the Set
Property Listener component from the
palette and drop it on top of the List Item
element in the Structure window.
62. With the Set Property Listener compo-
nent selected in the Structure window,
open the Property Inspector and provide
the following values:
From #{row.EmployeeId}
To #{row.EmployeeId}
Type action
ND13_ADF.indd 41 9/26/13 2:47 PM
42 ORACLE ADF
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
63. Repeat Steps 61 and 62 for the following
values:
What you did: You implemented behavior
in the list view selection. The first behavior
triggers navigation following the control
flow to the detail page. The second memo-
rizes the employee rows EmployeeId and
DepartmentId values for later use when a
user selects an employee.
CREATING THE SHOWEMPDETAIL VIEW
You have one more screen to build before you
can run the application on a mobile device
or a device simulator. The employee detail
page shows information about the employee
selected in the BrowseEmployees view.
64. Select the EmployeeBtf.xml tab to switch
to the bounded task flow diagram,
and double-click the ShowEmpDetails
activity to create a new Oracle ADF
Mobile AMX page.
65. In the Create ADF Mobile AMX Page
dialog box, ensure that Secondary Action
is checked and click OK.
66. On the ShowEmpDetails.amx tab, change
the Value property of the amx:outputText
component from Header to Show
Detail to change the display title of the
mobile screen.
67. Expand the View -> Panel Page -> Facet
secondary node in the Structure window,
and select Button.
68. Open the Property Inspector, and set the
value for the Text property to Employees
and the value of the Action property
in the Behavior section to browseEmp.
(Note the _back value that is available for
the Action property. Using this implicit
navigation also brings you back to the
BrowseEmployees view, but it doesnt
allow you to define an animation.)
69. In the Component Palette, expand the
Text and Selection category and drag and
drop the Output Text component onto the
Panel Page node in the Structure window.
70. Use the Property Inspector to set the
Output Text components Value property
to Employee Information.
71. Then, back in the Component Palette,
expand the Layout category and drag and
drop the Panel Form Layout component
onto the Panel Page node in the Structure
window.
72. Repeat Steps 69 through 71, and set the
Output Text components Value property
to Department Information.
73. On the Data Controls panel (in
the Application Navigator), drag
the result collection element
located in the OraMagHrAdfBc
getEmployeeByKey(Integer) -> Return
path onto the first Panel Form Layout
component in the Structure window and
drop it there. Choose ADF Mobile Iterator
from the list to create a read-only form.
74. In the Edit Action Binding dialog box,
set the Value property of the empId
parameter to #{pageFlowScope
.EmployeeId}.
75. Click OK and then OK again in the fol-
lowing dialog box to accept all attributes
to display in the form.
76. Next, on the Data Controls panel,
drag the result collection element
located in the OraMagHrAdfBc ->
getDepartmentByKey(Integer) -> Return
path onto the second Panel Form Layout
component in the Structure window and
drop it there. Again, choose ADF Mobile
Iterator from the list to create a read-
only form.
77. In the Edit Action Binding dialog box, set
the Value property of the departmentId
parameter to #{pageFlowScope
.DepartmentId}.
78. Click OK and then OK again in the fol-
lowing dialog box to accept all attributes
to display in the form.
79. To ensure that the employee and depart-
ment information is refreshed according
to the EmployeeId that is passed from
the browse employee page, change the
refresh behavior of the Oracle ADF itera-
tors. To do this, first click the Binding tab
at the bottom of the ShowEmpDetails
.amx editor.
80. Select getEmployeeByKeyIterator in the
Executables section, and use the Property
Inspector to change the value of the
Refresh property (under Advanced) from
<default>(deferred) to always.
Finally, select the getDepartmentBy
KeyIterator in the Executables section
and use the Property Inspector to change
the value of the Refresh property (under
Advanced) from <default>(deferred)
to always.
The Oracle-hosted online version of this
article at bit.ly/1blvNB0 includes instruc-
tions for deploying the application to your
mobile device.
CONCLUSION
Abstracting the development of mobile appli-
cations from the target runtime environment
is a sound and future-safe strategy. Oracle
ADF Mobile makes it easy for Java Platform,
Enterprise Edition (Java EE) and Oracle ADF
developers to build cross-platform mobile
applications that extend new and existing
enterprise web and SOA applications to a
mobile channel. Oracle ADF Mobile provides a
straightforward strategy enabling Oracle cus-
tomers to surf the next big wave in enterprise
application developmentmobilewithout
getting washed away.
From #{row.DepartmentId}
To #{pageFlowScope.
DepartmentId}
Type action
READ online-only article content
bit.ly/16KT7Xi
READ more about Oracle ADF
Consume Early, Consume Often
bit.ly/158G1Qr
LEARN more about Oracle ADF Mobile
Setting Up Oracle ADF Mobile
bit.ly/13H1wv1
Building Mobile Applications with Oracle ADF
Mobile
bit.ly/170EnBK
Oracle ADF Mobile Samples
bit.ly/12zvlbz
the official Oracle ADF Mobile blog
blogs.oracle.com/mobile
DOWNLOAD
Oracle JDeveloper and Oracle ADF
bit.ly/KDqHjA
the sample application for this article
bit.ly/1abVfsj
NEXT STEPS
Frank Nimphius is a senior principal product
manager for Oracle JDeveloper and Oracle ADF.
He is also a coauthor of Oracle Fusion Developer
Guide: Building Rich Internet Applications with
Oracle ADF Business Components and Oracle
ADF Faces (McGraw-Hill).
ND13_ADF.indd 42 9/26/13 2:47 PM
Middleware Developer 43 BUSINESS ANALYTICS BY MARK RITTMAN
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
Integrate and Analyze
Combine structured and unstructured data
for analysis and new insights.
O
racle Endeca Information Discovery
applications enable organizations to
create rich, interactive data discovery appli-
cations that consume data from all types of
datasources, from the more traditional struc-
tured data sets found in Oracle Database and
Oracle E-Business Suite to the unstructured
data of documents and social media feeds.
Oracle Endeca Information Discovery
Release 3.0 extends this capability by inte-
grating with Oracle Business Intelligence
Enterprise Edition 11g, providing the ability to
build data discovery applications around the
facts, dimensions, hierarchies, and integrated
data sets of the enterprise semantic model.
In this article, I take a look at this new
integration by creating an Oracle Endeca
Information Discovery Studio application that
uses the sample application (SampleApp)
for Oracle Business Intelligence Enterprise
Edition as its datasource; uses Oracle Endeca
Information Discovery Integrator to load data
from the Flight Delays subject area provided
by the SampleApp; and uses the SampleApp
subject area table metadata to create an
Oracle Endeca Server data domain. I then use
Oracle Endeca Information Discovery Studio
to create an initial data discovery web appli-
cation, which you can then extend later with
additional, unstructured datasources and
data visualization components.
PREREQUISITES FOR THE SAMPLE
If you want to create this articles sample
application yourself, you will need to down-
load the following products from the Oracle
Software Delivery Cloud website (edelivery
.oracle.com), using either your full license or
a trial license. Product versions are available
for Microsoft Windows x64 and Linux x86-64.
Oracle Endeca Server (7.5.1.1), with Oracle
WebLogic Server 10.3.6, a separate download
Oracle Endeca Information Discovery
Integrator (3.0)
Oracle Endeca Information Discovery
Studio (3.0)
The SampleApp for Oracle Business
Intelligence Enterprise Edition 11.1.1.6.2 BP1
(V207), which I will use as the datasource,
can be downloadedpreinstalled and pre-
configuredas an Oracle VM VirtualBox
image, from the Oracle Technology Network
website at bit.ly/A9FnZd.
This SampleApp (V207) Oracle VM
VirtualBox image comes with several
demonstration subject areas, including
X Airline Delay, which I will use for this
example. Using Oracle Endeca Information
Discovery Integrator 3.0, I will connect to
the business intelligence server component
and then create an Oracle Endeca Server
data domain, using a selection of the subject
areas tables as a datasource. Then, once the
data domain is loaded and ready for use, I
will use Oracle Endeca Information Discovery
Studio 3.0 to create a web application for
exploring the data set.
In addition to the SampleApp Oracle VM
VirtualBox image, you will need a Microsoft
Windowsbased environment in order to
use the administration tool (which can also
be the environment you use to run Oracle
Endeca Information Discovery 3.0). For
details on how to download and configure
the administration tool to work in a separate
Linux-based business intelligence server
environment, see 4.5 Admintool access to
SampleApp RPD in the SampleApp V207 -
Virtual Machine Image Deployment Guide
document (accessible at bit.ly/11K1tYA).
ORACLE ENDECA INFORMATION DISCOVERY APPLICATIONS AND ORACLE BUSINESS INTELLIGENCE ENTERPRISE EDITION 11g
Figure 1: Renaming the duplicate business models tables to remove numeric table name prefixes
ND13_BA.indd 43 9/27/13 4:42 PM
44 BUSINESS ANALYTICS
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
REQUIRED AMENDMENTS
To create an Oracle Endeca Server data
domain that gets its data from an Oracle
Business Intelligence repository, a wizard
within Oracle Endeca Information Discovery
Integrator connects to the repository to
enable you to select a particular subject area
and set of tables to use as the data domain
datasource, and then the wizard automati-
cally creates data domain attributes based
on the names of the selected tables and
columns. However, business model table
and column names within the SampleApp
repository are prefixed with numbers to aid in
referencing them within sample dashboards,
so you will need to create a version of these
tables without the number prefixesthe
Oracle Endeca Server data domain attribute
names cannot start with a number.
To create a version of the X Airline
Delay subject area and underlying busi-
ness model that complies with this naming
restriction but does not affect any other
SampleApp reports that use the original
object names, follow these steps:
1. In the Microsoft Windowsbased envi-
ronment into which you have previ-
ously downloaded and installed Oracle
Business Intelligences administration
tool, select Start -> Oracle Business
Intelligence Enterprise Edition Client ->
Administration. When the administration
tool opens, select File -> Open Online,
select the connection to SampleApp, and
enter the login credentials for the reposi-
tory. For example:
2. With the administration tool open and
the SampleApp repositorys three layers
of repository metadata ready for editing,
navigate to the Presentation layer on
the far left and, within it, right-click the
X Airlines Delay subject area and select
Duplicate with Business Model from the
contextual menu. In the Copy Business
Model and Subject Area dialog box, click
X0 Airlines / X Airlines Delay to select
it, and then type in the following values to
provide names for the duplicate subject
area and the underlying business model:
After youve entered the new name,
click OK to duplicate the repository meta-
data and close the dialog box.
3. Now, still using the administration
tool, but this time working within the
Business Model and Mapping metadata
layer window, locate the OEID Source
BM business model you created in the
previous step and rename all the objects
to remove the numbers at the start of
the object names. Start with the 00
Time logical dimension, right-click i5,
select Rename, and then remove the
numbers from the start of the names,
so that, for example, 00 Time becomes
Time, 11 Origin becomes Origin, and so
on, until none of the table names start
with numbers. When you have finished
renaming these objects, the business
model should look like Figure 1.
Finally, to save this updated repository
and make it available for the next stage in
this process, select File -> Check In Changes,
and for the Do you wish to check global
consistency? question, choose No to avoid
checking in all the other objects in the
SampleApp repository that are not relevant
to this example. Finally, select File -> Save
and then File -> Close to save the updated
repository back to the server and close the
administration tools connection to it.
CREATING THE DATA DOMAIN
Now that you have prepared the Oracle
Business Intelligence repository for use
with Oracle Endeca Information Discovery
Integrator, you can connect to the Oracle
Business Intelligence Enterprise Edition
repository and create the first cut of your
Oracle Endeca Server data domain. To do
this, follow these steps, again based on a
Microsoft Windows x86-64 development
environment.
1. In Windows, select Start ->
All Programs -> Oracle Endeca
Information Discovery 3.0.0 -> Integrator.
2. When the Oracle Endeca Information
Discovery Integrator application opens,
locate the Navigator panel in the top left
corner of the application window and
select New -> Project. When the New
Project dialog box appears, locate the
Load Data from OBI Server option within
the Endeca Information Discovery folder,
click it, and click Next to proceed.
Repository
Password :
Admin123
User: weblogic
Password: Admin123
ODBC DSN: <<name you gave the Open Database
Connectivity (ODBC) connection to the
SampleApp server when installing the
administration tool>>
New business
model name:
OEID Source BM Airline
Delay
New subject
area name:
OEID Source Airline Delay
Figure 2: Selecting subject area tables for import into the Oracle Endeca Server data domain
ND13_BA.indd 44 9/27/13 4:43 PM
45 BUSINESS ANALYTICS
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
3. The Load Data from OBI Server wizard
appears. On the first page of the wizard,
select Create a new project and type in a
name for the projectsuch as Flight
Delays from OBIEEand click Next
again to continue.
4. Next, when prompted, enter the connec-
tion details for your instance of Oracle
Endeca Server and provide a name for the
new data domain. For example:
Click Next to continue.
5. On the next page, enter the User,
Password, OBI Server host, and OBI Server
port values to connect to the SampleApp
repository and server, replacing the OBI
Server host value with the hostname or
IP address of your SampleApp Oracle VM
VirtualBox virtual machine.
OBI Server
host:
obieesampleapp.mycompany.com
<<replace with your Oracle Business
Intelligence Enterprise Edition server
host name>>
OBI Server
port:
9703
Once youve entered these details,
click Connect to OBI Server to tell Oracle
Endeca Information Discovery Integrator
to retrieve the list of subject areas pro-
vided by the SampleApp repository, and
click Next to continue.
6. On the next page of the wizard, select the
OEID Source Airline Delay subject area
you created in the previous set of steps,
and then select the following tables
to use as the datasource for your data
domain, as shown in Figure 2.
Arrival Delay
Carrier
Date
Destination
Flight Facts
Origin
Route
Schedule
Once youve selected these tables,
click Next to continue.
7. The next page in the wizard displays the
list of Oracle Endeca Server data domain
attributes that will be created to contain
the imported data. On this wizard page,
you can fine-tune the configuration of
these attributes.
In the Search Interface Name column
on this wizard page, type in the fol-
lowing values for the attribute keys
listed below to create two initial search
interfaces, one for all attributes relating
to a flights origin and another for the
flights destination.
Endeca
Server host:
oeid30.mycompany.com
<<replace with your own Oracle Endeca
Server host name>>
Endeca
Server port:
7001
Data domain
name:
flight_delays <<suggested
value>>
User: weblogic
Password: Admin123
Attribute Key Search Interface Name
Orig_Airport_Map_Orig_US_
State_Name
Origin
Orig_Airport_Orig_Region_Name Origin
Orig_Airport_Orig_Division_Name Origin
Orig_Airport_Orig_City_Name Origin
Orig_Airport_Orig_Airport Origin
Dest_Airport_Map_Orig_US_
State_Name
Destination
Dest _Airport_Orig_Region_Name Destination
Dest_Airport_Orig_Division_Name Destination
Dest _Airport_Orig_City_Name Destination
Dest _Airport_Orig_Airport Destination
Figure 3: The initial Oracle Endeca Information Discovery Studio application
ND13_BA.indd 45 9/27/13 4:43 PM
46 BUSINESS ANALYTICS
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
After entering the key values, click
Edit Finished and then Finish to close the
wizard and return to the Oracle Endeca
Information Discovery Integrator main
window. If you look in the Navigator
panel now and locate the project you
created, you will see that Oracle Endeca
Information Discovery Integrator has
created a complete project that reads
data in from Oracle Business Intelligence
Enterprise Edition and uses it to create an
Oracle Endeca Server data domain.
8. The flight delays data set in SampleApp
contains details of more than 6 million
flights, so to keep the resultant data
domain manageably smallat least for
this initial loadyou can add a filter to
the extraction SQL query generated by
Oracle Endeca Information Discovery
Integrator so that only flights from Q1
2010 are extracted and loaded. To add
this filter, locate the data-in folder within
the Navigator view, open it, right-click
the QueryStatement.sql object within it,
and then select Open With -> Text Editor.
Add the following WHERE clause to the
automatically generated SQL statement to
restrict the extraction to flights in Q1 2010:
where "OEID Source BM - Airline
Delay"."Time"."Dep Qtr" = '2010 Q1'
Then use File -> Save from the Oracle
Endeca Information Discovery Integrator
menu to save the changes youve made
to this file.
9. Finally, load the SampleApp data into
Oracle Endeca Server. Within the Navigator
panel, locate and open the graph folder,
and then double-click the Baseline.grf
graph within the set of graphs to open it in
the Oracle Endeca Information Discovery
Integrator main window. Click anywhere
within the large gray box in the graph to
select it, and then select Run -> Run from
the Integrator menu to start the graph exe-
cution and load data from Oracle Business
Intelligence Enterprise Edition into your
data domain.
VIEWING FLIGHT DELAY DATA
To take an initial look at whats in the Oracle
Endeca Server data domain youve just
created with Oracle Endeca Information
Discovery Integrator, you can quickly create
an Oracle Endeca Information Discovery
Studio application that enables you to
explore the data set and that you can extend
afterward to try out more of Oracle Endeca
Information Discovery Studios features.
To create this first cut Oracle Endeca
Information Discovery Studio application,
follow this final set of steps:
1. In your web browser, navigate to your
Oracle Endeca Information Discovery
Studio websitehttp://localhost:7002,
for exampleand enter the login creden-
tialsadmin@oracle.com/welcome1,
for examplefor an Oracle Endeca
Information Discovery Studio adminis-
trative user.
2. When the Discovery Applications web
page appears, navigate to the menu at
the top right of the page, click the down
arrow, and select Control Panel. Then,
when the Control Panel page appears,
click Information Discovery -> Data
Source to define a datasource connection
Oracle Endeca Information Discovery
Studio will use to connect to the data
domain you created in the previous steps.
3. On the Data Source page that appears,
click New Data Source, and for Data
Source Definition, enter Flight_Delays
for Data Source ID and enter the fol-
lowing datasource JSON file definition,
replacing the server parameter value with
the name of the server that hosts your
Oracle Endeca Server instance:
{
"dataDomainName": "flight_delays",
"name": "Flight_Delays",
"port": "7001",
"server": " oeid30.mycompany.com "
}
Click Validate to test the connection
and then Save when you are done.
When you return to the main applica-
tion, click Back to Home in the top
right corner to return to the Discovery
Applications page.
4. Staying on this page, click New Application
to create your application, and enter the
following details when prompted:
Now click Create Application and then Go
to Application to view the application in your
web browser, as shown in Figure 3.
You can use this data discovery applica-
tion example to navigate and search through
the attributes loaded from Oracle Business
Intelligence Enterprise Edition into Oracle
Endeca Server and see how Oracle Endeca
Servers faceted search facility enables you
to search and refine your target data set.
CONCLUSION
Oracle Endeca Information Discovery appli-
cations extend the capabilities of Oracles
business intelligence platform to encompass
unstructured and semistructured data-
sources, enabling you to use the unique
capabilities of Oracle Endeca Server to search,
analyze, and aggregate data from any source.
With the ability to now use data from
the Oracle Business Intelligence repository
alongside database, file, and other data-
sources, you can quickly create web-based
data discovery applications that build on the
work youve already done to model the busi-
ness data within your organization, ensuring
a single version of the truth while dramati-
cally reducing the time it takes to bring the
core structured data together.
Application
Name :
Flight Delays Explorer
(Oracle Magazine)
Data Source: Flight_Delays
Mark Rittman is an
Oracle ACE Director,
cofounder of Rittman
Mead, and author of the
Oracle Press book Oracle
Business Intelligence 11g
Developers Guide and writes for the Rittman
Mead blog at rittmanmead.com/blog.
READ more about Oracle Endeca Information
Discovery applications
bit.ly/1fX6swU
DOWNLOAD
Oracle Endeca Information Discovery
applications
edelivery.oracle.com
SampleApp Oracle VM VirtualBox image
bit.ly/11K1tYA
NEXT STEPS
ND13_BA.indd 46 9/27/13 4:43 PM
DBA 47 DATABASE STORAGE MANAGEMENT BY ARUP NANDA
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
Automatic Data Optimization
Learn how to enable information lifecycle management to
automatically move data to lower-cost storage tiers and
compress it.
J
ohn, the principal database architect at
Acme Bank, sips his coffee while listening
to his visitors woes. The storage demand for
databases at Acme is rising rapidly, due to
the seemingly endless stream of data points.
Because datahowever oldcan be good
for marketing analytics, no one wants to
purge old data, though. Although Acme does
have an information lifecycle management
(ILM) policy to put older and infrequently
accessed data on lower-cost storage, the
implementation has not been very effective,
and unclear identification of infrequently
accessed data is the primary reason.
Everyone agrees on the time period during
which the lack of access defines infrequently
accessed data but not the exact mechanics
of identifying it. The standard approach for
identifying the data is to put a trigger on
the tables to flag data that hasnt changed,
but Acmes DBAs eschew such an approach,
because it negatively affects performance.
Additionally, everyone agrees that an auto-
mated system to move old, unchanged data
to lower-cost storage would be ideal. Is
there, all want to know, a better approach to
achieving Acmes ILM objectives?
There is, responds John: using the
Automatic Data Optimization feature of
Oracle Database 12c.
SETUP
Acme deals with several currencies,
including the British pound, the euro,
and the Canadian dollar, in addition to its
primary currency, the US dollar. Its vital to
record the exact exchange rate of the cur-
rencies. The rate can change every day, so
the bank stores the rates along with specific
dates. Because financial transactions can be
made effective as of a different date, past
records of exchange rates must be stored
and available. The following is what the
EXCHANGE_RATE table looks like:
SQL> desc exchange_rate
NAME TYPE

FROM_CURR VARCHAR2(3)
TO_CURR VARCHAR2(3)
START_DATE DATE
END_DATE DATE
RATE NUMBER
The FROM_CURR and TO_CURR columns
show the codes of the source and target
currencies, with the RATE column showing
the exchange rate. Because the rate changes,
the START_DATE and END_DATE columns
show the dates during which that rate is
effective. The table is partitioned by range on
END_DATE, with one partition per month.
The partitions are named in the format
YyyMmm, where yy is the two-digit year and
mm is the two-digit month. For example,
the partition y13m12 holds all data for
December 2013. The table and its data can
be created by the SQL script in the Online
Setup Listing (available in the Oracle-hosted
online version of this article). All the parti-
tions of the table exist in the LATEST_TS
tablespace. There is another tablespace
MIDTERM_TSbuilt on lower-cost storage.
Jill, the lead developer, has two objectives:
1. When the free space in the LATEST_TS
tablespace drops to a certain threshold,
15 percent of the total space allo-
cated, the less-used partitions of the
EXCHANGE_RATE table should be re-
located to the MIDTERM_TS tablespace.
Its important, Jill cautions, that this re-
location of partitions should be based on
access, not on time. If an older partition is
being accessed quite frequently, it should
be left in LATEST_TS. Similarly, if a newer
partition is accessed less frequently, it
should be moved to MIDTERM_TS.
2. The partitions that do not see their data
modified should be compressed to save
space. The choice of segments for com-
pression, Jill further cautions, should be
independent of the relocation to a dif-
ferent storage tier. For example, a parti-
tion can exist in the LATEST_TS tablespace
but be compressed because the data there
doesnt get modified. Similarly, a partition
may be moved to MIDTERM_TS because
it is accessed less frequently, but because
the access is mostly write activity, it may
not be compressed.
Acme can satisfy both requirements by
using Automatic Data Optimization, assures
ORACLE DATABASE 12c
select t.tablespace_name, 100*sum(f.bytes)/sum(t.bytes) free_pct
from (select tablespace_name, sum(bytes) bytes
from dba_data_files group by tablespace_name) t,
(select tablespace_name, sum(bytes) bytes
from dba_free_Space group by tablespace_name) f
where f.tablespace_name = t.tablespace_name
group by t.tablespace_name;
TABLESPACE FREE_PCT

LATEST_TS 30.00
MIDTERM_TS 99.33
Code Listing 1: Checking for free space
ND13_ado.indd 47 9/27/13 10:24 AM
48 DATABASE STORAGE MANAGEMENT
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
John. This feature, he cautions, is not avail-
able in a pluggable database in a multitenant
environment, however, and its also not
available in materialized views and tables
with object types.
HEAT MAP
The first step in using Automatic Data
Optimization, John explains, is to enable a
new feature in Oracle Database 12c called
Heat Map. Simply speaking, it shows the
popularity or hotness of a segment such
as a table or a partition, and it is used by
Automatic Data Optimization to decide
which segments are candidates for action. If
the segment is accessed frequently, its con-
sidered hot and therefore may not be a can-
didate for some actions, such as relocation to
lower-cost and less-efficient storage.
John enables the Heat Map feature by
executing the following command as a
DBA user:
alter system set heat_map = on
scope=both;
It is a one-time activity. Using scope=both,
John ensures that the parameter is set in
SPFILE and therefore will be in effect when
the database is restarted.
To check the heat map of a specific
segment, he looks into the DBA_HEAT_MAP_
SEGMENT view. The time stamps of the last
activity on the tableUPDATE, SELECT, full
table scan, and reference constraint lookup
are recorded in this view. He describes the
columns of the view for his listeners:
ENABLING AUTOMATIC DATA
OPTIMIZATION
Before starting the Automatic Data
Optimization demonstration, John checks
a few things, including the presence of
segments in the tablespaces, using the fol-
lowing SQL statement:
select partition_name,
tablespace_name
from user_segments
where segment_name =
'EXCHANGE_RATE';
PARTITION TABLESPACE

Y13M07 LATEST_TS
output truncated
Y12M07 LATEST_TS
John directs everyones attention to the
output to confirm that all the partitions are
in the LATEST_TS tablespace as expected.
Then he checks the allocated and free space
in the tablespace by running the script
shown in Listing 1.
The output in Listing 1 shows that only
30 percent of the LATEST_TS tablespace
is free space, whereas the MIDTERM_TS
tablespacewhere no partitions are located
is mostly free, with 99.33 percent free space.
Next, John enables Automatic Data
Optimization for the EXCHANGE_RATE
OWNER The owner of the segment
OBJECT_NAME The name of the segment
SUBOBJECT_NAME The partition name, if
applicable
SEGMENT_WRITE_TIME The time stamp when the
segment was last updated
SEGMENT_READ_TIME The time stamp when the
segment was last selected
FULL_SCAN The time stamp when the
segment was subjected to a full
table scan
LOOKUP_SCAN The time stamp when the
segment was last used for a
reference constraint lookup
select
subobject_name Part Name,
to_char(segment_write_time,'mm/dd/yy hh24:mi:ss') write_time,
to_char(segment_read_time,'mm/dd/yy hh24:mi:ss') read_time,
to_char(full_scan,'mm/dd/yy hh24:mi:ss') fts_time
from dba_heat_map_segment
where owner = 'FOREX'
and object_name = 'EXCHANGE_RATE'
order by full_scan desc;
Part Name WRITE_TIME READ_TIME FTS_TIME

Y13M03 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y12M09 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M04 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y12M11 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M10 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y12M08 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M09 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M02 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M05 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M01 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y12M10 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M11 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 19:48:44
Y13M07 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 00:57:12
Y12M07 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 00:57:12
Y12M12 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 00:57:12
Y13M06 07/14/13 12:23:01 07/14/13 12:24:34 07/15/13 00:57:12
Code Listing 3: Checking the last access time for a table
alter table exchange_rate add partition y13m10 values less than (to_
date('11/01/2013','mm/dd/yyyy')) tablespace latest_ts;
alter table exchange_rate add partition y13m11 values less than (to_
date('12/01/2013','mm/dd/yyyy')) tablespace latest_ts;
alter table exchange_rate add partition y13m12 values less than (to_
date('01/01/2014','mm/dd/yyyy')) tablespace latest_ts;
insert into exchange_rate values ('USD', 'GBP', add_months(sysdate,2),
add_months(sysdate,2),1);
insert into exchange_rate values ('USD', 'GBP', add_months(sysdate,3),
add_months(sysdate,3),1);
insert into exchange_rate values ('USD', 'GBP', add_months(sysdate,4),
add_months(sysdate,4),1);
commit;
Code Listing 2: Adding new partitions
ND13_ado.indd 48 9/27/13 10:24 AM
49 DATABASE STORAGE MANAGEMENT
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
table, by executing the following SQL
command as the user FOREX (who owns
the table):
alter table exchange_rate ilm add policy
tier to midterm_ts;
In this command, John creates an ILM
policy on the EXCHANGE_RATE table that
tells Automatic Data Optimization that
the second storage tier for the table is the
MIDTERM_TS tablespace. Data should be
relocated to this tablespace if the free space
in the original tablespace drops below the
default threshold level of 15 percent. Because
the current tablespace is 30 percent free
now, the ILM policy has no effect on the
tableat least not yetJohn explains.
As time passes, Acme DBAs will add more
partitions to the table to hold new data,
and Listing 2 shows the SQL statements
they will use to add the partitions for
October, November, and December 2013,
named Y13M10, Y13M11, and Y13M12,
respectively. To simulate the storage
volume growth for that time, John inserts
some rows that will go into these partitions,
as shown in Listing 2.
With these additional partitions, John
points out, the LATEST_TS tablespace is now
more populated. He checks the free space
again by executing the SQL shown in Listing 1
and reviewing the result:
TABLESPACE FREE_PCT

LATEST_TS 8.67
MIDTERM_TS 99.33
The free space in LATEST_TS has now
dropped to 8.67 percentbelow the
threshold of 15 percentso the ILM policy
should trigger the relocation of some seg-
ments from this tablespace to free up space.
John waits for the result of the ILM policy and
checks the location of the partitions.
select partition_name,
tablespace_name
from user_segments
where segment_name =
'EXCHANGE_RATE';
PARTITION TABLESPACE

Y13M11 LATEST_TS
output truncated
Y12M08 LATEST_TS
Y13M07 MIDTERM_TS
Y13M06 MIDTERM_TS
Y12M12 MIDTERM_TS
Y12M07 MIDTERM_TS
John directs everyones attention to
the last four partitionsY12M07, Y12M12,
Y13M06, and Y13M07. Earlier, these partitions
were located in the LATEST_TS tablespace,
but now they are in MIDTERM_TS. This
activity resulted in the freeing up of space in
the LATEST_TS tablespace. This relocation
of the partitions was done automatically
without the intervention of the DBAs and
only after the free space dropped below the
threshold. Jill nods her approval. The DBAs
appreciate that the relocation required
nothing more than defining the ILM policy on
the table. All in all, everyone is happy.
CHECKING THE HEAT MAP
Jill observes that only a few partitions
not allwere relocated to the spillover
tablespace. The segments for relocation,
John explains, are based on the heat map
of the segments, described earlier. The
less recently the segment is accessed, the
greater the chance that it will be relocated.
John shows everyone the heat map of the
EXCHANGE_RATE table, by using the SQL
statement shown in Listing 3.
Jill examines the output carefully and
observes that for the partitions Y13M07,
Y12M07, Y12M12, and Y13M06, the full table
select policy_name, action_type, scope, tier_tablespace, condition_days
from user_ILMDataMovementPolicies;
POLICY_NAME ACTION_TYPE SCOPE TIER_TABLESPACE

P21 STORAGE SEGMENT MIDTERM_TS
select * from user_ILMObjects where object_name = 'EXCHANGE_RATE';
POLICY_NAME SUBOBJECT_NAME OBJECT_TYPE INHERITED_FROM ENA

P21 Y12M01 TABLE PARTITION TABLE YES
P21 Y12M02 TABLE PARTITION TABLE YES
P21 Y12M03 TABLE PARTITION TABLE YES
output truncated
P21 TABLE POLICY NOT INHERITED YES
Code Listing 4: Identifying ILM data movement policies
select task_id, task_owner,
to_char(start_time, 'mm/dd/yy hh24:mi:ss') start_time,
to_char(completion_time, 'mm/dd/yy hh24:mi:ss') completion_time
from dba_ilmtasks
where task_owner != 'SYS'
TASK_ID TASK_OWNER START_TIME COMPLETION_TIME

3 FOREX 07/15/13 10:41:37 07/15/13 10:41:43
-- Find the task details
select job_name, job_state,
to_char(start_time, 'mm/dd/yy hh24:mi:ss') start_time,
to_char(completion_time, 'mm/dd/yy hh24:mi:ss') completion_time
from dba_ilmresults
where task_id = 3;
JOB_NAME JOB_STATE START_TIME COMPLETION_TIME

ILMJOB18 COMPLETED SUCCESSFULLY 07/13/13 10:41:41 07/13/13 10:41:43
Code Listing 5: Checking ILM tasks
ND13_ado.indd 49 9/27/13 10:25 AM
50 DATABASE STORAGE MANAGEMENT
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
scan occurred at 07/15/13 00:57:12, com-
pared to 07/15/13 19:48:44 for the rest of
the partitions. These are exactly the same
partitions relocated to the MIDTERM_TS
tablespace by Automatic Data Optimization.
Was that why these partitions were candi-
dates for relocation? she asks.
Exactly, John confirms. When Automatic
Data Optimization had to choose the least
recently accessed segment in the LATEST_TS
tablespace, it looked at the heat map of
the objects in that tablespace and selected
these partitions, because they were the least
recently accessed.
ADMINISTRATION
The groupnow suitably impressedwants
to know more about managing the ILM
policies. How can I check the threshold
at which Automatic Data Optimization
kicks in? asks Jill. To see that and other
parameters ILM uses, John looks at the
DBA_ILMPARAMETERS view:
select * from dba_ilmparameters;
NAME VALUE

ENABLED 1
JOB LIMIT 10
EXECUTION MODE 3
EXECUTION INTERVAL 15
TBS PERCENT USED 85
TBS PERCENT FREE 25
The TBS PERCENT USED parameter speci-
fies the percentage at which the tablespace
is considered to be full. The value in this
example is 85 percent, so the LATEST_TS
tablespace was considered full when the
free space earlier fell to 8.67 percent, John
explains. This triggered Automatic Data
Optimizations relocation of segments to the
next tier of storage. When does it stop relo-
cating? asks Jill. This is where, John responds,
another parameterTBS PERCENT FREE
comes into play. The relocation of segments
out of the tablespace continues until the free
space percentage reaches this parameter
value, 25 percent in this case. However, John
cautions, this is just an estimate; Automatic
Data Optimization does not guarantee that
there will be that much free space.
Suppose I want to change the 85 percent
used to consider the tablespace full, Jill
muses. Can I change it to, say, 90 percent?
Of course, John answers, and executes the
following SQL to change the parameter to
90 percent:
begin
dbms_ilm_admin.customize_ilm (
dbms_ilm_admin.tbs_percent_used,
90);
end;
/
Likewise, John explains, all the properties
listed in the DBA_ILMPARAMETERS view can
be changed with the CUSTOMIZE_ILM pro-
cedure in the DBMS_ILM_ADMIN package.
Someone else has another question:
After a period of time, we would like to know
what tables are under ILM policies and how
the second tier of storage has been defined.
Is there a way to get that information? Yes,
there is, John assures. He executes the SQL
statements shown in Listing 4 to get that
information. From the output, he demon-
strates that the policy named P21 is defined
on the table EXCHANGE_RATE, with the
spillover tablespace being MIDTERM_TS. All
the partitions of the table inherit the policy
from the table (as shown in the INHERITED_
FROM column). The last row in the result
shows that the table itself is under the policy
but is not inherited.
What actually moves the segments
to a different tablespace? Jill wants to
know. Fair question, John concedes and
explains that there is a job that moves the
segments when the time comes. The job
kicks in during the maintenance window in
the database and calls the EXECUTE_ILM
procedure in the DBMS_ILM package. To
see details of this job, John queries DBA_
ILMTASKS, as shown in Listing 5. It shows
him the start and end time of the task. To
get more details on the task, he executes
the second query in Listing 5.
COMPRESSION
Jill is happy to see her first requirement
partition relocationsuccessfully met.
She asks about her second requestto
compress unused rows in tables. Although
the exchange rates set in the table are
usually immutable, they may occasionally
be changed due to a mistake in data entry
or a miscommunication. However, changes
to data more than seven days old are rare.
Therefore, Jill wants to automatically com-
press rows in the EXCHANGE_RATE table that
have not changed for the last seven days.
The Oracle-hosted online version of this
article at bit.ly/18ZCi8l demonstrates how to
set and monitor compression in an ILM policy.
CONCLUSION
Revisiting the original requirements, John
shows how they have been addressed by the
new Advanced Data Optimization feature,
introduced in Oracle Database 12c. Under
the storage-tier-based ILM policy, a segment
is moved to a different tablespace (on
lower-cost storage) when the free space in
the original tablespace falls below a defined
threshold. Under the compression-based
ILM policy, segments are compressed
when the data has not been modified for a
specified number of days. And all this is done
automatically without DBA intervention.
Agreeing on the high value of this feature,
the DBAs as well as the developers thank
John and leave happy.
READ Oracle-hosted online article content
bit.ly/18ZCi8l
READ more about Automatic Data
Optimization
Oracle Database VLDB and Partitioning Guide
12c Release 1 (12.1)
bit.ly/15MYnfe
LEARN more about Automatic Data
Optimization
bit.ly/17Mnn4d
NEXT STEPS
Arup Nanda (arup@
proligence.com) has been
an Oracle DBA since 1993,
handling all aspects of
database administration,
from performance tuning
to security and disaster
recovery. He was Oracle Magazines DBA of the
Year in 2003 and received an Oracle Excellence
Award for Technologist of the Year in 2012.
ND13_ado.indd 50 9/27/13 10:25 AM
Database Application Developer 51
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
PL/SQL BY STEVEN FEUERSTEIN
SQL in PL/SQL
Enhancements
Oracle Database 12c enhances writing and executing
SQL in PL/SQL.
W
ith the release of Oracle Database 12c,
PL/SQL offers several enhancements
for writing and executing SQL statements
from within PL/SQL. This article covers new
Oracle Database 12c features that enable
you to
Bind values from P L/SQL-only datatypes to
SQL statements
Return result sets from SQL queries
implicitly, easing the migration path from
languages such as Transact-SQL to Oracle
PL/SQL
Define views that behave more or less like
an invokers rights program unit
PL/SQL DATATYPE SUPPORT IN
SQL BINDING
Prior to Oracle Database 12c, whenever you
needed to bind a PL/SQL expression by
using EXECUTE IMMEDIATE or DBMS_SQL,
the datatype of that expression had to be
a known SQL datatype. Specifically, you
could not bind Booleans and user-defined
types declared in a package specification,
including records and collections.
Oracle Database 12c removes almost all of
these restrictions.
You can now, for example, bind a Boolean
value if you use EXECUTE IMMEDIATE to
execute a dynamic PL/SQL block. Listing 1
demonstrates the block execution.
You can also bind associative arrays and
use them inside a call to the TABLE operator,
both impossible before Oracle Database 12c.
The code in Listing 2 demonstrates binding
and the use of a SELECT statement to
retrieve data from an associative array.
And theres more for SQL datatypes.
Prior to Oracle Database 12c, the maximum
length of a VARCHAR2 datatype in SQL was
just 4,000 bytes, whereas the maximum
length in PL/SQL was (and is) 32,767 bytes.
With Oracle Database 12c, the maximum
length for VARCHAR2 and NVARCHAR2 is
now 32,767 bytes.
Note: the MAX_STRING_SIZE database
parameter must be set to EXTENDED to take
advantage of these extended lengths; the
default value is STANDARD.
For more information on SQL datatypes,
see Oracle Database SQL Language Reference
12c Release 1 (12.1), at bit.ly/16YBTWb.
ORACLE DATABASE 12c
CREATE OR REPLACE PACKAGE restaurant_pkg
AS
TYPE item_list_t
IS TABLE OF VARCHAR2 (30);
PROCEDURE eat_that (
items_in IN item_list_t,
make_it_spicy_in_in IN BOOLEAN);
END;
/
CREATE OR REPLACE PACKAGE BODY restaurant_pkg
AS
PROCEDURE eat_that (
items_in IN item_list_t,
make_it_spicy_in_in IN BOOLEAN)
IS
BEGIN
FOR indx IN 1 .. items_in.COUNT
LOOP
DBMS_OUTPUT.put_line (
CASE
WHEN make_it_spicy_in_in
THEN
'Spicy '
END
|| items_in (indx));
END LOOP;
END;
END;
/
DECLARE
things restaurant_pkg.item_list_t
:= restaurant_pkg.item_list_t (
'steak',
'quiche',
'eggplant');
BEGIN
/* Requires Oracle Database 12c or later */
EXECUTE IMMEDIATE
'BEGIN restaurant_pkg.eat_that(:l, :s); END;'
USING things, TRUE;
END;
/
Code Listing 1: Binding a Boolean value and using EXECUTE IMMEDIATE
I
-
H
U
A

C
H
E
N
ND13_PLSQL.indd 51 9/26/13 3:31 PM
52 PL/SQL
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
IMPLICIT STATEMENT RESULTS
Before Oracle Database 12c, PL/SQL did not
support the ability to create a procedure that
simply returns the contents of a result set to
the screen. To do this in PL/SQL, developers
had to write a query, iterate through the
result set, and call DBMS_OUTPUT.PUT_
LINE to display the results.
In Oracle Database 12c, developers can
now create a procedure that returns results
directly to the screen in PL/SQL, which will
be of benefit primarily to developers and
applications migrating from Transact-SQL
to PL/SQL (Welcome, new PL/SQL devel-
opers!) and also as a testing aid (because
its now easier to write a quick procedure
to verify the contents of a table). Oracle
Database 12c implements this capability
by adding new functionality to the DBMS_
SQL package.
Suppose I want to display the last names
of all employees in a given department. I can
now write the following, which uses the new
DBMS_SQL.RETURN_RESULT procedure:
CREATE OR REPLACE PROCEDURE show_emps (
department_id_in IN
employees.department_id%TYPE)
IS
l_cursor SYS_REFCURSOR;
BEGIN
OPEN l_cursor FOR
SELECT last_name
FROM employees
WHERE department_id =
department_id_in
ORDER BY last_name;
DBMS_SQL.return_result (l_cursor);
END;
/
And when I execute the procedure in
SQL*Plus for department ID 20, I see the
following:
BEGIN
show_emps (20);
END;
/
PL/SQL procedure successfully completed.
ResultSet #1
LAST_NAME

Fay
Hartstein
You can also return more than one
result from a single procedure. If you want
to retrieve rows from a result from within a
PL/SQL program, you can call the DBMS_
SQL.GET_NEXT_RESULT procedure to get
the next cursor and then use other DBMS_
SQL subprograms to fetch rows of data. For
more information on DBMS_SQL.RETURN_
RESULT and DBMS_SQL.GET_NEXT_RESULT,
see Oracle Database PL/SQL Packages and
Types Reference 12c Release 1 (12.1), at
bit.ly/16A6Amb.
INVOKERS RIGHTS FOR VIEWSSORT OF
Prior to Oracle Database 12c, if your view
executed a function, it was always run under
the privileges of the views owner, not the
privileges of the functions owner. So if the
function was defined as invokers rights, the
CREATE OR REPLACE PACKAGE names_pkg
AUTHID CURRENT_USER
AS
TYPE names_t
IS TABLE OF VARCHAR2 (100)
INDEX BY PLS_INTEGER;
PROCEDURE display_names (
names_in IN names_t);
END names_pkg;
/
SHO ERR
CREATE OR REPLACE PACKAGE BODY names_pkg
AS
PROCEDURE display_names (
names_in IN names_t)
IS
BEGIN
FOR indx IN 1 .. names_in.COUNT
LOOP
DBMS_OUTPUT.put_line (
names_in (indx));
END LOOP;
END;
END names_pkg;
/
SHO ERR
DECLARE
l_names names_pkg.names_t;
BEGIN
l_names (1) := 'Loey';
l_names (2) := 'Dylan';
l_names (3) := 'Indigo';
l_names (4) := 'Saul';
l_names (5) := 'Sally';
EXECUTE IMMEDIATE
'BEGIN names_pkg.display_names (:names); END;'
USING l_names;
FOR rec
IN (SELECT * FROM TABLE (l_names))
LOOP
DBMS_OUTPUT.put_line (
rec.COLUMN_VALUE);
END LOOP;
END;
/
Code Listing 2: Binding and using associative arrays
ND13_PLSQL.indd 52 9/26/13 3:32 PM
53 PL/SQL
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
behavior could be quite different from what
you would have expected.
Oracle Database 12c adds the BEQUEATH
clause for views, so you can define a view
that will accommodate invokers rights func-
tions referenced in a view. To help you utilize
this feature, Oracle Database 12c offers
two new functions that tell you about the
invoking user, based on whether invokers
rights or definers rights are used:
ORA_INVOKING_USER: Returns the name
of the user who is invoking the current
statement or view. If the invoking user is
defined by the Real Application Security
feature of Oracle Database, this function
will return XS$NULL.
ORA_INVOKING_USERID: Returns
the identifier (ID) of the user who is
invoking the current statement or view.
If the invoking user is a Real Application
Securitydefined user, this function will
return an ID that is common to all Real
Application Security sessions but is dif-
ferent from the ID of any database user.
Note that these functions can be called
only from within a SQL statement; they are
not available natively in PL/SQL.
Lets take a look at how this feature works.
In the HR schema, I create a table,
emps_12cemps, and a function, emps_
count, that calls the ORA_INVOKING*
functions, as shown in Listing 3.
Then I create a view, emp_counts_v,
specifying invokers rights (CURRENT_USER)
in the BEQUEATH clause, and I make sure
that SCOTT can query that view:
CREATE OR REPLACE VIEW emp_counts_v
BEQUEATH CURRENT_USER
AS
SELECT department_id,
emps_count (department_id)
emps_in_dept
FROM emps_12cemps
/
GRANT SELECT ON emp_counts_v TO scott
/
In the SCOTT schema, I create another
emps_12cemps table but populate it with
different data:
CREATE TABLE emps_12cemps
(
employee_id INTEGER,
department_id INTEGER,
last_name VARCHAR2 (100)
)
/
BEGIN
INSERT INTO emps_12cemps
VALUES (1, 200, 'SCOTT.ABC');
INSERT INTO emps_12cemps
Each Oracle Magazine PL/SQL article by Steven
Feuerstein offers a quiz to test your knowledge of
the information provided in it. The quiz appears
below and also at the PL/SQL Challenge (plsql-
challenge.com), a website that offers online
quizzes on the PL/SQL language as well as SQL,
Oracle Application Express, database design, and
deductive logic.
Here is your quiz for this article.
I create and populate a table as follows:
CREATE TABLE plch_autos
(
auto_name VARCHAR2 (100),
auto_type VARCHAR2 (100)
)
/
BEGIN
INSERT INTO plch_autos
VALUES ('Corvette', 'Sports');
INSERT INTO plch_autos
VALUES ('Yugo', 'Not Really');
INSERT INTO plch_autos
VALUES ('Carrera', 'Sports');
COMMIT;
END;
/
Which of the choices will display Carrera
followed by Corvette after execution?
a.
CREATE OR REPLACE PROCEDURE
plch_show_autos (
auto_type_in IN plch_autos.auto_
type%TYPE)
IS
BEGIN
FOR rec IN ( SELECT auto_name
FROM plch_autos
WHERE auto_type = auto_
type_in
ORDER BY auto_name)
LOOP
DBMS_OUTPUT.put_line (rec.auto_
name);
END LOOP;
END;
/
BEGIN
plch_show_autos ('Sports');
END;
/
b.
CREATE OR REPLACE PROCEDURE
plch_show_autos (
auto_type_in IN plch_autos.auto_
type%TYPE)
IS
l_cursor SYS_REFCURSOR;
BEGIN
OPEN l_cursor FOR
SELECT auto_name
FROM plch_autos
WHERE auto_type = auto_type_in
ORDER BY auto_name;
DBMS_SQL.return_result (l_cursor);
END;
/
BEGIN
plch_show_autos ('Sports');
END;
/
c.
SELECT auto_name
FROM plch_autos
WHERE auto_type = 'Sports'
ORDER BY auto_name
/
Take the Challenge
For Oracle Database 12c Release 1 (12.1),
Oracle Database PL/SQL Language Reference
(bit.ly/15HZFlU) documents new features,
including
Invokers Rights Functions Can Be Result-
Cached
More PL/SQL-Only Data Types Can Cross
PL/SQL-to-SQL Interface
ACCESSIBLE BY Clause
FETCH FIRST Clause
Can Grant Roles to PL/SQL Packages and
Standalone Subprograms
More Data Types Have Same Maximum
Size in SQL and PL/SQL
DATABASE Triggers on PDBs
LIBRARY Can Be Defined as DIRECTORY
Object and with CREDENTIAL
Implicit Statement Results
BEQUEATH CURRENT_USER Views
INHERIT PRIVILEGES and INHERIT ANY
PRIVILEGES Privileges
Invisible Columns
New PL/SQL Features
ND13_PLSQL.indd 53 9/26/13 3:33 PM
54 PL/SQL
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
VALUES (2, 200, 'SCOTT.DEF');
INSERT INTO emps_12cemps
VALUES (3, 400, 'SCOTT.123');
COMMIT;
END;
/
Then I turn on serveroutput and select
all the rows from the emp_counts_v view.
Heres the output of the query:
SQL> SELECT * FROM hr.emp_counts_v
2 /
DEPARTMENT_ID EMPS_IN_DEPT

100 0
100 0
200 2
SCOTT
107
SCOTT
107
SCOTT
107
As you can see, the data returned by the
view is from HRs table (there is a department
ID value of 100), but the totals returned by
the emps_count function call reflect data
in SCOTTs table. And the ORA_INVOKING*
functions return SCOTTs information.
Note that BEQUEATH CURRENT_USER
does not transform the view itself into an
invokers rights object. Name resolution within
the view is still handled with the view owners
schema, and privilege checking for the view is
done with the view owners privileges.
The primary benefit of this feature is that it
enables functions such as SYS_CONTEXT and
USERENV to return consistent results when
these functions are referenced in a view.
NEXT UP: THE REST OF THE FEATURES
In the next issue of Oracle Magazine, I will
explore the remaining and most inter-
esting new features in the Oracle Database
12c PL/SQL language. These include the
UTL_CALLSTACK packagewhich gives
much-more-detailed information about the
execution call stack, error stack, and error
backtraceand the new DBMS_UTILITY
.EXPAND_SQL_TEXT procedurewhich
recursively replaces any view references in
the input SQL query with the corresponding
view subquery.
CREATE TABLE emps_12cemps
(
employee_id INTEGER,
department_id INTEGER,
last_name VARCHAR2 (100)
)
/
BEGIN
INSERT INTO emps_12cemps VALUES (1, 100, 'abc');
INSERT INTO emps_12cemps VALUES (2, 100, 'def');
INSERT INTO emps_12cemps VALUES (3, 200, '123');
COMMIT;
END;
/
CREATE OR REPLACE FUNCTION emps_count (
department_id_in IN INTEGER)
RETURN PLS_INTEGER
AUTHID CURRENT_USER
IS
l_count PLS_INTEGER;
l_user VARCHAR2 (100);
l_userid VARCHAR2 (100);
BEGIN
SELECT COUNT (*)
INTO l_count
FROM emps_12cemps
WHERE department_id = department_id_in;
/* Show who is invoking the function */
SELECT ora_invoking_user INTO l_user FROM DUAL;
SELECT ora_invoking_userid INTO l_userid FROM DUAL;
DBMS_OUTPUT.put_line (l_user);
DBMS_OUTPUT.put_line (l_userid);
RETURN l_count;
END;
/
Code Listing 3: Creating a table and a function to test the BEQUEATH clause
DOWNLOAD Oracle Database 12c
bit.ly/fherki
TEST your PL/SQL knowledge
plsqlchallenge.com
READ more Feuerstein
bit.ly/omagplsql
READ more about
Oracle Database 12c
oracle.com/database
PL/SQL
oracle.com/technetwork/database/features/plsql
SQL datatypes
bit.ly/16YBTWb
DBMS_SQL
bit.ly/16A6Amb
NEXT STEPS
Steven Feuerstein
(steven.feuerstein@
software.dell.com) is
Dells PL/SQL evangelist.
He is an Oracle ACE
Director; widely read
author; and creator of PL/SQL Challenge, a quiz
site for Oracle technologists. More information is
available at plsqlchallenge.com.
The PL/SQL Challenge question in last
issues PL/SQL Enhancements article
focused on program unit enhancements to
PL/SQL in Oracle Database 12c. That chal-
lenge tested your knowledge of the use of
WITH FUNCTION to enable referencing a
package constant in SQL without building
a getter function in the package itself.
Choices (b) and (c) were both correct.
Answer to Previous Challenge
ND13_PLSQL.indd 54 9/26/13 3:33 PM
Database Application Developer and DBA 55
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
ASK TOM BY TOM KYTE
On Oracle Database 12c,
Part 2
Our technologist finds a match for his SQL and makes
his undo temporary.
U
sually I take three or four user-
submitted questions from the past two
months and present those questions and
my answers here in each Ask Tom column.
In the previous column and the next three,
however, I take a look at some key Oracle
Database 12c features. These features are
all part of the 12 Things About Oracle
Database 12c presentation I gave at Oracle
OpenWorld 2012 in San Francisco. (You
can find the slides for that presentation on
asktom.oracle.com on the Files tab.) The first
three Oracle Database 12c features I looked
at last time were improved defaults, bigger
datatypes, and top-n queries. In this issue, I
take a look at a new row-pattern-matching
clause and how undo for temporary tables
has changed in Oracle Database 12c.
ROW PATTERN MATCHING
In the beginning, SQL provided the ability
to look left and right in a result set. That is,
you could look at a row of data, possibly the
result of a join of many tables, and apply
predicates to that row. You could compare
any column in that row with any other
column in that row. However, you could
not look up and down in a result set. The
ability to look up and down was included in
Oracle8i Database in the form of analytic
windowing functions. Using these analytic
functions, you could look not only left and
right in a result set but also up and down,
using windowing functions such as LAG,
LEAD, FIRST_VALUE, LAST_VALUE, and
NTH_VALUE. These windowing functions are
extremely powerful, and they opened up a
whole new way of analyzing data with SQL.
As powerful as they are, however, they had
some limitations.
Often when processing data, you want to
recognize a pattern in an ordered stream of
data. For example, you might have an audit
trail of data, with columns representing
the username, an event that took place,
and a time stamp representing when that
event took place. You might be interested in
finding all the people in that audit trail who
used application X then application Y
and then application Z and, finally, went
back to a specific part of application X.
Preceding, following, and in between those
events might be countless other events.
For some users, there might be no events
between their interesting actions, but for
other users, there might be hundreds or
thousands of events. Trying to find such a
pattern with analytic windowing functions
falls short. You dont know how many rows
backward or forward in the result set you
would have to lookLAG and LEAD analysis
wont really help. At the very least, you would
have to make multiple passes on the data,
use multiple self-joins, or resort to scalar
subqueries. The query youd need to write
would be extremely complex, and the cost of
executing it would be extremely high.
Enter row pattern matching, implemented
via the MATCH_RECOGNIZE clause in Oracle
Database 12c. This clause enables you to take
a set of data (a result setyour audit trail,
for example); partition it into nonoverlap-
ping sets of data (by username in your audit
trail); sort these sets (by time stamp in your
audit trail); and then look for a pattern that
spans many rows in that partitioned, ordered
set. With the audit trail example, you would
query all records for applications X, Y, and Z.
You would partition the records by username
and sort within each username by time
stamp. Then you would look for one or more
Xs, followed by one or more Ys, followed by
one or more Zs, and finally followed by the
specific part of application X you were inter-
ested in. You can do all this processing in a
single pass through the datano self-joins,
no Cartesian joins, and no scalar subqueries
are required. The query would be relatively
easy to codethe MATCH_RECOGNIZE
clause is very compactand the perfor-
mance of this query would be much better
than that of one written without the MATCH_
RECOGNIZE clause.
To demonstrate this new feature, I am
going to analyze a set of stock data. Stock
analysts are often interested in seeing a V- or
W-shaped pattern in stock data. That is, they
would like to know at which points in time a
stock hits a high value, followed by a series of
drops in price and then followed by a series
of rises in price. Theyd like to know when
the pattern that defines the V shape started,
when it hit the bottom, and when it hit the
top again. Ill start this example by defining a
simple stock table:
SQL> create table stocks
2 ( symbol varchar2(10),
3 tstamp date,
4 price number,
5 primary key (symbol,tstamp)
6 )
7 organization index
8 /
Table created.
Now Ill create a bit of data to analyze:
SQL> declare
2 l_data sys.odciNumberList :=
3 sys.odciNumberList
4 ( 35, 34, 33, 34, 35,
5 36, 37, 36, 35, 34, 35,
36, 37 );
6 l_cnt number := l_data.count;
7 begin
ORACLE DATABASE 12c
ND13_AskTom.indd 55 9/26/13 3:42 PM
56 ASK TOM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
8 for i in 1 .. l_cnt
9 loop
10 insert into stocks
11 ( symbol, tstamp, price )
12 values
13 ('XYZ', sysdate-l_cnt+i,
l_data(i) );
14 end loop;
15 commit;
16 end;
17 /
PL/SQL procedure successfully completed.
Because this set of data is so small, I can
analyze it with ASCII art in SQL*Plus easily,
as shown in Listing 1.
This set of data is only 13 rows, so using a
brute force method to analyze it works and I
can readily see the pattern I am looking for. I
can see clearly two V shapes in this data. I can
see that on September 1, I have the begin-
ning of a V, which bottoms out on September
3 and peaks again on September 7. I can see
the second V easily, too; it begins on the
7th (the beginning of the second pattern is
the end of the firstthink about how youd
report on that with basic SQL), bottoms out
on the 10th, and peaks again on the 13th. I
am interested, therefore, in getting two rows
of dataeach with the three relevant dates. I
would like you to think about how you might
write a SQL statement in Oracle Database 11g
Release 2 and how, before that, you might
output two rows (repeating September 7,
which is tricky) with the information I am
looking for. It can be done, but it is rather
complex and the performance would be
questionable at best.
With the MATCH_RECOGNIZE clause, this
is rather easy to query. For example:
SQL> SELECT *
2 FROM stocks MATCH_RECOGNIZE
3 ( PARTITION BY symbol
4 ORDER BY tstamp
5 MEASURES
6 STRT.tstamp AS start_tstamp,
7 LAST(DOWN.tstamp) AS
bottom_tstamp,
8 LAST(UP.tstamp) AS end_tstamp
9 ONE ROW PER MATCH
10 AFTER MATCH SKIP TO LAST UP
11 PATTERN (STRT DOWN+ UP+)
12 DEFINE
13 DOWN AS
DOWN.price < PREV(DOWN.price),
14 UP AS UP.price > PREV(UP.price)
15 ) MR
16 ORDER BY MR.symbol,
MR.start_tstamp;
SYMBOL START_TST BOTTOM_TS END_TSTAM

XYZ 01-SEP-12 03-SEP-12 07-SEP-12
XYZ 07-SEP-12 10-SEP-12 13-SEP-12
Ill walk through this query line by line.
The first two lines define the query that
defines the result set Ill partition and order
and then apply my pattern to. This query can
be any querywith joins, aggregation, and
so on. The MATCH_RECOGNIZE clause starts
on the end of line 2 and is contained in lines
3 through 15.
On lines 3 and 4, I set up my partitions
and order this stream of data. I partition by
the stock symbol, and within each of these
stocks, I order the data by time stamp, from
oldest to newest. Note that my result set
is deterministic here. Because my primary
key is SYMBOL, TSTAMP, the set of rows
will be deterministic from run to run of this
query. This fact is typically very important in
pattern matchingyou want to know that
the rows that form your pattern are being
observed in a stable state, a deterministic
state. Otherwise, two executions of the
same query might return different answers!
See bit.ly/Z6nxLL for a further explanation
and examples of why this deterministic
behavior is desirable, and usually necessary,
for correct results.
Now Im going to skip ahead a bit to the
pattern part of the query:
11 PATTERN (STRT DOWN+ UP+)
12 DEFINE
13 DOWN AS
DOWN.price < PREV(DOWN.price),
14 UP AS UP.price > PREV(UP.price)
Im interested in a data pattern in which
I have any record, followed by one or more
records in which the price of the stock goes
down, followed by one or more records in
which the stock price increases. That is what
my pattern on lines 11 through 14 repre-
sents. Im looking for a starting recordany
recordfollowed by one or more down
records, followed by one or more up
records. To identify any record, I use the
correlation name STRT, short for start. (That
name is rather arbitraryI could have used
any valid identifier.) Because STRT is not in
the DEFINE, the definition section, it can
match any recordevery record in the result
set could potentially match and become
a STRT record. For a record to become the
STRT record, however, it must be followed
by a DOWN record, at least one and possibly
more (that is the meaning of the + after
SQL> select symbol, tstamp, price,
2 rpad('*',price,'*') hist
3 from stocks
4 order by symbol, tstamp;
SYMBOL TSTAMP PRICE HIST

XYZ 01-SEP-12 35 ***********************************
XYZ 02-SEP-12 34 **********************************
XYZ 03-SEP-12 33 *********************************
XYZ 04-SEP-12 34 **********************************
XYZ 05-SEP-12 35 ***********************************
XYZ 06-SEP-12 36 ************************************
XYZ 07-SEP-12 37 *************************************
XYZ 08-SEP-12 36 ************************************
XYZ 09-SEP-12 35 ***********************************
XYZ 10-SEP-12 34 **********************************
XYZ 11-SEP-12 35 ***********************************
XYZ 12-SEP-12 36 ************************************
XYZ 13-SEP-12 37 *************************************
Code Listing 1: Displaying ASCII art patterns
ND13_AskTom.indd 56 9/26/13 3:43 PM
57 ASK TOM
ORACLE MAGAZINE NOVEMBER/DECEMBER 2013
DOWN). Now, DOWN does have a definition
in this case: a record can be considered a
DOWN record if and only if the price of that
record is less than the price of the previous
record in the result set (remember, it is a
deterministically ordered stream of data). As
long as I have records that match this defini-
tion, Ill be matching DOWN records. When
I ultimately get to a record that no longer
meets the criterion for being a DOWN record,
Ill continue the pattern matching in the
hopes that it is an UP record. An UP record is
defined as any record whose price is greater
than the previous records price.
Now Ill walk through the pattern in
lines 11 through 14 with my actual data set.
I start by processing the first record, for
September 1. That record meets the criterion
for being a STRT record, because there is no
defining criterion. The first record can be
the STRT record of a pattern match only if
the following record is a DOWN record. So,
I advance in the result set, get the second
record, and apply the definition of DOWN
to it. Is its price of 34 less than the prior
records price, 35? Because it is, I am still
matching my pattern; I can advance to the
third record and apply the definition again.
It is another DOWN record. Then I get to
the fourth recordwhich is not a DOWN
recordso Ive finished matching the STRT
DOWN+ portion of the pattern. I must now
verify that the fourth record conforms to the
definition of UP in my definition. And sure
enough, it does. Ive found the patternI
know I have some record followed by one or
more DOWN records followed by at least one
UP record, but the pattern wont stop here.
Much as with regular expressions, I am going
to continue matching to find the largest
conforming pattern. I take a look at the fifth,
sixth, and seventh records and find that they
are all UP records, so they become part of
the pattern. Then I get to the eighth record,
and it does not match the definition of UP
anymore, because its price is not greater
than the prior records price. I am done with
the first pattern, and the set of rows that
match this pattern are September 1 through
7. I am now ready to output this information.
Going back to the MATCH_RECOGNIZE
clause, a MEASURES clause starts on line 5.
This identifies the outputs of my query, and
in this case, I have asked for the rows in the
pattern to be tagged with STRT.tstamp, the
timestamp associated with the starting
record, the beginning of my pattern. I also
asked for LAST(DOWN.tstamp)the last
DOWN time stampand LAST(UP.tstamp)
the last UP time stamp. Those three values
represent the beginning, the bottom, and the
end of the V-shaped pattern. Line 9 of the
queryONE ROW PER MATCHmakes the
MATCH_RECOGNIZE clause work very much
like an aggregate function. For this one big
pattern that spans seven rows of data, Id like
one row to be output with my three measures
in it. This will help me analyze the data as I
turn millions of rows into tens or hundreds or
thousands of rows, which is something I can
get my head around.
Now that Ive found the first pattern, Im
ready to start looking for the next one. The
question now becomes, Where do I start
looking for the next pattern? I could start
looking for the next pattern in the second
row, but that wouldnt make sense for this
pattern, because Id find V shapes inside of V
shapes over and over again, which is not very
interesting. Where I would like to start the
search for the next pattern is on the last row
of the first pattern. I want to pick up where
I left off, and line 10 of the queryAFTER
MATCH SKIP TO LAST UPaccomplishes
that. It permits the last row of the first
pattern in this case to potentially become
the first row of the next pattern. And as you
can see by the output, September 7 does, in
fact, become the first row of the next pattern.
September 7 is effectively output twice in
this result set. (Think about what you would
have to do in regular SQL to get a single row
output twice in a result set!)
And thats it. I take all the pattern matches,
order them by the stock symbol and the
starting price, and display them. In this case,
Ive taken 13 rows and turned them into 2
rows, each of them representing three points
of data. It becomes very easy now to see these
patterns and start to interpret them. You can
see how you might further analyze and aggre-
gate this data to answer questions such as
What is the average period of time elapsed
in a V for a given stock symbol? What is
the max time? How many V shapes do you
usually see in a year? Is there any common
time over the years or months when a stock
bottoms out? and so on.
For detailed information on the MATCH_
RECOGNIZE syntax, see bit.ly/15x5p0o. In
particular, the SQL for Pattern Matching
chapter in Oracle Database Data Warehousing
Guide 12c Release 1 (12.1) at bit.ly/1d1thAP is
an excellent resource to get started with.
TEMPORARY UNDO
Ill now take a look at a new way to process
undo for global temporary tables in Oracle
Database 12c.
Many DBAs and developers used to be
surprised to discover that their operations
on global temporary tablessuch as INSERT,
UPDATE, MERGE, and DELETEgenerated
redo: less redo than they observed on a
regular, permanent table but still a sizable
amount. Their first question was, Where
does this redo come from? The answer was
that it comes from the undo that Oracle
Database has to generate on that global
temporary table. The undo for global tem-
porary tables must be generatedthe data-
base needs it in case an application issues a
rollback and to provide for read-consistent
results. For situations in which a developer
inserts some information into a global tem-
porary table and then issues a SELECT state-
ment against it, followed by an UPDATE or a
DELETE, the rules of read consistency state
that the SELECT statement cannot see the
effects of the UPDATE or DELETE. To make
that possible, the database needs that undo.
(See bit.ly/120NB0w for more information
on read consistency, one of the core tenets of
Oracle Database).
So a modification of a global temporary
table needs to generate undo, and the undo
tablespace must be protected by redo. In
the event of an instance crash, the data-
base needs the redo information in order to
recover the undo tablespace so it can then
roll back any transaction that was in process
but not yet committed when the instance
failed. And furthermore, before Oracle
Database 12c, the undo tablespace did not
distinguish between undo for temporary
objects and undo for permanent objects.
But starting in Oracle Database 12c, tem-
porary undo can be stored in the temporary
tablespace and undo for permanent objects
ND13_AskTom.indd 57 9/26/13 3:43 PM
58 ASK TOM
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
can be stored in the undo tablespace. What
this effectively means is that operations on
temporary tables will no longer generate redo.
If you have large batch operations that utilize
global temporary tables, you may well dis-
cover that the amount of redo you generate
decreases by a large amount. Furthermore,
youll be generating less undo in your undo
tablespace. And that means youll be able to
support a longer UNDO_RETENTION time
with a smaller undo tablespace.
Another pleasant side effect of this new
change is that global temporary tables can
now be utilized in a read-only Oracle Active
Data Guard database. Yes, you can now have
a read-only database in which you can read
and write global temporary tables. Because
one of the uses of a global temporary table
has historically been in reporting systems
for storing intermediate query resultsthis
makes a read-only Oracle Active Data Guard
reporting database that much more viable.
How undo is generated in Oracle Database
12c for global temporary tables is controlled
by a new init.ora parameter: TEMP_UNDO_
ENABLED. It has two settings: TRUE and
FALSE. By default, this parameter is set to
FALSE and undo will be generated in the
same fashion it was in the past. For example:
SQL> alter session
set temp_undo_enabled = false;
Session altered.
SQL> insert into gtt
2 select *
3 from all_objects;
87310 rows created.
Statistics

566304 redo size

SQ> update gtt


2 set object_name =
lower(object_name);
87310 rows updated.
Statistics


8243680 redo size

As you can see, the INSERT generates


about half a megabyte of redo (566,304
bytes) while the UPDATE generates upwards
of 8 MB of redo (8,243,680 bytes). If I enable
temporary undo, however:
SQL> alter session
set temp_undo_enabled = true;
Session altered.
SQL> insert into gtt
2 select *
3 from all_objects;
87310 rows created.
Statistics

280 redo size

SQL> update gtt


2 set object_name =
lower(object_name);
87310 rows updated.
Statistics

0 redo size

the redo is either trivial or nonexistent.


In a read-only Oracle Active Data Guard
database, the redo would be entirely non-
existent. This means youll potentially be
shipping less redo, applying less redo, and
enjoying a longer undo retention period in
your primary database.
Tom Kyte is a database
evangelist in Oracles
Server Technologies
division and has worked
for Oracle since 1993. He
is the author of Expert
Oracle Database Architecture (Apress, 2005,
2010) and Effective Oracle by Design (Oracle
Press, 2003), among other books.
ASK Tom
Tom Kyte answers your most difficult technology
questions. Highlights from that forum appear in
this column.
asktom.oracle.com
FOLLOW Tom on Twitter
@OracleAskTom
READ more Tom
bit.ly/omagasktom
Expert Oracle Database Architecture: Oracle
Database 9i, 10g, and 11g Programming Techniques
and Solutions, Second Edition
amzn.to/ckGXaR
DOWNLOAD Oracle Database 12c
bit.ly/epBiUG
LEARN more about
Oracle Database 12c
oracle.com/database
deterministic behavior
bit.ly/Z6nxLL
MATCH_RECOGNIZE syntax
bit.ly/15x5p0o
SQL pattern matching
bit.ly/1d1thAP
read consistency
bit.ly/120NB0w
FOLLOW Oracle Database
on Twitter
@oracledatabase
on Facebook
facebook.com/oracledatabase
NEXT STEPS
Tom Kyte has picked his top 12 features of
Oracle Database 12c and put them into a pre-
sentation. Here are his picks:
Even better PL/SQL from SQL
Improved defaults
Increased size limits for some datatypes
Easy top-n and pagination queries
Row pattern matching
Partitioning improvements
Adaptive execution plans
Enhanced statistics
Temporary undo
Data optimization capabilities
Application Continuity and Transaction
Guard
Pluggable databases
Kytes 12 for 12 presentation is part of
the Oracle Database 12c launch webcast at
bit.ly/1bH80gC.
Kyte covered improved defaults, increased
size limits for some dataytpes, and easy top-n
and pagination queries in the September/
October 2013 issue of Oracle Magazine, and
he covered row pattern matching and tempo-
rary undo in this issue.
Spoiler alert: Kyte covers more of the top 12
in this column in upcoming issues.
12 for 12
ND13_AskTom.indd 58 9/26/13 3:44 PM
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.
partner.oracle.com
Specialized. Recognized. Preferred.
Partner
Excellence!
Industries Applications
Database and
Middleware
Server and Storage
Systems
Engineered Systems
2013 Specialized Partner Award WinnersGlobal
OMAG1113_Pg059_R1 1 10/6/13 8:01 PM
60
NOVEMBER/DECEMBER 2013 ORACLE.COM/ORACLEMAGAZINE
Flashbacks: Culture. Industry. Oracle.
Time Capsule
BY RICH SCHWERIN
G
E
T
T
Y

I
M
A
G
E
S
Richard M. Nixon was President of the United States.
Aldrin and Armstrong landed on the moon. And
in Columbus, Ohio, Compu-Serv Network started
renting time on its DEC PDP-10 midrange computer.
1979
Starting a Thread
Started by a pair of Duke University
graduate students and still in wide-
spread use today, Usenet allows users
to read and post threaded messages to
newsgroups organized into hierarchies
of subjects.
1980s
Dial-up Online Services
With CompuServe leading the way,
dial-up online services in the 80s
included Prodigy (1984); General Electrics
GEnie (1985); and Quantum Computer
Services (1985). Quantum doesnt ring
a bell? In 1989, Quantum launched a
service called America Online. These early
online services connected communities
and enabled conversations.
1998
Youve Got Mail
The odd thing
about this
form of com-
munication
is that youre
more likely to talk about
nothing than something. But
I just want to say that all this
nothing has meant more to me
than so many somethings.
Kathleen Kelly (Meg Ryan) in an
e-mail to Joe Fox (Tom Hanks), Youve
Got Mail, Warner Bros., 1998
2011
Cloud Collaboration
Launched during Oracle
OpenWorld, Oracle Social Network
is a secure enterprise social
network that connects business
processes, enterprise applications,
and content in Oracle Cloud.
With Java at its core,
Twitter supports more
than 400 million
Tweets per day
#performance
Tweet via @java;
article via Java Magazine at
ow.ly/nyk2R
//JULY/AUGUST 2013 /
11
JAVAONE
PREVIEW
23
ORACLE TEAMUSA
28
KIRK PEPPERDINE
ON PERFORMANCE
TUNING
ORACLE.COM/JAVAMAGAZINE
2000s
Media Gets Social
Were the 2000s the
social media decade?
Friendster (2002)
MySpace (2003)
LinkedIn (2003)
Digg (2004)
Facebook (2004)
Twitter (2006)
Tumblr (2007)
and more debut.
1999 Weblogs
Remember user-generated content? As a user of the World
Wide Web, you can now generate your own content on weblog
platforms LiveJournal and Blogger; WordPress joins them four years later.
Then: Whats a weblog?
Now: Hey, I read your blog post, and I completely disagree.
1
9
6
9
CompuServe
2013Java Tweets
Pop quiz:
Name the Big Nine
hierarchies of Usenet.
Answers:
bit.ly/17Z2MYu
YOUR TURN
Twitter, Facebook, LinkedIn. Will todays social media network
powerhouses become tomorrows Prodigy? Tell us what you
think the future of social media holds in store. Visit Facebook/
OracleMagazine and let us know. bit.ly/orclmagfb
THE FIRST SOCIAL NETWORK I JOINED
WAS IN THE YEAR
We asked our Facebook
fans, and here are the most
popular social network firsts:
Orkut
hi5
Facebook
24%
14%
10%
ND13_TimeCapsule.indd 60 9/26/13 4:41 PM
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.
oracle.com/goto/supplychain
or call 1.800.ORACLE.1
20 of the 20
Top Supply Chains
Get Better Results With Oracle
Untitled-1 1 9/27/13 2:59 PM

You might also like