Vous êtes sur la page 1sur 73

Youre already a big player in a big industry.

So what can a Project


Management software solutions company do to increase your success?
With LOADSPRING, the answer is plenty. We help the big boys in
architecture, engineering and construction rake in a robust ROI and
tackle your most complex projects. Quicker, simpler and smarter.
It all starts with our SpringBoard 7.0 cloud portal, which lets you take
charge of Project Management on your terms. Its a giant advance in
accessing software for scheduling, estimating, BIM and more. With it you
can securely deploy and implement apps in just daysand get tons of
users trained faster at our virtual LOADSPRING Academy.
You can also harness SpringBoards control panel for instant project
status, software licensing and supportall while using LoadSpringMobile
and MySocial to keep teams on target.
Whats in it for you? An enormous boost in productivity and project
control. And in this business, thats huge.
Intrigued? Contact us today to see results tomorrow.
LoadSpring.com or 978.685.9715.
SpringBoard 7.0 gives your teams worldwide access to Project Management
and BIM apps, data, reports and moresecurely from any device.
SEPTEMBER/OCTOBER 2014
Mobile Today. More Mobile Tomorrow There is
more to mobile than what you can hold in your
hand / 20 Big Data Meets Business Intelligence
Explore Oracle Big Data Lite Virtual Machine
examples and tutorials to see how big data gets
reported / 43 Its All In Leverage the in-memory
column store in Oracle Database In-Memory to
supercharge database performance / 47 On Implicit
Conversions and More Our technologist looks at
implicit conversions, logic bombs, SQL injection, and
reduced access paths / 57 Inside OCP Consolidate
multiple databases with Oracle Database 12c / 63
IN MEMORY,
IN BUSINESS
Keep your information active and deliver
instant business transactions and analytics
with Oracle Database In-Memory
ON THE ROAD
Oracle technology delivers
rapid application development
for the mobile enterprise
ORACLE OPENWORLD
AND JAVAONE
CONNECTING
CUSTOMERS
Attention technologists!
September 28 through
October 2 is conference
week in San Francisco
SO14_Cover_R1.indd 1 8/12/14 3:00 PM
Untitled-1 1 8/14/14 1:54 PM
Untitled-1 1 8/14/14 1:56 PM
2
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
VOLUME XXVIII - ISSUE 5 CONTENTS
Cover: I-Hua Chen
Its here! The Oracle Database In-Memory option
speeds queries 100 times and transactions 2 times,
with no changes to applications. Curran Mahowald
/ 16
FASTER ANSWERS,
FASTER BUSINESS
STABILITY AND CHANGE
KDDI charts a steady course with Oracle
SuperCluster T5-8 and Oracle Exadata
Database Machine. Philip J. Gill
/ 34
ON THE ROAD
Oracle technology delivers rapid
application development for the mobile
enterprise. David A. Kelly
/ 28
EVENTS / 9
Find out about upcoming
technology and industry
events.
RESOURCES / 11
Your guide to Oracle
videos, webcasts,
white papers, and more
BRIEFS / 12
The latest product news
PARTNER NEWS / 18
BOOK BEAT / 18
ARCHITECT / 20
Mobile Today. More
Mobile Tomorrow.
There is more to mobile than
what you can hold in your
hand. Bob Rhubart
PEER-TO-PEER / 22
Game Changers
Peers on communities and
technologies that are radically
changing the way they work
Blair Campbell
IN THE FIELD / 68
Learning Circle, Part 2
OAUG President Alyssa
Johnson talks about women
in technology and technology
trends. Carol Hildebrand
BUSINESS
ANALYTICS / 43
Big Data Meets
Business Intelligence
Explore Oracle Big Data Lite
Virtual Machine examples
and tutorials to see how big
data gets reported.
Mark Rittman
At Oracle / 9
Community / 18
Technology / 43
Comment / 68
FROM THE EDITOR / 5
Whats Next?
Its always a question, and its
always a good one.
Tom Haunert
MASHUP / 6
News, views, trends,
and tools
Up Front / 5
PERFORMANCE / 47
Its All In
Leverage the in-memory
column store in Oracle
Database In-Memory to
supercharge database
performancewithout
changing application code.
Arup Nanda
PL/SQL / 52
Persistence Doesnt
Always Pay
Sometimes you dont want
a database table and SQL.
Sometimes you just want to
collect your thoughts.
Steven Feuerstein
ASK TOM / 57
On Implicit Conversions
and More
Our technologist looks at
implicit conversions, logic
bombs, SQL injection, and
reduced access pathsin
one question and answer.
Tom Kyte
INSIDE OCP / 63
Basics of the Multitenant
Container Database
Consolidate multiple
databases with Oracle
Database 12c.
Anita Mukundan
CONNECTING CUSTOMERS,
CONTENT, AND CAREERS
Attention technologists! September 28
through October 2 is conference
week in San Francisco. Tom Caldecott
/ 24
SO14_TOC_R1.indd 2 8/7/14 3:20 PM
Learn more and download a free trial at www.altova.com/server
Manage Information Workfows
with Altova

FlowForce

Server
Introducing FlowForce Server, the powerful
new platform for automating todays multi-step,
enterprise-level data mapping, transformation,
integration, and reporting tasks. This fexible workfow orchestration tool
works with any combination of XML, database, fat fle, EDI, Excel, XBRL,
and/or Web service data common to many essential business processes.
FlowForce

Server for orchestrating


events, triggers, and the automation
of processes
MapForce

Server for automating


any-to-any data mapping and
aggregation processes
StyleVision

Server for automating


business report generation in HTML,
PDF, and Word
RaptorXML

Server for hyper-fast


validation/processing of XML, XBRL,
XSLT, and XQuery
FlowForce Server is at the center of
Altovas new line of cross-platform
server products optimized for todays
high-performance, parallel computing
environments:
StyleVision Server
HTML, PDF, Word,
OOXML, RTF
MapForce Server
XML, SQL DBs,
EDI, flat files,
XBRL, Web services
RaptorXML
Server
XML and XBRL
validation/processing
FlowForce Server
Job triggers
User management
Access control
Untitled-1 1 8/14/14 2:35 PM
4
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
SUBSCRIPTION INFORMATION
Subscriptions are complimentary for qualified individuals who complete the form found 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 2014, Oracle and/or its affiliates. All Rights Reserved. No part of this publication may be reprinted or other wise reproduced without permission from the editors. ORACLE MAGAZINE IS PROVIDED ON
AN AS IS BASIS. ORACLE EXPRESSLY DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED. IN NO EVENT SHALL ORACLE BE LIABLE FOR ANY DAMAGES OF ANY KIND ARISING FROM YOUR
USE OF OR RELIANCE ON ANY INFORMATION PROVIDED HEREIN. The information is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into
any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality
described for 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-3A, 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
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
Associate Editor Patty Waddington
Contributing Editor and Writer Blair Campbell
Technology Advisor Tom Kyte
Contributors Curran Mahowald, 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
PUBLISHING
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
Audience Development Manager Jennifer Kurtz jennifer.s.kurtz@oracle.com
ADVERTISING SALES
President, Sprocket Media Kyle Walkenhorst kyle@sprocketmedia.com +1.323.340.8585
Western and Central US, LAD, and Canada, Sprocket Media Tom Cometa tom.cometa@oracle.com +1.510.339.2403
Eastern US and EMEA/APAC, Sprocket Media Mark Makinney mark.makinney@sprocketmedia.com +1.805.709.4745
Recruitment Advertising, Sprocket Media Josie Damian josie.damian@sprocketmedia.com +1.626.396.9400, x200
Advertising Sales Assistant, Sprocket Media Cindy Elhaj cindy@sprocketmedia.com +1.626.396.9400, x201
Mailing-List Rentals Contact your sales representative.
EDITORIAL BOARD
Ian Abramson, Karen Cannell, Andrew Clarke, Chris Claterbos, Karthika Devi, Kimberly Floss, Kent Graziano,
Taqi Hasan, Tony Jambu, Tony Jedlinski, Ari Kaplan, Val Kavi, John King, Steve Lemme, Carol McGury,
Sumit Sengupta, Jonathan Vincenzo, Dan Vlamis
SO14_TOC.indd 4 8/5/14 11:24 AM
5 FROM THE EDITOR
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Whats Next?
Its always a question, and its always a good one.
A
t a recent Oracle event, after a presen-
tation on a significant new Oracle tech-
nology, audience members were invited to
ask questions. I watched and listened only
to the first question, which started off with
a thank-you for the presentation and ended
with Whats next? Yes, the question
after a major presentation on a new Oracle
technologywas about the next technology
Oracle was going to introduce.
At first I felt bad for the Oracle repre-
sentatives, industry experts, and Oracle
customers who had delivered information,
validation, and demonstrations during that
presentation. In my own admittedly biased
opinion, the technology presentation deliv-
eredand deservedmore than a little
shock and awe. At a minimum, I didnt think
the new technology could possibly have
been so thoroughly absorbed, sorted, and
analyzed that an audience member would
choose to skip over it to ask whats next.
But then I remembered a few things,
including the fact that technology has always
been about whats next. I also remembered
that whats next has a rich history.
NEXT HISTORY
I dont have survey numbers to support it,
but Im willing to leap to the conclusion
that many Oracle Magazine readers have
attended business meetings featuring mul-
tiple topics separated by the whats-next
question. The question drivesor at least
promptsschedules and project plans, from
products and solutions to marketing and
content for those products and solutions.
Whats next also drives months of public
speculation on what the latest smartphones
and tablet computers will look like and do
and how new phone, tablet, and desktop
application releases will embrace cloud com-
puting, a mobile user experience, and social
media. And in enterprise hardware and soft-
ware speculation, whats next also addresses
more. How will the next enterprise tech-
nology enable business to be more competi-
tive and more successful while also managing
and analyzing more information and doing all
of that in a more cost-effective way? A good
enterprise technology whats-next question
islike the enterprisea complex, intercon-
nected, multipart experience that ends with
an answer that confirms the business will be
better with the technology than without it.
THE NEXT ORACLE OPENWORLD
There was an answer to the audience mem-
bers whats-next question at the afore-
mentioned Oracle event: Come to Oracle
OpenWorld, September 28 to October 2,
2014, in San Francisco and see for yourself.
Oracle OpenWorld has been a platform for
delivering whats-next service, solution, and
technology announcements and content
from Oracle and Oracle partners and cus-
tomers for years. Past Oracle OpenWorld
announcements have answered whats
next for Oracle Cloud, engineered systems,
databases, database options, applications,
middleware, and partnerships, and I for
one am selfishly looking forward to many
more answers to whats next at this years
conference. I say selfishly because Oracle
OpenWorld announcements have been
framing whats next for Oracle Magazine
content for a very long time.
Tom Haunert, Editor in Chief
tom.haunert@oracle.com
LEARN more about what just happened
and whats next
OracleVoice
forbes.com/sites/oracle
Oracle blogs
blogs.oracle.com
REGISTER for
Oracle OpenWorld
oracle.com/openworld
JavaOne
oracle.com/javaone
NEXT STEPS
CONNECT: bit.ly/orclmagcom 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
SO14_Ednote.indd 5 8/4/14 9:59 AM
6
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
MashUp
News. Views. Trends. Tools.
A
P
P
S
:

G
R
E
E
N

D
R
I
V
I
N
GIdeally you wouldnt drive to work, but you can still save the environment from
your car with these apps.
Just In Case
50-YEAR PREDICTIONS
IN A WORD Whats the most misleading high-tech jargon
word and why? Tell us on Twitter, Facebook, or LinkedIn.
Results may be posted in a future issue of Oracle Magazine.
Lab-grown custom organs for transplant
Computers create art as well as humans do
Scientists will have solved teleportation
Humans will have long-term space colonies
Humans will control the weather
Percentage of US adults who feel that the following will/wont occur
in the next 50 years. What will be possible in the future? People are more
optimistic about the ability to grow custom organs in a lab than about the
ability to control the weather. One thousand US adults were surveyed.
Wont happen Will happen
Source: Pew Research Center, bit.ly/1nP0U0c
15 81
45
56
64
51
39
33
Ocean Spyglasses
TALK
TO US
Binoculars were invented in the seventeenth century,
but the BN 7x50 DCM from MINOX is a pair that could
only have been made in the twenty-first century. If the
34th Americas Cup last summer inspired you to do
some boating of your own, these marine binocu-
lars are the gadget for youto make sure you
dont miss a thing out on the water. Theyre
loaded with monitoring features like a digital
compass, an altimeter, and a digital barometer
and thermometer, each with history graphs so
you can feel like an ocean spy with smart glasses.
Oh, and theyre waterproof. US$700. minox.com
Your smartphone no longer needs to be a delicate,
fragile object that stays at home while youre on
an adventure. The Snow Lizard SLXtreme Case
protects your device from the harshest elements.
Dust, dirt, sand, and debris wont harm it, and its
waterproof down to 6 feet, opening up possibili-
ties for underwater photography and video. The
best part is that its solar powered: the 2,550 mAh
integrated battery is trickle charged by the solar
panel on the back of the case. With the floater kit and mounting set, your
smartphone really can go with you to whatever rugged landscape you
dream of exploring. For iPhone 4/4s, iPhone 5/5s, and iPad. US$129.99
to US$199.99. snowlizardproducts.com
1. An open source software developer
who is in charge of judging disputes among
members of the community is called a
_________.
a. Paramount Chief
b. Protector Pro Tem
c. Benevolent Dictator for Life
d. Terminator
2. An unexplained computer problem that
is smaller than a glitch or a bug is called a
_________.
a. Boat anchor
b. Snivitz
c. Leech
d. Spindling
3. A series of well-defined and individually
reversible changes to a piece of data
that transforms the original item into an
unrecognizable form is called a _________.
a. Mung
b. Wug
c. Nonce
d. Smaggle
DO YOU SPEAK TECH?
QUIZ YOURSELF!
77 19
Carma Carpooling
Why commute
alone when you
can make a few
bucks and save
the environment
one mile at a time?
Carma shows you
people near you
who need a ride or
can give you a ride.
The app acts as
your meter, and the
rider pays the driver
through the app.
Free (Android, iOS).
carmacarpool.com
Waze
This real-time road
intelligence app
shows you whats
ahead so you can
avoid the traffic
jam, thereby
reducing your
carbon footprint.
Relying on shared
manual and passive
data from the Wazer
community, the
app gives you the
fastest route to
your destination.
Free (Android, iOS,
Windows phone).
waze.com
greenMeter
Using the
accelerometer in
your device, this
app evaluates your
driving habits for
environmental
efficiency in real
time. Enter the cost
of fuel, the weather
conditions, and the
weight of your car,
and you can reduce
your vehicles impact
on the environment.
US$5.99 (iOS).
hunter.pairsite
.com/greenmeter
Green Drive
When you enter
your cars make,
model, and engine
size into this app, it
will generate your
optimal speed for
environmentally
sound driving. It
also analyzes road
conditions and
finds you the most
efficient route
from A to B. Free
(Android, Nokia
smartphones).
bit.ly/1kjWZYY
A n s w e r s
1 . ( c ) R e p o r t e d l y , t h e f i r s t p e r s o n t o h o l d t h i s
t i t l e w a s G u i d o v a n R o s s u m , c r e a t o r o f t h e
P y t h o n p r o g r a m m i n g l a n g u a g e .
2 . ( b ) E x a m p l e s o f s n i v i t z e s a r e a w i n d o w
c l o s i n g u n e x p e c t e d l y o r a b l u e s c r e e n
i n e x p l i c a b l y p o p p i n g u p .
3 . ( a ) M a s h U n t i l N o G o o d w a s c r e a t e d a f t e r
t h e a c r o n y m , w h i c h d i d n t s t a n d f o r a n y t h i n g .
I t t h e n b e c a m e M u n g U n t i l N o G o o d , w h i c h
i s o n e o f t h e f i r s t r e c u r s i v e a c r o n y m s .
SO14_MashUp.indd 6 8/1/14 10:35 AM
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.
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.

2014 Schneider Electric. All Rights Reserved. Schneider Electric, APC, Smart-UPS, and Business-wise, Future-driven are trademarks
owned by Schneider Electric Industries SAS or its affiliated companies. All other trademarks are the property of their respective owners.
www.schneider-electric.com 998-1209030_GMA-US_Note3
Reduce human-error downtime, too!
Get guidance in our FREE white paper and enter to win a
Samsung Galaxy Note

3.
Visit www.apc.com/promo Key Code j922u
Scan this code
to learn more!
Untitled-1 1 8/15/14 6:37 AM
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
Samsung Galaxy Note
TM
3!
Visit www.apc.com/promo Key Code j923u
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.

2014 Schneider Electric. All Rights Reserved. Schneider Electric, APC, Smart-UPS, and Business-wise, Future-driven are trademarks owned by Schneider Electric Industries SAS or its affiliated companies.
All other trademarks are the property of their respective owners. www.schneider-electric.com 998-1209030_GMA-US_Note3
Oracle_0915_j923u_US.indd 1 7/24/14 11:20 AM
Untitled-1 1 8/15/14 6:39 AM
REGISTER NOW
Save $200 by Sept. 26
Education, Conversation, and Inspiration

Cloud Computing

Big Data & Analytics

HR & Talent

Marketing

Engineered Systems

Customer Experience
Sept. 28Oct. 2, 2014
San Francisco
Premier Sponsors Grande Sponsors Diamond Sponsor Innovation Sponsor Global Sponsor
Copyright 2014, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Register at oracle.com/openworld
Fonts: Univers LT Std. 75 Black, 65 Bold, 55 Roman, 45 Light,
67 Bold Condensed, 57 Condensed
PRODUCTION NOTES
VENDOR NOTE: Please use center marks to align page.
Please examine these publication materials carefully.
Any questions regarding the materials, please
contact Darci Terlizzi (650) 506-9775
READER
01
LASER% RELEASED
7/31
2014
Resize
8 x 10.875
Job #:
Ref #:
Headline:
Live:
Trim:
Bleed:
115M_CRP00056_OOW14
M_115M_CRP00028_OOW14
REGISTER NOW - Save $200 by 9/26
7 x 9.875
8 x 10.875
8.25 x 11.125
Untitled-1 1 8/14/14 2:33 PM
9 EVENTS
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Technology Events
Conferences and sessions to help you stay
on the cutting edge
Gartner Symposium/ITxpo
October 59, Orlando, Florida
f
gtnr.it/U3tHld
This five-day conference for chief information
officers and senior IT executives offers more
than 500 analyst sessions, workshops, round-
tables, and mastermind keynotes; 10 role-based
tracks; and 11 industry tracks.
OReilly Strata Conferences
October 1517, New York, New York
November 1921, Barcelona, Spain
f
strataconf.com
These conferences help attendees get up to
speed on emerging technologies by dissecting
case studies, developing new skills through in-
depth tutorials, and sharing best practices. The
New York conference includes Hadoop World.
HR Tech Europe
October 2324, Amsterdam, Netherlands
f
bit.ly/1lsXSaX
HR Tech Europe brings together more than
2,000 decision-makers, influencers, doers, key
industry speakers, and senior human resources
(HR) practitioners for two days of learning,
networking, and discussing HR solutions.
Big Data TechCon
October 2729, San Francisco, California
f
bigdatatechcon.com
This is the how-to big data training conference
for professionals implementing and analyzing
big data, featuring practical Hadoop training;
classes on MapReduce, R, Hive, and Pig; big
data analytics tutorials; and more.
Healthcare IT Summit
November 24, Los Angeles, California
f
bit.ly/1n2z24p
This conference features education and
insight for IT executives from healthcare
insurer and provider organizations to help
them better understand future market drivers,
business trends, economic factors, and tech-
nology opportunities affecting the healthcare
IT market.
IT Roadmap Conference and Expo
November 18, Dallas, Texas
December 3, Washington DC
f
bit.ly/1kL8I0F
These conferences offer an in-depth look at
the high-priority issues facing IT professionals
today, including security, analytics, data man-
agement, mobile/bring your own device for the
enterprise, and more.
Modern Marketing
Experience Europe
October 1416, London, England
Presented by Oracle, Modern Marketing Experience
Europe helps attendees gain insight from experts in
marketing automation, social marketing, content mar-
keting, and big data. The conference is offered along
transformation and execution tracks and is designed
for modern marketing executives and practitioners.
Attendees will learn the strategy and tactics needed to
make modern marketing succeed in their organizations.
bit.ly/1liVpnH
ORACLE USER GROUPS
HrOUG (Croatian User Group)
Conference
October 1417, Rovinj, Croatia
hroug.hr
Higher Education User Group
EMEA Conference
October 1516, Utrecht, Netherlands
bit.ly/1oO7WiM
OUGN Oracle ACE Director Tour 2014
October 21, Oslo, Norway
bit.ly/TFFzcn
Dallas Oracle Users Group
Oracle Licensing Overview
October 23, Irving, Texas
doug.org
Morocco Java User Group Conference
November 46, Casablanca, Morocco
bit.ly/1pdyBsZ
J-Fall 2014, Netherlands Java
User Group
November 5, Nijkerk, Netherlands
bit.ly/1uN0eJj
Higher Education User Group Alliance
Down Under
November 57, Gold Coast, Queensland,
Australia
bit.ly/1pdyFJ2
South African Oracle User Group
Conference
November 911, Drakensberg, KwaZulu-Natal,
South Africa
saoug.co.za
DEVOXX Belgium
November 1014, Antwerp, Belgium
devoxx.be
Oregon and Southern Washington
Oracle Users Group Meeting
November 11, Bellevue, Washington
oswoug.org
Sun Coast Oracle Users Group Meeting
November 11, Tampa, Florida
soug.org
UKOUG JD Edwards Conference
November 1213, Oxford, England
bit.ly/1pdxqtl
Oracle Benelux User Group JD Edwards
Update Event
November 14, Geertruidenberg, Netherlands
bit.ly/1pdxzwT
DOAG 2014 Conference and Exhibition
November 1820, Nuremberg, Germany
doag.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
SO14_Events.indd 9 7/24/14 1:52 PM
YOUR DESTINATION FOR ORACLE AND JAVA EXPERTISE FOR 20 YEARS!
Written by leading technology professionals, Oracle Press books offer the most definitive,
complete, and up-to-date coverage of Oracle products and technologies available.
www.OraclePressBooks.com @OraclePress

OraclePress
Available in print and eBook formats
OCP Upgrade to Oracle
Database 12c Exam Guide
Sam R. Alapati
This self-study tool offers full coverage
of OCP Exam 1Z0-060. Electronic
content includes 170 practice exam
questions.
OCP Oracle Database 12c
Advanced Administration Exam Guide
Bob Bryla
Get complete details on all objectives
for OCP Exam 1Z0-063. Electronic
practice exam questions are included.
Oracle Mobile Application
Framework Developer Guide
Luc Bors
Develop enterprise mobile
applications that can be packaged
and deployed on Apple iOS and
Google Android platforms.
Master Competitive Analytics
with Oracle Endeca Information
Discovery
Helen Sun, William Smith
Enable agile enterprise data
discovery and analysis to unlock
insights from any type of data.
Visit the Oracle Press kiosk in the bookstore at Oracle OpenWorld,
located in Moscone South main lobby.
MC621 Oracle Mag Ad sept-oct issue.indd 1 7/24/14 9:04 AM
Untitled-1 1 8/14/14 2:49 PM
11 RESOURCES
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
CONNECT: oracle.com/blogs facebook.com/oracle twitter.com/oracle linkedin.com/company/oracle bit.ly/plusOracle
Whats New at Oracle
The latest videos, webcasts, white papers, and more
VIDEOS
Get Smart About SaaS and Cloud
f
bit.ly/1h1wCoL
Discover three important questions you should
ask your SaaS providers to find out if theyre using
the most-modern cloud best practices.
Introducing Oracle Enterprise Manager 12c
Release 4
f
bit.ly/S4VY9a
Oracle experts introduce key new capabilities
for accelerated enterprise-scale cloud adoption,
expanded Oracle stack management, and enter-
prise data and service governance.
Why Move Business Applications from IBM
to Oracle
f
bit.ly/TCPgZt
Learn how your company can benefit from
improved performance, efficiency, and reduced
TCO by moving enterprise applications from IBM
Power to Oracles SPARC servers.
WEBCASTS
Oracle Database In-Memory
f
bit.ly/1nNODqx
Find out how Oracle Database In-Memory can
deliver real-time analytics performance, accel-
eration for all workloads, and applications that
work faster.
Zero Downtime Consolidation to Oracle
Database 12c with Oracle GoldenGate 12c
f
bit.ly/1pBbdFG
Learn how to use Oracle GoldenGate 12c to
remove the barriers of risk and business inter-
ruption and move to an agile and cost-efficient
private database cloud.
Webcast Series: Countering Adversaries
f
bit.ly/1l1c7Zg
Oracle security experts discuss threat actors
such as espionage, organized crime, and
hacktivists. Learn what proactive steps you
can take to mitigate risks by understanding
each threat and its targets.
Integrated Systems and Your IT Career:
IDC Survey Findings
f
bit.ly/1kyE1vC
Learn the results of a recent International Data
Corporation (IDC) survey, including details
about how converged and integrated systems
are changing the way IT departments work and
which new skills will be in high demand.
E-BOOKS
Oracle Exadata: Engineered for Your
Database
f
bit.ly/1pBd5hH
Find out how Oracle Exadata can help you speed
up all database workloads, consolidate databases
and simplify administration, and deliver unprec-
edented performance.
Oracle VM: Application-Driven Virtualization
for the Modern Data Center and the Cloud
f
bit.ly/1oPMYU0
The demands of cloud computing and complex,
business-critical enterprise applications require
that virtualization be application-driven, built
in, and integrated across all layers of the com-
puting stack. The latest Oracle VM e-book
explains why.
WHITE PAPERS
Oracle Linux: Engineered into a Business-
Class Solution
f
bit.ly/1p5uxbz
In this new Oracle-sponsored white paper,
industry analyst IDC describes the changing
Linux market, provides a look at Oracles Linux
product stack, and offers an in-depth description
of Progressive Insurances switch from Red Hat
Enterprise Linux to Oracle Linux.
Converged Applications: Its About Speed
to Deliver Change
f
bit.ly/1iiv4Sz
This Wikibon report illustrates how an Oracle
SuperCluster running Oracle E-Business
Suite can deliver change through converged
applications that takes only 2 to 3 months
instead of the normal 18-to-30-month
development cycle.
RESOURCE CENTERS
Oracle Systems and Oracle Applications
Expert Center
f
bit.ly/1oPNPnM
Find out how a complete, integrated hardware
and software stack thats engineered and certi-
fied to work together can make IT faster, more
efficient, and less complicatedespecially when
you run Oracle Applications on Oracle hardware.
MySQL Best Practices for Oracle Database
Administrators
f
bit.ly/1mFAnfk
Discover MySQL best practices for Oracle
Database administrators who are also using
MySQL. This resource center features presenta-
tions, white papers, case studies, and more.
ORACLE UNIVERSITY
New: Get Unlimited Oracle Learning for
One Year
f
bit.ly/1mlucO9
Access hundreds of video courses and labs and
connect live with instructors with Oracles new
Unlimited Learning Subscription.
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 Support
oracle.com/support
My Oracle Support
myoraclesupport.com
My Oracle Support Communities
communities.oracle.com
WEB LOCATOR
SO14_Resources.indd 11 7/24/14 2:01 PM
12 Product Resources
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
TUTORIALS AND VIDEOS
Oracle Big Data SQL: Deep Dive
Oracle big data experts Paul Sonderegger
and Dan McClary provide a deep dive into
Oracle Big Data SQL, Oracles new solution
for seamlessly integrating Hadoop, NoSQL,
and Oracle Database.

bit.ly/1pvXI6u
Oracle Exadata X4 Overview
Tour an Exadata Database Machine X4
engineered system with Oracle product
manager Mahesh Subramaniam.

bit.ly/1o0Jw7N
Manage Users and Roles for Oracle
Cloud Services
Follow step-by-step instructions for adding
users and assigning user roles for Oracle
Cloud services in this three-minute tutorial.

bit.ly/1qwM1lg
How and When to Write SQL in
PL/SQL with Steven Feuerstein
Oracle Architect Steven Feuerstein steps
viewers through the most important best
practices for SQL construction, ranging
from avoiding SQL repetition to full qualifi-
cation of variable and column names.

bit.ly/1pvY0dG
DOWNLOADS
Oracle VM Server for x86 and
Oracle VM Server for SPARC
Release 3.3 of Oracle VM adds improve-
ments to unified virtualization manage-
ment for x86 and SPARC systems running
Oracle VM Server, in a single console.
Oracle VM Server for x86 leverages Oracles
Unbreakable Enterprise Kernel Release 3,
allowing the same high-performance, high-
scalability technology powering Oracle Linux
and Oracle engineered systems.

bit.ly/1p2maer
Oracle Linux 7
Oracle Linux 7 features include XFS,
Btrfs, Linux Containers, DTrace, Ksplice,
Xen enhancements, and the Unbreakable
Enterprise Kernel Release 3.

bit.ly/1ryCcTB
Oracle Business Process
Management Suite 12c
Oracle Business Process Management
Suite 12c contains new features designed
to deliver faster time to value when
implementing new business processes or
enhancing existing ones.

bit.ly/1pvYlNw
New Oracle Exadata Database Machine Optimized for Large-Scale
In-Memory and Database Cloud Workloads
Oracles newest addition to the Oracle
Exadata line of engineered systems,
Exadata Database Machine X4-8, delivers
extreme compute and data throughput for
large database workloads using powerful
8-socket database servers, intelligent
storage, ultrafast PCI flash cards, and
unified InfiniBand connectivity.
Like its predeces-
sors, the Exadata
Database Machine
X4-8 excels at tradi-
tional database work-
loads such as online
transaction pro-
cessing (OLTP) and
data warehousing,
but it is specifically
evolved for a new
generation of work-
loadsdatabase as a
service and database in-memory. Optimized
for the recently released Oracle Database
In-Memory option, Exadata Database
Machine X4-8 supports in-memory pro-
cessing with massive DRAM capacity,
together with transparent data tiering
to flash and disk for less performance
critical data.
Since Oracle Exadata Database Machine
was introduced in 2008, Oracle has been
delivering industry-leading engineered
systems that help our customers attain
the most value from their enterprise data,
says Juan Loaiza, senior vice president of
systems technology at Oracle. Exadata
Database Machine X4-8 again raises the bar
and provides an ideal platform for Oracle
Database In-Memory. Together, the com-
bination enables customers to evolve into
real-time enterprises.
bit.ly/1mYU2vu
Oracle VM 3.3 Delivers Enterprise-Scale Performance Enhancements
Oracle VM 3.3, Oracles latest server virtu-
alization product, delivers enhanced ease
of use for x86 and Oracles SPARC archi-
tectures, improved management features,
and expanded support for both Oracle and
non-Oracle workloads, including support
for OpenStack.
The new release extends support of
the Oracle VM Guest Additions feature to
major guest operating systems, including
Oracle Linux, Oracle Solaris, and Microsoft
Windows, to provide administrators fine-
grained control over the configuration and
behavior of components running within
the virtual machine, directly from Oracle
VM Manager. Users can also install the
OpenStack technology preview with Oracle
VM 3.3 test environments and the latest
version of Oracle Linux.
Oracle VM 3.3 continues to refine ease-
of-use capabilities, provides more flexibility
in network design, and delivers a new,
intuitive VM console, says Wim Coekaerts,
senior vice president of Linux and virtual-
ization engineering at Oracle. This new
release will allow customers to more easily
deploy, manage, and maintain enterprise-
scale applications across both x86 and
SPARC environments in a unified way.
bit.ly/1rEH72W
Oracle Launches Oracle Business Process Management Suite 12c
The latest release of Oracle Business Process
Management Suite includes improvements
to the products Oracle Business Activity
Monitoring and Business Architecture
Modeling features and enhanced support
for Adaptive Case Management and Oracle
Process Accelerators.
Business processes are integral to an
organizations success or failure, and in
todays rapidly changing enterprise envi-
ronment, managers need process man-
agement tools that enable them to make
quick, impactful changes, says Gangadhar
Konduri, vice president of product man-
agement at Oracle. With Oracle Business
Process Management Suite 12c, we are
helping organizations plan and manage
their entire business architecture through a
flexible and secure solution.
bit.ly/1pfPboj
SO14_Briefs.indd 12 7/28/14 9:36 AM
13 BRIEFS
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Oracle Extends Big Data Portfolio with Oracle Big Data SQL
Oracle has announced Oracle Big Data SQL,
SQL-based software that seamlessly inte-
grates data across Apache Hadoop, NoSQL,
and Oracle Database, minimizing data
movement while increasing performance
and helping to eliminate data silos.
Oracle Big Data SQL runs on Oracle Big
Data Appliance and can work in conjunction
with Oracle Exadata Database Machine.
As organizations increasingly use
diverse datasources beyond relational
databases, such as Hadoop and NoSQL,
data is becoming more and more siloed
hampering data analysis and insights and
limiting the true potential of big data, says
Andy Mendelsohn, executive vice president
of database server technologies at Oracle.
Oracle Big Data SQL harnesses the popular,
proven SQL query language to break down
these silos and finally bring big data into the
mainstream of an enterprise. Oracle con-
tinues its leadership in database innovation
with this simple yet powerful way for orga-
nizations to access all of their data, leverage
existing investments and skills, and gain
new value and insights that can transform
their business.
bit.ly/1sGuV4g
User Experience Enhanced for Oracle Applications Cloud
Release 8 of Oracle Applications Cloud
extends the simplicity, mobility, and exten-
sibility of the user experience for Oracle
Sales Cloud and Oracle Human Capital
Management Cloud.
Infographic-inspired,
tablet-friendly, and
interactive visualiza-
tions and embedded
analytics appear
throughout the new
user interface, further enhancing the user
experience and mobility of business-crit-
ical applications.
We understand how people work. We
want users to know where to go. We have
simple screens and analytics, so that you can
see your status, click to get more informa-
tion, and then commit to the task and go,
says Jeremy Ashley, vice president, Oracle
Applications User Experience.
bit.ly/1qiRQ5E I
-
H
U
A

C
H
E
N
MySQL Fabric Available Now
Oracle has announced the general avail-
ability of MySQL Fabric, an open source
framework for managing farms of MySQL
servers. Available for download at bit.ly/
mysqlfabric, this integrated and extensible
system makes it easier to scale out and add
high availability to MySQL applications.
Many of the worlds largest websites and
cloud-based applications rely on MySQL
replication and sharding to deliver high
availability and scalability, says Tomas
Ulin, vice president of MySQL engineering
at Oracle. MySQL Fabric makes high avail-
ability with automatic failure detection and
failover, as well as automated data sharding,
accessible to all. With this integrated and
open source framework, Oracle makes it
easier to safely scale out MySQL applica-
tions, either on premises or in the cloud.
bit.ly/mysqlfabric
Oracle Buys MICROS Systems
Oracle has entered into an agreement to
acquire MICROS Systems, a provider of
integrated software and hardware solu-
tions to the hospitality and retail industries.
Together, Oracle and MICROS will help
hotels, food and beverage facilities, and
retailers accelerate innovation and provide
customers with complete, open, and inte-
grated solutions.
Oracle has successfully helped cus-
tomers across multiple industries harness
the power of cloud, mobile, social, big data,
and the Internet of Things to transform their
businesses, says Oracle President Mark
Hurd. We anticipate delivering compelling
advantages to companies within the hospi-
tality and retail industries with the acquisi-
tion of MICROS.
bit.ly/1mSxwoH
Oracle Acquires GreenBytes
Oracle has agreed to acquire GreenBytes,
a provider of ZFS technology with domain
expertise in the areas of deduplication,
replication, and virtualization. GreenBytes
technology complements Oracles storage
solutions and is expected to enhance Oracle
ZFS Storage Appliance products.
bit.ly/1mYVOwE
New Releases of Oracle Tuxedo 12c and Oracle Tuxedo Application
Runtime 12c
Oracle has introduced the latest releases
of Oracle Tuxedo 12c and Oracle Tuxedo
Application Runtime 12c (Oracle Tuxedo ART
12c). Oracle Tuxedo 12c, the industrys #1
application server for the deployment of C/
C++/COBOL/Java enterprise workloads in
private and public cloud environments, now
delivers enhanced reliability, availability,
performance, and scalability for conven-
tional and enterprise cloud applications.
Conventional and cloud-based applica-
tion environments are becoming increas-
ingly complex, and present IT departments
with the unique challenge of managing
the applications and services developed in
various programming languages and plat-
forms, says Frank Xiong, group vice presi-
dent of software development at Oracle.
The latest release of Oracle Tuxedo 12c
provides a modern, open, and cloud-ready
platform that delivers the performance and
scalability customers need to develop and
manage the next-generation applications
that move at the pace of business.
The new release of Oracles mainframe
application rehosting platform, Oracle
Tuxedo ART 12c, helps organizations speed
up migration projects and accelerate adop-
tion of the new environment.
Even when customers recognize the
benefits of moving to open, flexible, and
scalable platforms, the transition to the
rehosted environment can be challenging,
says Xiong. Oracle Tuxedo ART 12c Release 2
products greatly simplify this transition
process by providing native mainframe
equivalent capabilities, supporting familiar
operation interfaces, and greatly extending
real-time monitoring and supportability of
the migrated applications.
bit.ly/1nQg2t0
bit.ly/1mlKjek
SO14_Briefs.indd 13 7/28/14 9:38 AM
14
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
BRIEFS
Oracle Buys LiveLOOK
Oracle has agreed to acquire LiveLOOK, a
leading provider of real-time, visual collabo-
ration technology for cobrowsing and screen
sharing. The addition of LiveLOOK will
enable modern customer service organiza-
tions to directly engage with consumers,
bolstering customer satisfaction, agent effi-
ciency, and revenue growth across web and
mobile channels.
Consumers are increasingly conducting
transactions across multiple digital chan-
nels such as web and mobile. Meeting
consumer demands and exceeding their
expectations for web and mobile service
and support will improve customer satis-
faction and enhance revenue, says David
Vap, group vice president, Oracle Product
Development. With LiveLOOK, Oracle
Service Cloud will enable customer service
and sales agents to deliver exceptional cus-
tomer experiences.
bit.ly/1u93EJm
Oracle SOA Suite 12c Available
Oracle SOA Suite 12c, the latest version
of Oracles complete and unified applica-
tion integration and SOA solution, enables
organizations to easily integrate and
connect applications across their entire IT
ecosystem on a single, unified platform and
includes new manageability enhancements
for private cloud deployments. With the new
release, organizations can achieve faster
time to market and increased productivity
with a low total cost of ownership.
To capitalize on new business oppor-
tunities, organizations need the flexibility
to use diverse solutions and environments
to best meet their needs, and this can pose
distinct and sizeable application integra-
tion challenges, says Amit Zavery, group
vice president, Oracle Fusion Middleware.
With Oracle SOA Suite 12c, we are helping
organizations overcome those obstacles
by delivering an integration platform that
is specifically designed for organizations
diverse application ecosystems. By enabling
significantly simplified integration, Oracle
SOA Suite 12c helps organizations speed
time to market, increase productivity, and
lower costs.
bit.ly/1ruKhpT
Oracle Enterprise Manager 12c Release 4: Cloud Acceleration
Now available, Oracle Enterprise Manager
12c Release 4 lets organizations rapidly
adopt Oracle-based, enterprise-scale
private clouds. New capabilities provide
advanced technology stack management,
secure database administration, and enter-
prise service governance, enabling Oracle
customers and partners to maximize data-
base and application performance and drive
innovation using self-service IT platforms.
Since its inception, Oracle has been
leading the way in innovative, scalable, and
high-performance solutions for the enter-
prise. With this release of Oracle Enterprise
Manager, we are extending this leadership
by providing enterprise-scale capabilities for
planning, delivering, and managing private
clouds, says Prakash Ramamurthy, senior
vice president of systems and cloud manage-
ment at Oracle. We call this zero-to-cloud
accelerated. These enhancements help our
customers to expe-
dite their adoption of
cloud computing and
prepare them for the
next generation of
self-service IT.
bit.ly/1mSvTXQ
I
-
H
U
A

C
H
E
N
Oracle ZFS Storage ZS3 Series Appliances Boost Virtualization and
Cloud Capabilities
The latest release of the Oracle ZFS Storage
ZS3 series accelerates virtual machine
(VM) deployment and monitoring, with the
midrange Oracle ZFS Storage ZS3-2 appli-
ance supporting more than 16,000 VM
boots from a single
platform in less than
seven minutes. Cloud
capabilities have been
extended in Oracle ZFS
Storage OS 8.2, adding
the OpenStack Cinder
driver for simplified
cloud provisioning
and orchestration
as well as integrated
RESTful management
APIs so customers can
use common methods to deploy public and
private clouds and provide IT as a service.
Todays heavily virtualized data centers
demand efficient, high-performance
storage in order to avoid performance
issues and operational disruption caused
by unpredictable virtual machine workloads
and boot storms, says Scott Tracy, vice
president of storage software at Oracle.
The new capabilities delivered by the
Oracle ZFS Storage ZS3 systems provide
valuable architectural benefits and superb
analytics to support high-density virtualized
environments. As a result, customers are
able to keep their operations running at full
speed in order to remain agile and respond
to valuable business opportunities.
bit.ly/1kAt5Kl
New, Highly Optimized x86 Servers
Oracle has announced the latest in its line of
workload-specific, enterprise-class servers:
the Sun Server X4-4 and Sun Server X4-8.
The Sun Server X4-4 is well suited
for applications requiring large memory
footprint virtual machines and is ideal
for running real-time analytics software.
The Sun Server X4-8 is ideal for running
Oracle Database and, when combined
with the Oracle Database In-Memory
option, can speed up query processing by
allowing even more of the database to be
memory-optimized.
The Sun Server X4-4 and Sun Server
X4-8 further Oracles goal of simplifying
IT and significantly reducing operating
expenses for our customers by delivering
products that are best for the Oracle
Database In-Memory option and business
analytics, says Ali Alasti, senior vice presi-
dent of hardware development at Oracle.
Through close collaboration with Intel, we
are the first to announce servers based on
the new Intel Xeon E7-8895 v2 processors
and the first with unique capabilities that
allow customers to dynamically address dif-
ferent workloads in real time.
bit.ly/1jCS04S
SO14_Briefs.indd 14 7/28/14 9:38 AM
Since 1985, Melissa Data has provided
the tools developers need to enhance
databases with clean, correct, and
current contact data. Our powerful, yet
affordable APIs and Cloud services
provide maximum flexibility and ease
of integration across multiple
platforms, including .NET, Java, C,
C++, Unix, Windows, Oracle, and SQL
Server. Build in a solid framework for
data quality and protect your
investments in data warehousing,
business intelligence, and CRM.
A better way to build
in data verification
Verify addresses, phones &
emails for over 240 countries
Add phones, emails, geocodes
& demographics
Find, match, and eliminate
duplicate records
Move update services keep
your contact data current
Free trials with 120-day ROI
guarantee
Melissa Data.
Architecting data quality success.
Data Quality Tools
for Developers
www.MelissaData.com 1-800-MELISSA
Address
Verification
Email
Verification
Matching/
Deduplication
Geocoding
Phone
Verification
Change of
Address
C
M
Y
CM
MY
CY
CMY
K
oracle-tooltime-mar12-fullpage.pdf 1 3/12/2014 4:03:59 PM
Untitled-1 1 8/14/14 2:50 PM
16
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
I
nformation technology is constantly
evolving. Server CPUs, networks, and
memory get faster while memory prices
continue to drop. As hardware gets more
powerful and memory more cost-effective,
the cloud database is getting even better
for business. In 2013, Oracle Database 12c
introduced a new multitenant architecture,
and on June 10, 2014, Oracle CEO Larry
Ellison introduced the latest innovation for
Oracle Database 12c: the Oracle Database
In-Memory option. [Its] the ability to
run all the data you frequently access
in-memory and access that data basically
instantaneously, explained Ellison at the
launch event.
MIXED WORKLOAD
The database row format is ideal for appli-
cation transaction processing, and the
database column format is better for ana-
lytical queries. What if you could perform
both types of operations quickly without
compromise? The innovation of the Oracle
[Database] In-Memory option is that we
store the data both ways. We store it both
in row format and in memory, in columnar
format, said Ellison. With Oracle Database
12c and Oracle Database In-Memory, the
row and column formats are simultane-
ously active and transactionally consistent.
Companies no longer need to choose
between optimal transaction performance
and high-speed analytics.
Oracle Database In-Memory not only
increases the speed of queries and ana-
lytics, but it also increases the speed of
online transaction processing (OLTP). We
have a lot of customers using our database
for transaction processing. We cannot
compromise transaction processing, said
Ellison. Using Oracle Database In-Memory,
OLTP that was slowed by analytic indexes
can now run at twice the speed, because
indexes can be dropped.
MINIMUM DISRUPTION,
MAXIMUM IMPACT
Ellison emphasized the fact that organiza-
tions using Oracle Database In-Memory
do not need to make any changes to their
SQL code or their applications. It is not
necessary to unload or reload any data,
and no functions are restricted. To deploy
Oracle Database In Memory, organiza-
tions simply need to configure the memory
capacity, configure tables (or partitions)
to be in memory, and delete the old
indexes that they dont need anymore. The
Oracle Database In-Memory option is also
deployed completely transparently. It just
works, said Ellison.
Although the column format is new in
Oracle Database In-Memory, the Oracle
Database row format works the same as
before. Just keep doing what youre doing.
Logging works, backup works, recovery
The DBA can now focus not so much on
database performance, per se, but on making
the database more useful to the business.
Larry Ellison, CEO, Oracle
Faster Answers, Faster Business
Oracle Database In-Memory option speeds queries 100 times
and transactions 2 times, with no changes to applications.
O
R
A
C
L
E
SO14_News_R1.indd 16 8/5/14 5:00 PM
17
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
NEWS BY CURRAN MAHOWALD
works; everything works unchanged,
Ellison said.
Ellison sees this new technology
reducing the workload of DBAs and
enabling them to perform higher-level
functions. The DBA can now focus not so
much on database performance, per se, but
on making the database more useful to the
business, he added.
A SOLID BASE
Oracle Database In-Memory is built on
Oracle Database, which means IT profes-
sionals can expect the same maturity and
reliability that are part of the proven Oracle
Database. All the advanced technologies
for storage tiering, database scale-up
and scale-out, recovery, and integrated
security that Oracle has spent decades
developing work transparently with Oracle
Database In-Memory.
Software engineered with hardware
delivers even better performance, and
Ellison discussed the ways in which the
new Oracle Database In-Memory software
leverages Oracles engineered systems.
He described the combination and per-
formance of Oracle Database In-Memory
with Oracle Exadata and SPARC M6-32
systems. Referring to the SPARC M6-32 big
memory machine, its 32 TB of memory,
and Oracle Database In-Memory, Ellison
explained what the combination of tech-
nologies means for business. This is the
worlds fastest computer for business,
said Ellison of the SPARC M6-32. You can
store all your data in memory; get all of
your answers instantaneously.
IN-MEMORY, IN PRACTICE
Oracle Senior Vice President Juan Loaiza
joined Ellison on stage to show an applica-
tion running Oracle Database In-Memory.
First, Loaiza demonstrated running a query
two different ways: by creating indexes
and by using Oracle Database In-Memory.
Both got virtually instantaneous results,
but with Oracle Database In-Memory it was
not necessary to figure out what queries
would be run or to map the indexes. One
of the nice things about [Oracle Database]
In-Memory is you dont have to create the
indexes, explained Loaiza. You dont have
to know the queries ahead of time. You just
place all this data in the [Oracle Database]
In-Memory columnar store, and then all
the queries run fast, no matter what you
query on.
Ellison and Loaiza assured the event
crowd that even though the data lives
in memory, it is still protected with the
strength and reliability of Oracle Database
12c. Youve never seen anything like this
before; an in-memory database with full
fault tolerance, the memory duplicated
across nodes, said Loaiza.
Organizations will do business
differently once they have access to
information at the speed in which Oracle
Database In-Memory delivers it. Youre
going to ask more-frequent questions,
Ellison said. Youre going to ask more-
complicated questions.
With its extreme performance, avail-
ability, and simplicity, the Oracle Database
In-Memory option certainly makes a dif-
ference in the speed of analytic queries
and business answers. Its the difference
between walking and flying. Its the differ-
ence between getting answers in hours and
getting them in seconds.
Youre going to change business pro-
cesses as a result of having this informa-
tion so quickly; being able to recompute
this information so quickly, concluded
Ellison. Youre going to become a real-
time enterprise.
LEARN more about
Oracle Database In-Memory
oracle.com/us/products/database/options/
database-in-memory
WATCH the Oracle Database In-Memory
Webcast
oracle.com/us/corporate/events/dbim
NEXT STEPS
Curran Mahowald is an Oracle Magazine and
Java Magazine contributor.
The column store is a cache, so it keeps all of your active data in memory, said Oracle CEO Larry
Ellison at the June 10, 2014, Oracle Database In-Memory event. So since all your active datas in
memory, the database runs at the speed of memory.
What is the speed of memory? Ellison presented several examples of Oracle Database In-Memory
real-world testing that demonstrated significant query processing speed and acceleration. Here are
some of those results:
Memorable Numbers
Product Change in Time Acceleration
JD Edwards EnterpriseOne Sales Order Management From 22.5 minutes to less
than 1 second
1,700x faster
Oracle E-Business Suites Oracle Transportation Management From 16 minutes to less
than 1 second
1,030x faster
Oracle E-Business Suite From 58 hours to
13.5 minutes
257x faster
Oracle Fusion Financials Cloud Service From 10 minutes to
3 seconds
210x faster
Oracle Senior Vice President Juan Loaiza described
Oracle Database In-Memory: Youve never seen
anything like this before; an in-memory database
with full fault tolerance. O
R
A
C
L
E
SO14_News.indd 17 8/1/14 10:51 AM
18 Book Beat
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
I
-
H
U
A

C
H
E
N
Oracle and Verizon Enterprise Solutions
Oracle and Oracle Gold Partner Verizon
Enterprise Solutions earlier this year
announced their new relationship to
offer Oracle software on Verizons cloud
infrastructure. As part of the agreement,
Verizon will offer Oracle Database and
Oracle WebLogic Server on Verizon Cloud.
Customers can pay as they go for Oracle
software and choose from either monthly
or hourly subscription pricing with the
security and reliability of Verizons
enterprise-class cloud infrastructure.
As companies migrate from on-premises
solutions to hybrid or cloud-based envi-
ronments, Oracle Database and Oracle
WebLogic Server on Verizon Cloud provide
an easy and cost-effective cloud offering.
This partnership is a win-win for our
mutual enterprise customers and part-
ners who are finding incredible value in
the form of greater IT flexibility, speed
of deployment, and budget optimiza-
tion, says Siki Giunta, senior vice presi-
dent, cloud services, Verizon Enterprise
Solutions. As enterprises continue to
migrate workloads to the cloud, they can
leverage current investments in Oracles
suite of database
and middleware
solutions, but
access them in a
more cost-effective,
agile way.
cloud.verizon.com
Oracle Exastack Ready Program Attracts Oracle Partners
Eight partners have achieved Oracle
Exastack Ready status indicating that they
support their applications with Oracle
Exadata Database Machine, Oracle Exalogic
Elastic Cloud, Oracle Exalytics In-Memory
Machine, or Oracle SuperCluster and their
component products including Oracle Linux,
Oracle Solaris, Oracle VM, Oracle Database,
and Oracle WebLogic Server.
Oracle Diamond Partner Capgemini N.V.s
Capgemini T-Police achieved Oracle Exadata
Ready, Oracle Exalogic Ready, Oracle
SuperCluster Ready, Oracle Exalytics Ready,
Oracle Database Ready, Oracle WebLogic
Ready, Oracle Linux Ready, and Oracle
Solaris Ready status.
Oracle Platinum Partner Siemens
Convergence Creators walletXpress 2.1
achieved Oracle Database Ready status.
Oracle Platinum Partner Tieto Latvias
Tieto Card Suite 4G achieved Oracle
Exadata Ready, Oracle SuperCluster Ready,
Oracle Database Ready, Oracle Linux
Ready, Oracle Solaris Ready, and Oracle VM
Ready status.
Oracle Gold Partner D-Day Technologys
employee management system achieved
Oracle Exadata Ready, Oracle Exalogic
Ready, Oracle SuperCluster Ready, Oracle
Database Ready, Oracle WebLogic Ready,
Oracle Linux Ready, Oracle Solaris Ready,
and Oracle VM Ready status.
Oracle Gold Partner HRC informacijski
inenirings Hibis solution achieved Oracle
Exadata Ready, Oracle Exalogic Ready,
Oracle Database Ready, Oracle WebLogic
Ready, Oracle Linux Ready, and Oracle VM
Ready status.
Oracle Gold Partner MicroStrategy
Inc.s MicroStrategy Mobile App Platform 9
achieved Oracle Exadata Ready, Oracle
Exalogic Ready, Oracle SuperCluster Ready,
Oracle Database Ready, Oracle WebLogic
Ready, Oracle Linux Ready, Oracle Solaris
Ready, and Oracle VM Ready status.
Oracle Gold Partner SmartStream
Technologies Transaction Lifecycle
Management solutions achieved Oracle
Exadata Ready, Oracle Exalogic Ready,
Oracle SuperCluster Ready, Oracle Database
Ready, Oracle WebLogic Ready, Oracle Linux
Ready, Oracle Solaris Ready, and Oracle VM
Ready status.
Oracle Gold Partner Tektronix
Communications IrisView achieved Oracle
Exadata Ready, Oracle SuperCluster Ready,
Oracle Database Ready, Oracle Linux Ready,
and Oracle Solaris Ready status.
nl.capgemini.com
siemens.at/convergence-creators
tieto.lv
d-daysoft.com
h-rc.si
microstrategy.com
smartstream-stp.com
tekcomms.com
Expert Oracle SQL: Optimization,
Deployment, and Statistics
By Tony Hasler
Apress
apress.com
Expert Oracle SQL:
Optimization, Deployment,
and Statistics is about
optimizing individual SQL
statements, especially on production data-
base systems. This Oracle-specific volume
begins by assuming that you have already
identified a particular SQL statement and
are considering taking steps to improve its
performance. The book describes a system-
atic process by which to diagnose a problem
statement, identify a fix, and implement
that fix safely in a production system.
Master Competitive Analytics with
Oracle Endeca Information Discovery
By Helen Sun and
William Smith
Oracle Press
oraclepressbooks.com
The highly practical
Master Competitive
Analytics with Oracle
Endeca Information Discovery Oracle Press
guide begins by covering Oracle Endeca
technology, its architecture, and best prac-
tices for implementation. The second half
of the book features a comprehensive col-
lection of real-world business analytics use
cases in key industries including financial
services, healthcare, research, manufac-
turing, retail, and the public sector. These
examples take readers step by step from
datasources to analytical applications.
Oracle WebLogic Server 12c:
Distinctive Recipes: Architecture,
Development and Administration
By Frank Munz
munz & more
munzandmore.com
Oracle WebLogic Server
12c: Distinctive Recipes:
Architecture, Development
and Administration is
written for software architects, adminis-
trators, and d evelopers. Brimming with
best practices, the significantly expanded
second edition is based on Oracle WebLogic
Server 12.1.2 and contains more than 130
additional pages, 6 new webcasts, and
more than 16 new or rewritten recipes.
Complementary to official courses and
manuals, this book offers recommenda-
tions, discussions, and best practices.
Look for other Oracle books at bit.ly/
oraclebookstore
SO14_Partner.indd 18 7/29/14 1:27 PM
19 PARTNER NEWS
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Deloitte Launches Center
of Excellence for Oracle
Engineered Systems
Oracle Diamond Partner Deloitte has
launched a new Oracle Center of Excellence
at its Deloitte Solution Center in Hermitage,
Tennessee. The Deloitte Oracle Center
of Excellence enables clients to directly
compare Oracles engineered systems
performance, manageability, and business
value against traditional multivendor data
center architectures. The center houses
Oracle Exadata Database Machine, Oracle
Exalogic Elastic Cloud, and Oracle Exalytics
In-Memory Machine. A range of Oracle
Applications and technologies are available
on the centers infrastructure.
deloitte.com
Partners Achieve Oracle
PartnerNetwork Specialized
Status for Oracle Cloud
Three Oracle partners have earned Oracle
PartnerNetwork Specialized status for their
Oracle Cloud solutions. Specialized status
spotlights the strengths and special skills of
experienced and committed Oracle partners.
CRMIT Solutions, an Oracle Platinum
Partner, has achieved Specialized status
for Oracle Sales Cloud. CRMIT Solutions
provides a variety of sales force automation
services, including consulting, sales plan-
ning, social sales, customer data enrich-
ment, training, health checks, and testing.
Edgewater Ranzal, an Oracle Platinum
Partner, has achieved Specialized status
for Oracle Planning and Budgeting Cloud
Service. Edgewater Ranzal delivers busi-
ness analytics solutions that include
Oracle Hyperion enterprise performance
management solutions and Oracle
Business Intelligence solutions.
BlueLeap, an Oracle Gold Partner, has
achieved Specialized status for Oracle
Service Cloud. BlueLeap delivers a suite of
add-in products and preconfigured func-
tionality that enable
businesses to engage
with customers
across channels.
crmit.com
ranzal.com
blueleap.com
Partners Achieve Oracle Exastack Optimized Status
Four partners have achieved Oracle Exastack
Optimized status for their solutions. The
Oracle Exastack Optimized program enables
Oracle partners to develop, test, and
tune their applications on Oracle Exadata
Database Machine, Oracle Exalogic Elastic
Cloud, Oracle
Exalytics In-Memory
Machine, and Oracle
SuperCluster engi-
neered systems.
Oracle Diamond
Partner Accentures
Accenture
Foundation Platform
for Oracle achieved
Oracle Exalogic
Optimized status.
Oracle Platinum
Partner Digital China
Financial Softwares
core banking system achieved Oracle
Exadata Optimized and Oracle Exalogic
Optimized status.
Oracle Gold Partner BiLogs HRMb
achieved Oracle Exadata Optimized and
Oracle Exalogic Optimized status.
Oracle Gold Partner Informatica
Corporations Informatica MDM
Multidomain Edition achieved Oracle
Exadata Optimized and Oracle Exalogic
Optimized status.
accenture.com
digitalchina.com
bilog.hr
informatica.com
UST Global Becomes Oracle Platinum Partner
UST Global, a provider of IT services and
solutions for Global 1000 companies, has
achieved Oracle Platinum Partner status for
its in-depth experience in upgrades, imple-
mentation, support and maintenance, and
customizations for a wide range of Oracle
products, including Oracle E-Business Suite
and Oracles PeopleSoft, Siebel, and JD
Edwards applications.
ust-global.com
I
-
H
U
A

C
H
E
N
Partners Earn Oracle Validated Integration with Oracle Taleo Solutions
Four partners have achieved Oracle
Validated Integration demonstrating that
their software products complement and
integrate with Oracle Taleo solutions.
Oracle Gold Partner Chequed.com
achieved Oracle Validated Integration
between ChequedReference and Oracle
Taleo Business Edition Cloud Service, a
component of Oracle Talent Management
Cloud. ChequedReference automates pre-
employment reference checks.
Oracle Gold Partner EmployeeScreenIQ
achieved Oracle Validated Integration
between its employment background
screening platform and Oracle Taleo
Enterprise Cloud Service, a component
of Oracle Talent Management Cloud.
EmployeeScreenIQ helps organizations
make informed hiring decisions.
Oracle Gold Partner General Information
Services achieved Oracle Validated
Integration between its eQuest+ back-
ground screening platform and Oracle
Taleo Enterprise Cloud Service. General
Information Systems offers a suite of back-
ground screening solutions for criminal
history, verifications, licensing and creden-
tialing management, references, ID verifica-
tions, and credit reports.
Oracle Gold Partner Shaker Consulting
Group achieved Oracle Validated Integration
between its Virtual Job Tryout solution and
Oracle Taleo Business Edition Cloud Service.
Virtual Job Tryout delivers an employment
assessment that combines simulated job
activities and tasks, a career opportunity
value proposition, and a realistic job preview
in one candidate experience.
chequed.com
employeescreen.com
geninfo.com
shakercg.com
SO14_Partner.indd 19 7/29/14 1:28 PM
20
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
ARCHITECT BY BOB RHUBART
CONNECT: blogs.oracle.com/archbeat facebook.com/brhubart twitter.com/brhubart linkedin.com/in/bobrhubart

M
obile will be more disruptive than
the web and the PC. So said a tweet
from Forrester Research this past spring
(bit.ly/1pQeSMD). Given the head-spinning
rise in the popularity and use of smartphones
and tablets in recent years, betting against
that prediction is probably not the smartest
thing you could do with your money.
The mobile juggernaut, that great un
tethering that has freed people from their
desktops and laptops, shows no signs of
subsiding. A report from industry research
and advisory firm Gartner confirms the
obvious: sales of smartphones and tablets
skyrocketed between 2012 and 2013 and
remain robust in 2014 (gtnr.it/1x5O9jq). And
in April the LA Times reported that 2014 sales
of wearable devices, including smart watches
and web-enabled glasses, will triple sales of
similar devices in 2013.
If your organization has not yet come up
with a mobile strategy, you might want to
reprioritize your to-do list. But the key word
here is strategy.
Mobility is always changing, says Chris
Muir, senior principal mobility and devel-
opment tools product manager at Oracle.
You may solve the set of problems you
have today, but because the market moves
so quickly, in a week, a month, a year, youll
have a whole range of things coming on
board that need to be addressed.
The requirement for long-term thinking
should come as no surprise to architects,
for whom dealing with constant change
is part of the job. But any mobile strategy
that effectively anticipates the depth and
breadth of change must start with an under-
standing of what mobility really means.
According to Steven Davelaar, a con-
sulting solutions architect with the ADF/
Oracle WebCenter A-Team, an effective
mobile strategy must take into account
more than the devices themselves and the
applications developed for them; it must
also focus on creating a mobile-friendly back
end. You will have to tailor some of the data
loads, for instance, says Davelaar. You
have to think about different strategies
data synchronization and much more.
A mobile application is not a solution
by itselfits part of your enterprise solu-
tion, agrees Oracle ACE Luc Bors, principal
consultant at AMIS Services. Developing a
mobile application is not just about devel-
oping a user interface. User interface devel-
opment is only 25 to 50 percent of the whole
mobile application. The rest of the work is
definitely in back-end services that provide
data, and also in security.
But while a mobile-friendly back end is
essential, the mobile application itself looms
large. If you thought you could simply squeeze
your company website or critical web appli-
cation onto a smartphone screen and call it
a day, guess again. Todays mobile devices
offer a variety of capabilities that define the
modern mobile experience. Dont make the
mistake of overlooking these features.
Not many enterprises seem to be lever-
aging mobility at any level beyond commu-
nication and limited access to parts of enter-
prise applications, says Oracle ACE Director
Lucas Jellema, CTO at AMIS Services. That
strategy leaves a lot of money on the table in
the form of location-based services, person-
alized cross-device behavior, offline opera-
tions, and gamification that consumers
regularly use on their mobile devices. Make
sure your mobile strategy looks for ways to
leverage those capabilities in order to meet
enterprise objectives.
And bear in mind that the transformation
to enterprise mobility has benefits beyond
mobile. For example, Oracles Davelaar rec-
ommends converting from more-complex
and less performant SOAP-based web
services to more-lightweight and mobile-
friendly REST/JSON web services. This
change will help to streamline and simplify
the back end in order to better accom-
modate any kind of user interface, not just
those associated with mobile applications.
Thats good strategy, and good business.
The bottom line is straightforward:
Your company has no choice but to adopt a
mobile strategy. And your role in defining
that strategy will help to determine your
own mobilityas it relates to the direction
you travel on the org chart.
Developing a mobile
application is not just
about developing a
user interface.
Luc Bors, Oracle ACE
Mobile Today. More Mobile
Tomorrow.
There is more to mobile than what you can hold in your hand.
LISTEN
Going Mobile: Developing Enterprise
Mobile Apps
bit.ly/1pQfmCo
Java EE 7, HTML5, and Mobile App
Development
bit.ly/1k6IX6M
Mobile Architectures and Oracle ADF Mobile
bit.ly/1pQfy4H
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).
SO14_Architect.indd 20 7/24/14 2:17 PM
0
5
25
75
95
100
mednet-kataxorisi
12 201 17
Untitled-1 1 8/14/14 3:07 PM
22
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
PEER-TO-PEER BY BLAIR CAMPBELL
Learn more about the Oracle ACE program at oracle.com/technetwork/community/oracle-ace.
Game Changers
Peers on communities and technologies that are radically enhancing the way they work
Which new features in Oracle Database are
you finding most valuable? Im exploring the
Oracle Multitenant option of Oracle Database
12c as it relates to managing and replicating
my development and test application
instances. The ability to bring up or copy an
entire database without the need to build
another database server is tremendous.
What technology has most changed
your life? Mobile. With BYOD [bring your
own device] initiatives, the wide variety
of mobile platforms makes supporting
them a challenge. Oracle has been great
at delivering updates to support these
constantly changing environments.
You recently became one of the first Oracle
ACE Associates. What was the process for
earning that status? Becoming an Oracle
ACE Associate is based on your contributions
to the Oracle community. Over the last
year and a half, I really began to share
my experiences with Oracle technology
over social media and to connect with
leaders in the community. Networking and
demonstrating knowledge of the technology
is the starting pointand now I hope to add
to that body of knowledge by learning and
sharing, in order to become an Oracle ACE.
How did you get started in IT? As a summer
intern at Bell Canada, I was tasked with
printing the e-mails of a woman who was on
maternity leave and then cataloging them
into binders by project. After about a day, I
got bored and decided to build a small macro
in Visual Basic that could automatically filter
her e-mails into different folders on her
computer. After she saw that, she quickly
moved me to the database department.
How are you using mobile computing at your
company these days? As a mobile enablement
company, we are working alongside Oracle to
help Oracle Forms customers go mobile with
their existing systems. Using Oracles mobile
framework and development tools, we are
able to build apps based on our web services
and deploy to both iOS and Android devices
from one code base. Its a huge timesaver for
our mobile projects.
What advice do you have about how to
get into mobile development? I suggest
following Oracle ACEs and Oracle product
managers on Twitter to find interesting
blog posts and get more involved in the
community. Another great information
source is YouTube. And definitely utilize the
user groups for free webinars!
Whats your favorite tool on the job? I find
Oracle Enterprise Manager Cloud Control 12c
to be a big help, and Im a massive fan of
the Automatic Workload Repository and
Automatic Database Diagnostic Monitor
featuresthey really help me and the team
break through the barrier and spend our time
fixing issues, rather than trying to find them.
How about a favorite technique? Having a
background in tech support is a big benefit;
it helps me break problems down quickly
into smaller pieces and get to the root cause.
I see a lot of people still trying to fix issues
at the top level, instead of building from
the ground up and figuring out where in the
layers somethings actually broken.
Which new features in Oracle Database are
you finding most valuable? Were doing a lot
of work with the Oracle Multitenant option,
and we were also fortunate to be part of the
Oracle Database In-Memory beta. These are
big game changers; they provide so much
value that I think once people see them
theyre going to want to move to Oracle
Database 12c.
Company: City of Atlanta, Georgia
Job title/description: Senior IT manager, Oracle
Applications, responsible for managing a team
providing support for Oracle solutions
Location: Atlanta, Georgia
Length of time using Oracle products:
Four years
DANNY BRYANT
Company: AuraPlayer Modernization Solutions, a
technology company providing solutions that enable
Oracle customers to modernize their legacy Oracle
Formsbased systems for new environments
Job title: CEO and cofounder
Location: Brookline, Massachusetts
Length of time using Oracle products: 16 years
MIA URMAN
Company: e-DBA, an Oracle Platinum Partner
providing Oracle managed and cloud services,
professional services, and software asset
management
Job title/description: Technology director,
responsible for overseeing the technologies
deployed on client projects
Location: London, England
Oracle credentials: Oracle Certified Professional
(several releases, including Oracle Database 10g)
and Oracle Certified Master (Oracle9i Database),
with 18 years of experience using Oracle products
JAMES ANTHONY
SO14_Peer.indd 22 7/24/14 3:54 PM
Copyright 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Oracle Cloud
Applications
ERP
Financials
Procurement
Projects
Supply Chain
HCM
Human Capital
Recruiting
Talent
CRM
Sales
Service
Marketing
More Enterprise SaaS Applications
Than Any Other Cloud Services Provider
Fonts: Univers LT Std. 75 Black, 65 Bold, 55 Roman, 45 Light,
67 Bold Condensed, 57 Condensed
PRODUCTION NOTES
PUB NOTE: Please use center marks to align page.
Please examine these publication materials carefully.
Any questions regarding the materials,
please contact Sandeep Hundal (650) 506-2791
READER
01
LASER% RELEASED
4/3
2014
Print Ad Resize
8 x 10.875
Oracle Magazine
(Full Page Ad)
Job #:
Ref #:
Headline:
Date:
Project:
Type:
Live:
Trim:
Bleed:
414M_MLT00178_CldApps_OMag
114M_MLT_CldApps
Oracle Cloud Applications
04/03/2014
NAS Regional Fulfillment
Magazine
7 x 9.875
8 x 10.875
8.25 x 11.125
Untitled-1 1 8/14/14 3:10 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
24
BY TOM CALDECOTT
ORACLE OPENWORLD AND JAVAONE
September 28 through October 2 is conference week in San Francisco.
T
ens of thousands of Oracle technolo-
gists and business users head to Oracle
OpenWorld and JavaOne San Francisco
every year to hear about the latest Oracle
and Oracle-related technology, best practices, and
trends from industry experts and peers.
This year, each conference will be more than a
world-class learning and networking opportunity:
The focus is on customer conversations. More
Oracle customers are scheduled to appear on con-
ference stages than in previous years, and more
customers are scheduled in conference sessions to
share their experiences and talk about their busi-
ness challenges and successes.
ORACLE OPENWORLD IS CENTRAL
Oracle OpenWorld San Francisco, the worlds largest conference
focused on Oracle technology, offers more than 2,500 sessions, labs,
demos, and meetups this year as well as more than 3,000 speakers
discussing everything from cloud computing to developer tools,
applications, solutions, and industries.
At the heart of Oracle OpenWorlds customer-centric storytelling
programming are nine focus areas that concentrate on the business
and technology topics and industries most significant to Oracle cus-
tomers. Attendees will be able to choose from these focus areas, or
Centrals, covering customer experience (CX), human capital man-
agement (HCM), enterprise resource planning (ERP), supply chain
management (SCM), big data, engineered systems, MySQL, Oracle
PartnerNetwork (OPN), and major industries from communications
to utilities.
CONNECTING
CUSTOMERS,
CONTENT, AND
CAREERS
O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
SO14_ConferencePreview_R1.indd 24 8/7/14 3:23 PM
Caption Ra explique sunt
poreptatibus seque num quatatq
uatisit amustru ptatius arum
etur, saectistem quis autentia
et aut dolut et audandit quam
hariaecto eum hiciderum eatquid
SO14_ConferencePreview.indd 25 8/5/14 3:05 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
O
R
A
C
L
E
;

O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
Click Programs on the Oracle
OpenWorld website (oracle
.com/openworld) to navigate
through the various Centrals
and get information, including
the speakers, sessions, demos,
exhibits, and agenda for each
focus area.
CX CENTRAL
@ OPENWORLD
CX Central @ OpenWorld offers
300 sessions covering mar-
keting, sales, service, commerce,
and socialall with one focus: to
help attendees make the most of
their marketing efforts and learn
how to deliver a seamless cus-
tomer experience regardless of
where or how customers connect
with their companies. Discover
how to differentiate your brand
by creating a unified web, social,
and contact center experience.
HCM CENTRAL
@ OPENWORLD
How can you improve your
employee experience? HCM
Central @ OpenWorld provides
85 sessions dedicated to helping
attendees leverage the cloud
and use social media to drive
collaboration and develop talent.
Learn how to employ mobile
technology to give employees
anytime, anywhere access;
use big data to gain workforce
insight; and efficiently manage
a complex global organization
with local compliance.
ERP CENTRAL
@ OPENWORLD
At ERP Central @ OpenWorld,
discuss ways to transform
your back-office systems into
a collaborative, efficient, and
intuitive hub. Get a peek at the
roadmap for Oracles ERP prod-
ucts, hear how Oracle customers
are taking their ERP to the cloud,
and learn how to assess when
the time is right for your busi-
ness to do the same.

SCM CENTRAL
@ OPENWORLD
Transform your supply chains
from a functional necessity to
a competitive advantage. At
SCM Central @ OpenWorld,
attendees learn how to use the
cloud to deliver logistics solu-
tions that seamlessly combine
cross-functional processes with
mobile and traditional tools. Hear
customers and industry experts
talk about dramatically reducing
response time to demand and
supply upsets with advanced and
rapid supply chain planning.
BIG DATA CENTRAL
@ OPENWORLD
How can you gain additional
benefit from big data in your
business and in your decision-
making? Get answers in more
than 100 dedicated sessions at
Big Data Central @ OpenWorld,
and hear how customers are har-
nessing the power of big data for
their business.
ENGINEERED SYSTEMS
CENTRAL @ OPENWORLD
At Engineered Systems Central
@ OpenWorld, sessions focus
on simplifying and enabling IT
for the cloud, big data, and the
customer-driven world. Discover
how to implement the ideal
cloud platform for databases.
Get information and advice to
effectively manage a platform
for in-memory databases that
provides fast transactions, and
select a platform to improve data
warehousing. Sessions cover the
latest versions of Oracle Exadata
and Oracle Exalogic.
MYSQL CENTRAL
@ OPENWORLD
Millions of organizations
depend on MySQL to power
SO14_ConferencePreview_R1.indd 26 8/7/14 3:34 PM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
27
their business-critical web,
cloud, and embedded applica-
tions. Want to learn and share
best practices for developing
next-generation applications
with MySQL? At MySQL Central
@ OpenWorld, find out whats
new in the MySQL world, learn
about new features, get insight
on product roadmaps, boost
your skills, and share your
success stories with the global
MySQL community.
OPN CENTRAL
@ OPENWORLD
Focusing on Oracle
PartnerNetwork, OPN Central
@ OpenWorld is designed to
help partners build their busi-
ness with Oracle. Attendees
have the opportunity to hear
from Oracle executives the
current corporate direction and
strategy for Oracle products,
solutions, and services. OPN
Central @ OpenWorld provides
partner-focused discussions
about the latest IT trends,
including cloud, social, and
mobile, and opportunities
to network with customers,
prospects, and peers in the
OPN Lounge and at the OPN
AfterDark reception.
INDUSTRY CENTRAL
@ OPENWORLD
Whats your industry? Education
and research? Financial services
and insurance? Healthcare? Life
sciences? Communications?
Public sector? Retail? Industry
Central @ OpenWorld offers
tracks with dedicated sessions
and networking opportunities
to keep you up to date and con-
nected with industries spanning
the alphabet from automotive
to utilities.
When: Oracle OpenWorld and
the @ OpenWorld focus areas run
September 28 through October 2.
THE ONE
PLACE FOR ALL
THINGS JAVA
This year, the worlds leading
Java conference offers more
than 500 dedicated sessions,
including keynotes, hands-on
labs, tutorials, demos, and
meetups, along with more than
500 speakers. JavaOne session
topics include the core Java plat-
form, Java and security, and Java
and the cloud. Attend talks on
tools and techniques to enhance
the user experience, the Internet
of Things to interact with the
physical world using Java, and
agile development. Learn about
Java 8, including lambda expres-
sions, the new date/time APIs,
and embedded support.
Take a break in Dukes Caf,
the JavaOne outdoor lounge on
Taylor Street. And bring your
children to Devoxx4Kids on the
Saturday before the conference.
For more about JavaOne, visit
oracle.com/javaone.
When: Devoxx4Kids is on
September 27; JavaOne runs
September 28 through October 2.
ENROLL IN THE
UNIVERSITY
Make the most of your confer-
ence experience by attending
Oracle University or JavaOne
University. Both training pro-
grams take place on Sunday,
September 28, and offer
deep-dive seminars. Visit
oracle.com/openworld/oracle-
university and oracle.com/
javaone/java-university for
more information.
When: Oracle University and
JavaOne University are on
Sunday, September 28.
PARTICIPATE
IN THE ORACLE
USERS FORUM
Attend a program of user-
driven content presented by the
Oracle, Java, and MySQL user
group communities. In addi-
tion, many of the user groups
will have presentation kiosks
and representatives onsite to
answer questions about the
groups and activities during the
conferences. Want to join a user
group? The representatives can
help you register. Visit oracle
.com/openworld/usergroups
for more information.
When: Oracle Users Forum is on
Sunday, September 28.

HAVE FUN
The Oracle conferences are more
than a conversation about the
latest technology, best practices,
and industry trends. Theyre also
about having fun and networking.
For example, on Monday,
September 29, join the celebra-
tion for developers, DBAs, and
architects at Oracle Technology
Networks Tech Fest in Oracle
Plaza (on Howard Street). And
mark your calendar for the Oracle
Appreciation Event on Treasure
Island on Wednesday, October 1.
Enjoy food, carnival games, and
a Ferris wheel, while rocking out
with legendary bands.
Tom Caldecott is a writer with Oracles Brand Communications group.
REGISTER for
Oracle OpenWorld
oracle.com/openworld/register
JavaOne
oracle.com/javaone/register
JOIN THE CONVERSATION
O
R
A
N
G
E

P
H
O
T
O
G
R
A
P
H
Y
SO14_ConferencePreview.indd 27 8/5/14 3:06 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
ON THE ROAD
Oracle technology delivers rapid application
development for the mobile enterprise.
BY DAVID A. KELLY
W
E
S

R
O
W
E
L
L
28
SO14_MobileDev.indd 28 7/29/14 3:09 PM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
I
n todays connected world, business happens
everywhere. Thats why more and more organi-
zations are realizing that their applications have
to go with the business: from smartphones to
tablets, enterprise applications are going mobile.
This is where Oracle application development
frameworks can help, by putting enterprise appli-
cations in the hands of mobile application users.
In addition to being the framework behind
Oracles own packaged mobile applications
and a powerful modernization solution, Oracle
Application Development Framework (Oracle
ADF) has provided a blueprint for the model-
view-controller architecture of Oracle ADF
Mobile, enabling organizations to create native
mobile applications for a range of platforms
leveraging existing expertise in Java and Oracle
development frameworks. While Oracle ADF is
a high-productivity, end-to-end development
framework built on Java Platform, Enterprise
Edition for enterprise applications, Oracle ADF
Mobile has been an enterprise Java and HTML5
based framework for developing iOS and Android
mobile applications from a single codebase.
29
SO14_MobileDev.indd 29 7/29/14 3:09 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
30
J
O
H
N

B
L
Y
T
H
E
Oracle ADF Mobile was released in October 2012, and many
organizations have used it to rapidly build and deploy mobile
applications. In June 2014, Oracle announced Oracle Mobile
Application Framework, which fully supports applications devel-
oped under Oracle ADF Mobile. (See the Oracle Mobile Application
Framework sidebar for more information on this announcement.)
Oracle continues to recognize the critical need for mobile
enterprise applications, says Joe Huang, senior principal product
manager at Oracle. With Oracle ADF Mobile and Oracle Mobile
Application Framework, organizations have usedand will continue
to usetheir expertise in Java, JavaScript, or Oracle ADF to build
mobile enterprise and industry applications.
OPENING THE SPIGOTS WITH SOA
Businesses in many industries are improving their operations
by quickly developing and deploying mobile applications. One
company doing rapid application development for mobile devices
is Northumbrian Water, a water and sewage utility with 2.7 million
customers in the northeast of England and 1.8 million customers in
the southeast of England.
In 2012 Northumbrian Water determined that it needed to
improve and organize its applications for better manageability and
improved support. The organization uses more than 100 applica-
tions, from Oracle Applications such as Oracle E-Business Suite
to many in-house applications developed with Oracle Forms and
Oracle Database technologies. In addition, since approximately
one-third of Northumbrian Waters employees are mobile, pro-
viding them with mobile applications and access to corporate data
was critically important.
After discussions with Oracle, Northumbrian Water chose Oracle
SOA Suite to help it rationalize its application portfolio as well as
resolve some of the integration problems the company faced. We
are able to get cranky legacy applications to talk to each other in a
very efficient way by using Oracle SOA Suite, says Northumbrian
Water Solutions Architect Ana Nicholson.
The company soon rolled out an iOS application built with Oracle
ADF Mobile and using web services orchestrated with Oracle SOA
Suite that allows Northumbrian Water managers to approve Oracle
iProcurement requisitions from their mobile devices. Northumbrian
Waters Oracle ADF Mobile application development strategy has
produced benefits across the organization.
What weve done with Oracle ADF Mobile has been wonderful,
not just from a business point of view but also from an informa-
tion technology point of view, says Mark Watson, lead architect at
Northumbrian Water. Its helping get our personnel up to speed
and familiar with new mobile technologies, composite web services,
and more-modern application development frameworks.
As a modern development framework and the core of Oracle
ADF Mobile, Oracle ADF delivers modern application interfaces and
modern development conveniences. Oracle ADF gives a modern
look and feel to our applications, says Nicholson. It offers rapid
development with its framework, which has ready-made features
that you just need to plug your business logic into.
Managers at Northumbrian Water are now able to use the new
mobile application to approve Oracle iProcurement requisitions
from anywhere, at any time, as long as they have an iOS device.
Managers can review and examine outstanding requisitions as
well as approve new ones as they come in. In addition to putting
its mobile Oracle iProcurement application into production,
Northumbrian Water has also used Oracle ADF Mobile to create a
mobile timekeeping application and rolled it out to 450 employees.
Ana Nicholson, solutions architect, and Mark Watson, lead architect, both of
Northumbrian Water, believe that their Oracle ADF Mobile application strategy
has produced benefits across the organization.
We just put the applications
in our app store and our users
with mobile devices consume
them. . . . The time to market
is a lot more rapid.
Mark Watson, Lead Architect, Northumbrian Water
SO14_MobileDev.indd 30 7/29/14 3:10 PM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
31
The Oracle ADF Mobile applications weve deployed have been a
great success, says Watson.
For Northumbrian Water, another business benefit of devel-
oping mobile applications such as its mobile Oracle iProcurement
approval app and its mobile timekeeping app comes from the
ease of deployment. We just put the applications in our app store
and our users with mobile devices consume them, says Watson.
Upgrades and updates are fairly seamless, and you know theyre up
and running in no time. The time to market is a lot more rapid than
it is for traditional enterprise applications.
DELIVERING ON TIME WITH ORACLE ADF MOBILE
Sometimes the greatest opportunity for creative uses of tech-
nology is in industries not traditionally associated with high tech.
Take the case of building materials supplier Texas Industries (TXI),
the largest supplier of cement in Texas, with more than 2,000
employees and annual revenues of close to US$900 million.
Theres a tremendous opportunity for automation to better
serve our customers, says Terry Marshall, CIO at Texas Industries.
The market for building materials is often commodity-based,
so you really want to look at ways that you can differentiate your
company from competitors, and we think mobile technology is one
way we can do that.
For example, you might not think of concrete as a perishable
item, but it is. Timing is especially critical in the concrete business;
a typical truckload of concrete has about a 90-minute shelf lifethe
concrete has to be delivered within this timeframe or it wont be
useable. On top of that, most construction involves the carefully
coordinated delivery of many truckloads (sometimes more than
100) of concrete, as well as the coordination of the workforce at the
job site to work with the concrete after its delivered.
Thats why the timing of the truckloads matters a great deal to
TXI and its customers. Its also why the organization developed a
mobile application using Oracle ADF Mobile called ReadyTrac to
help sequence concrete deliveries. Customers can use the app to do
a variety of things, including get alerts when cement trucks leave the
plant or when they arrive at the job site, monitor how much concrete
has been poured and how much is on the way, search order history,
Like most organizations, Oracle has made its
applications mobilefrom Oracle E-Business
Suite to Oracle Cloud applications. And like
many of its customers, Oracle has used Oracle
ADF Mobile to do it.
Oracles application development teams
have built new mobile applications using
Oracle ADF Mobile for the same reason that
Oracle customers have used itbecause it
provided a quick and easy way to natively
deploy a rich set of back-end functionality to
a range of mobile devices. Oracle has released
more than 40 Oracle ADF Mobilecreated
applications in the Apple App Store alone
for solutions such as Oracle Cloud, Oracle
E-Business Suite, and Oracles PeopleSoft and
JD Edwards applications.
Oracle ADF Mobile technology has allowed
us to very quickly build mobile applications
for core Oracle enterprise solutions, says Joe
Huang, senior principal product manager at
Oracle. Weve definitely seen a huge adoption
of mobility, and weve leveraged Oracle ADF
Mobile to very quickly build mobile applica-
tions for our solutions. With the availability of
Oracle Mobile Application Framework, Oracle
Applications teams will be able to release
even more compelling applications that lever-
age the ever-increasing set of specialized
device capabilities.
Oracle Mobilizes Apps
Bala Venkataraman (left), chief architect, and Terry Marshall, CIO, both of Texas
Industries, used Oracle ADF to build an online customer portal, and then moved
on to use Oracle ADF Mobile to rapidly create enterprise mobile applications.
P
A
U
L

S
.

H
O
W
E
L
L
With Oracle ADF Mobile, even
with a limited IT staff, weve
been able to create good mobile
applicationsfor different types
of mobile platformswhich is
huge for us.
Terry Marshall, CIO, Texas Industries
SO14_MobileDev_R1.indd 31 8/5/14 4:59 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
32
and track truck locations.
Our first Oracle ADF Mobile application
took 10 weeks from beginning to end, and
now we can roll out updates as well as a new
application in 4 weeks. One week to build
the application, 2 weeks for testing and user
feedback, 1 week to release to the Apple App
Store. True rapid application development
with releases on a monthly basis! says Bala
Venkataraman, chief architect at TXI.
TXI initially used Oracle ADF to build an
online customer portal, and then it moved
on to use Oracle ADF Mobile to create enter-
prise mobile applications. TXI uses Oracle
JDeveloper as the integrated development
environment for its development, since
Oracle JDeveloper supports both web and
mobile app development. The develop-
ment process starts with identifying a
datasource and creating services, says
Venkataraman. After you build out your
services, Oracle ADF Mobile becomes a plat-
form for rapid application development.
By using Oracle ADF Mobile, TXI was
able to create native apps for both Apple
and Android devices. The initial ReadyTrac
application has worked so well that TXI has
developed three other mobile applications.
With Oracle ADF Mobile, even with a
limited IT staff, weve been able to create good mobile applica-
tionsfor different types of mobile platformswhich is huge for
us, says Marshall. Oracle ADF Mobile gives us flexibility to deploy
our custom apps to multiple platforms.
In addition, building mobile apps using Oracle ADF Mobile
doesnt require extensive expertise with native coding capabilities
for the target platform. To build mobile
applications using Oracle ADF Mobile, you
dont need an army of developers, but you
do need a good design sense, a good archi-
tecture, and a good understanding of your
data, says Venkataraman. With Oracle ADF
Mobile you dont have to know Apple Xcode
or the Android SDK; you actually write it in
Java, and Oracle ADF Mobile writes the Apple
or Android code for you. We can use one
platform and one codebase and deploy it to
the web, to an iPhone, to an Android phone,
or to a tablet.
POWERING UP WITH MOBILE APPS
Managing electrical power requires man-
aging information about locations on the
power grid, and mobile apps can help power
companies do that more effectively and
efficiently. PowerSouth Energy Cooperative,
based in Andalusia, Alabama, is improving
its business by managing location informa-
tion with Oracle ADF Mobile.
PowerSouth is an electricity generation
and transmission cooperative serving more
than 900,000 customers throughout central
and south Alabama and the northwest
Florida panhandle. Like many organizations,
PowerSouth currently runs a number of
Oracle Applications, including Oracle E-Business Suite, and custom
applications developed using Oracle Forms, Oracle Reports, PL/SQL,
Oracle Application Express, and more.
In 2013, PowerSouth partnered with PITTS America, a Troy,
Michiganbased company, to create its first two mobile
applicationsone for managing and maintaining information
related to each substation, and the other to provide operational
information to top managers, directors, and vice presidents.
PowerSouth decided to use Oracle ADF Mobile for the apps because
the company wanted to be able to quickly, easily, and securely deploy
enterprise applications to mobile devices such as Apple iPads.
We needed to create mobile applications that would be easy
to use and let us capitalize on our existing infrastructure, says
Kenneth Jones, business systems supervisor at PowerSouth. For
us, Oracle ADF Mobile was the way to go. I really like what it can do
on a mobile device.
For the mobile app related to substation information mainte-
nance, the goal was to give field inspectors powerful and real-time
tools for inspecting and maintaining the cooperatives substations.
In addition to capturing data about each substation, PowerSouths
field inspectors can also take photographs and collect GPS informa-
tion to document situations and equipment. The end result is that
field inspectors can get their jobs done faster, with a higher level of
detail, while collecting more-precise maintenance information.
Northumbrian Water
nwl.co.uk
Headquarters: Durham, England
Industry: Water
Oracle products: Oracle Application
Development Framework, Oracle ADF Mobile,
Oracle JDeveloper, Oracle SOA Suite, Oracle
E-Business Suite 12, Oracle E-Business
Suite Adapter, Oracle Database 10g, Oracle
Database 11g, Oracle WebLogic Server, Oracle
Utilities Mobile Workforce Management
Texas Industries
txi.com
Headquarters: Dallas, Texas
Industry: Construction materials
Oracle products: Oracle Application
Development Framework, Oracle ADF Mobile,
Oracle JDeveloper, Oracle WebLogic Server,
Oracle Database, Oracle E-Business Suite,
Oracle Business Intelligence solutions
PowerSouth Energy Cooperative
powersouth.com
Headquarters: Andalusia, Alabama
Industry: Utilities
Oracle products: Oracle Application
Development Framework, Oracle ADF Mobile,
Oracle JDeveloper, Oracle WebLogic Server,
Oracle Database
SNAPSHOTS
In June 2014, Oracle unveiled
Oracle Mobile Application
Framework.
Oracle Mobile Application
Framework simplifies the
development of multiplatform
on-device mobile applications.
Features include support for
multiple integrated development
environments, including Oracle
JDeveloper and Eclipse (through
Oracle Enterprise Pack for Eclipse);
support for multiple develop-
ment languages, including Java,
JavaScript, and HTML; support
for Apache Cordova plug-ins; and
support for applications developed
under Oracle ADF Mobile. Oracle
recommends that new mobile
application development be
done with the new Oracle Mobile
Application Framework.
The new Oracle Mobile
Application Framework offers an
easy transition for Java developers
to bring their development skills
to the mobile world, leveraging
their Java and JavaScript skills
with the tools they already use,
says Chris Tonas, vice president
of mobility and development
tools at Oracle. By integrating
the mobile application developer
experience on both the front and
back end, we are helping develop-
ers deliver mobile applications
to their organization faster and
more efficiently.
Oracle Mobile Application Framework
SO14_MobileDev.indd 32 7/29/14 3:11 PM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
33
The new substation information application runs on an iPad and
communicates wirelessly using a secure VPN connection back to
the organizations Oracle WebLogic Server. It can also be used in an
offline mode when no wireless signal is available. No user training is
required for the apps, and they tie into PowerSouths existing infra-
structure, so the company didnt have to purchase any additional
servers or other back-end hardware.
Weve been able to give our employees in the field a lot of informa-
tion about each substation that they never had before, such as the
previous months inspection, says Jones. It not only makes it easier
to record the information, but it allows us to be more proactive on our
maintenance of the substations as well as analyze trends over time.
From Jones perspective, the need for mobile applications is only
going to increase. More people are demanding the ability to capture
and view data out in the field than ever before. I believe theres going
to be a constant push over the next few years to make more data
readily available in the field, and as an IT organization, weve got to
be able to get it out there somehow, says Jones. Oracle ADF Mobile
is helping us overcome those challenges and get data to and from the
field, extending our enterprise applications to our mobile workers. For
PowerSouth, using Oracle ADF Mobile has worked out really well.
PowerSouth chose Oracle ADF Mobile because the company wanted to quickly, easily, and securely deploy enterprise applications to mobile devices. We needed to create
mobile applications that would be easy to use and let us capitalize on our existing infrastructure, says Kenneth Jones (right), business systems supervisor at PowerSouth.
David A. Kelly (davidakelly.com) is a business, technology, and travel
writer who lives in West Newton, Massachusetts.
LEARN more about
Oracle ADF
oracle.com/technetwork/developer-tools/adf
Oracle ADF Mobile
oracle.com/technetwork/developer-tools/adf-mobile
Oracle Mobile Application Framework
oracle.com/technetwork/developer-tools/maf
NEXT STEPS
More people are demanding the ability to capture and view data out
in the field than ever before. . . . Oracle ADF Mobile is helping us
overcome those challenges and get data to and from the field.
Kenneth Jones, Business Systems Supervisor, PowerSouth
M
A
R
C

B
O
N
D
A
R
E
N
K
O
/
G
E
T
T
Y

I
M
A
G
E
S
SO14_MobileDev.indd 33 7/29/14 3:12 PM
K
E
I
T
H

T
S
U
J
I
/
G
E
T
T
Y

I
M
A
G
E
S
KDDI executives were
concerned about whether
Oracle engineered
systems would meet its
system performance
requirements. Through
careful preparation, we
confirmed that the Oracle
SuperCluster T5-8 and
Oracle Exadata Database
Machine engineered
systems had more than
enough performance for our
needs, says Kato Toshio,
general manager of the
EPC Network Technology
Division at KDDI.
SO14_KDDI.indd 34 8/1/14 11:00 AM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
35
T
odays dynamic global telecommunications
market is a business in which new competitors
arrive, new technologies displace existing ones,
and new devicesfrom laptops to smartphones and
tabletssign onto networks seemingly every day. It is
also one in which customers expect from their carriers
just the oppositestability.
Technology innovation, globalization, and the
entrance of new players are causing rapid changes to
Japans mobile telecommunications market, explains
Kato Toshio, general manager of the EPC Network
Technology Division at KDDI, one of
Japans leading mobile and fixed-
line telecom providers.
Technology and markets might be
in constant flux, but for mobile phone
users, service must be stable, Toshio
continues. So our mission is to provide a
greater range of services and connectivity
optionssupporting multiple uses, mul-
tiple networks, and multiple deviceswhile
providing stable mobile services that meet
the increased number of subscribers and
data transactions.
KDDI was put to the test when it introduced its newest
high-speed mobile service, called au 4G LTE. Like other such
next-generation mobile services, it is built on the international GSM
(Global System for Mobile Communications) and UMTS (Universal
Mobile Telecommunications System) standards. In addition to
delivering speeds up to four times faster than its previous 3G ser-
vices, KDDI anticipated a major uptick in subscribers and data
volumes on its network. By the end of 2013, KDDI had garnered 29
percent of the Japanese mobile telecom market, thanks in part to its
4G offering.
The move to 4G LTE and the accompanying increased subscriber
base and data volumes required as many changes behind the scenes
as they did to the companys networks. This was especially true for
its mission-critical User Authentication System, its subscribers
most frequent interface to the company and its services. That
system, Toshio explains, is used for the
three Asauthentication, authorization,
and accounting. Maintaining the stability
of our User Authentication System is
absolutely essential.
BEHIND THE SCENES
With that goal in mind, KDDI looked for the
least disruptive way to expand the authen-
tication systems capacity and capabilities
to meet growing demand. At first, the EPC
Network Technology Divisiona longtime
Oracle SPARC and Oracle Solaris IT shop
expanded its server farm to 40 SPARC
KDDI
kddi.com
Location: Tokyo, Japan
Industry: Communications
Employees: 27,073
Revenue: 4,333,628 million yen (for fiscal
year ending March 31, 2014)
Oracle products: Oracle SuperCluster T5-8,
Oracle Exadata Database Machine, Oracle
Exalogic Elastic Cloud, Oracle Solaris,
Oracle TimesTen In-Memory Database,
Oracle Database
SNAPSHOT
STABILITY
AND CHANGE
In Japans dynamic mobile telecom market, KDDI
charts a steady course with Oracle SuperCluster
T5-8 and Oracle Exadata Database Machine.
BY PHILIP J. GILL
SO14_KDDI_R1.indd 35 8/5/14 12:55 PM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
36
Enterprise M3000 servers from Oracle
to handle the increased number of sub-
scribers and the growing data volume.
Although that expansion provided
the performance KDDI needed, at least
temporarily, it eventually also brought
management complexity. When we
scaled up our server farm to 40 units, the
management workload and costs got out
of hand, says Toshio. Updating server
software, for example, would take many
hours to complete because there were so
many physical servers.
To reduce complexity and costs,
KDDI decided to consolidate its 40
servers onto three Oracle SuperCluster
T5-8 engineered systems, built spe-
cifically for high-throughput, high-
performance applications. The decision
to go with Oracle SuperCluster was
designed to minimize disruption and
maintain stable, transparent services
to subscribers.
Staying with Oracle Solaris and
SPARC was our first choice because
the system is mission-critical and it
would require little or no changes to our
existing software, says Toshio. Besides,
he adds, Oracle Solaris also has better
troubleshooting tools, such as DTrace,
and SPARC systems are more reliable
than commodity Intel servers.
Toshio admits that KDDI took on
additional schedule and deployment
challenges when choosing Oracle
SuperCluster T5-8. Planning and imple-
mentation required very close coordina-
tion between all parties, particularly
because when KDDI selected Oracle SuperCluster T5-8, the product
had not yet begun shipping, so pretesting on the actual equipment
was not possible, he says.
To overcome this challenge, he continues, Oracle assembled
servers, storage, InfiniBand switches, and other required compo-
nents to create a simulated Oracle SuperCluster. Testing proceeded
successfully with the simulation, and when the just-released Oracle
SuperCluster T5-8 engineered system was deployed, it became the
first one in use as a production solution.
THE PAYOFF
Today the expanded authentication system sits between the mobile
devices and the subscriber database, says Toshio. Actual subscriber
data is stored on our core back-end Oracle Database on Oracle
Exadata Database Machine, while the same subscriber data is also
loaded into a user data cache that runs
in Oracle TimesTen In-Memory Database
on the Oracle SuperCluster T5-8 server,
Toshio explains.
The core Oracle Exadata database
updates the Oracle TimesTen In-Memory
Database automatically, which enables
quicker authentication between mobile
devices and Oracle SuperCluster, he
continues. The access log is also stored
and passed along to the billing system,
which runs on another system.
For added safety, KDDI has installed
not one but three Oracle SuperCluster
T5-8 servers, explains Toshio. All three
are production machines, and any one
machine working alone can maintain
continuous, uninterrupted service.
Besides the extra level of availability,
Toshio says the new Oracle SuperCluster
T5-8based User Authentication System
provides 12 times faster performance
than the previous system, while reducing
floor space by 50 percent and electricity
consumption by 15 percent.
We were very concerned about
whether we would get the system per-
formance we needed to stably handle
the transition from 40 servers, while
maintaining sufficient disk I/O, says
Toshio. But through careful prepara-
tion, we confirmed that the Oracle
SuperCluster T5-8 and Oracle Exadata
Database Machine engineered systems
had more than enough performance for
our needs.
For KDDI, Oracle engineered systems
provide benefits beyond reliability,
transaction performance, and high availability. Oracle engineered
systems are pretested, preconfigured, and proven by Oracle, Toshio
says. For a rapidly changing environment and industry such as
ours, it is a huge benefit to build and run the system quickly without
having to take the extra time for tuning, configuring, and testing. t
Philip J. Gill is a San Diego, Californiabased writer and editor.
LEARN more about
Oracle SuperCluster
oracle.com/supercluster
Oracle Exadata
oracle.com/exadata
NEXT STEPS
While the Oracle SuperCluster T5-8 server has
dramatically improved KDDIs User Authentication
System performance, whats at the back end of
that system is equally important. For KDDI, that
back end is an Oracle Exadata Database Machine.
The User Authentication System needs to
access the users history of the services, which
are stored on the back-end database server at all
times, says Kato Toshio, general manager of the
EPC Network Technology Division at KDDI.
When initially installed at KDDI, the Oracle
Exadata Database Machine consolidated 2 TB of
data previously on two SPARC Enterprise M3000
servers from Oracle onto a single system and pro-
vided four times greater transaction performance.
By replacing those servers with a single Oracle
Exadata Database Machine, we also reduced floor
space by 25 percent and power consumption by
15 percent, Toshio adds.
Of course, what matters most is database
performance, Toshio concludes. Thanks to
Oracle Exadata, the SQL processing speed of our
Oracle database is approximately 20 times faster.
BACK-END BOOST
SO14_KDDI.indd 36 8/1/14 11:00 AM
Untitled-1 1 8/14/14 3:22 PM
W
ith data growing at an incredibly rapid pace,
customers are demanding more and more from
their applications. Oracle engineered systems are
optimized to achieve enterprise performance levels that are
unmatched in the industry.
If your organization is not leveraging Oracle engineered
systems, its time to ask your software vendor how these
preintegrated hardware and software systems can help you
optimize the productivity and performance of your applications,
while at the same time reducing the cost and complexity of your
IT infrastructure.
Oracle engineered systems should be considered
whenever an application is deployedwhether for a new
implementation, a hardware refresh, or an upgrade. Oracle
engineered systems are designed and optimized to provide
extreme performance, simplied management, and low total
cost of ownership (TCO) across a wide range of different
business needs. Combined, these benets provide outstanding
return on investment and make Oracle engineered systems
the best platform on which to deploy any application running
on the Oracle Database, Oracle Fusion Middleware, or Oracle
Business Intelligence.
For Oracle customers, extreme performance is about taking
advantage of new opportunities, discovering new areas of
efciency, and enabling innovation to deliver the kind of results
and business performance thatuntil nowsimply werent
possible. Oracles engineered systems combine best-of-breed
hardware and software components with game-changing technical
innovations. Designed, engineered, and tested to work best
together, Oracles engineered systems can power the cloud or
streamline data center operations to make traditional deployments
even more efcient, without the need for application code
changes. Each layer of the stackand all the products within
the layershave been designed and engineered to work together
according to open standards. This provides organizations with
a complete, integrated, and high-performance infrastructure for
their on-premises, cloud-based, and hybrid environments.
Oracles research and development investments of more
than US$5 billion annually have resulted in systems that provide
simple solutions that start delivering results from day one. Its no
surprise that Oracle engineered systems are the most successful
products in Oracles history, delivering:
Simplied deployment with pretested, precongured
solutions that accelerate implementation of all of your
applications
Massive performance gains with hardware and software
engineered to work togetherthis means that your current
applications could run several times faster than they do today
Enhanced business agility with the exibility to respond
quickly to changing conditions
Business impact: What if you could
The marriage between your business-critical applications and
the high performance of Oracle engineered systems means that
your organization can derive signicant business benets. For
example:
Are Your Critical
Applications Delivering
Extreme Performance?
ADVERTISING SUPPLEMENT
More than 1,500 Oracle partner applications are supported with
Oracle engineered systems, providing superior value to customers.
Since deploying our hotel search engine
on the Oracle Exadata platform, we have
been able to simplify our architecture, and
we are able to service more results to our
customersultimately providing them a
better experience.
Winthrop Short, VP of Technology, Orbitz Worldwide
What if you could guarantee higher uptimes in your
warehouses when receiving products?
What if your IT infrastructure could handle 525 times
more allocations, and warehouse picks were done 18 times
faster than they are done today?
What if your nancial transactions messaging hub
ran three to seven times faster than it does today?
What if your core banking infrastructure could handle
ve times more volume than your top hardware does today
and with three times better response time?
What if you could close your trading day 11 times
faster for around-the-world coverage?
What if you could provide risk analysis multiple times
during the day for a lower risk prole in your transactions?
What if you could quickly perform daily operations on
50 million smart meters?
What if you could create joint venture reports in minutes
versus weeks?
What if you could lower your daily sales outstanding (DSO)
by enabling signicantly faster processes?
And what would it mean to your business if you could do
this for a low TCO?
Why select an Oracle Exastack Ready or
Oracle Exastack Optimized application?
The Oracle Exastack program enables software partners
and other members of Oracle PartnerNetwork (OPN) to
leverage a highly scalable, integrated infrastructure to deliver
their applications tuned, tested, and optimized for high
performancewithout any code changes!
Since the launch of the Oracle Exastack program in June
2011, more than 1,500 OPN partner applications have stated
support for Oracle engineered systems, and the community
continues to grow daily. The Oracle Exastack program enables
Oracle partners to leverage Oracle engineered systems to
rapidly build and deliver faster, more reliable applications.
This leads to higher satisfaction and improved business
results among the valuable customers who utilize their
applications on engineered systems.
Oracle engineered systems are being adopted worldwide
at a very rapid pace. The benets to both Oracle customers
and software vendors are signicant. Through the Oracle
Exastack program, customers can be condent when selecting
a partners Oracle Exastack Ready application, knowing
that their software vendors application is supported and
ready to run with an Oracle engineered system, and that an
Oracle Exastack Optimized application has been tested
and tuned with the goal of optimum speed,
reliability, and scalability.
Today, customers simply wont wait
for an application to think and respond.
Software vendors have to deliver the extreme
performance and high availability their
customers demand, and they rely on Oracle
engineered systems to do it, said David Hicks,
vice president, Worldwide ISV, OEM, and Java
Business Development, Oracle. Certifying
their applications through the Oracle Exastack
program helps our valued growing partner
community continue to innovate and deliver the
customer experience their users demand.
Superior value for customers
As a customer, when you see an Oracle Exastack
Ready or Oracle Exastack Optimized logo, you can be
condent that the independent software vendor (ISV) has built
a sound application that is current with Oracle technology
and is supported with an Oracle engineered system. If you
are using these applications, but not running them on Oracle
engineered systems, its time to talk with Oracle and see
how to jumpstart your application performance and deliver
superior value to your business.
If youre looking for superior performance along with reduced
cost and IT complexity, call your partner or ISV today and ask
them if their applications support Oracle engineered systems
and are Oracle Exastack Ready or Oracle Exastack Optimized.
Find an Oracle Exastack Partner application:
www.oracle.com/partners/goto/exastack
ADVERTISING SUPPLEMENT
Griaule Biometrics
GBS Suite 3.0
Oracle Exalogic Optimized, Oracle Exadata Optimized
Within the frst 4 years, Griaule began ofering
its products worldwide. Today, with over 12 years
of biometric expertise and over a million daily
authentication operations, our technology is clearly a
quality reference to the market.
Griaule employs the biggest and most specialized
biometric R&D team in the southern hemisphere,
working closely with researchers from leading Brazilian
universities. Tis guarantees the most accurate fngerprint
verifcation algorithm in the world, as evidenced by the
award won in the FVCan independent evaluation
organized by four universities around the globe.
We provide applications to fnancial institutions,
nationwide public identifcation, law enforcement
agencies, healthcare and to whoever needs the
convenience and security of biometric authentication.
For more information visit
www.griaulebiometrics.com
WANdisco
Non-Stop Hadoop for Oracle Big Data Appliance V 1.9
Oracle Big Data Appliance Optimized
WANdiscos Non-Stop Hadoop for Oracle Big Data
Appliance delivers 100% uptime over a wide area
network for mission-critical applications that process
large volumes of unstructured data.
As an Oracle Big Data Appliance Optimized application,
Non-Stop Hadoops continuous availability layer can be
designed into Big Data infrastructure from the outset, to
meet the requirements of the worlds most demanding
customers.
WANdisco is an Oracle Gold Partner. WANdiscos
products are diferentiated by its patented, active-data
replication technology, providing 100% hardware
utilization and serving crucial high availability (HA)
requirements for Hadoop Big Data.
For more information visit:
www.wandisco.com/hadoop/
non-stop-hadoop-oracle
Mednet International
MEDNEXT+
Oracle Exalogic Optimized
Oracle Exadata Optimized
MedNet International is a unique information
technology company. Our software, MedNeXt+, refects
an in-depth understanding of the health insurance
business and continuous evolution over almost two
decades. It enables organizations to meet todays
challenges and tomorrows emerging business needs
with a comprehensive, fexible and integrated platform
combining sophisticated functionality with impressive
performance and reliability.
Over the last 20 years, Oracle provided technology
continuity and innovation supporting MedNeXt+ s
evolution strategy. Recently, achieving Oracle Exadata
Optimized and Oracle Exalogic Optimized status has
expanded MedNeXt+ s capabilities to address large and
demanding Health Insurance organizations.
For more information visit
www.mni.gr and
www.mednext.com
Volante Technologies, Inc.
Volante Designer version 5.0.x
Oracle Exalogic Optimized, Oracle Exadata Ready, Oracle
SuperCluster Ready
Founded in 2001, Volante Technologies is a global leader
in the provision of innovative fnancial data integration.
Volante is dedicated to enabling clients to navigate and
manage the diverse, complex and constantly growing range
of message formats, standards and protocol challenges
encountered throughout the lifecycle of any fnancial
transaction. By helping companies comply with industry
standards through a model-driven approach, integrated
with a wide range of Oracle infrastructure products and
applications, Volante and Oracle provide a cost-efective,
scalable and market-leading platform.
Volante Designer 5.0 has been tested and optimized
on Oracle Exalogic Elastic Cloud to execute in excess of
one million operations per second. Volante is an Oracle
Gold Partner.
For more information visit
www.volantetech.com.
Email: info@volantetech.com
Visit tqcorp.com
Team Quality
Innitus
Oracle Exadata Ready
Team Quality, an Oracle PartnerNetwork member
for over 5 years, is an industry leading Independent
Software Vendor (ISV) providing business solutions and
professional services for the payment and credit market.
Our software solutions are optimized to deliver extreme
performance while achieving accurate results in a
highly competitive and critical market; covering the
whole lifecycle of fnancial requirements, including:
Credit Scoring, International / Private / Retail Credit
Card Management, Transaction Switching and Mobile
Features with EMV ready solutions.
Team Quality combines more than 23 years of market
experience with successful installations in several
countries in Latin America, including Visa and
MasterCard PCI Compliant success cases.
Team Quality, the Innovative Payment Solutions
Company.
Step Ahead Solutions, Inc.
CAPS - Clouds Application Provisioning
System Ver 2.0
Oracle Exadata Ready, Oracle Exalogic Ready,
Oracle SuperCluster Ready
Step Ahead has developed a patent pending cloud
application provisioning system named CAPS https://www.
youtube.com/watch?v=weptOGyjLiE. We help organizations
reduce their barrier of entry into cloud computing and
accelerate implementations. It may take three weeks to build
an environment for an BI proof of concept; compared to a
half day provision in the cloud with CAPS. Typical project
cost can be reduced by 50% to 70% by using Step Aheads
Computing Platform. Step Ahead Solutions is a technology
company located in Californias Silicon Valley and a Gold
level member of the Oracle PartnerNetwork.
We are experts in Oracle Data Warehouse and Oracle
Business Intelligence technology; Oracle Application
Analytics; Oracle E-Business Suite; and Oracles PeopleSoft,
Siebel and JD Edwards applications. We deliver location
transparent services for on premise as well.
For more information visit
www.stepaheadsolution.com
and www.youtube.com/
watch?v=weptOGyjLiE
For more information visit
www.dscon.com.br/en
DSCON
iGov PAD version 1.2
Oracle Exadata Ready, Oracle Exalogic Ready,
Oracle SuperCluster Ready
Since 2005, DSCON develops projects based on
middleware solutions and has consolidated itself as a
channel specialized in Oracle Fusion Middleware solutions
to clients in the public and private sectors in Latin
America. Continuous eforts in training its employees,
support for Oracles engineered systems, and excellence in
its operations has helped DSCON achieve Platinum level
Oracle PartnerNetwork membership.
One of our biggest projects is the Digital Process solution
adopted by the government as a standard for the entire state
of Rio de Janeiro aiming to transform all administrative
processes into digital ones. Trough this experience we
developed an innovative product called iGov PAD - Digital
Administrative Processesto create, manage, submit and
control administrative documents and processes through a
single data repository using digital certifcation.
For more information visit
www.neos.hr
NEOS
NEOS Protability Insight; NEOS ADF KickStart; NEOS BI Framework
Oracle Exadata Ready, Oracle Exalogic Ready,
Oracle Exalytics Ready
NEOS information system design and development is an
Oracle Platinum Partner with broad international experience
with medium-sized and large customers. We excel in areas of
DW/BI & EPM Solutions and Custom Development
Solutions based on Oracle Application Development
Framework, Java and related technologies. Our products are
packaging technical excellence with best practices and years
of experience. All our products are Oracle Exastack Ready:
NEOS KickStart for Oracle Application Development
Framework helps in rapid development of enterprise
applications or conversion of legacy systems.
NEOS Proftability Insight is providing extensive analytical
and reporting capabilities in corporate proftability.
NEOS BI Framework is leveraging pre-built modules and
best practices in all project phases.
NEOS is helping its clients reach new levels in business
excellence. Be one of them.
Print. Digital. Mobile
Copyright 2013, 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.
Go to where the
conversation lives.
Connect with Oracle Magazine on your favorite social
channel and be a part of our growing community.
Join Us.
OracleMagazine
Oracle Magazine
@OracleMagazine
Untitled-1 1 8/14/14 3:23 PM
Middleware Developer 43 BUSINESS ANALYTICS BY MARK RITTMAN
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Big Data Meets
Business Intelligence
Explore Oracle Big Data Lite Virtual Machine examples
and tutorials to see how big data gets reported.
I
f youre new to big data and interested in
learning more about technologies such
as Apache Hadoop, Hadoop Distributed File
System (HDFS), MapReduce, and NoSQL,
the recently released Oracle Big Data Lite
Virtual Machine (available for download
from Oracle Technology Network at bit.ly/
1iofYOV) is a great place to get started.
Designed for testing and educational
purposes and based on the software used
in Oracle Big Data Appliance, this virtual
machine (VM) comes with examples and
tutorials to get you started with key Oracle
big data technologies.
Recent releases of Oracle Business
Intelligence Enterprise Edition 11g have
introduced new options for connecting to
big data sources, including the ability for
Oracle Business Intelligence Enterprise
Edition 11g to connect to Apache Hive, a
subproject within Hadoop that provides a
SQL-like interface for Hadoop and NoSQL
data. Using this new Apache Hive connec-
tivity, you can include data from Oracle Big
Data Appliance and other Hadoop clusters
in your reports and dashboards, combining
it with other datasourcessuch as Oracle
Database and Oracle Essbaseto provide a
complete enterprisewide view of your data.
CONNECTING TO ORACLE BIG DATA LITE
VIRTUAL MACHINE
To show how Oracle Business Intelligence
Enterprise Edition 11g works with big
data sources, I will use Oracle Business
Intelligence Enterprise Edition 11g to
connect to the Hadoop installation on
Oracle Big Data Lite Virtual Machine, using
Hive connectivity.
Ill connect to a Hive database called
moviedemo, which contains a single Hive
table, which, in turn, maps to a web server
log file containing details of customer movie
recommendations. Then, because this Hive
table contains only basic user interaction
details, Ill blend this Hadoop-sourced
data with useful reference data from Oracle
Database 12c, also located in Oracle Big Data
Lite Virtual Machine.
To follow along with this example, you
will need the following software and VMs:
The Oracle Big Data Lite Virtual Machine,
along with Oracle VM VirtualBox if you do
not already have it installed
An installation of Oracle Business
Intelligence Enterprise Edition 11g
(11.1.1.7); for this example, I use a Microsoft
Windowsbased installation
Hive Open Database Connectivity (ODBC)
drivers available for download at bit.ly/
1j0mtXX (Note that the Hive ODBC drivers
that ship with Oracle Business Intelligence
Enterprise Edition 11g [11.1.1.7] are for
the older HiveServer1 protocol whereas
Oracle Big Data Lite Virtual Machine
comes with the Cloudera distribution that
includes Hadoop 4.6, which uses the newer
HiveServer2 protocol.)
Your installations of Oracle Big Data
Lite Virtual Machine and Oracle Business
Intelligence Enterprise Edition 11g (11.1.1.7)
must be visible to each other on the same
network. If you want to run the example in
this article on your own laptop or desktop
computer, the machine will need as much as
12 GB of RAM total for both Oracle Big Data
Lite Virtual Machine and your installation
of Oracle Business Intelligence Enterprise
Edition 11g (11.1.1.7), and you will need to use
the host-only networking option in Oracle
VM VirtualBox.
If your installation of Oracle Business
Intelligence Enterprise Edition 11g (11.1.1.7)
is on your organizations network, you will
need to configure Oracle VM VirtualBox to
work with bridged networking, so that it
picks up an IP address from your organiza-
tions DHCP server. See Oracle Big Data Lite
3.0 Quick Deployment, at bit.ly/1j7uI13,
for details on installing Oracle Big Data Lite
Virtual Machine and choosing between the
different networking options.
In addition, your installation of Oracle
Business Intelligence Enterprise Edition 11g
(11.1.1.7) must resolve the DNS name
bigdatalite.localdomain to the IP address
that Oracle Big Data Lite Virtual Machine is
using. In order to configure this, follow
these steps:
1. With Oracle Big Data Lite Virtual
Machine open and the desktop visible,
right-click in the desktop, and select
Open in Terminal from the menu.
2. At the command prompt, enter the
command ifconfig. Then, for the first
adapter (typically labeled eth2 or eth4)
in the list of network adapters displayed,
locate the IP address next to inet addr.
In my case, the IP address listed is
172.16.107.221, but yours will be dif-
ferent. Note this IP address for later,
and select File -> Close to close the
Terminal window.
3. In Oracle Business Intelligence
Enterprise Edition 11g (11.1.1.7), assuming
that you are using Microsoft Windows
2008 R2 as your OS environment,
click the Start button and right-click
the notepad icon when its displayed,
selecting Run as Administrator from the
menu. Then, using the File dialog box,
navigate to Windows -> System32 ->
drivers -> and so on and open the file
called hosts. With this file open, create
an entry that resolves Oracle Big Data
Lite Virtual Machine to its correct IP
ORACLE BUSINESS INTELLIGENCE ENTERPRISE EDITION 11g
I
-
H
U
A

C
H
E
N
SO14_BA_Rittman.indd 43 7/29/14 2:40 PM
44 BUSINESS ANALYTICS
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
address, as shown below (note that your
IP address will be different):
# localhost name resolution is
# handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
172.16.107.221 bigdatalite.localdomain
bigdatalite
Then, select File -> Close to close the
Notepad window.
4. Next, still within the Oracle Business
Intelligence Enterprise Edition 11g envi-
ronment, install the Hive ODBC drivers,
using the Windows program installer you
downloaded earlier. Then create a new
ODBC datasource using those drivers and
pointing to Oracle Big Data Lite Virtual
Machine by selecting Start -> Control
Panel -> Administrative Tools -> Data
Sources (ODBC), and then create a new
system datasource name (DSN), using
the following options:
Click Test to check that the datasource
connects successfully, click OK, and then
click OK again to close the dialog box.
CONNECT TO HIVE AND HADOOP SOURCES
At this point, all the connections are in place
to start connecting your Oracle Business
Intelligence Server repository to the Hive
server on Oracle Big Data Lite Virtual
Machine. In the following example, Ill edit
the Oracle Business Intelligence Server
repository online to bring in the Hive table
(but you could also create a new offline
repository and upload that to your Oracle
Business Intelligence Server, using Oracle
Fusion Middleware Control).
1. With your Oracle Business Intelligence
Server started, select Start ->
Oracle Business Intelligence -> BI
Administration from the Windows
desktop. When the Oracle BI
Administration tool starts, select File ->
Open -> Online and enter the details for
your Oracle Business Intelligence server
and repository. For example,
2. To import the table metadata for the log
file table, select File -> Import Metadata
from the BI Administration toolbar
and then select and enter the following
values to connect to the Hive server on
Oracle Big Data Lite Virtual Machine:
Click Next, and then click Next again.
3. You will be presented with a list of the
databases that are available from the
Hive server. Figure 1 shows an example
of this list, including any other Hive
databases you may have created on
Oracle Big Data Lite Virtual Machine
prior to this example. Navigate to the
moviedemo database, select the
movieapp_log_stage Hive table, and
then click Import Selected to move it to
the Repository View panel.
4. With the BI Administration tool still
open, locate the hive_bigdatalite data-
base within the Physical layer panel and
double-click it to open it for editing.
With the General tab selected, change
Database Type to Apache Hadoop and
click OK. Click No when asked if you
want to edit the connection pool that
accompanies the physical database.
Then click the Save button on the appli-
cation toolbar, and select No when asked
whether you want to check the reposi-
tory for consistency. (You will perform a
consistency check of the repository after
all edits are complete.)
5. Now you can test the connection to
the Hive table on Hadoop. Right-click
the movieapp_log_stage physical table
within the Moviedemo physical data-
base, and select View Data. After a short
while, you should see a table of data
displayed from the Hive server; the delay
in returning data is because Hive, in turn,
runs a MapReduce job to return data from
the HDFS log file, an approach designed
more for batch processing but capable of
handling very large sets of data. Figure 2
shows data returned from the Hive table.
Driver:
Cloudera ODBC Driver
for Apache Hive
Data Source Name:
hive_bigdatalite
Port:
10000
Database:
moviedemo
Hive Server Type:
Hive Server 2
Mechanism:
user name
User Name:
oracle
Repository Password:
Admin123
User:
weblogic
Password:
welcome1
Connection Type:
ODBC 3.5
DSN:
hive_bigdatalite
Username:
oracle
Password:
welcome1
Figure 1: Importing the Hive table metadata into the BI repository
SO14_BA_Rittman.indd 44 7/29/14 2:41 PM
45 BUSINESS ANALYTICS
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
USING ORACLE BUSINESS INTELLIGENCE
ENTERPRISE EDITION 11g TO BLEND
HADOOP AND RELATIONAL DATA
You now have a successful connection to
the Hive table that displays data from the
log file in the Hadoop file system, but on its
own, this file isnt very useful. It includes
customer IDs, for example, rather than the
descriptive name of the customer or where
that person is located.
There are various ways you could supple-
ment this log data with customer and
product reference data. You could upload
customer and product files into HDFS and
join that data with the log file data, using
a HiveQL join, similar to a join in regular
SQL. Alternatively, and as Ill do now, you
could use the data federation capabilities
of Oracle Business Intelligence Enterprise
Edition 11g (11.1.1.7) to retrieve this data
directly from Oracle Database and then have
Oracle Business Intelligence Server join it to
the Hive table dynamically when users query
it. To set up this link to Oracle Database on
Oracle Big Data Lite Virtual Machine and
import customer and movie reference tables
into the Oracle Business Intelligence Server
repository, follow these steps:
1. With the BI Administration tool still
open and with your repository open
online for editing, select File -> Import
Metadata from the application menu.
Then select and enter the following
values to connect to Oracle Database in
Oracle Big Data Lite Virtual Machine:
Click Next, and then click Next again.
2. From the Data source view in the left-
hand panel of the dialog box, locate
the MOVIEDEMO schema and then the
CUSTOMER and MOVIE tables within it.
Use Ctrl-click to select both tables, click
Import Selected, and then click OK to
move the tables into the Repository view.
Click Finish to close the dialog box, and
then click Save in the application toolbar
to save your repository, clicking No when
asked if you want to check the repository
for consistency.
3. To create a physical join between the
Hive log table and the two Oracle refer-
ence tables: within the Physical layer,
use Ctrl-click to select the three tables,
right-click, and then select Physical
Diagram -> Selected Objects Only.
Then, when the three tables appear
in the Physical Diagram window, click
the movieapp_log_stage table and
then New Join. Using the displayed
arrow, click the MOVIE table first and
join it to the movieapp_log_stage
table at MOVIE_ID = movieid. Then
create another join, this time joining
the movieapp_log_stage table to the
CUSTOMER table at CUST_ID = custid.
When youre done, close the Physical
Diagram window and return to the
main BI Administration window.
4. Now you will create a business model
that brings in data from both Hive
and Oracle Database. To do so, right-
click anywhere in the Business Model
and Mapping pane and select New
Business Model from the menu. When
prompted, name the model Movie
Recommendation Analysis, and click
OK to close the dialog box.
5. Use Ctrl-click to select the three tables
in the Physical layer, and drag and drop
them on top of the new business model
in the Business Model and Mapping layer.
When you do so, an error message reports
that the ADDRESS_POINT column in the
CUSTOMER table has no datatype. You
Connection
Type:
OCI 10g/11g
Data Source
Name:
(DESCRIPTION=(ADDRESS_
LIST=(ADDRESS=(PROTOCOL =
TCP)(HOST = bigdatalite
.localdomain)(PORT =
1521)))(CONNECT_DATA =
(SERVICE_NAME = orcl)))
User Name:
moviedemo
Password:
welcome1
Figure 2: Returning log data from the Hive table
Figure 3: The final Oracle Business Intelligence Server repository
SO14_BA_Rittman.indd 45 7/29/14 2:41 PM
46 BUSINESS ANALYTICS
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
wont need this for the example, so return
to the CUSTOMER table in the Physical
layer, double-click it to edit it, select the
Columns tab, and click Delete to delete
the ADDRESS_POINT column from that
physical table. Then repeat the process
of using Ctrl-click and dragging the three
tables into the new business model,
which should now work for you (without
returning an error).
6. Now, within the new business model,
you need to set default aggregation
types for the measure columns in the
movieapp_log_stage logical table. To
do so, locate the table within the busi-
ness model, click the + button next to
the table name, and then double-click
the rating column within it. In the
Logical Column dialog box, select the
Aggregation tab and then choose Avg for
Default Aggregation Rule. Repeat this
step once again for the sales column, but
set its Default Aggregation Rule to Sum,
and then click OK.
7. Finally, to create a Presentation layer
subject area for this business model,
click and drag the business model
within the Business Model and Mapping
layer, drop it into the Presentation layer,
and then click Save. Click Yes when
asked if you want to check the reposi-
tory for consistency, and then click Yes
and OK in the various dialog boxes as
the repository is checked in and saved
back to Oracle Business Intelligence
Server. Your repository should then, in
its final state, look like the one shown
in Figure 3.
EASY REPORTING AGAINST
BLENDED DATASOURCES
You can now open up the Oracle Business
Intelligence website and create your first
report using data from Hive and Oracle
Database. To do this, navigate to the Oracle
Business Intelligence website (for example,
http://localhost:7001/analytics if you
are working with a local VM) and enter
your login credentials, such as weblogic/
welcome1. Then, from the website menu, do
the following to create a sample analysis:
1. Select New -> Analysis, and then select
your subject area from the list of subject
areas, whichif you have followed the
previous stepswill be called Movie
Recommendation Analysis.
2. With the Criteria tab selected, select the
following three subject area columns as
the analysis criteria:
movieapp_log_stage.rating
movieapp_log_stage.sales
CUSTOMER.COUNTRY
and use the Filter menu item for the
CUSTOMER.COUNTRY column to create
the following filter condition:
COUNTRY is equal to / is in Canada;
Netherlands; United Kingdom
3. Click the Results tab to see the results of
the query. The average ratings and total
sales for the countries in the filter condi-
tion will be displayed, with measures
from a log file on HDFS accessed through
Hive, combined with reference data from
Oracle Database. Figure 4 shows the
query results.
FINAL REPORT
Oracle Business Intelligence Enterprise
Edition 11g (11.1.1.7) can report against a
wide range of enterprise datasources and
can bring those datasources together into
a single analysis, with the underlying data
extraction complexity hidden from the
user. Recent releases of Oracle Business
Intelligence Enterprise Edition 11g intro-
duced the ability to connect to Hadoop as
a datasource, and using Oracle Big Data
Lite Virtual Machine is a great way to get
familiar with big data technologies such as
Hadoop, HDFS, Hive, and MapReduce.
Figure 4: The final analysis, combining Hive and Oracle Database data
LEARN more about big data
oracle.com/us/technologies/big-data
READ more Rittman
Rittman Mead blog
rittmanmead.com/blog
Oracle Magazine business
intelligence columns
bit.ly/omagbi
DOWNLOAD
Oracle Big Data Lite Virtual Machine
bit.ly/1iofYOV
Oracle Business Intelligence Enterprise
Edition 11g (11.1.1.7)
bit.ly/1kQW3Ey
Hive ODBC drivers
bit.ly/1j0mtXX
NEXT STEPS
Mark Rittman is an
Oracle ACE Director and
cofounder of Rittman
Mead, an Oracle Gold
Partner based in the UK,
with offices in the US,
India, and Australia. Rittman has worked with
Oracles business intelligence, data integration,
and data warehousing products for more than
15 years, and he writes for the Rittman Mead
blog at rittmanmead.com/blog.
SO14_BA_Rittman.indd 46 7/29/14 2:42 PM
DBA 47 PERFORMANCE BY ARUP NANDA
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Its All In
Leverage the in-memory column store in Oracle Database
In-Memory to supercharge database performance
without changing application code.
M
aria, the lead DBA at Acme Inc., has
some concerned visitors today. Heli
the primary user of a major applicationis
upset with that applications performance
when running large analytic queries. John
the DBA of that applications database
wants the developers to alter the application
code to make it more efficient, but Sophie
the lead developersays it cant be done
because its a packaged application and they
cant change it. John has also tried increasing
the size of the buffer cache, but that has
delivered little or no benefit. Heli has offered
to create additional indexes to improve
query performance, but Sophie notes that
the application includes online transaction
processing (OLTP) functionality: it issues
DML statements, and those processes will
be slowed by a proliferation of indexes.
Stalemate. Marias visitors look to her for
a solution to their problems.
There is a solution, Maria assures them,
one that requires neither application code
changes nor creation of any new indexes.
The solution is the in-memory column store,
part of the Oracle Database In-Memory
option, available for use with Oracle
Database 12c Release 2 (12.1.0.2).
COLUMN STORE
Before Maria can present the solution, John
wants to know why a larger buffer cache did
not improve performance as expected.
Its true, Maria explains, that a bigger
buffer cache does enable more data to exist
in memory for longer periods, and therefore
the bigger cache reduces the need to fetch
from disk and consequently reduces I/O.
However, she clarifies, the buffer cache does
much more than act as an interim place-
holder between the disk and the users. The
buffer cache is also the primary staging area
for read consistency, multiversioning, and
other attributes and operations in the data-
base, and these require space. Expanding the
buffer cache, Maria continues, also increases
the overhead of managing the cache. In some
cases, the added overhead negates any ben-
efits of a larger cache or the overhead may
erode the gains of the larger buffer cache
so much as to make any performance gains
insignificant. Expanding the buffer cache is
not the real solution to the current problem.
In addition, Maria continues, the data
access pattern plays a significant role in
performance. Traditionally, Oracle Database
has stored data in multicolumn records
also known as rowsone column after
another. When all the columns of a row are
populated, the next row starts in that data-
base blockagain, with the same sequence
of columns, Maria explains, pointing to
Figure 1. If a query selects all the columns of
a table every time, this arrangement of data
inside the database block will perform well.
However, the analytic queries issued by Heli
typically select only a handful of columns
from all the rows. The database fetches the
entire database block into the buffer cache,
locates the first row, identifies the start
position of the column, extracts the value,
locates the starting point of the next row,
locates the relative position of the same
columns in that row, extracts the value,
and so on. The process repeats until the
ORACLE DATABASE IN-MEMORY
Figure 1: Traditional data block storage
ROW 1
COL1
COL1
COL1
COL2
Data Block 1 Data Block 2
COL3 COL4 COL1 COL2 COL3 COL4
COL4
COL4
COL
4
COL3
CO
L3
CO
L4
CO
L4
CO
L1
COL2 COL1 COL3 COL2
COL2 COL1 COL4 COL3 COL2
ROW 2 ROW 3 ROW 4 ROW 5 ROW 6
Figure 2: Organization of data in column storage
COL1
COL1
COL1
COL1
COL1
COL1
COL4
COL4
COL4
COL4
CO
L4
COL4
COL2
COL2
COL2
COL2
COL2
COL2
COL3
COL3
CO
L3
COL3
COL3
COL3
ROW
SET
Data Block 1 Data Block 2
Column Unit
ROW 1
ROW 2
ROW 3
ROW 4
ROW 5
ROW 6
I
-
H
U
A

C
H
E
N
SO14_DBA_Nanda.indd 47 7/29/14 2:49 PM
48 PERFORMANCE
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
values of these selected columns have been
extracted from all the rows.
Heli sees the problem immediately. If the
database were able to read the column values
from all the rows immediately instead of
performing the additional tasks of locating
the starting points of the rows and then
the relative positions of the columns inside
them, the performance would be fantastic.
Precisely, Maria confirms, and that calls for
a new design called a column store database,
in which the columnsnot the rowsare
stored together, as shown in Figure 2.
Columns from the rows are stored together
in a new structure called a column unit (CU).
The CU is not the same as a data block, she
clarifies. The CU can be much bigger than the
typical 8 K data block. This special arrange-
ment of columns enables the query to grab
the values of the selected column from all the
rows immediatelywithout going through
the time-consuming task of identifying rows
and the columns inside.
John is skeptical. This column-store-
database concept is not new. Database
vendors have been providing this technology
for years. But we cant use it, John says, for
other types of operations, particularly OLTP.
The traditional Oracle Database storage
format, the row store, processes data change
operations most efficiently. So, John con-
tinues, queries may be faster with a column
store database, but a row store database is
the right choice for OLTP.
Why not have it both ways? asks Maria.
The good news is that these two choices
need not be mutually exclusive. In Oracle
Database 12c Release 2 (12.1.0.2), we have
the option of using both types of stores in
the same database. And, she continues, the
column store exists entirely in memory. The
combination of the column store structure
and memory residency makes the perfor-
mance of analytical queries soar.
CONFIGURATION
Maria gathers her visitors around her desk
to demonstrate how Oracle Database
In-Memory works.
The in-memory column store is a new
pool in the system global area (SGA), she
explains. The DBA decides how much
memory to allocate to this new pool and
issues this statement to create the in-
memory column store:
alter system set inmemory_size=48g
scope=spfile;
This is the only configuration step
required to enable the column store. This
is not a dynamic operation; the database
instance needs to be recycled to enable the
new column store.
Because the size of this sample column
store is only 48 GB, it may be smaller than
the overall database size. With Oracle
Database In-Memory, however, the DBA
can choose specific data to populate the in-
memory column store. Even better, the DBA
can choose individual partitions of tables
rather than entire tables. Maria explains
the basic syntax for putting tables in the in-
memory column store:
alter table TableName inmemory;
Maria pauses and directs her audiences
attention to a very important character-
alter table costs modify partition COSTS_Q4_2003 inmemory no memcompress
priority high;
script truncated for brevity
alter table costs modify partition COSTS_1996 inmemory memcompress for
capacity high priority none;
alter table costs modify partition COSTS_1995 inmemory memcompress for
capacity high priority none;
Code Listing 1: Altering the COSTS table to put partitions in memory
select partition_name, inmemory_priority,
inmemory_distribute, inmemory_compression
from user_tab_partitions
where table_name = 'COSTS'
order by partition_position;
PARTITION_NAME INMEMORY INMEMORY_DISTRI INMEMORY_COMPRESS

COSTS_1995 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_1996 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_H1_1997 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_H2_1997
COSTS_Q1_1998 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q2_1998 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q3_1998 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q4_1998 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q1_1999 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q2_1999 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q3_1999 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q4_1999 NONE AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q1_2000 MEDIUM AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q2_2000 MEDIUM AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q3_2000 MEDIUM AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q4_2000 MEDIUM AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q1_2001 HIGH AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q2_2001 HIGH AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q3_2001 HIGH AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q4_2001 HIGH AUTO DISTRIBUTE FOR CAPACITY HIGH
COSTS_Q1_2002 HIGH AUTO DISTRIBUTE FOR CAPACITY LOW
COSTS_Q2_2002 HIGH AUTO DISTRIBUTE FOR CAPACITY LOW
COSTS_Q3_2002 HIGH AUTO DISTRIBUTE FOR CAPACITY LOW
COSTS_Q4_2002 HIGH AUTO DISTRIBUTE FOR CAPACITY LOW
COSTS_Q1_2003 CRITICAL AUTO DISTRIBUTE FOR QUERY
COSTS_Q2_2003 CRITICAL AUTO DISTRIBUTE BASIC
COSTS_Q3_2003 CRITICAL AUTO DISTRIBUTE BASIC
COSTS_Q4_2003 CRITICAL AUTO DISTRIBUTE BASIC
Code Listing 2: Displaying in-memory attributes of the COSTS table
SO14_DBA_Nanda.indd 48 7/29/14 2:49 PM
49 PERFORMANCE
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
istic of this process of populating tables
from disk to the in-memory column store.
The version of the table in the in-memory
column store is in the new column store
format for better performance. On disk,
however, the table continues to be stored in
the traditional row store format. When users
modify the data in that table, the version of
the table in the buffer cache is updated and
written back to the disk. When the data is
queried, however, the in-memory column
store version of the table is used.
When the INMEMORY attribute is set
for a segmenta table or a partitionthat
segment is automatically loaded into the
in-memory column store. A new background
process, Maria explainsIMCOcoordi-
nates the populating of the data. The actual
data populating is done by two new back-
ground processesSMCO and Wnnn.
John, seeing a potential issue, points out
that when the table data gets updated, the
buffer cache is where the update occurs, so
the in-memory column store version is no
longer the most current version of the table.
Doesnt that make the data access of the
updated table from that column store incor-
rect? John asks. Not at all, assures Maria.
Oracle Database automatically keeps the
in-memory column store transactionally
consistent with the row store format in the
buffer cache, similar to how an index is kept
transactionally consistent with a table.
IN-MEMORY OPTIONS
Heli raises a good question: what if the
total size of all the segments placed in the
in-memory column store is more than
48 GB? No worries, Maria responds. Oracle
Database will determine which segments
are loaded in what sequence and how long
they stay there, based on a priority that can
be defined in the ALTER statement with
the PRIORITY subclause of the INMEMORY
attribute. The PRIORITY subclause takes four
optionsCRITICAL, HIGH, MEDIUM, and
NONE. The last option, Maria explains, does
not populate the segment into the column
store automatically. That populating occurs
only when someone selects from the table.
In addition, Maria continues, to save
space, a DBA can compress the data
in the in-memory column store, using
the MEMCOMPRESS subclause of the
INMEMORY attribute. She reminds everyone
that this compression is inside the in-
memory column store only; the segment
on the disk is not affected. There are five
options for the MEMCOMPRESS subclause
FOR DML, FOR QUERY LOW (the default),
FOR QUERY HIGH, FOR CAPACITY LOW,
and FOR CAPACITY HIGHfrom lowest
to highest compression. The higher the
compression, the less space occupied in the
in-memory column store but the more CPU
consumed by data accesses. If compres-
sion is not needed, the DBA can use the NO
MEMCOMPRESS option.
John asks how the in-memory column
store works with the multiple nodes in an
Oracle Real Application Clusters (Oracle
RAC) database. By default, Maria responds,
the column store is distributed among the
caches of all nodes. It also can be duplicated
on all Oracle RAC nodes by use of another
clause: DUPLICATE.
Heli is impressed, but she has a concern.
Her queries do not select many of the
columns of a table, so having those columns
in the in-memory column store does not
help performance but rather takes up valu-
able space. Good point, concedes Maria, and
continues that the DBA can define a table
to be in the in-memory column store but
can also exclude some columns. Different
compression levels can also be defined for
different columns in the column store. Maria
demonstrates with a table named T1. It is in
the in-memory column store, but its columns
c4 and c5 should not be in the in-memory
column store. In addition, columns c3 and c2
should be compressed with the CAPACITY
LOW option whereas the other columns
should be compressed with QUERY LOW
(the default). Maria issues the following SQL
statement to accomplish all that:
alter table t1 inmemory
memcompress for
capacity low (c2,c3)
no inmemory (c4,c5);
CASE STUDY
Every one of Marias guests wants to see
how Oracle Database In-Memory works in
an actual use case. Maria demonstrates
with the SH schema that comes with Oracle
select partition_name, populate_status, bytes_not_populated Not_Pop,
bytes, inmemory_size, bytes/inmemory_size comp_ratio
FROM v$im_segments;
PARTITION_NAME POPULATE_S Not_Pop BYTES INMEMORY_SIZE COMP_RATIO

COSTS_Q3_2000 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q4_2001 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q1_2001 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q2_2000 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q3_2001 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q4_2000 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q1_2000 COMPLETED 0 8388608 1179648 7.11111111
COSTS_Q2_2001 COMPLETED 0 8388608 1179648 7.11111111
Code Listing 3: Checking for segments in the in-memory column store
select /*+ gather_plan_statistics */ PROD_NAME, TIME_ID,
avg(UNIT_PRICE) avg_cost
from costs c, products p
where p.prod_id = c.prod_id
group by PROD_NAME, TIME_ID
having avg(unit_price) > 1000
order by PROD_NAME, TIME_ID;
select * from
table(dbms_xplan.display_cursor(format=>'TYPICAL'));
Code Listing 4: Query for evaluation
SO14_DBA_Nanda.indd 49 7/29/14 2:50 PM
50 PERFORMANCE
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
Database. The COSTS table is partitioned
by rangeone partition per quarter or, in
the case of very old data, one partition per
half year or per year. Sophie knows that
Acme uses something similar to this table
in its major application and that that table
is accessed frequently and thus should be a
good candidate for the in-memory column
store, with some compression to save space.
Sophie also explains that more-recent parti-
tions are queried much more frequently than
older ones. Because the level of compression
affects CPU consumption, Maria makes a
rule: apply lesser levels of compression or
no compression at all for segments that are
accessed more frequentlythat is, more-
recent partitions. Older partitions, which
are accessed less frequently, can be more
aggressively compressed to save space. She
also makes a rule that higher priority (the
PRIORITY clause) for populating the in-
memory column store should be assigned
to more-recent partitions, because she
wants them to be loaded sooner and stay
in memory longer. With this set of require-
ments in place, Maria alters the COSTS table
by using the SQL shown in Listing 1.
The USER_TABLES viewor the USER_
TAB_PARTITIONS view for partitioned
tablesprovides in-memory column store
information on the selected table. Three
new columns in these views INMEMORY_
PRIORITY, INMEMORY_DISTRIBUTE,
INMEMORY_COMPRESSIONdisplay the
priority, the distribution in an Oracle RAC
database, and the compression type, respec-
tively. Maria uses the SQL shown in Listing 2
to get these details for each partition.
To find out what segments are in the
in-memory column store, Maria queries a
new dynamic performance viewV$IM_
SEGMENTS. She explains some important
columns of the view:
OWNER, SEGMENT_NAME, PARTITION_
NAME: The column names describe the
information included there.
BYTES: This column shows the size of the
segment on disk.
POPULATE_STATUS: This column shows
when the cache is populated from this
segment on disk. After populating is com-
plete, this column shows COMPLETE.
BYTES_NOT_POPULATED: This column
shows the segment amount remaining
while the cache is being populated.
INMEMORY_SIZE: This column shows the
size of that segment in the in-memory
column store.
INMEMORY_PRIORITY, INMEMORY_
DISTRIBUTE, INMEMORY_
COMPRESSION: These columns are the
priority, Oracle RAC distribution, and
compression attributes of that segment,
respectively, and they provide the same
information as the identically named
columns in the USER_TABLES and USER_
TAB_PARTITIONS views.
Maria executes the SQL shown in
Listing 3 to check for the segments in the in-
memory column store and how much they
have been compressed. Heli notes a very
important fact: not all the partitions are
visible in the in-memory column store. The
reason, Maria explains, is simple: the seg-
ments where she has defined the priority to
be NONE are not populated automatically in
the column store. For example, the priority
of the COSTS_1995 partition is set to NONE,
as shown in Listing 2, so that partition is
not yet in the column store. When someone
selects from that partition, the in-memory
column store will be populated.
Next, Maria takes a typical query from
Acmes major application, joining the COSTS
table with the PRODUCTS table, which is not
defined to be in memory. Listing 4 shows
the query as well as a query on execution
statistics to demonstrate how well the query
performed. (She uses the SET TIMING ON
command before running the query to get
the response time.) The query in Listing 4
took 3.64 seconds to execute. Listing 5
shows the execution plan. Maria then dis-
ables the use of the in-memory column
store by executing the following SQL:
alter session
set inmemory_query = disable;
Then she executes the Listing 4 query
again. This time the query does not use the
in-memory column store and the elapsed
time jumps to 6.99 secondsa 92 percent
increase! Everyone in Marias office wants
to know what happened. To answer that
question, Maria draws their attention to the
execution plan of the second query execu-
tion, shown in Listing 6. The two plans are
almost identical, except for step 6, TABLE
ACCESS INMEMORY FULL. The CPU cost is 1
for the first execution (with the in-memory

|Id| Operation |Name |Rows |Bytes |Cost(%CPU)|Time |

| 0|SELECT STATEMENT | | | | 7 (100)| |


|*1| FILTER | | | | | |
| 2| SORT GROUP BY | | 1799| 84553| 7 (58)|00:00:01|
|*3| HASH JOIN | |82112| 3768K| 4 (25)|00:00:01|
| 4| TABLE ACCESS FULL |PRODUCTS| 72| 2160 | 3 (0)|00:00:01|
| 5| PARTITION RANGE ALL | |82112| 1363K| 1 (100)|00:00:01|
| 6| TABLE ACCESS INMEMORY FULL |COSTS |82112| 1363K| 1 (100)|00:00:01|

Code Listing 5: Execution plan with the in-memory column store

|Id|Operation |Name |Rows |Bytes |Cost (%CPU)|Time |

| 0|SELECT STATEMENT | | | | 140 (100)| |


|*1| FILTER | | | | | |
| 2| SORT GROUP BY | | 3665| 168K| 140 (3)|00:00:01|
|*3| HASH JOIN | |82112| 3768K| 137 (1)|00:00:01|
| 4| TABLE ACCESS FULL |PRODUCTS| 72| 2160 | 3 (0)|00:00:01|
| 5| PARTITION RANGE ALL | |82112| 1363K| 134 (1)|00:00:01|
| 6| TABLE ACCESS FULL |COSTS |82112| 1363K| 134 (1)|00:00:01|

Code Listing 6: Execution plan without the in-memory column store


SO14_DBA_Nanda.indd 50 7/29/14 2:50 PM
51 PERFORMANCE
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
column store), Maria observes, but 134 for
the second (without the in-memory column
store). The CPU had to do extra work to get
the data from the buffer cache when the in-
memory column store was not used, hence
the 92 percent performance penalty. Maria
reminds everyone that the performance
boost demonstrated in Listing 4 came
purely from the in-memory column store
without code changes or additional indexes.
Her visitors wonder how to decide which
segments are good candidates for the
in-memory column store. Maria suggests
simple rules: Tables whose entire set of
rows, even for a few columns, are selected
by queries are great candidates for the
new in-memory column store. Tables or
partitions that participate in OLTP transac-
tions more than in queries will not benefit
as much, so she advises that they not be
put into the in-memory column store.
When in doubt, tables can be tested in the
in-memory column store and then kept
there or moved out after the overall per-
formance has been checked. For guidance
on compression, Maria suggests using the
DBMS_COMPRESSION package to estimate
the space savings a segment could have in
the in-memory column store.
CONCLUSION
Marias visitors want a quick solution to a
common performance problem but without
changing code or adding indexes. In this
article, Maria solves the problem by marking
relevant tables to be populated into the in-
memory column store in Oracle Database
In-Memory. Oracle Database transparently
gets the data from disk to this store, and
Maria does not need to choose between the
two different store technologiescolumn
and row. She can choose both in the same
Oracle database and put segments in either
store as appropriate. Her visitors, quite
impressed, leave the meeting happy and
with a clear action plan. t
LEARN more about
Oracle Database In-Memory
bit.ly/inmemfeature
bit.ly/inmemdoc
DOWNLOAD Oracle Database 12c
bit.ly/databasedownloads
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.
Integrate. Support. Optimize.
Partner with AbeTech for your Oracle Mobile Supply Chain Applications and Hardware Management.
Let Your Oracle See Further
Partner with AbeTech today to discover how much of the
future you may be missing. Our staf of engineers, technicians
and programmers have years of experience in helping companies
just like yours make the most of their Oracle Mobile Supply Chain
Applications by improving operational productivity and reducing
costs through process automation. Ensure that information is
accurate and up-to-the-moment throughout your entire logistics
division with the latest in RFID and Bar Code Scanning technologies,
as well as nding you the right mobile computers for your workers
regardless of whether they are in the ofce, the warehouse or
visiting job locations across the country.
RFID
Bar Code Scanning/Data Entry

Custom Applications
Whatever your needs, AbeTech will help you nd the solutions you
need to optimize every aspect of your business. Call us now to see
how our best-in-class service can help your company make the
most of the Oracle experience!

Mobile Computing
Wireless

Thermal Printing/Labeling
800.478.8644 | www.abetech.com
SO14_DBA_Nanda.indd 51 7/29/14 2:51 PM
52 Database Application Developer
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
Persistence Doesnt
Always Pay
Sometimes you dont want a database table and SQL.
Sometimes you just need to collect your thoughts.
I
n my last article, The Joy of Low-Hanging
Fruit (bit.ly/PL_SQL), you met a team of
developers at extremememe.info (all names
changed to protect the innocent), an up-and-
coming Web 3.0 paradigm shifter that ana-
lyzes internet memes, tracks them to their
sources, and best of all predicts new memes.
The developers at extremememe.info are
very knowledgeable about Oracle Database
and PL/SQL, but as is the case with many
developers, they have little time to explore
new technology. They mostly struggle to keep
up with the demands of their users. And even
when they discover a great new feature, it
can be a challenge to convince management
to commit the resources to apply the new
feature to stable production code.
As demonstrated in my last article, I
helped the developers at extremememe
.info improve the performance of a critical
batch job by applying bulk processing (BULK
COLLECT and FORALL).
A week later, I visited extremememe.info
to see how they were doing. Joe, one of their
newer developers, pulled me aside to show
me a program hed been working on.
Its another batch job, he explained. I
need to keep track of memes that were refer-
enced in the job, and then avoid processing
those memes again within the job. Weve also
expanded the memes that we are tracking;
instead of just memes for humans we are also
working with memes for dogs, so we have to
keep those two lists separate. I remember
you saying that I should do everything I pos-
sibly can in SQL, and that I should build APIs
with packages, so thats what I did.
And then he showed me. I was most
impressed with the clarity and readability of
his code, and horrified by his approach.
First, he created a table to hold the
memes that had already been processed:
CREATE TABLE temp_processed_memes
(meme VARCHAR2(1000) UNIQUE)
/
Then he put together the simple and intui-
tive package specification shown in Listing 1.
Congratulations, Joe, I told him. Your
specification doesnt have a single comment,
and it doesnt need one. You came up with
clear, understandable names so that the
code tells its own story. Show me more.
So Joe showed me the package body (in
Listing 2), and then he opened up the script
he was using (in Listing 3) to test the package
and demonstrate its intended usage.
I asked Joe three questions:
1. Do you always reset the processed
memes tabletemp_processed_
memesbefore starting the job? His
answer: Yes.
2. Do you ever access the processed
memes table after ending the job? His
answer: No.
3. What do you want firstthe good
news or the bad news? Joe asked for the
good news.
OK, the good news is that you took an
important piece of advice, and you applied it:
you used lots of SQL. The bad news, unfortu-
nately, is also that you used lots of SQL.
Joe looked rather confused, so I took a
step back (conceptually) and explained the
situation as follows:
Without doubt, the general strategy that
Oracle Database developers should follow is
to do everything they can in SQL. What they
cannot do in SQL, they should do in PL/SQL.
And what they cannot do in PL/SQL, they
should do in whatever language they are
using to build their user interfaces. (This is a
mantra created by Tom Kyte and to which I
wholeheartedly subscribe.)
There is, however, a hidden assumption
in this set of language priorities: the task at
hand should be well suited to and require
SQL. To offer an obvious example, if you
need to create a radio group to display on a
web page, you dont want to use SQL for that.
In the case of the meme_tracker package,
however, it is code running in the database,
implemented in PL/SQL. So why wouldnt it
make sense to use SQL? The prefix temp on
the table name pretty well gives it away: Joe
decided to use a persistent relational table
as the container for his processed memes.
But, in his mind, it was just a temporary table.
Insert the data from the current job, use it
during the job, and empty the table.
No doubt about it, Joe was using the
table as a container for temporary, session-
ORACLE DATABASE
PACKAGE meme_tracker
IS
PROCEDURE reset_memes;
FUNCTION already_saw_meme (
meme_target_in VARCHAR2, meme_in IN VARCHAR2)
RETURN BOOLEAN;
PROCEDURE add_meme (
meme_target_in VARCHAR2, meme_in IN VARCHAR2);
END;
Code Listing 1: The original (Joes) meme_tracker package specification
SO14_PLSQL.indd 52 7/31/14 10:37 AM
53 Database Application Developer
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
PL/SQL BY STEVEN FEUERSTEIN
specific data. Thats why Joe called it a tem-
porary table. Unfortunately, calling it tem-
porary doesnt make it temporary. When you
execute a CREATE TABLE statement, that
table is permanent (until you drop it), even if
you take all the steps needed to ensure that
there is nothing in the table.
So whats wrong with that? If the data
is really only needed within your session,
then you are paying a substantial penalty
in performance to read and write tables.
Plus, you have created a database object
that is not needed: unnecessary noise in
your schema. Finally, this could create sub-
stantial confusion in the future when other
developers need to work with this package
and try to figure out where and how this
table is used besides this one process.
USE A DIFFERENT KIND OF TABLE
If I dont use SQL and dont use a database
table, how am I supposed to keep track of
my memes? asked Joe.
Simple, I replied. Use a different kind
of table.
I imagine some readers are now thinking:
well, of course. Use a global temporary
table. That way the data in the table will
not persist past the session. Its true that a
global temporary table would address a part
of the problem with Joes approach. But it
still relies on SQL when it is not needed, and
it still will not offer the best performance for
in-session data.
No, for this kind of situation, Joe should
take a look at PL/SQL-specific tables, other-
wise known as collections. PL/SQL developers
can declare, populate, and work with data in
a collection entirely within PL/SQL. That data
exists only for the duration of the session,
and it is much faster to read/write collections
than it is to read/write relational tables.
I pointed to one more concern I had about
Joes meme_tracker package approach. His
package subprograms accept a meme target
and a meme, but his table includes just a
single meme column. Joe concatenates the
two values with a dash as a separator. But
what if a meme or meme target contains a
dash? Joe could add rules and code to ensure
that this doesnt happen, but it would make
much more sense to build these two distinct
pieces of data into the design.
For a relational table, this means having
two columns (and in many cases, two tables).
In the case of collections, you can instead
take advantage of a very nifty feature: nested
collections, or collections within collections.
BACKWARD-COMPATIBILITY CONCERNS
Before reimplementing an existing piece
of code, you should always check to see
where and how it is being used. If it is not
yet in use, then you have complete freedom
to change the package specification and
body. If other developers have already been
making calls to subprograms in a package,
you have a responsibility to those devel-
opers to make sure that all existing invoca-
tions remain valid.
In the case of the meme_tracker package,
I will be changing the way Joe implemented
the data structures used to support the
package API. Because Joe had already
broken out the meme target from the meme
BEGIN
meme_tracker.reset_memes;
meme_tracker.add_meme ('DOG', 'CAT');
meme_tracker.add_meme ('HUMAN', 'CAT VIDEO');
meme_tracker.add_meme ('HUMAN', 'HONEY BOO BOO');
IF meme_tracker.already_saw_meme ('DOG', 'CAT')
THEN
DBMS_OUTPUT.PUT_LINE ('DOG-CAT-FOUND');
END IF;
IF NOT meme_tracker.already_saw_meme ('DOG', 'CAT VIDEO')
THEN
DBMS_OUTPUT.PUT_LINE ('DOG-CAT VIDEO-NOT FOUND');
END IF;
END;
Code Listing 3: Test/demonstration script for meme_tracker package
PACKAGE BODY meme_tracker
IS
PROCEDURE reset_memes
IS
BEGIN
DELETE FROM temp_processed_memes;
COMMIT;
END;
FUNCTION already_saw_meme (
meme_target_in VARCHAR2, meme_in IN VARCHAR2)
RETURN BOOLEAN
IS
BEGIN
SELECT 'x' INTO l_dummy
FROM temp_processed_memes
WHERE meme = meme_target_in || '-' || meme_in;
RETURN TRUE;
EXCEPTION WHEN NO_DATA_FOUND THEN RETURN FALSE;
END;
PROCEDURE add_meme (meme_target_in VARCHAR2, meme_in IN VARCHAR2)
IS
BEGIN
INSERT INTO temp_processed_memes (meme) VALUES (
meme_target_in || '-' || meme_in);
COMMIT;
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN NULL;
END;
END;
Code Listing 2: The meme_tracker package body
SO14_PLSQL.indd 53 7/31/14 10:37 AM
54 PL/SQL
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
in his parameter lists, it shouldnt be neces-
sary to make any changes to the specifica-
tion. All existing invocations, therefore, will
not be affected.
COLLECTIONS IN THE PACKAGE BODY
When I am done with the meme_tracker
package rewrite, I will no longer need the
temp_processed_memes table. But I dont
want to drop it until the rewrite is complete,
because it would disrupt existing users.
So lets begin the rewrite by removing all
references to that table!
Listing 4 contains the reimplementation
of the meme_tracker package body.
Defining the collections. Collections are
data structures, just like relational tables. I
have learned over the years, mostly through
painful lessons (that is, mistakes), that if
I dont get the design of my tables right,
the resulting coding exercise is much more
difficult. Conversely, if I do take the time
to think through my table design, I end up
writing a much smaller amount of much
more intuitive code. The same holds true
with collections.
And when you are working with nested
collections, sorting out the structures can be
tricky. In this regard, I have two suggestions:
1. Use subtypes to give names to all
application-specific data with which you
will be working.
2. Employ the same data design tech-
niques with collections as you would
with tables.
Here is the code I wrote in the new
meme_tracker package body (in Listing 4) to
define my collections:
1 SUBTYPE meme_target_t IS
VARCHAR2(100);
2 SUBTYPE meme_t IS VARCHAR2(1000);
3 c_was_processed
CONSTANT BOOLEAN := TRUE;
4 TYPE memes_for_target_t IS
TABLE OF BOOLEAN
5 INDEX BY meme_t;
6 TYPE processed_memes_t IS
TABLE OF memes_for_target_t
7 INDEX BY meme_target_t;
8 g_processed_memes processed_memes_t;
Lets take the code one line at a time.
1 SUBTYPE meme_target_t IS
VARCHAR2(100);
I declare my first subtype, which is
nothing more than an alias for an existing or
base type. In this case, I am simply hiding
the fact that a meme target is a string with a
maximum size of 100 characters. You might
ask: Why bother? And the answer lies in lines
4 through 7.
2 SUBTYPE meme_t IS VARCHAR2(1000);
I declare another subtype, this time
hiding the fact that a meme is a string
with a maximum size of 1,000 characters.
3 c_was_processed
CONSTANT BOOLEAN := TRUE;
I need to indicate that a meme has been
processed, so I create a constant to hold
that indicator value. As you will see in a
later section, neither the value nor its type
matters; I could have declared this constant
(and the following collection type) to be
DATE or NUMBER.
4 TYPE memes_for_target_t IS
TABLE OF BOOLEAN
5 INDEX BY meme_t;
My first collection type declaration! Its
a list of TRUE-FALSE values: has a meme
been processed or not? But which meme?
The INDEX BY clause of the type declaration
gives me the answer: elements in collec-
tions of this type are indexed by the name
of the meme.
PACKAGE BODY meme_tracker
IS
SUBTYPE meme_target_t IS VARCHAR2(100);
SUBTYPE meme_t IS VARCHAR2(1000);
c_was_processed CONSTANT BOOLEAN := TRUE;
TYPE memes_for_target_t IS TABLE OF BOOLEAN
INDEX BY meme_t;
TYPE processed_memes_t IS TABLE OF memes_for_target_t
INDEX BY meme_target_t;
g_processed_memes processed_memes_t;
PROCEDURE reset_memes
IS
BEGIN
g_processed_memes.DELETE;
END;
FUNCTION already_saw_meme (
meme_target_in VARCHAR2, meme_in IN VARCHAR2)
RETURN BOOLEAN
IS
BEGIN
RETURN g_processed_memes
(meme_target_in)
(meme_in) = c_was_processed;
EXCEPTION
/* PL/SQL raises NDF if you try to "read" a collection
element that does not exist */
WHEN NO_DATA_FOUND THEN RETURN FALSE;
END;
PROCEDURE add_meme (
meme_target_in VARCHAR2, meme_in IN VARCHAR2)
IS
BEGIN
g_processed_memes (meme_target_in)(meme_in)
:= c_was_processed;
END;
END;
Code Listing 4: meme_tracker package body reimplemented
SO14_PLSQL.indd 54 7/31/14 10:38 AM
55 PL/SQL
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
When I showed Joe these declarations,
he was surprised by that INDEX BY clause.
I thought you could only index by PLS_
INTEGER with collections, he said. It looks
you are indexing by stringindirectly.
Joe is right: my INDEX BY clause uses a
SUBTYPE thats based on a VARCHAR2 dec-
laration. And thats not only perfectly valid
but highly efficient, at least for relatively
small strings (less than 100 characters or so).
I took this approach for two reasons:
1. A collection declared using this type is
indexed by a string, not an integer (the
usual way that collections in PL/SQL
and arrays are indexed). This means that
once I have the meme, I can very quickly
and easily find out if it is in the collection
and therefore has been processed.
2. I use the subtype to make my code self-
documenting. Without the subtype, I
would have needed to add a comment if I
had any hope of a person understanding
the significance of the INDEX BY clause:
/* Indexing by the meme */
TYPE memes_for_target_t IS
TABLE OF BOOLEAN
INDEX BY VARCHAR2(1000);
Comments have their place in code, and
they should certainly be used to explain
complex algorithms. I always prefer,
however, to let the code speak for itselftell
its own storyand the subtype can play an
oversize role (compared to the simplicity of
the feature itself) in this storytelling.
So I have a collection (or list) of memes.
Am I ready to write my subprograms now? No.
My memes are categorized by their target
(HUMAN or DOG). I dont see any evidence of
a target in that collection declaration.
Does this mean I am going to concatenate
the target to the meme, separating them with
a colon? I suppose I could, but that would
be ugly and error prone. Instead, I place this
meme collection inside another collection.
6 TYPE processed_memes_t IS
TABLE OF memes_for_target_t
7 INDEX BY meme_target_t;
My second collection type declaration is
the outer collection. Each element in this
collection is a collection of type memes_for_
target_t. Not only that, this new collection
type is indexed by the meme target, as you
can see by my use of the appropriate subtype
(meme_target_t ) in the INDEX BY clause.
8 g_processed_memes processed_memes_t;
And, finally, I declare the actual collec-
tion variable that will hold all my lists of
processed memes. I define it at the package
level, rather than inside any particular
packaged subprogram, which means that
the state of that collection will persist in
my session in between calls to the subpro-
grams. It is, in essence, a global variable that
can be referenced only inside the package
body, and so I use the g_ prefix.
My collection design is complete. Now
it's time to implement the subprograms and
test the results.
Resetting the processed memes. In the
original SQL-based implementation of the
meme_tracker package, Joe dropped all the
rows in the table and then committed that
transaction. (And, by the way, the commit
and rollback in that original implementation
were completely unnecessary, because the
rows were being used only in that session.)
With the reset_memes procedure in my
collection implementation, I simply use the
DELETE method: a procedure that is defined
for all collections and is invoked by attaching
it to the collection name with dot notation.
PROCEDURE reset_memes
IS
BEGIN
g_processed_memes.DELETE;
END;
Adding a processed meme. To indicate that
a meme has been processed, I need to add it
to the list of memes for the specified target.
Again, because of my careful collection
design, I get the job done with a minimum
of code in the meme_tracker package body:
PROCEDURE add_meme (
meme_target_in VARCHAR2,
meme_in IN VARCHAR2)
IS
BEGIN
g_processed_memes
(meme_target_in)(meme_in)
:= c_was_processed;
END;
If you are new to nested collections, the
syntax in this procedure may look quite odd.
So lets parse the add_meme procedure,
step-by-step:
1. g_processed_memes is the identifier
that points to the collection.
2. (meme_target_in) is the index value of
a single element in g_processed_names.
But, remember, each element is actually
a collection in its own right: a list of pro-
cessed memes for a given target.
3. (meme_in) is the index value of a single
element in g_processed_names (meme_
target_in). Each element in this collec-
tion is the name of a meme.
4. c_was_processed is the value assigned
to the list of processed memes. At first
glance, this might seem a little odd.
I always assign the same value to the
collection? Then how do I know which
meme has been processed? By looking
at the index value, which is the name of
the meme.
Thats why it doesnt matter what value
I use to add each new collection elementI
need and care only about the index value.
Checking for a processed meme. It doesnt
take much code to determine if a meme has
already been processed, when using a nested
collection. For reference, here is the header
of the already_saw_meme function from the
meme_tracker procedure specification:
FUNCTION already_saw_meme (
meme_target_in VARCHAR2,
meme_in IN VARCHAR2)
RETURN BOOLEAN
Before I show you the new implementa-
tion, lets review the three scenarios I need
to handle in the function:
1. The combination of meme target and
meme passed to the function is defined
in the collection.
2. No meme with the specified target
(meme_target_in) has yet been processed.
3. At least one meme with the specified
meme target has been processed, but
SO14_PLSQL.indd 55 7/31/14 10:38 AM
56 PL/SQL
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
not the meme passed to already_saw_
meme in the current call to the function
(meme_in).
For scenario 1, the function will find a
defined element and can return TRUE.
For scenario 2, there will not be an
element in g_processed_memes for that
meme target, and therefore certainly no
element in g_processed_memes (meme_
target_in) for the meme_in value.
For scenario 3, there will be an element in
g_processed_memes for that meme target,
but no index value in g_processed_memes
(meme_target_in) for the meme_in value.
Now I am ready for the function body:
BEGIN
RETURN g_processed_memes
(meme_target_in)
(meme_in) =
c_was_processed;
EXCEPTION
WHEN NO_DATA_FOUND
THEN RETURN FALSE;
END;
The RETURN statement takes care of sce-
nario 1: the left side of the Boolean equality
expression repeats the same construct used
to record the meme as processed:
g_processed_memes
(meme_target_in)
(meme_in)
The right side references the same value
I used to define that element in the nested
collection: c_was_processed.
The EXCEPTION section handles both
scenarios 2 and 3. It might seem odd to see
a handler for NO_DATA_FOUND when there
is no SELECT-INTO in the body of the func-
tion. It makes perfect sense, however, when
you know that the PL/SQL runtime engine
raises this same exception when you try to
read an element in a collection that has
not been defined.
So if scenario 2 is true, there is no
element defined in g_processed_memes for
index value meme_target_in, and this code
g_processed_memes
(meme_target_in)
results in a NO_DATA_FOUND exception
being raised.
If scenario 3 is true, g_processed_
memes(meme_target_in) identifies an
element in the outer collection, but g_
processed_memes(meme_target_in)
(meme_in) remains undefined and so
PL/SQL raises the NO_DATA_FOUND excep-
tion. In both cases, this meme has not yet
been processed, so FALSE is returned.
And thats the reimplemented meme_
tracker package.
After I finished showing it to Joe, I could
see him wrestling with the fact that such a
small amount of relatively trivial code could
do so much. The elegance of the code is,
however, a direct consequence of my up-
front analysis and the resulting decision to
use nested collections and string indexing.
BUT IS IT FASTER?
Both implementations of the meme_tracker
package (SQL-based and collection-based)
require a small amount of code. Furthermore,
the collection implementation is likely to be
a bit more difficult for someone unfamiliar
with collections to understand, compared to
the SQL solution. So why use collections for
this requirement?
You do not need SQL, because the data
does not need to persist beyond the duration
of the job. Yet you pay a price in performance
for using SQL. That may come as a surprise,
because Oracle Database so thoroughly opti-
mizes the performance of SQL statements.
No matter how much SQL performance
is optimized, however, there are a certain
number of CPU cycles that must be consumed
to use SQL from PL/SQL.
I put together a script to compare the
performance of the original SQL and collec-
tion implementations of the meme_tracker
package (meme_tracker.sql, available at
bit.ly/1mLLesO); the results are shown
in Table 1, available in the Oracle-hosted
version of this article at bit.ly/plsqlnest,
along with information on why the col-
lection implementation is faster and this
issue's PL/SQL Challenge.
USE SQL BEFORE PL/SQLBUT . . .
So, said Joe, after all was said and done,
the lesson I have learned from this rewrite
is to stop relying on relational tables and
SQL, and instead write programs that
use collections.
A part of me wanted to howl in frustra-
tion. But I stayed calm and reminded myself
that any lack of comprehension by Joe is my
fault, not his.
May I suggest a slight modification to
that lesson? Joe nodded. I summed it up
as follows:
Use the right tool for the right job. We
programmers are paid to solve problems,
not to come up with the most elegant SQL
statement or the coolest PL/SQL algorithm.
SQL is an incredibly powerful and effi-
cient data manipulation language, and it is
also optimized to move data in and out of
relational tables, providing full ACID (atom-
icity, consistency, isolation, durability)
support. You should take full advantage of
SQL, but also recognize that there is a price
to be paid for all that functionality.
If you have a requirement that does not
need the full power of SQL, such as manipu-
lation of data that is created and discarded
entirely within your session, PL/SQL offers
alternatives that are faster.
READ Oracle-hosted online article content
bit.ly/plsqlnest
READ more Feuerstein
bit.ly/omagplsql
READ more about PL/SQL
oracle.com/plsql
DOWNLOAD
Oracle Database 12c
bit.ly/databasedownloads
meme_tracker.sql
bit.ly/1mLLesO
TEST your PL/SQL knowledge
plsqlchallenge.com
NEXT STEPS
Steven Feuerstein
(steven.feuerstein@
oracle.com) is an
architect for Oracle,
specializing in PL/SQL.
His books, including
Oracle PL/SQL Programming, and more
than a thousand PL/SQL quizzes at PL/SQL
Challenge (plsqlchallenge.com) provide in-depth
resources for PL/SQL developers.
SO14_PLSQL.indd 56 7/31/14 10:39 AM
Database Application Developer and DBA 57
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
ASK TOM BY TOM KYTE
On Implicit Conversions
and More
Our technologist looks at implicit conversions, logic
bombs, SQL injection, and reduced access pathsin one
question and answer.
I
have a table with the following
definition:
SQL> desc OAUTH2_REFRESH_TOKEN
ID RAW(16)
TOKEN_ID VARCHAR2(255 CHAR)
TOKEN BLOB
AUTHENTICATION BLOB
ID is a primary key. There are many deletes
on this table using ID, and Ive noticed that
they are doing a lot of consistent gets. For
example, here is a runtime profile of a delete:
SQL> DELETE
2 FROM OAUTH2_REFRESH_TOKEN
3 WHERE "ID"=
'8A81B295444C2881014452803709648E'
4 /
1 row deleted.

|Id|Operation |Name |

| 0|DELETE STATEMENT| |
| 1|DELETE |OAUTH2_REFRESH_...|
|*2| INDEX FULL SCAN|SYS_C00203982 |

Predicate Information
(identified by operation id):

2 - filter(RAWTOHEX("ID")=
'8A81B295444C2881014452803709648E')
Statistics

10 db block gets
10592 consistent gets

1 rows processed
I tried to improve performance by
rebuilding the primary key index, and the size
of the index went from 88 MB to 10 MB. This
did decrease the number of consistent gets
from 10,592 to 1,228, but you would expect a
delete by a primary key value to do very few
consistent gets, wouldnt you?
I dont want to be rebuilding this index
all the time, so I am wondering if there is a
better way to set it up.
The good news for you is that you will
never really have to rebuild this primary key
index againbecause it is not the problem.
The problem is in your code. Your developers
have programmed a very nasty bug, and the
bug is called implicit conversions.
SQL and PL/SQL are very datatype
friendly. They attemptwhenever pos-
sibleto do what you ask them to do.
Compare a number with a string, and SQL
and PL/SQL will do that by converting
the string to a number implicitlybehind
the scenesand then comparing them.
Compare a date with a string, and SQL
and PL/SQL will do that by converting the
string to a date implicitly. I consider all
these implicit conversions to be bugs in the
developed code, for the following reasons:
The resulting code typically has logic
bombs in it. The code appears to work in
certain circumstances but will not work
in others.
The resulting code relies on default set-
tings. If someone changes the default
settings, the way the code works will be
subject to change. (A DBA changing a
setting can make your code work entirely
differently from the way it does today.)
The resulting code can very well be subject
to SQL injection bugs.
The resulting code may end up per-
forming numerous unnecessary repeated
conversions (negatively affecting per-
formance and consuming many more
resources than necessary).
The implicit conversion may be precluding
certain access paths from being available
to the optimizer, resulting in suboptimal
query plans. (In fact, this is exactly what is
happening to you!)
Implicit conversions may prevent parti-
tion elimination.
Now lets take a look at each of these in
turn. Ill start with a very simple stored
procedureINJthat utilizes dynamic SQL
to produce a result set:
SQL> create or replace
procedure inj( p_date in date )
2 as
3 l_rec all_users%rowtype;
4 c sys_refcursor;
5 l_query long;
6 begin
7 l_query := '
8 select *
9 from all_users
10 where created =
''' ||p_date ||'''';
11
12 dbms_output.put_line( l_query );
13 open c for l_query;
14
15 for i in 1 .. 5
16 loop
17 fetch c into l_rec;
18 exit when c%notfound;
19 dbms_output.put_line
20 ( l_rec.username || '.....' );
21 end loop;
ORACLE DATABASE
SO14_AskTom.indd 57 7/25/14 11:14 AM
58 ASK TOM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
22 end;
23 /
Procedure created.

Line 10 of this code is the culprit here. It
has not one but two implicit conversions.
The code in line 10 is equivalent to
10 where created =
TO_DATE(''' ||
TO_CHAR(p_date) ||''')';
When I concatenate the P_DATE variable
with a VARCHAR2 variable, it must be con-
verted from a DATE datatype to a VARCHAR2
datatype, and that is done by implicitly
applying TO_CHAR using the default NLS_
DATE_FORMAT for the current sessionto
the P_DATE variable.
Later, when the query is executed, it
compares the CREATED database column,
which is a DATE column, with the string pro-
duced by the TO_CHAR implicit conversion.
To make that possible, the string returned
by the TO_CHAR function must be converted
back into a date with the default NLS_DATE_
FORMAT setting once again.
LOGIC BOMBS AND DEFAULT SETTINGS
Think about the logic bombs inherent
in such an approach. By default, the
NLS_DATE_FORMAT in a database is
DD-MON-RR. If I were to pass a date such
as TO_DATE( 18-JUN-1812 13:00:00,
DD-MON-YYYY HH24:MI:SS ), what date
would I be searching for in the above query?
Would it be the 18th of June, 1812, at 1 p.m.?
Almost certainly not, but it could be! That is
the disturbing part: You cannot answer the
question I just posed. No matter what you
answer, Ill say you are wrong and prove it.
By default, in a normal Oracle data-
base with default settings, searching with
the date TO_DATE( 18-JUN-1812 13:00:00,
DD-MON-YYYY HH24:MI:SS ) will search
for the 18th of June, 2012. And it will con-
tinue to do that for a few more years, at
which point the code will start searching
for the 18th of June, 2112 (all by itself,
without a change in a line of code!). That is
because the default NLS_DATE_FORMAT
currently is DD-MON-RR. By using the
RR format, you present the century and
the year in a date converted into a string
with just the year component. So 1812
will become simply 12. Later, when you
convert it back to a date with DD-MON-RR,
youll take that two-character year and
look at what the current year is. Using the
rules documented in Oracle Database SQL
Language Reference (at bit.ly/1mbT8N9),
the string 12 will be converted to the
century and year 2012, because this article
was written in 2014. (If Id written this
article in 1949, it would have returned 1912.
If I were to write this article in the future,
in 2050, it would return 2112). The very
passage of time affects, by default, what
data your application returns! This is a
logic bomb just waiting to happen.
The other part of the logic bomb is that,
by default, the time component is stripped
off. I specified 13:00:00 in my date
input to the procedure. With the default
NLS_DATE_FORMAT, that time component
is stripped away.
I have encountered developers who say
we want the date to be a sliding date based
on the current year, and we want the time
component stripped off. To them I say
great, perfect; then write that codebe
explicit. The reason? A simple change by a
DBA at some point in the future will change
the default behavior the developers are
implicitly relying on. That is, the code works
todayby accidentbut breaks tomorrow
because a default has changed. For example,
the application might have been developed
in Europe, where displaying the date as day-
month-year is the standard. Now the same
application is to be deployed in the US,
where the standard date display is month-
day-year. So, to accommodate that change,
the DBA changes the NLS_DATE_FORMAT to
MM/DD/YYYY. Now that you are no longer
using the RR format, the full year is pre-
served and the behavior of the application
changes over time. Or perhaps the default
NLS_DATE_FORMAT is changed to MM/DD/
YYYY HH24. Now, all of a sudden, a portion
of the time is preserved and the outcome of
your application changes.
This is the nightmare that is reliance on
default implicit conversions. An external
change can and will affect you; it will change
the behavior of your code. I have seen this
happen hundreds, if not thousands, of times
in my career.
So, what potential fix could you put
in place? One quick one would be to use
explicit conversions and explicit date masks.
If the developers goal was to have the date
be the full YYYY (enabling you to search for
1812, 1912, 2012, and so on whenever you
want to), then explicitly code it:
10 where created = TO_DATE(''' ||
TO_CHAR(trunc( p_date, 'd'),
'dd-mm-yyyy' ) ) ||''',
''dd-mm-yyyy'' )';
By using the TRUNC( p_date, d ) func-
tion, you explicitly remove the time com-
ponent. By explicitly using the DD-MM-
YYYY format in the TO_CHAR call, you
save just the day, the month, and the full
year (including the century). Later, in the
TO_DATE call, you use the same format to
reconstitute your date. Now it no longer
matters what NLS_DATE_FORMAT might be
set in your databaseyour code will execute
in a known manner, regardless. You are no
longer subject to external changes. Your
code is stable, predictable, and free of the
logic bomb.
But is this the right way? Is it the correct
approach? Probably not, because there is
a way to completely avoid the conversions
altogether. You have a date input, you have
a date column, and there should be no need
to convert the date to a string and back into
a date. You canand shouldachieve this
easily by using bind variables:
7 l_query := '
8 select *
9 from all_users
10 where created = :x';
11
12 dbms_output.put_line( l_query );
13 open c for l_query
using trunc(p_date,'d');
If you bind in the date, you will be com-
paring a date with a date. There are no
conversions, and there is no chance of a loss
of information (as there can be with the RR
date format). Less work is performed by the
SO14_AskTom.indd 58 7/25/14 11:15 AM
59 ASK TOM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
code overall (so this is more performant). In
my experience, this is the correct solution:
avoid the logic bomb, avoid doing as much
work, and avoid some other nasty surprises
Ill talk about in a moment.
SQL INJECTION ISSUES
Many years ago, in the January/February
2005 issue of Oracle Magazine (bit.ly/
tkinject), I wrote about the issue of SQL
injection in code. The problem of SQL injec-
tion is just as rampant today in 2014 as it
was almost a decade agoif anything, it is
worse today than a decade ago, with many
major attacks against websites and data-
bases involving SQL injection. Therefore, it
is paramount to protect yourself from SQL
injection vulnerabilities wherever possible.
If you consider the original INJ procedure
code, the one with the double implicit con-
version, youll find a major SQL injection flaw
in it. Study that code, and see if you can find
it before reading further. There is a very high
probability that the vast majority of readers
will not be able to express how the code
is SQL-injectable. Therein lies a serious
problem. If you can look at a piece of code
you know is SQL-injectable (Ive told you it is)
and you cannot tell why it is SQL-injectable,
how can you write code that is free from
SQL injection? Ill give you a method for
writing code that cannot be SQL-injected in
a moment, but lets look at the INJ stored
procedure first and discover how to exploit it.
If there is a user who has CREATE
SESSION privileges in your database and
EXECUTE privileges on the INJ stored
procedure, that user will have read access
to virtually every object the owner of that
procedure has read access to. That is
righta user with just CREATE SESSION
privileges and the ability to execute that
procedure can read any table the owner of
that procedure can read. That is a pretty
big security hole (and it gets worse: if the
user also has CREATE PROCEDURE privi-
leges in that database, the user can use
that procedure to do anything the owner of
that procedure can do!).
So how does someone exploit this
SQL injection flaw? Easy. Its just a
matter of playing around with the default
NLS_DATE_FORMAT.
OPS$TKYTE is the owner of the INJ
stored procedure. By default, if someone
else ran the INJ procedure in a normal
Oracle database with all default settings,
that useruser A in this examplewould
expect to see
SQL> create user a identified by a;
User created.
SQL> grant create session to a;
Grant succeeded.
SQL> grant execute on inj to a;
Grant succeeded.
SQL> connect a/a
Connected.
SQL> exec ops$tkyte.inj(sysdate)
select *
from all_users
where created = '06-JUN-14'
PL/SQL procedure successfully completed.
That is a well-formed query. SYSDATE
has been converted into a sensible string
and can be converted back into a date to
be compared with the CREATED column.
But what if user A changes the NLS_DATE_
FORMAT? (Note: You need no privileges to
change the NLS_DATE_FORMAT. Every user
who can connect to the database can do
this). Perhaps the user can also change the
meaning of the SQL statement. For example,
SQL> alter session set
2 nls_date_format =
'dd-mon-yyyy"'' or 1=1 --';
Session altered.
SQL> select sysdate from dual;
SYSDATE

06-jun-2014' or 1=1
All of a sudden, the default conversion
of SYSDATE no longer results in anything
resembling a date. It now looks a bit like
SQL! I (user A) run the buggy INJ stored pro-
cedure again:
SQL> exec ops$tkyte.inj(sysdate)
select *
from all_users
where created = '06-jun-2014' or 1=1--
FB_DEMO.....
BIG_TABLE.....
SCOTT.....
B.....
CLONEDEV.....
PL/SQL procedure successfully completed.
Notice how different the resultant SQL text
is. It now shows all the rows in that tablenot
just the rows matching some date input. You
might say, That is OK; the user is allowed to
see that table, but what about this:

SQL> alter session set
2 nls_date_format = '''"union all
select ename,0,null from emp_t"--';
Session altered.
SQL> select sysdate from dual;
SYSDATE

'union all select ename,0,null


from emp_t-
That looks interesting. If OPS$TKYTE,
the owner of the INJ stored procedure, has
a table called EMP_T, the following should
query it and I might be able to see the data:

SQL> select * from ops$tkyte.emp_t;
select * from ops$tkyte.emp_t
*
ERROR at line 1:
ORA-00942: table or view does not exist
SQL> exec ops$tkyte.inj(sysdate)
select *
from all_users
where created = ''union all
select ename,0,null from emp_t--'
SCOTT.....
ALLEN.....
JONES.....
BLAKE.....
CLARK.....
SO14_AskTom.indd 59 7/25/14 11:15 AM
60 ASK TOM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
PL/SQL procedure successfully completed.
The first query shows that I (user A) do
not have access to OPS$TKYTE.EMP_T, so
I cannot select from it. However, I can trick
the stored procedure owned by OPS$TKYTE,
who does have access, to show it to me.
Using UNION, I can see anything I want that
OPS$TKYTE can see. If I dont know what
else OPS$TKYTE can see, I can add UNION
to a query against the dictionary views to
see what is available:
SQL> alter session set
2 nls_date_format = '''"union all
select tname,0,null from tab"--';
Session altered.
SQL> exec ops$tkyte.inj(sysdate)
select *
from all_users
where created = ''union all
select tname,0,null from tab--'
ALL_OBJECTS_UNLOAD.....
ALREADY_EXISTING_TABLE.....
AUDIT_TRAIL.....
BIG_TABLE.....
T.....
PL/SQL procedure successfully completed.
Now I know all the tables owned by
OPS$TKYTE, so I can start querying away.
A default implicit conversion has opened
this code to a SQL injection attack, one that
is hard to see just by looking at the code
(unless you know what to look for). If Im the
code owner, how can I protect myself? The
answer is rather simple. I want to (a) avoid
the use of defaults at all times and (b) avoid
implicit conversions. If I used
10 where created = TO_DATE(''' ||
TO_CHAR(trunc( p_date, 'd'),
'dd-mm-yyyy' ) ) ||''',
''dd-mm-yyyy'' )';
my INJ procedure code would not be subject
to SQL injection. No matter what the
attacker set the NLS_DATE_FORMAT to, it
would not affect me. However, there is an
infinitely better way, and that is to once
again use bind variables. If the code uses
bind variables (demonstrated above), it
will be impossible for the code to be SQL-
injected. Let me repeat this:
If you use bind variables, your code
cannot be SQL-injected. If you do not concat-
enate inputs sent to you from outside your
code (an end-user submission from a form
on a screen, inputs from another developer,
whatever) and if you use bind variables to
send those values to SQL, your code cannot
be SQL-injectedit is not possible. On the
other hand, if you use string concatenation
and concatenate into your SQL inputs from
some external source (any parameter to
your subroutine example), your code will be
subject to SQL injection issues. You might
not be able to see the SQL injection risks,
but they likely exist!
So, by using bind variables of the correct
datatype, you can avoid implicit conver-
sion issues (you never have to convert the
types!) and you can avoid SQL injection
attacks. Its sort of a two-for-one reason
to use bind variables. If you would like to
read more about SQL injection and implicit
conversions and see how you could use a
procedure like the original INJ procedure to
not only read any object the owner can read
but also do anything the owner can do, go to
bit.ly/tkbinject.
REDUCED ACCESS PATHS
As if the preceding issues were not enough,
there are yet more reasons to avoid implicit
conversions at all costs. Implicit conver-
sions can easily remove many access
paths from consideration and prevent par-
tition elimination.
Take, for example, a rather simple table T:
SQL> create table t
2 ( x varchar2(20)
SQL> alter session set plsql_warnings='enable:all';
SQL> create or replace procedure p authid definer
2 as
3 l_rec t%rowtype;
4 l_key number := 5;
5 begin
6 select * into l_rec from t where x = l_key;
7 for x in (select plan_table_output
8 from TABLE( dbms_xplan.display_cursor()))
9 loop
10 dbms_output.put_line( x.plan_table_output );
11 end loop;
12 end;
13 /
SP2-0804: Procedure created with compilation warnings
Code Listing 1: Procedure P, with implicit conversion and compilation warnings
SQL> exec p
SQL_ID 18796jgha0hwz, child number 0

SELECT * FROM T WHERE X = :B1


Plan hash value: 1601196873

| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |

| 0 | SELECT STATEMENT | | | | 3 (100)| |


|* 1 | TABLE ACCESS FULL| T | 1 | 29 | 3 (0)| 00:00:01 |

Predicate Information (identified by operation id):

1 - filter(TO_NUMBER("X")=:B1)
Code Listing 2: Execution of P, with full table scan
SO14_AskTom.indd 60 7/25/14 11:17 AM
61 ASK TOM
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
constraint t_pk primary key,
3 y varchar2(30)
4 );
Table created.
SQL> insert into t
2 select user_id, username
3 from all_users;
47 rows created.
SQL> commit;
Commit complete.
Table T has a primary key; column X is
that primary key, and it is a VARCHAR2.
However, the application that places data
into table T puts only numbers in there.
So, even though T.X is a VARCHAR2, the
only thing end users and developers see is
numbers. As far as they are concerned, T.X
is a number. So, when they query it, they
tend to use a number as an input. This will,
of course, cause an implicit conversion, and
you can easily see this in action. Lets use
a small stored procedure P, which queries
table T, as shown in Listing 1.
This simple procedure queries table T,
but it uses NUMBER (L_KEY) to compare
the VARCHAR2 column T.X values. This will
cause an implicit conversion, but it is not
readily apparent in the code. That is why I
enabled PL/SQL warnings (a feature of
PL/SQL since Oracle Database 10g), and
the PL/SQL warning facility will actually
alert me to these evil implicit conversions:
SQL> show errors
Errors for PROCEDURE P:
LINE/COL ERROR

6/42 PLW-07204: conversion away
from column type may result
in sub-optimal query plan
PL/SQL is warning me that on line 6
(WHERE x = l_key), I have an implicit con-
version issue. That this fact can easily
be pointed out is a great bonus of using
PL/SQL. Before I look at solutions, lets run
the procedure as is, as shown in Listing 2.
Notice that I am performing a full scan
of table T, which is unexpected, because
my predicate is WHERE X = :B1 and X is
the primary key. I would typically expect to
see an index unique scan to retrieve this
data, but the predicate information section
of the plan report shows what the issue is.
The true predicate is TO_NUMBER(X) =
:B1not just X = :B1. The implicit con-
version leaps into view. That implicit con-
version negates the use of the index on T.X
to access the data. The index is on T.X, not
on TO_NUMBER(T.X).
If I modify the procedure to compare
strings with strings (as I should!), I will see
something completely different, as shown
in Listing 3.
The first thing to notice in Listing 3 is
that there are no warnings at allthe code
compiles cleanly. But even better, the code
in Listing 4 executes the updated procedure
P and the expected plan is used, with the
expected index unique scan.
BACK TO THE BEGINNING
And that is a very long answer to the original
question. Here is the original query plan:
SQL> DELETE
2 FROM OAUTH2_REFRESH_TOKEN
3 WHERE "ID"=
'8A81B295444C2881014452803709648E'
4 /
1 row deleted.

|Id| Operation | Name |

| 0| DELETE STATEMENT| |
| 1| DELETE | OAUTH2_REFRESH..|
|*2| INDEX FULL SCAN| SYS_C00203982 |
SQL> create or replace procedure p authid definer
2 as
3 l_rec t%rowtype;
4 l_key varchar2(5) := '5';
5 begin
6 select * into l_rec from t where x = l_key;
7 for x in (select plan_table_output
8 from TABLE( dbms_xplan.display_cursor()))
9 loop
10 dbms_output.put_line( x.plan_table_output );
11 end loop;
12 end;
13 /
Procedure created.
SQL> show errors
No errors.
Code Listing 3: Revised procedure P, with no compilation warnings
SQL> exec p
SQL_ID 18796jgha0hwz, child number 1

SELECT * FROM T WHERE X = :B1


Plan hash value: 1303508680

| Id | Operation | Name | Rows |

| 0 | SELECT STATEMENT | | |
| 1 | TABLE ACCESS BY INDEX ROWID| T | 1 |
|* 2 | INDEX UNIQUE SCAN | T_PK | 1 |

Predicate Information (identified by operation id):

2 - access("X"=:B1)
Code Listing 4: Execution of revised P, with index unique scan
SO14_AskTom.indd 61 7/25/14 11:17 AM
62 ASK TOM
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
Predicate Information
(identified by operation id):

2 - filter(RAWTOHEX("ID")=
'8A81B295444C2881014452803709648E')
Recall that ID is a primary key and a
RAW(16). I would expect WHERE ID =
:x to use an index unique scannot an
index full scanbut it doesnt. And the
reason it doesnt use an index unique scan
stands out in the predicate information
section. An implicit conversion is being
applied to the ID column, because ID is a
RAW(16) and you are comparing it with a
VARCHAR2(32). You are forced to implicitly
convert the RAW(16) to a VARCHAR2(32).
That implicit conversion negates the use
of the index!
The solution for the performance issue
lies in the application. The application
developers should avoid the implicit conver-
sion being applied to the ID column, and
they can do that by
1. Using WHERE ID = hextoraw(8A81B29
5444C2881014452803709648E ) or
2. Binding a RAW(16) instead of binding
a VARCHAR2(32), which is the correct
approach (use bind variables!) or
3. Binding a VARCHAR2(32) but wrapping
the bind in a HEXTORAW call, such as
WHERE ID = hextoraw(:x)
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
READ more about
SQL injection
bit.ly/tkinject
bit.ly/tkbinject
EXPLORE
Oracle Learning Library
oracle.com/goto/oll
DOWNLOAD Oracle Database 12c
bit.ly/databasedownloads
LEARN more about
Oracle Database 12c
oracle.com/database
FOLLOW Oracle Database on Twitter
@oracledatabase
NEXT STEPS
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.
As a leader in Applications Performance Optimization, Cybernoor can optimize your
Oracle environment to ensure your system performs well and scales. As the data
footprint continues to increase along with the complexity of business requirements,
delivering a high performance system is crucial to the success of the business.
Contact Cybernoor to learn about our proven performance tuning solutions, and
ensure your system is prepared for tomorrows challenges.
cybernoor.com 925.924.0400
Meeting the Demands of Tomorrow
and Delivering High-Performance Now
Peak Performance for your Oracle Applications
To learn more, visit our booth at OpenWorld in Moscone South.
SO14_AskTom.indd 62 7/25/14 11:18 AM
DBA 63 INSIDE OCP BY ANITA MUKUNDAN
ORACLE MAGAZINE SEPTEMBER/OCTOBER 2014
Basics of the Multitenant
Container Database
Consolidate multiple databases with Oracle Database 12c.
R
unning multiple databases on modern
enterprise servers can be an inefficient
use of both hardware and human resources.
The multitenant container database feature
in Oracle Database 12c Release 1 consoli-
dates data and code from multiple data-
baseswithout changing existing schemas
or applicationsto improve resource utili-
zation, manageability, and data security.
This column focuses on container data-
bases and presents sample questions similar
to those that you might encounter in the
Upgrade to Oracle Database 12c and Oracle
Database 12c: Advanced Administration
exams. You can earn the Oracle Database 12c
Administrator Certified Professional certifi-
cate by successfully completing either exam.
THE ORACLE MULTITENANT OPTION
Over time, variations in hardware, operating
systems, and Oracle Database versions can
lead to increasing database maintenance
costs. DBAs must schedule individual
backups, patch individual databases, and
implement different security strategies.
The Oracle Multitenant option intro-
duced in Oracle Database 12c helps you
consolidate databases into a standard-
ized database version that is deployed on
a shared cloud infrastructure. The option
is supported by an architecture in which a
host database called the container database
(CDB) can hold multiple pluggable databases
(PDBs). This option facilitates
Better resource utilization. Available
resourcessuch as background processes,
system global area (SGA), and Oracle
metadatacan be shared.
Rapid cloning. Multiple clones of a plug-
gable database can be quickly created.
Rapid provisioning. On file systems that
support the copy-on-write feature, provi-
sioning can be done quickly.
Management of many as one. With Oracle
Enterprise Manager, a CDB with many
PDBs can be managed as a single database.
Agility. PDBs can be plugged or
unplugged easily for patching, upgrade,
or migration purposes.
Shared resource management. The Oracle
Database Resource Manager feature
supports the multitenant architecture,
enabling a CDB-level plan to manage
resources among PDBs.
Enhanced security. Data security is main-
tained at a granular level even in high-
density consolidation cloud environments.
An existing database can be adopted,
with no changes, as a PDB. The Oracle
Multitenant option can be used with the
Oracle Real Application Clusters and Oracle
Active Data Guard options.
Which statement is true about a PDB that is
created from a non-CDB?
A. The data stored in all schemas of the
PDB is visible by default to all other PDBs
connected to the same CDB.
B. Applications that use the PDB require
code modification to enable them to
access the PDB.
C. A PDB can be cloned only within the CDB
to which it is connected.
D. The data in a PDB is backed up auto-
matically in accordance with the backup
policies and schedule defined at the
CDB level.
The correct answer is D. The Oracle
Multitenant option uses the managing-
many-as-one concept for activities such as
backup and patching.
Answer A is incorrect because although
a CDB shares resources such as background
processes, SGA, and Oracle metadata,
each PDB maintains granular control over
its data and applies its own security poli-
cies to data visibility. Answer B is incorrect
because the Oracle Multitenant option
allows any existing non-CDB to be converted
to a PDB with no changes to the database or
the applications that access it. Answer C is
incorrect because PDBs can be cloned within
the same CDB or from one CDB to another.
Which statements are true about the Oracle
Multitenant option?
A. A PDB can be cloned across CDBs.
B. After a patch is applied at CDB level, the
patch should then be applied to each
PDB in the CDB.
C. The Oracle Database Resource Manager
feature plans defined at the CDB level
can assign different priorities to the
applications supported by various PDBs
within the same CDB.
D. PDBs in a CDB share background pro-
cesses and shared memory but no
Oracle metadata.
E. The Oracle Multitenant option can
be used with Oracle Real Application
Clusters but not Oracle Active Data Guard.
Only options A and C are correct, because
PDBs can be cloned within the same CDB,
or from one CDB to another. The Oracle
Database Resource Manager feature has
been enhanced to allow a CDB-level plan
to manage the distribution of resources
between the PDBs plugged into that CDB.
Answer B is incorrect because the
managing-many-as-one concept allows
patching to be done at the CDB level, which
automatically patches all the PDBs plugged
ORACLE DATABASE 12c
Enterprise database
consolidation leads
to greater scalability
and improved
resource utilization.
SO14_OCP_12c.indd 63 7/31/14 10:48 AM
64 INSIDE OCP
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
into it. Answer D is incorrect because all
PDBs plugged into a CDB share the Oracle
metadata that is stored in the CDB. Answer E
is incorrect because the Oracle Multitenant
option is compatible with and complements
both Oracle Real Application Clusters and
Oracle Active Data Guard.
MULTITENANT ARCHITECTURE
In the multitenant architecture, a container is
a collection of schemas, objects, and related
structures. A container appears to be a logi-
cally separate, independent database. Each
container in a CDB has a unique ID and name.
A container is classified either as a PDB
or root container (also called the root). The
root is a collection of schemas, schema
objects, and nonschema objects to which
all PDBs belong. The root does not store
any user data.
A CDB has a single set of background
processes and SGA that is used by all PDBs
plugged into that CDB. A database instance
is associated with a single CDB. A data-
base instance cannot be shared between a
non-CDB and CDB.
Every CDB has the following containers:
One root container, called CDB$ROOT,
that stores Oracle-supplied metadata and
common users (database users known in
every container belonging to that CDB).
One seed PDB, called PDB$SEEDa
system-supplied template that the CDB
can use to create new PDBs. The seed PDB
cannot be modified.
Zero or more PDBs.
A PDB is a user-created entity containing
a collection of schemas and schema objects
that store the data and code required for an
application. No PDBs exist when a CDB is
first created. A PDB can be plugged into only
one CDB at a time.
A CDB can have multiple PDBs plugged
in at any given time, and each PDB exists
in complete isolation from the other PDBs
plugged into the same CDB. Each PDB retains
granular control over its schemas and objects.
From the perspective of a user or applica-
tion, the PDB appears as if it is a traditional
non-CDB database. From the operating
system perspective, the CDB is the database.
Which statements are true about a CDB?
A. A CDB cannot exist without a PDB.
B. A CDB can contain multiple seed PDBs.
C. A CDB can share a database instance
with a non-CDB.
D. A CDB cannot exist without a root
container.
E. A CDB can have PDBs that have a user
with the same username across the PDBs.
The correct answers are D and E. The
minimal contents of a CDB are the root con-
tainer CDB$ROOT and PDB$SEED. Because
PDBs exist in isolation from one another,
users and objects with the same names can
be stored within each PDB.
Answer A is incorrect because a CDB can
contain zero PDBs. Answer B is incorrect
because a CDB can have only a single seed
PDB, which cannot be modified and exists
as a template for the creation of new PDBs.
Answer C is incorrect because although
both a CDB and a non-CDB can exist on the
same server, they function as independent
entities because of their architectural dif-
ferences. A CDB shares a set of background
processes and SGA with its PDBs, but a
non-CDB requires a nonsharable set of
background processes and SGA.
HORIZONTAL PARTITIONING OF THE
ORACLE DATA DICTIONARY
Horizontal partitioning of the Oracle data
dictionary is at the heart of the multitenant
architecture. This is a conceptual parti-
tioning, not a physical table partitioning.
The CDB$ROOT root container contains
a set of tablespaces and their data files,
which implement the data dictionary tables
to hold the metadata only for the Oracle
system. The roots metadata describes each
PDB that is plugged into it. This metadata
for a PDB is deleted from the root when that
PDB is unplugged. The root, therefore, can
be considered a metadatabase only.
Each PDB has its own set of tablespaces
and corresponding data files that implement
the data dictionary tables to hold an applica-
tions metadata, and a set of tablespaces that
hold the applications user-defined data.
The root differs significantly from a PDB
in that it never holds any user-defined data.
Both the root and the PDBs have distinct
data dictionaries and can be the focus of a
foreground process. Therefore a session, at
every moment of its lifetime, has a uniquely
defined current container that it can access.
Which statement explains how the root
container, CDB$ROOT, differs from a PDB?
A. CDB$ROOT contains only the Oracle
system metadata, whereas a PDB con-
tains metadata from the CDB into which
it is plugged and application metadata.
B. CDB$ROOT contains both Oracle system
metadata and application metadata,
whereas a PDB contains only user-
defined data.
C. CDB$ROOT contains all the Oracle
system metadata and a part of the
application metadata, whereas a PDB
contains all application metadata
along with the user-defined data for
that application.
D. CDB$ROOT contains only the Oracle
system metadata, whereas a PDB con-
tains all application metadata and the
user-defined data for that application.
The correct answer is D. The root contains
metadata only for the Oracle system and is
a metadatabase with no user-defined data.
A PDB is typically created for an application
and therefore contains that applications
metadata and user-defined data. PDBs
access required Oracle system metadata
from the CDB that they are plugged into.
CONCLUSION
Enterprise database consolidation leads to
greater scalability and improved resource
utilization, which reduce server and storage
hardware costs while increasing application
availability. The Oracle Database 12c multi
tenant architecture retains the separation
of individual databases and requires no
changes to applications, and it simplifies
DBA tasks such as provisioning, patching,
and upgrading.
LEARN more about the Oracle
Certification Program
education.oracle.com
READ Inside OCP columns
bit.ly/insideocp
NEXT STEPS
Anita Mukundan is a principal certification
exam developer at Oracle. She has been with
the company since 2007.
SO14_OCP_12c.indd 64 7/31/14 10:48 AM
CAREER OPPORTUNITIES
Untitled-1 1 8/15/14 6:14 AM
CAREER OPPORTUNITIES
Then we need to talk.
Were LOADSPRING Solutions, a market leader in enterprise-level
cloud computing solutions for project managementand
one of Inc. Magazines 2011 Top Small Company Workplaces.
Were not typical. And neither are you.
If you are ready to work somewhere that rocks, we need a
Strategic Accounts Director, Software Systems Administrator,
Software Engineer and Oracle Database Administrator. Please
submit your resume and cover letter, with salary requirements
to HR@loadspring.com.
D
o
y
o
u
h
a
v
e

w
h
a
t
it
t
a
k
e
s

t
o
b
e
a
r
o
c
k
s
t
a
r
?
Find us on LinkedIn and Facebook +1.978.685.9715
2014 LS HRad_Final.indd 1 7/22/14 10:47 AM
We are leaders in Oracle solutions.
Find your place with us.
KPMG is rapidly growing its Oracle solutions team. Our Consultants
focus on creating new strategies, expanding into new markets, and
rethinking business models for a competitive advantage. Theres a
place for your skills, ideas and interests here, along with opportunity
to set the pace for years to come. Were looking for experienced
professionals in Enterprise Performance Management (EPM), Business
Analytics, Oracle Business Intelligence Enterprise Edition (OBIEE),
HCM and Financial solutions in Fusion and PeopleSoft, Oracle EBS,
Transportation Management and Solutions Sales.
To learn more about these career opportunities, visit
us-jobs.kpmg.com and type Enterprise Solutions
into Job Search keyword or join us at:
Oracle Open World 2014
September 28 October 2, 2014 Booth 1721
One rm. One team. Countless opportunities.
KPMG LLP is an afrmative action, equal opportunity employer.
Minority/Female/Disability/Veteran.
2014 KPMG LLP, a Delaware limited liability partnership and the U.S. member
rm of the KPMG network of independent member rms afliated with KPMG
International Cooperative (KPMG International), a Swiss entity. All rights reserved.
Untitled-1 1 8/15/14 6:20 AM
CAREER OPPORTUNITIES
Senior Software Developer C
++
Requirements


Expert level C
++
knowledge


5
+
years professional development experience


Good skills in Microsoft VC
++
, MFC, and STL


Good English language skills


Experience with XML, COM, and databases
Join our team to extend the capabilities
of our products and create new,
innovative software development tools.
The result of your efforts will be used
by thousands of developers worldwide.
Developing highly complex algorithms
and designing and implementing
cutting-edge graphical user interfaces
is part of your challenge.
Altova offers a competitive salary and benefts package.
For more information and to apply, visit www.altova.com/careers
Altova

is a software company specializing in tools that assist developers with


data management, software and application development, mobile development,
and data integration. We foster an open, creative, collaborative environment with
an emphasis on excellence and team work.
JOIN THE TEAM THATS ALREADY ON TOP
Rolta is an Oracle Platinum Partner and
global leader in IT consulting and solutions,
operating from 40 locations worldwide,
we have executed projects in more than
45 countries. Specializing in serving the IT
needs of enterprises in the Financial Services,
Manufacturing, Oil & Gas, Retail, Healthcare
and Utilities industries, Rolta delivers best
practices and innovative solutions to
dramatically improve our clients ef ciencies
and efectiveness.
If you know Oracle, you should know Rolta.
Consultants and sales associates are high
on our list of people we truly
care about. Join us. See a
list of current openings at
www.rolta.com and on Rolta
Americas LinkedIn page.
Untitled-1 1 8/15/14 6:20 AM
68
SEPTEMBER/OCTOBER 2014 ORACLE.COM/ORACLEMAGAZINE
IN THE FIELD BY CAROL HILDEBRAND
O
racle Magazine sat down with Alyssa
Johnson, the newly elected president of
Oracle Applications Users Group (OAUG), to
talk about her history with Oracle technology,
the mission of OAUG, and collaboration. In
Part 2 of the interview, Johnson delves into
the importance of attracting women to tech-
nology careers, as well as how OAUG helps its
members take the lead on technology trends.
Oracle Magazine: You mentioned earlier (see
Learning Circle, Part 1 in Oracle Magazine,
July/August 2014) that OAUG will have a
woman in the presidency for three years in a
row. What is your perspective on women in
technology today?
Johnson: Well, I am pleased with the focus
OAUG has on women in technology, which
is directly supported by OAUG members
electing women to serve on the OAUG board
of directors. Members are really looking at
the capabilities that the elected women
bring to the board. [The OAUG board of
directors elects the OAUG president.]
I think the participation of women in
technology is also reflected in our events. I
ran across an interesting number for early
registration for COLLABORATE 14: almost
half of those registrants were women. I think
that is very exciting.
One of the highlights of COLLABORATE 14
was the Women in Technology panel, and we
had some excellent panelists this year. They
sparked a lively and thought-provoking dis-
cussion, which carried over to the Women
in Technology luncheon where we had the
opportunity to listen to Jhone Ebert, chief
innovation and productivity officer at Clark
County, Nevada.
Oracle Magazine: How do young women get
interested in technology?
Johnson: For me, it certainly helped that my
family was very scientifically focused. My dad
was a calibrations engineer, and there was
never a thought in our household that girls
cant do math or science. In fact, my ninth
grade science fair project was on computer
programming, and that was many years ago.
When you have that kind of mind-set and
support when youre growing up, it helps
overcome barriers that you see in the work-
force because it just doesnt come into your
mind that women cant do this kind of job.
I think its important to make sure that
younger people, especially women, are
aware of both educational and career oppor-
tunities in the technology field.
Oracle Magazine: Do you have suggestions
for women looking ator already intech-
nology careers?
Johnson: Finding a mentor is very impor-
tant. When I first started my career, there
was a woman that I worked with who was
very active and really helped me. When I
saw other womens achievements, it helped
give me the confidence to continue to move
forward. Its equally important to give back by
looking for opportunities to mentor others.
As women, we need to provide that guidance.
Oracle Magazine: Moving on to the tech-
nology itself, how does OAUG address hot
technology topics?
Johnson: One thing that we do very well with
OAUG is to stay tuned to industry trends and
find information to reflect what our mem-
bership cares about. Technology is such
a fast-changing field that its important
to touch base with our membership fre-
quentlythats why were active throughout
the year, providing both content and net-
working opportunities.
For example, we ran an excellent article
in Insight magazine about where cloud is
heading, penned by one of our members.
A strength of OAUG is that we can look to
industry experts who are also members
for perspective.
Oracle Magazine: Are you using social media
in conversations about technology trends?
Johnson: Absolutely. Ive recently gotten
more involved in Twitter, which has given me
valuable perspective on social media usage.
Im a little bit behindmy daughters are
much more Twitter-savvy than I am.
Ive found that its an efficient way to find
what the technology trends are. And at the
end of the day, thats what we are here for
to provide opportunities for our members to
talk with others, especially about trending
technologies. That way, you get to hear from
somebody who is actually using those tech-
nologies, which ultimately helps you make a
better decision for your whole organization.
Alyssa Johnson, president of OAUG, talks about
COLLABORATE 14, social media, and more.
Learning Circle, Part 2
OAUG President Alyssa Johnson talks about women in
technology and technology trends.
READ Learning Circle, Part 1
bit.ly/oaugpart1
JOIN OAUG
oaug.org
NEXT STEPS
Carol Hildebrand writes about business,
sports, and technology from Wellesley,
Massachusetts.
P
A
U
L

S
.
H
O
W
E
L
L
SO14_InTheField_johnson.indd 68 7/24/14 1:43 PM
Copyright 2014, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Other names may be trademarks of their respective owners.
oracle.com/partners/goto/exastack
ISV Apps
Run Better
on Exadata
Over 700 ISV Applications Are Certified on Exadata
30x Lower CPU Utilization
19x More Registrations
4x Less Storage Used
90% Linear Scalability
15x Faster MDM Throughput
70:1 Compression
30x More Scalable
Fonts: Univers LT Std. 75 Black, 65 Bold, 55 Roman, 45 Light,
67 Bold Condensed, 57 Condensed
PRODUCTION NOTES
VENDOR NOTE: Please use center marks to align page.
Please examine these publication materials carefully.
Any questions regarding the materials, please
contact Darci Terlizzi (650) 506-9775
READER
01
LASER% RELEASED
7/31
2014
Resize
8 x 10.875
Job #:
Ref #:
Headline:
Live:
Trim:
Bleed:
115M_MTL00058_ISVAppsEXD_OPN
M_115M_MTL_00057 _ISVAppsEXD_OPN
ISV Apps Run Better on Exadata
7 x 9.875
8 x 10.875
8.25 x 11.125
Untitled-1 1 8/14/14 2:13 PM

Vous aimerez peut-être aussi