Get Tomorrow'S Information, Today!: Get Unlimited, Online Access To Technology Books As They're Written
Get Tomorrow'S Information, Today!: Get Unlimited, Online Access To Technology Books As They're Written
Find out why technology professionals prefer Safari Books Online. Request a group trial and learn more at: safaribooksonline.com/oracle
JANUARY/FEBRUARY 2012
General-Purpose Engineering SPARC SuperCluster T4-4 delivers extreme performance and value / 22 Security for Everyone How to protect your Oracle ADF applications from unauthorized access, using Oracle ADF Security / 59 On History, Basics, and Network Performance Our technologist recalls a Web seminar, gives the right hint, and dishes on network performance / 70 Get Answers with SELECT Part 3 in a series on the basics of the relational database and SQL / 75
AR
GE IMA O T E COM
AR
royo Thaddeus Ar
AT&T
AR
s Claire Rawlin
NBN Co
Fujitsu's SPARC ENTERPRISE Fujitsu's SPARC ENTERPRISE delivers Trust and Business Continuity delivers Trust and Business Continuity
Fujitsu and Oracle together are creating UNIXUNIX history through progressive delivery of Fujitsu and Oracle together are creating history through progressive delivery of server solutions with with SPARC ENTERPRISE. customer commitment is reflected in in server solutions SPARC ENTERPRISE. Our Our customer commitment is reflected overwhelming performance and excellent reliability that that protect, grow, and expand, overwhelming performance and excellent reliability will will protect, grow, and expand, the unique value of your your business assets. the unique value of business assets. Please visit visit : www.fujitsu.com/oracle/ Please : www.fujitsu.com/oracle/
2011 FujitsuFujitsu Limited. All reserved. Fujitsu, the FujitsuFujitsu logo and SPARC Enterprise are registered trademarks or trademarks of 2011 Limited. All rights rights reserved. Fujitsu, the logo and SPARC Enterprise are registered trademarks or trademarks of FujitsuFujitsu Limited UnitedUnited and other countries. UNIX isUNIX is a registered trademark of open in the UnitedUnited and and Limited in the in the States States and other countries. a registered trademark of open group group in the States States other countries. Oracle Oracle and Java are registered trademarks of Oracle and/or its affiliates. All SPARC trademarks are used under other countries. and Java are registered trademarks of Oracle and/or its affiliates. All SPARC trademarks are used under licenselicense and are registered trademarks of SPARC International. the UnitedUnited and other countries. and are registered trademarks of SPARC International. Inc. in Inc. in the States States and other countries.
CONTENTS
1 1 0 2
/36
Innovation. Excellence. Leadership. Oracle customers, partners, and technologists continue to excel and bring new meaning to these words. In 2011, Oracle recognized outstanding achievement through the Oracle Excellence Awardswith categories including CIO of the Year, Technologist of the Year, Data Warehouse Leader of the Year, Eco-Enterprise Innovation, Java Innovation, Oracle Fusion Middleware Innovation, and Proactive Support: Champion of the Year. By David A. Kelly, with additional reporting by Patty Waddington
C is for Cloud / 52
Designed to manage data center and cloud environments, Oracle Enterprise Manager has consistently focused on business-driven IT management. The latest release, Oracle Enterprise Manager 12c, continues this focus and expands its cloud management capabilities to deliver a complete solution for setting up, managing, provisioning, and charging back for Oracle-based enterprise clouds. By David Baum
2011 Quest Software, Inc. ALL RIGHTS RESERVED. Quest, Quest Software and the Quest Software logo are registered trademarks of Quest Software, Inc. in the U.S.A. and/or other countries. All other trademarks and registered trademarks are property of their respective owners. ADD-Toad-FullPage-US-SW-11152011
Up Front / 6
FROM THE EDITOR / 6
Really Big
Tom Haunert
Community / 28
PARTNER NEWS / 28 BOOK BEAT / 28 COMMUNITY BULLETIN / 31
Oracle OpenWorld 2011 was an instructive experience for participants and the launch platform for a gamechanging technology. Justin Kestelyn
Technology / 59
ORACLE ADF / 59 Security for Everyone
Protect your Oracle ADF applications from unauthorized access using the Oracle ADF Security feature. Frank Nimphius
Comment / 79
IN THE FIELD / 79
Building the Knowledgebase
IOUG survey results drive the user group agenda, affect product development, and inform the wider public. Andy Flower
MASHUP / 8
News, views, trends, and tools
PL/SQL 101 / 65
At Oracle / 10
Engineered for Innovation
A recap of the conference
ARCHITECT / 32
Tools of the Trade
Whats in your architecture toolbox? Bob Rhubart
ANALYSTS CORNER / 80
ASK TOM / 70
UP CLOSE / 34
Our technologist recalls a Web seminar, gives the right hint, and dishes on network performance. Tom Kyte
RESOURCES / 15
Your guide to Oracle Webcasts, podcasts, white papers, and more
PEER-TO-PEER / 35
Demystifying IT
Susan Behn, Connor McDonald, Rob Zoeteweij Blair Campbell
BRIEFS / 18
The latest product news
Editorial Editor in Chief Tom Haunert [email protected] Senior Managing Editor Caroline Kvitka [email protected] Contributing Editor and Writer Blair Campbell Editor in Chief, oracle technology Network Justin Kestelyn [email protected] technology advisor Tom Kyte Contributors Marta Bright, Jeff Erickson, Fred Sandsmark, Rich Schwerin, Leslie Steere dESiGN Senior Creative director Francisco G Delgadillo design director Richard Merchn Contributing designers Jaime Ferrand, Sloan Schwartz Production designer Sheila Brennan Editorial Board Ian Abramson, Karen Cannell, Andrew Clarke, Chris Claterbos, Karthika Devi, Kimberly Floss, Kent Graziano, Taqi Hasan, Tony Jambu, Tony Jedlinski, Ari Kaplan, Val Kavi, John King, Steve Lemme, Carol McGury, Sumit Sengupta, Jonathan Vincenzo, Dan Vlamis SuBSCriPtioN iNforMatioN Subscriptions are complimentary for qualified individuals who complete the subscription card found in each issue or online at oracle.com/oraclemagazine. For change of address, mail in label with the new address to: Oracle Magazine, P.O. Box 1263, Skokie, IL 60076-8263. MaGaziNE CuStoMEr SErviCE [email protected] 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 [email protected].
PuBliShiNG Publisher Jeff Spicer [email protected] Production director and associate Publisher Jennifer Hamilton [email protected] +1.650.506.3794 Senior Manager, audience development and operations Karin Kinnear [email protected] +1.650.506.1985 advErtiSiNG SalES associate Publisher Kyle Walkenhorst [email protected] +1.323.340.8585 Northwest and Central u.S. Tom Cometa [email protected] +1.510.339.2403 Southwest u.S. and lad Shaun Mehr [email protected] +1.949.923.1660 Northeast u.S. and EMEa/aPaC Mark Makinney [email protected] +1.805.709.4745 Mailing-list rentals Contact your sales representative. rESourCES oracle Products +1.800.367.8674 (U.S./Canada) oracle Services +1.888.283.0591 oracle Press Books oraclepressbooks.com
Copyright 2011 and 2012, oracle and/or its affiliates. All Rights Reserved. No part of this publication may be reprinted or otherwise 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 Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Oracle Magazine (ISSN 1065-3171) is published bimonthly with a free subscription price by: Oracle, 500 Oracle Parkway, MS OPL-3C, Redwood City, CA 94065-1600. Periodicals Postage Paid at Redwood City, CA, and additional mailing offices. POSTMASTER: Send address changes to: Oracle Magazine, P.O. Box 1263, Skokie, IL 60076-8263.
Really Big
S
NExt StEPS
LEARN more about Oracle OpenWorld oracle.com/openworld oracle.com/openworld/live/on-demand Oracle Public Cloud cloud.oracle.com Oracle Enterprise Manager 12c oracle.com/us/products/enterprise-manager Oracle Social Network bit.ly/omagosn1 Oracle Fusion Applications oracle.com/us/products/applications/fusion Oracle NoSQL Database oracle.com/us/products/database/nosql Oracle Big Data Appliance bit.ly/omagbigdata Oracle Exalytics In-Memory Machine bit.ly/omagexalytics Oracle SPARC SuperCluster bit.ly/omagspacsc Oracle Excellence Awards oracle.com/us/corporate/awards JavaOne oracle.com/technetwork/java/javamagazine
ome things defy description. And sometimes trying to describe such things helps to make that point. In The Hitchhikers Guide to the Galaxy, Douglas Adams has such a description: Space is big. You just wont believe how vastly, hugely, mind-bogglingly big it is. When people who have never been to Oracle OpenWorld ask me to describe it, I often borrow from Adams and begin my description with Oracle OpenWorld is big. I usually then go on to number the different venues, the street closures, the hotels, the tents, the attendees, and so on. After Oracle OpenWorld 2011, however, Im going to start mentioning the number of industrydisrupting news announcements that come out of this event. Typically Big A typical Oracle OpenWorld San Francisco experience is a collection of news, education, networking, socializing, sightseeing, and more. In the area of news, Oracle OpenWorld is a launchpad for Oracle and its partners to make really big announcements, a place for everyone to take in that information, and an opportunity for all manner of media to comment on it. Oracle OpenWorld 2011 certainly did not disappoint anyone looking for big news. For all of you who attended Oracle OpenWorld 2011 in San Francisco, California, watched online on the YouTube channel, experienced other coverage of the event, or somehow managed to miss the event completely (is that possible?), there are more than 34 pages (print or digital) of Oracle OpenWorldrelated content in this issue of Oracle Magazine.
Oracle OpenWorldrelated news in this issue includes Oracle Public Cloud, Oracle Enterprise Manager 12c, Oracle Social Network, Oracle Fusion Applications, Oracle NoSQL Database, Oracle Big Data Appliance, Oracle Exalytics In-Memory Machine, Oracle SPARC SuperCluster, and Oracle Excellence Awards. Cloud computing was a big part of the Oracle OpenWorld conversation, including the Oracle Public Cloud, Oracle Enterprise Manager 12c, Oracle Social Network, and Oracle Fusion Applications announcements, and the final day of the conference was dedicated to the cloud. Engineered systems were also in the news as Oracle introduced Oracle Big Data Appliance and Oracle Exalytics In-Memory Machine and previewed Oracle SPARC SuperCluster. Even hands-on technology content is part of the Oracle Magazine Oracle OpenWorld experience: Tom Kyte includes information from one of his Oracle OpenWorld presentations in this issues Ask Tom column. NoT Big ENough Because Oracle OpenWorld is so big, the 34 pages of Oracle OpenWorld coverage in this issue only scratch the surface of what happened there. I encourage you to explore the links in Next Steps for more information about Oracle OpenWorld and the biggest news from the conference. I also recommend that you explore the links in the rest of this issues Oracle OpenWorld coverage to continue your exploration of that news and see how big it really is. Tom haunert, Editor in chief [email protected]
twitter.com/oraclemagazine linkd.in/orclmag
bit.ly/aVgo69
bit.ly/orclmagfb
My kind of oracle education & training april 22-26, 2012 Mandalay bay, las vegas
exclusives :
full-day deep dives coMpliMentary for ioug registrants only!
all other attendees pay the regular rate of $599. 8 hours of technical training, on topics like:
http://collaborate12.ioug.org
MashUp
ANIMAL APPS
Scotts Bird ID
Identify wild birds by both pictures and birdcalls, then share which birds you spot on an interactive Facebook map. Developed with the National Wildlife Federation. Free (Android, iPhone). scotts.com
Pet Dossier
Track your pets health records, medications, diet and feeding schedules, vet and groomer appointments, and more; e-mail information to a pet sitter. Do good, too: 25 percent of the sale price goes to the ASPCA. US$1.99. yepyup.com
iKibble
If you cant resist feeding your dog from the table, this app tells you if what youre offering is healthy. Choose from hundreds of meats, dairy products, fruit, vegetables, and grains. US$0.99, or free if youre willing to look at ads. bit.ly/s2U7mx
PawTrotter
Carry this directory of more than 130,000 pet-friendly businesses, hotels, and parks. Find a pet sitter or vet, and view user ratings. This app also helps pets in need: a percentage of revenues goes to the American Humane Association. US$2.99. pawtrotter.com
1 TB SSD DRIVE
OCZs new Octane series is the first solid-state drive (SSD) to squeeze 1 full terabyte of storage into a 2.5-inch drive. The drive has read speeds of up to 560 MB/sec and write speeds of 400 MB/sec. Octane SSDs also come equipped with proprietary NDurance technology from Indilinxa NAND flash controller maker acquired by OCZwhich increases the lifespan of the NAND flash memory, ensuring the most consistent and reliable performance and minimizing degradation even when the drives storage capacity is highly utilized. Octanes 1 TB capacity could be just what it takes for SSDs to move from supplemental drive status to actually replacing traditional plate drives. US$1.30/GB. ocz.com
Button-down is rarely synonymous with cool, but the SeV Button Down Shirt from Scottevest turns a conservative garment into a must-have tech accessory by adding a handful of secret pockets and extra features. The standard chest pocket is bolstered with pen- and passport-sized inner pockets and a hidden magnetic clasp to hold stuff in when you bend over. An extra pocket at the bottom of the placket is handy for stashing cash or credit cardsif you wear the shirt untucked. And two invisible underwing zippered pockets can hold sunglasses, a smartphone, or other items youd rather not share with pickpockets. The shirt also sports a personal area network (loops and holes through which you can thread earbuds) and is sewn of wrinkle-free cotton in six colors and patterns. US$80. bit.ly/omagshirt
IN THE POCKET
Just 18 minutes a day can save you hours of inefficiency. The trick is to choose your focus deliberately and wisely, and then consistently remind yourself of that focus throughout the day.
Peter Bregman, author of 18 Minutes (Business Plus, 2011)
DATA CENTER EXECUTIVES WERE ASKED Whats driving you to cloud and virtualization in your data center design?
74%
SAID
BUSINESS NEEDS DRIVE IT DECISIONS
Business needs will ultimately drive the adoption of cloud and virtualization.
13%
SAID
OPERATIONAL VARIABLES
Manageability and agility help contain staff, power, cooling, and other expenses.
13%
SAID
CAPITAL EXPENSES
Its about optimizing and managing return on investment and total cost of ownership.
YOUR TURN
10
Oracle OpenWorld 2011 showcased the latest products and technologies from Oracle, its partners and customers, and technology enthusiasts.
week. The much-anticipated Appreciation Eventwith Sting, Tom Petty and the Heartbreakers, and Dave Wakeling and the English Beatonce again rocked Treasure Island. Finally, the Its a Wrap! event gave attendees one last chance to celebrate.
Oracle OpenWorld 2011 drew more than 45,000 technology enthusiasts from 117 countries for five days of keynotes, sessions, and networking.
Oracle President Safra Catz welcomed the audience to a keynote presentation by Cisco Chairman and CEO John Chambers.
11
Oracle CEO Larry Ellison proudly showed off a 2010 World Series ring presented to him by San Francisco Giants President Larry Baer (right).
Oracle President Mark Hurd explained how Oracles strategy of hardware and software, engineered to work together, is delivering results.
Customers sailed on San Francisco Bay in the International Americas Cup yacht USA-76, which was raced by ORACLE Racing in the 2007 Americas Cup.
Located between Moscone North and South, the Howard Street Tent hosted catered lunches, OTN Night, the OTN Lounge, and more.
JavaOne 2011
For a complete wrap-up of JavaOne 2011, see the November/December 2011 issue of Java Magazine at bitly.com/omagjavamag.
Congratulations!
Avnet recognizes its Value Added Reseller Partners for winning a 2011
Winner: Enkitec
Hardware Momentum
NEXT
2011 Avnet, Inc. All rights reserved. The Avnet Technology Solutions logo is a registered trademark and Accelerating Your Success is a trademark of Avnet, Inc. All other products, brands and names are trademarks or registered trademarks of their respective owners.
EvEnts
13
Technology Events
Conferences and sessions to help you stay on the cutting edge HIMSS12 Annual Conference and Exhibition
bit.ly/w2mxM9
bit.ly/rKI84W
February 2024, Las Vegas, Nevada Sponsored by the Healthcare Information and Management Systems Society, this weeklong gathering of healthcare technology professionals offers more than 300 educational sessions in 23 categories such as mobile health, business and clinical analytics, and meaningful use. Get all the details and register at himssconference.org.
bit.ly/rQQhXy
who use (or want to use) Oracle Solaris and Oracle Linux, this bring-your-own-laptop event offers OS-specific hands-on training.
coug.ab.ca
neooug.org
gcoug.org
bit.ly/t3lY0K
rmoug.org
14
events
big data processing, parallel computing, mobile cloud, private clouds, and infrastructure.
OOP 2012
January 2327, Munich, Germany flanyrd.com/2012/oop Under the banner of Sustainability: Empowering the Next Generation, thousands of software architects, developers, and IT professionals discuss agile, SOA, mobility, embedded development, and modern software engineering topics.
advances in the science and application of network and distributed systems security.
RSA Conference
February 27March 2, San Francisco, California frsaconference.com/events/2012/usa This event for information security leaders includes 17 technical tracks, more than 220 hands-on sessions (including several peer-topeer events), and more than 350 technology vendor exhibits.
EVENTS LOCATOR
Oracle Events oracle.com/events Locate User Groups oracle.com/technetwork/community
RON SELLERS
ResouRces
15
WEBCASTS
Oracle Linux Kernel Updates with Zero Downtime fbit.ly/vQOQJ3 Learn how to improve your Linux uptime, introduce patches without business disruption, and make your Linux environment easier to manage. Webcast Series: Oracles Enterprise Storage foracle.com/goto/storagewebcast Dive into Oracles storage portfolio, integrated solutions, and storage management products. Oracle Linux and Virtualization Training fchannelsun.sun.com/media/show/17227 Discover the training and certification options available for Oracle Linux and Oracle VM Server. Java EE 6 One Year Later fbit.ly/nkO2bs This Oracle University Webcast provides an overview of Java EE 6 features and the benefits that Java EE 6 can bring to your development projects. Oracle Business Intelligence Enterprise Edition 11g Overview fbit.ly/ufAE9h This Oracle University Webcast takes you on a tour of the new Oracle Business Intelligence Enterprise Edition 11g features.
MySQL Cluster and Oracle NoSQL Database fbit.ly/taXAf7 Hear whats new in the second development milestone release of MySQL Cluster 7.2. Shafii and Konduri on Oracle Fusion Middleware fbit.ly/vjmvNg Authors Reza Shafii and Gangadhar Konduri discuss Oracle Fusion Middleware 11g Architecture and Management (Oracle Press, 2011). Red Samurai Helps Oracle WebCenter Customers Experience the Social Enterprise fbit.ly/vqp1l9 Hear about Oracle partner Red Samurais exten-
For Oracle product information, call the number for your region. COUNTRY U.S. and Canada Australia Austria Belgium Brazil China Denmark Finland France Germany Greece Hong Kong India Indonesia Ireland Italy Japan Malaysia Mexico The Netherlands New Zealand Norway Philippines Portugal Singapore South Africa South Korea Spain Sweden Switzerland Taiwan Thailand Turkey U.K. PHONE NUMBER 1.800.367.8674 1800.735.467 0800.29.7626 0800.73280 0800.901.985 800.810.0161 8088.1068 0800.113.573 0800.905.805 0800.1.810.111 00800.353.12020 3002.1246 1600.44.6725 001.800.1.672.253 1850.672253 8008.74720 0120.155.096 1800.80.1837 01800.221.7321 0800.0827 0508.555.215 800.14411 811.5831 800.853.021 1800.6722.531 0800.994.225 080.2194.114 900.952900 020.798798 0800.55.2574 0800.672.253 001800.441.0545 00800.353.90014 0870.5.332200
Oracle Direct
CALCULATOR
Sun ZFS Storage Appliance Savings Calculator fbit.ly/t3jZpp See how you improve your storage capacity and lower your costs with Sun ZFS Storage Appliance.
E-BOOK
The Next Page in InnovationExtreme Performance foracle.com/goto/ipad2 Now available on the iPad, this Oracle Exadata interactive e-book includes success stories, analyst reports, and demos.
PODCASTS
Oracle SPARC SuperClustersThe New SPARC-Based Engineered Systems fbit.ly/td8JYD Find out about Oracles SPARC SuperClusters, a new generation of optimized apps-to-disk engineered systems that offer the performance of Oracle Exadata.
16
resOurces
OVERHEARD
[Oracle Public Cloud] is a big deal because it is the first cloud that offers a complete set of applications, fully integrated with a set of platform servicesapplication, middleware, and databaseall in one unified product offering with a simple pricing model and consumable in a self-service mechanism.
Tyler Jewell, Vice President of Product Management at Oracle, in Introducing the Oracle Public Cloud (bit.ly/tq8Wsy)
the SPARC T4 processor can maximize ROI and help organizations manage costs for their existing infrastructures and new enterprise cloud infrastructure design.
EDUCATION/TRAINING
Oracle Enterprise Manager 12c Cloud Control fbit.ly/vmx8eT Achieve total cloud control with new training on Oracle Enterprise Manager 12c. This self-study and classroom series covers the enterprise-ready framework, database and configuration management, provisioning and patching, and more. ITIL v3 Foundation fbit.ly/tdqudA Oracle Universitys ITIL v3 Foundation course provides IT professionals with an understanding of the core principles of the IT Infrastructure Library (ITIL), a global IT standards approach. Oracle Database 11g: New Features for Administrators Accelerated Release 2 fbit.ly/rCS7EU Learn about the key features and enhancements of Oracle Database 11g Release 1 and Release 2. Oracle WebLogic Server 11g: Administration Essentials fbit.ly/s493dn This course provides an overview of Oracle WebLogic Server 11g.
sions for Oracle WebCenter that are tailored for social business use cases.
VIRTUAL EVENT
Oracle 2011 Virtual Summit: Driving Growth with Mission-Critical Enterprise PPM fbit.ly/vpFbe0 Discover how to use Oracles Primavera enterprise project portfolio management applications to drive growth and improve financial performance.
BLOG
Oracles Linux Blog fblogs.oracle.com/linux Get the latest updates on strategy, products, events, and all things Oracle Linux.
WEB LOCATOR
Oracle Blog Center oracle.com/blogs Oracle Consulting oracle.com/consulting Oracle Events and Webcasts oracle.com/events Oracle Podcast Center oracle.com/podcasts Oracle Newsletters oracle.com/newsletters Oracle University oracle.com/education Oracle on Twitter twitter.com/oracle Oracle Support oracle.com/support My Oracle Support myoraclesupport.com My Oracle Support Communities communities.oracle.com
18
Product Resources
DEMO
Transform IT with Oracles Sun Blade Systems
See how you can consolidate existing applications on fewer and more-powerful integrated systems to reduce costs, improve efficiencies, and accelerate service delivery. fbit.ly/rWLt7t
TUTORIALS
Oracle Enterprise Manager 12c: Business-Driven Application Management of Oracle Fusion Applications
Learn how to manage Oracle Fusion Applications on Oracle engineered systems. fbit.ly/ruW6FW
Learn how to use the Exadata Smart Scan feature of Oracle Exadata, which enables certain types of query processing to be done in the storage cell. fbit.ly/uwObEW
Get familiar with the essential concepts and features of the Java programming language. fbit.ly/tsJAQH
Oracle Enterprise Manager 12c: Bring Order to Chaos with Oracle Enterprise Manager
See how you can efficiently manage the dynamic environment in an enterprise cloud with Oracle Enterprise Manager 12c. fbit.ly/rV2i3m
DOWNLOADS
New Downloads
Oracle Solaris 11 fbit.ly/umbzKQ Oracle NoSQL Database fbit.ly/uvMLsX Oracle Entity Framework Beta 3 fbit.ly/sIQLOd
Top Downloads
LiNDy GROENiNG
fbit.ly/cazuFb Java Platform, Standard Edition Oracle Database 11g Release 2 Oracle Database, Express Edition 11g Oracle Enterprise Manager 12c Oracle Fusion Middleware 11g Oracle JDeveloper 11g Oracle SQL Developer Oracle Solaris
BRIEFS
19
20
BRIEFS
LINDY GROENING
21
Oracle Solaris 11 provides virtualization, availability, and security for next-generation cloud computing environments.
racle has officially unveiled Oracle Solaris 11, the worlds first cloud operating system (OS). The result of more than seven years of intense research and development, this latest iteration of the most widely installed enterprise UNIX provides more than 400 new features that enable organizations to deploy private, public, and hybrid cloud environments that are highly scalable, available, and secure. Oracle President Mark Hurd formally introduced Oracle Solaris 11 during a live event from New York Citys Gotham Hall on November 9, 2011, and the OS was released that day for SPARC and x86-based systems. (Oracle Solaris 11 was previewed at Oracle OpenWorld 2011.) Oracle Solaris 11 represents Oracles commitment to the best of breed at every level of the architecture, said Hurd. To put this in context, this is also part of a greater Oracle strategy and a greater overall R&D commitment weve made to [the Sun] portfolio. Other recent demonstrations of that strategy and commitment include the SPARC T4 processors and the SPARC SuperCluster servers. (See Engineered System for General-Purpose Computing, page 22.) Next-GeNeratiON ClOuds John Fowler, executive vice president of systems at Oraclealso on hand at the eventsaid that Oracle Solaris 11 is designed not just for current enterprise systems but also for the next generation of enterprise systems and cloud environments. These systems will support large-scale, missioncritical ERP [enterprise resource planning] and high-throughput OLTP [online transaction processing] applications, he said. These systems will have thousands of threads, hundreds of terabytes of memory, and double-
Executive Vice President of Systems at Oracle John Fowler (left) and Oracle President Mark Hurd officially launched Oracle Solaris 11, the worlds first cloud operating system, at a live event in New York, New York.
digit gigabyte network performance. A key requirement for these nextgeneration systems is virtualization. As people go into cloud environments, they will go from hundreds and thousands of physical machines into environments where they will have tens and hundreds of thousands of virtual machines, Fowler said. With Oracle Solaris 11, virtualization is not a separate product that has to be layered into a systems architectureit is integrated right into the OS. In addition to being the first cloud OS, Oracle Solaris 11 is also the first fully virtualized OS, with server, storage, and network virtualization all built in. Oracle Solaris 11s virtualization technology also provides the high availability (HA) that clouds require99.999 percent availability, according to Fowler. Users dont have to install HA features at each level of their stack because with Oracle Solaris 11 theyre already built in, he said. data at ClOud sCale Oracle Solaris 11 also offers advanced data management especially designed
for the cloud environment. To accomplish this, Fowler said, Oracle Solaris 11 moves common data servicesflash-enabled pools, encryption, replication, duplication, and deduplicationto the OS. Moving these services, commonly performed in storage systems, to the OS improves performance and increases storage efficiencies, he said. Fowler said that users should expect continuous improvements in Oracle Solaris 11 and other Sun product lines. Our roadmap is on track, and we remain committed to Oracle Solaris and to delivering two times the performance every two years, he said.
Philip Gill is a San Diego, californiabased freelance writer and editor. NExT STEPS
LEARN more about Oracle Solaris 11 oracle.com/solaris DOWNLOAD Oracle Solaris 11 bit.ly/tbS8SU WATCH an Oracle Solaris 11 demo bit.ly/vowV22
22
he engineered system model that made Oracle Exadata Database Machine and Oracle Exalogic Elastic Cloud the fastest dedicated-purpose systems has come to general-purpose computing with the release of Oracles SPARC SuperCluster T4-4. Introduced by Oracle CEO Larry Ellison and Oracle Executive Vice President John Fowler on September 26, 2011, at a live launch event, SPARC SuperCluster T4-4 is based on the new SPARC T4 processor that has already achieved nine world-record benchmarks across a wide range of workloads. SPARC SuperCluster T4-4 runs on both Oracle Solaris 11 and Oracle Solaris 10 and offers complete forward and backward application compatibility for the thousands of customers running applications on Oracle Solaris today. We wanted to give [customers] a very smooth upgrade path, and thats what the SPARC SuperCluster T4-4 is, Ellison said at the event. T4 AT THE CORE The brain of the new SPARC SuperCluster T4-4 is the new SPARC T4 processor, which is up to five times faster for single-threaded workloads than the SPARC T3 processor that it replaces, Ellison said. Fowler concurred, noting that the SPARC T4 family is the biggest single-generation performance boost in SPARC history. The SPARC T4 processor integrates outof-order execution and dynamic threading to provide optimal performance regardless of an applications execution profile. The SPARC T4s integrated cryptographic stream processing unit supports 16 industrystandard security ciphers without introducing processing overhead. The SPARC T4 processor also exploits the virtualization capabilities of Oracle Solaris Zones and
Oracle VM Server for SPARC, enabling customers to improve system utilization while reducing space and power requirements. ENGINEERED FOR PERFORMANCE SPARC SuperCluster T4-4 can come equipped with either two or four SPARC T4-4 servers to provide up to 16 eight-core processors and 4 terabytes of memory in a single rack. It includes redundant InfiniBand-attached ZFS storage clusters for high-performance network-attached storage, and Oracle Exadata Storage Servers for unmatched Oracle Database 11g performance. Because SPARC SuperCluster T4-4 integrates both hardware and software from Oracle, its strengths are magnified, Fowler said. Many different companies could, potentially, put different racks of hardware together, he said. But what binds this together is the software. SPARC SuperCluster T4-4 has been optimized for running Oracle Solaris 11, Oracle VM Server for SPARC, Oracle Exalogic Elastic Cloud software, and Oracle Database 11g. The entire system is managed using Oracle Enterprise Manager and Oracle Enterprise Manager Ops Center, which is now bundled with Oracle Premier Support. The net result of Oracles applicationsto-disk engineering is a system built and tuned for performance. You cannot make a strong package out of a collection of weaker components, Fowler said. Here at Oracle weve been investing in SPARC and investing in Oracle Solaris to create these leadership technologies.
IDEAL CONSOLIDATION PLATFORM Because of the extreme performance and powerful virtualization built into SPARC SuperCluster T4-4, organizations can consolidate many existing applications onto one system while enjoying improved performance. Organizations can attach additional Exadata Storage Expansion Racks or their existing storage area network using an optional Fibre Channel adapter. And if even greater computing power is needed, up to eight SPARC SuperCluster T4-4 systems or Exadata Storage Expansion Racks can be interconnected. Oracle is changing the dynamics of the data center by combining the industrys best technologythe SPARC T4 processor, Oracle Solaris 11, Oracle Exadata storage, and Oracle Exalogic Elastic Cloudinto a versatile, secure, general-purpose engineered system, Fowler said. Oracles SPARC SuperCluster T4-4 is an ideal platform for application and server consolidation that demonstrates how engineered systems can deliver huge performance at a fraction of the cost of competing solutions. t
NEXT STEPS
LEARN more about SPARC SuperCluster T4-4 bit.ly/omagspacsc the SPARC T4 processor bit.ly/omagsparct4 WATCH a 3-D demo bit.ly/omagscdemo SEE SPARC T-Series server benchmarks bit.ly/omagt4bench
23
oracle Social network delivers secure collaboration tools for business users.
uring his Oracle OpenWorld 2011 keynote, Oracle CEO Larry Ellison announced Oracle Social Network, an enterprise collaboration and social networking tool for business that enables business users to find and collaborate with the right people within and across enterprises using information from human resources systems, business applications, and private social networks. Oracle Social Network is one of the application services available through Oracle Public Cloud (see Open to the Public, page 27). Organizations want to connect their people, applications, processes, and customers, said Ellison. Oracle Social Network provides that; all the tools are integrated, and employees can work from anywhere with the devices best suited to their job. Driving the Conversation Oracle Social Network enables business users to collaborate with each other using a broad range of collaboration styles, including personal profiles, groups, activity feeds, status updates, discussion forums, document sharing, cobrowsing and editing, instant messaging, e-mail, and Web conferencing. Business today is all about being connected with others, says Andy Kershaw, senior director, Oracle WebCenter product management. Many organizations today have the goal of providing a perfect information workplace. We believe that Oracle Social Network, along with the capabilities of Oracle WebCenter, can deliver that workplace. To address enterprise requirements, Oracle Social Network centers on what Kershaw calls the conversation. The conversation is key and at the heart of what we do. Its a new paradigm for how business users will collaborate, he says. The conversation models how people really work togetherwhere the manner, form, and participation all evolve
It provides each organization and its users with a virtualized and private instance for collaboration with configurable retention and audit policies for traceability. going Mobile Oracle Social Network is designed to extend collaboration to mobile users. Oracle Social Network provides native applications on a variety of devices, including iPhones, iPads, and Android devices, as well as a modern, easy-to-use browser interface, Kershaw says. This mobile connectivity helps salespeople to identify potential prospects, build effective teams, prepare convincing sales presentations, and more. And other types of users stand to benefit as well, he says. With Oracle Social Network, almost any business user can be more effective. Marketing teams can design more-creative campaigns; human resources managers can collaborate on workforce planning and drive talent management best practices; project managers can collaborate on project plans and tasks, resolve issues and change requests, and track and update project milestones, Kershaw says. Business users can benefit from Oracle Social Network because it enables smarter teams, smarter collaboration, and ultimately smarter decisions.
Oracle CEO Larry Ellison at Oracle OpenWorld, where he announced Oracle Social Network .
as the decisions or problems become more complex. Communicating in real time, sharing files, annotating content, making decisions, measuring progressthis really rich set of interactions all happen inside the conversation. Each conversation is presented in context within Oracle Social Network integrated applications. Integrated with Oracle Fusion Applications and business processes, Oracle Social Network allows users to receive real-time information feeds from these systems and to collaborate and resolve business issues quickly and effectively, including updating applications and business processes. We surface all of the activity, business updates, and conversations within activity streams that understand what you have read or seen before, making those streams more powerful by surfacing whats most important to you and doing so securely, explains Kershaw. Oracle Social Network addresses corporate demands for security, privacy, and information protection.
Rich Schwerin is a senior manager with oracle Publishing who focuses on social media.
NExT STEpS
LEARN more about Oracle Social Network bit.ly/omagosn1 WATCH an interview with Andy Kershaw bit.ly/omagosn4
Hartmann StudioS
24
New Oracle engineered systems deliver big data and high-speed visual analytics.
ccording to Gartner, big data, nextgeneration analytics, and in-memory computing are three of the top strategic technologies for 2012. To help enterprises stay ahead of the curve, Oracle introduced two new systems at Oracle OpenWorld 2011 that focus strategic technologies on some of todays most daunting information processing challenges. The first product, Oracle Big Data Appliance, is built to acquire, organize, and load large volumes of unstructured data; the second, Oracle Exalytics In-Memory Machine, uses in-memory database software and an optimized business intelligence platform to provide extremely fast visual data analytics. ORACLE BIG DATA APPLIANCE Andy Mendelsohn, senior vice president of database server technologies at Oracle, introduced Oracle Big Data Appliance during his Oracle OpenWorld general session on big data. Mendelsohn began his presentation by describing three characteristics of big data: massive volumes, high velocity or frequency, and datasources that are varied and often unstructured (such as e-mail, sensor data, and smart meter readings). Oracle Big Data Appliance is engineered to address those characteristics: it acquires unstructured data, organizes and filters it to discover the most-valuable nuggets of information, and loads the result into a data warehouse for analysis and decisionmaking. Its hardware is a robust rack of 18 Sun Fire X4270 M2 servers totaling
216 processor cores, 864 GB of memory, and 432 TB of storage. InfiniBand interconnects are used to integrate these components and connect Oracle Big Data Appliance with Oracle Exadata Database Machine and Oracle Exalytics In-Memory Machine. The software included withand tuned forOracle Big Data Appliance includes an open source distribution of Apache Hadoop, for handling data-intensive applications; Oracle NoSQL Database, Enterprise Edition, a scalable key-value database; Oracles data integrator application adapter for Hadoop, which simplifies data integration from Hadoop; and Oracle Loader for Hadoop, which provides an easy way to load data from a Hadoop cluster into Oracle Database or Oracle Exadata Database Machine. With these hardware and software components, engineered to work together, Oracle Big Data Appliance provides a complete solution for handling big datas volume, velocity, and variety, and helps companies derive value from that data, Mendelsohn said. Oracle is the first vendor to offer customers a complete and integrated set of products to address critical big data requirements, unlock efficiencies, simplify management, and create data insights that maximize business value, he explained. ORACLE EXALYTICS IN-MEMORY MACHINE In his opening keynote at Oracle OpenWorld, CEO Larry Ellison introduced Oracle Exalytics In-Memory Machine, the industrys first engineered system for analytics. Oracle Exalytics combines Oracles Sun hardware; an optimized version of Oracle Business Intelligence foundation with enhanced data visualization and performance capabilities; and a version of Oracle TimesTen In-Memory Database optimized to run business analytics. Oracle Exalytics can access data from any Oracle or non-Oracle relational, online analytical
processing, or unstructured datasource and provide visual analytics at the speed of thought. Theres nothing faster than this thing, Ellison said. Oracle Exalytics is built on an Oracles Sun Fire server with Intel Xeon E7-4800series processors totaling 40 cores, coupled with a full terabyte of RAM. The software stack is tuned for the hardware and optimized for business intelligence. A user interface provides interactive data visualization, enabling even casual users to explore large data sets and spot patterns, trends, and outliers. Oracle Exalytics uses adaptive in-memory technology to ensure that the most-important data sets are always in memory and automatically tunes cached data by constantly monitoring user queries and moving most-used data from storage into memory. Based on Oracles internal testing scenarios, Oracle Exalytics provides more than 20 times faster response times in comparison to conventional BI software running on generic hardware configurationsa difference that Ellison believes will change the practice of analytics. When you have a 20-times improvement, you operate differently, he said. You ask more questions. You get better answers. t
NEXT STEPS
LEARN more about Oracle Big Data Appliance bit.ly/omagbigdata Oracle Exalytics In-Memory Machine bit.ly/omagexalytics SEE Gartners list of strategic technologies for 2012 bit.ly/omaggartner
effective MysQl: Backup and recovery Ronald Bradford Perform, test, and verify backup and disaster recovery procedures Java programming Poornachandra Sarang Learn advanced skills from a Java expert
27
oracle Public Cloud provides a self-service, subscription-based model for building, deploying, and running applications in the cloud.
aroline Kvitka, Oracle Magazine senior managing editor, sat down with Amit Zavery, vice president for Oracle Public Cloud, to talk about Oracles new public cloud offering. The following is an excerpt from that interview. Download the full podcast at oracle.com/magcasts. Oracle Magazine: What was the biggest cloud news at Oracle OpenWorld 2011? Zavery: [Oracle CEO] Larry Ellison announced Oracle Public Cloud, a broad set of best-in-class, integrated services that provide customers with subscription-based, self-service access to Oracle products in a public cloud environment. Oracle Magazine: What are the components? Zavery: Were providing applications and platform services, including Oracle Fusion Customer Relationship Management Cloud Service, Oracle Fusion Human Capital Management Cloud Service, Oracle Social Network [see Social for Business, page 23], Oracle Database Cloud Service, and Oracle Java Cloud Service. Oracle Magazine: How do the platform services work? Zavery: Customers can either build new applications or take their existing standard Java and Oracle Database applications and deploy them to Oracle Public Cloud without rewriting them. Oracle Magazine: How does Oracle Public Cloud differ from Oracle On Demand? Zavery: Oracle On Demand provides hosted services for Oracle applications and technologies that a customer has purchased. Oracle Public Cloud is a self-service mechanism where you can purchase and provision a particular service for as long as you want. Oracle Magazine: How does this subscription model work? Zavery: You sign up for an account and select
the service that you want. You get notified of the provisioned instance and can start using those services. Oracle Magazine: Whats unique about Oracles public cloud offering? Zavery: First, we provide a complete set of integrated services across applications and platform. Second, our cloud services are 100 percent industry standardsbased, so customers can use SQL, Java, and so on to build their applications. Third, we provide customers flexibility to deploy the same applications both in the cloud and on premises without rewriting any code. Oracle Magazine: Where does Oracle Public Cloud fit for customers running Oracle technology in their own data centers? Zavery: If customers want to create a development and test environment without buying a server farm or software, they can sign up for Oracle Public Cloud and start building or move their existing application instantly. They can continue using their on-
premises environment, but they gain the ability to do development and testing and add more capacity easily. Oracle Magazine: Is Oracle Public Cloud appropriate for growing companies? Zavery: I think its the right target system for anybody whos looking for an easy way to build and use applications on the cloud, because there are multiple tiers of services offered with elastic capacity. Companies of all sizes can sign up for a service and grow into the capacity they use without having to pay for all of this up front. Oracle Magazine: When is Oracle Public Cloud going to be available? Zavery: Users can sign up now for early access to the service. Oracle Magazine: What does Oracle Public Cloud mean for Oracles cloud commitment? Zavery: Oracle has been building and delivering cloud products for several years. Customers are currently using our cloud offerings on premises or in hybrid cloud environments. We also have many softwareas-a-service providers using Oracle products to host their services in the cloud. Oracle Public Cloud is a continuation of Oracles cloud strategy, providing customers with an additional deployment option.
Caroline Kvitka is
senior managing editor of Oracle Magazine and Java Magazine.
NExt stEPs
LEARN more about Oracle Public Cloud cloud.oracle.com ListEN to the podcast oracle.com/magcasts
BoB Adler
28
Book Beat
Oracle Core: Essential Internals for DBAs and Developers
By Jonathan Lewis
Apress apress.com
In his new book, Oracle database expert Jonathan Lewis provides just the essential information about Oracle Database internals that every DBA needs for troubleshootingno more, no less. Oracle Databases extensive feature set is built on a core infrastructure that manages transactions and the ability to commit and roll back changes, protects the integrity of the database, enables backup and recovery, and allows for scalability to thousands of users all accessing the same data. By gaining an understanding of the essential core, DBAs will be able to solve most performance, backup, and recovery problems they face on a daily basis. to them. Readers will learn to consider potential vulnerabilities and to apply best practices in secure Java and PL/SQL coding. Author David Coffin also shows you how to encrypt data in transit and at rest; to accomplish single sign-on with Oracle proxy connections; to generate and distribute twofactor authentication tokens from the Oracle server using pagers, cell phones (SMS), and e-mail; and to securely store and distribute Oracle application passwords.
OCA Oracle Database 11g: SQL Fundamentals I: A Real World Certification Guide
By Steve Ries
Packt packtpub.com
The Oracle Database 11g: SQL Fundamentals I exam is the first stepping-stone to obtaining the Oracle Certified Associate certification for Oracle Database 11g. SQL is used in every major relational database today, and understanding its real-world application is key to becoming a successful DBA. This book provides the tools to develop the essential skills to pass the Oracle Database 11g: SQL Fundamentals I exam and use those skills in daily life as a SQL developer or DBA. Beginners are introduced to concepts in a logical manner, while more-experienced practitioners can use the book as a reference to jump to relevant concepts directly.
Expert Oracle and Java Security: Programming Secure Oracle Database Applications with Java
By David Coffin
Apress apress.com
This book provides resources that all Java and Oracle Database application programmers need to ensure that they have guarded the security of the data and the identities entrusted
LINDY GROENING
Partner news
29
Kapow Softwares Kapow Katalyst 8 Achieves Oracle Validated Integration with Oracle WebCenter
Kapow Katalyst 8 from Oracle Gold Partner and cloud application integrator Kapow Software has achieved Oracle Validated Integration with Oracle WebCenter. The Kapow Katalyst application integration platform automates the migration of content from many different content management applications, including homegrown systems, into Oracle WebCenter. Kapow Katalyst supports an automated, repeatable migration process, including workflows for inventory analysis, migration, and verification. Kapow Katalyst also includes an inventory analysis service, Katalyst Analyzer for Content Management, which can be used to rapidly assess the size and extent of the migration project. kapowsoftware.com
Lindy GroeninG
30
PARTNER NEWS
LINDY GROENING
31
racle OpenWorld is always an instructive experience on multiple levels. Customers and partners receive transmissions in bulk about roadmaps across the Oracle product and technology stack, as well as access to a set of best practices that have been battle-tested across a huge community. Less obvious, but no less important, is Oracles opportunity to listen to customer and partner feedback across literally thousands of personal touch points. The Oracle ACE Director Technical Briefing that occurs just prior to the conference at Oracle headquarters is the ultimate microcosm of this process. During this intensive and interactive session spanning two days, approximately 50 Oracle ACE Directors examined Oracles strategic blueprints in detail and offered feedback and advice about themthe customer-vendor feedback loop in action. This years briefing was perhaps the most interesting in the Oracle ACE programs history. The technologies discussed are pertinent to the hottest topics in enterprise IT today: Oracle Application Development Framework Mobile Client (Oracle ADF Mobile Client), the Oracle Exalytics In-Memory Machine, Oracle NoSQL Database and the associated Oracle Big Data Appliance, and Oracle Public Cloud. Oracle Public clOud: Game chanGer Oracle Public Cloud is the most significant offering, in the context of Oracle Technology Network. Thanks to the availability of a onemonth free trial, anyone with interest and an internet connection can get hands-on with a full-blown Oracle Database application development environment through a variety of methods (including a RESTful Web service, which enables a number of programmatic access options). And anyone with similar
qualifications can deploy a Java application to the Oracle WebLogic Serverbased Oracle Java Cloud Service, a component of Oracle Public Cloud, for evaluation as an enterprisegrade home for it. The Oracle ACE Director reactions to the session on this topic were interesting, and perhaps suggestive of what a technical enduser audience wants from a cloud service. For example, there was a strong preference expressed by some for more-granular control over a cloud sandbox (cloudbox?) than that wanted by a software-as-a-service (SaaS) user, who ostensibly looks to the cloud to completely abstract away the complexities of IT and software provisioning. (This preference may have been influenced by the presence of high-profile infrastructure-as-a-service [IaaS] options in the marketplace, which tend to provide the dials and knobs that are typically not delivered by SaaS providers.) The platform-as-a-service (PaaS) category, of which Oracle Public Clouds database and Java services are an example, is the proper model through which technical end users can seek a balance between its two alternatives. (Oracle Public Clouds Oracle Social Networkwhich has a more general-purpose audienceis pure SaaS, by comparison.) Regardless of where it belongs in the cloud-computing taxonomy, Oracle Public Cloud may change the way we run the Oracle Technology Network program. Although prebuilt VMs and raw-install, developer-license software will always have their places, the availability of a cloud service will give developers and evaluators yet another springboard for a deep-dive into Oracle Database and Java. Oracle database 11 g the exPress Way Speaking of raw-install resources: Oracle Database, Express Edition 11g is now available
on Oracle Technology Network. This edition of Oracle Database, which was initially based on Oracle Database 10g Release 2 code when it was released in 2007, was a major success in introducing Oracle Database technology to new users. It was easy to install, easy to manage, and easy to use to build lightweight Web apps. And, no small thing, it was free to use and distribute. Oracle Database, Express Edition 11g moves the ball forward, aggregating the essential updates made to Oracle Database, Enterprise Edition from version 10.2.0.1 through 11.2.0.2including Universal Connection Pooling, Edition-Based Redefinition, and many other compelling features. Furthermore, the user data limit has expanded to 11 GB (from 4 GB).You can follow the Web Locator link below to the download as well as to a quick tour article.
Justin Kestelyn
(justin.kestelyn@oracle .com) is senior director, Oracle Technology Network and developer programs, as well as Oracle Technology Network editor in chief.
WEB LOCATOr
Oracle ADF Mobile Client bit.ly/gKrPpm Oracle Exalytics In-Memory Machine bit.ly/tHIY5f Oracle NoSQL Database oracle.com/technetwork/database/nosqldb Oracle Big Data Appliance oracle.com/us/technologies/big-data Oracle Public Cloud cloud.oracle.com Oracle Database, Express Edition 11g bit.ly/uJ5RGl
32
and already in use by clients and stakeholders, instead of rigidly sticking to your own toolset, says this Oracle ACE Director. That can mean dealing with a variety of Unified Modeling Language (UML), Business Process Model and Notation (BPMN), and other modeling and design tools. As for his personal favorite, van Luttikhuizen also lists Sparx Systems Enterprise Architect. A great tool at a great price, he says.
In order to do enterprise architecture well, there must be a consistent way to represent it.
Farzad Pezeshkpour, Royal Bank of Scotland But van Luttikhuizens toolbox also contains some more-basic applications to help him get his message across. In the end, architecture is about communication, he says. So in the beginning of an architectureoriented project, the most important tools are a whiteboard, Microsoft PowerPoint, and Microsoft Word. Karina Ishkhanova, a solution architect and technical lead for payment systems at School-Day Solutions, agrees with van Luttikhuizen about the importance of basic communication tools. The first stage in defining the future architecture happens in close collaboration with business departments, she says. Whiteboards, paper, and markers are indispensable. Sometimes we even cut paper into components to move them around to help visualize the variations on proximity to other system parts. For modeling, Ishkhanova uses UMlet, an open source UML tool, which she values for its simplicity. At more-advanced stages, I
move to Oracle JDeveloper, she says, to take advantage of its integration and automation features. Communication tools are also vital for Lambda Software President Aki Iskandar. By far the most important tool in my toolbox is the one that I ask my clients to hand to me before any discussions, let alone architectural work, starts. Its the set of three blueprint documents that jointly define well-articulated and complete business requirements, the constraints within the environment, and the architectural diagrams for network topologies, Iskandar says. Without them, you may overarchitect or underarchitect the system. You cant architect a system without knowing the constraints before you start. Perhaps his last point is the IT architects equivalent of the carpentry maxim Measure twice, cut once. While the choice of tools varies among these four architects, that choice is driven by the shared goal of effective communication in order to ensure a good fit between the upfront plan and the completed project. Isnt that what IT architecture is all about?
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).
NExT STEpS
LISTEN to ArchBeat podcasts feeds2.feedburner.com/otnarch2arch bit.ly/9X6j2T GET more architect information oracle.com/technetwork/architect
NetShelter CX enclosure solution includes everything you need to house a highly reliable IT deployment regardless of space limitations.
Enclosures Vendor-neutral
1 2
APC by Schneider Electric understands the challenges of delicately matching IT needs with logistical realities. Fortunately, we have adaptable and flexible solutions that provide everything for your IT deployment: reliable and efficient power, cooling, monitoring, and management. Whatever your logistical or space constraints, we have a total solution to meet your specific needs. All components have been pre-engineered to work together and integrate seamlessly with your existing equipment.
PoE-enabled temperature sensors let you keep an eye on conditions at the rack level, and centralized software gives you real-time insight into the entire system.
Theres no need for confusing cooling configurations or expensive mechanical re-engineering, so our modular, pay-as-you-grow designs let you be 100 per cent confident that your IT capabilities can keep pace with ever-changing demands. Self-contained cooling, high-density enclosures, rack-level power distribution and monitoring sensors, and integrated management software provide complete remote control and unprecedented visibility into your entire IT system. Simply add power protection (such as undisputed, best-in-class Smart-UPS or Symmetra units), and you have a total solution for today, tomorrow, and beyond.
The NetShelter CX Office enclosure is available in three sizes: 18U, 24U and 38U.
The unique, soundproof, self-contained NetShelter CX enclosure solution includes everything you need to house a highly reliable IT deployment regardless of space limitations.
Learn how to reduce cooling expenses with our FREE Cooling Efficiency kit and enter to win 1 of 5 Smart-UPS units (SMX1000)!
Visit www.apc.com/promo Key Code j914v Call 888-289-APCC x6331 Fax 401-788-2797
2011 Schneider Electric. All Rights Reserved. Schneider Electric, APC, InfraStruxure, Smart-UPS, Symmetra, and NetShelter are trademarks owned by Schneider Electric Industries SAS or its affiliated companies. email: [email protected] 132 Fairgrounds Road, West Kingston, RI 02892 USA 998-4723_GMA-GB
34
met Edward Roske on a bustling Saturday morning in June 2011 at the Boys and Girls Club in a tough part of Long Beach, California. There were few kids around, and no one playing pool, shooting hoops, or doing homework. Instead, grown-up technologists were scrubbing, sorting, painting, and rewiring the club in a one-day jam to give local kids a better place to hang out and learn. Today is our ODTUG community service day, said Roske, event chairperson of the Oracle Development Tools User Group (ODTUG) 2011 Kscope event, which opened the next day at the Long Beach Conference Center. Roske, wearing an ODTUG Community Day T-shirt, explained the idea behind the tradition. At technology events, people normally get together and attend sessions, then do a bit of partying and networking, and then go home, Roske said. But we want to grow a deeper sense of community at ODTUG. One of the best ways to do that, Roske and the ODTUG board have discovered, is for the conference attendees to work together for the benefit of someone or something other than themselves. As Roske and I spoke, a mix of developers and DBAs in matching green shirts worked all around us to improve the Boys and Girls Club. They stripped wallpaper, sanded walls and furniture, and painted most surfaces of the club. They sorted dozens of boxes of donated books and rebuilt the library shelves. They installed a network and ran network cable throughout the building. Outside they painted foursquare lines and repainted basketball court lines. These are nearly a hundred people from our conference, said Roske. They are wholly unqualified to be fixing up a Boys and Girls Club, but what they lack in skill they make up for in enthusiasm.
and the next year [2010] we helped rebuild a schoolhouse in Washington DC. A seRIously technIcAl confeRence Community service aside, ODTUG Kscope is a seriously practical, seriously technical conference. This years event opened on a Sunday with all-day symposiums built around technology areas such as Oracle Application Express, database development, enterprise process management and business intelligence, and Oracle Fusion Middleware. People can go through an entire process, from learning to use the products to understanding how to use them best in real-world environments, said Roske. The next three and a half days were packed with sessions, classes, and hands-on labs. It wont be all work, said Roske. Weve rented the Queen Mary for a night of partying. ODTUG must be doing something right. The organizations membership continues to grow, and attendance at the 2011 conference was up 25 percent from the previous year, to 1,000 registered attendees. Roske suspects that this growth is due in part to the strong sense of community built by ODTUGs members learning together, playing together, and working together to give something back.
Edward Roske, Event Chairperson, Oracle Development Tools User Group 2011 Kscope
A Response to KAtRInA In 2008 ODTUG held its annual Kscope (formerly Kaleidoscope) event in New Orleans, Louisianaa city in tatters from Hurricane Katrina. To ODTUG leaders, it seemed wrong just to fly in, drop a few dollars into the local economy, and leave without pitching in to help rebuild. So they organized a day of service on the Saturday before the conference and invited members to come early to help out. To their surprise, 100 conference attendeesthe maximum number that the project could accommodateshowed up to help rebuild a schoolhouse in the citys hardhit Ninth Ward. We did it because we found ourselves in New Orleans after the storm, said Roske. We had never heard of a technical user group doing a community service day and frankly didnt know if anyone would want to come. But people loved it so much that they kept asking what we were going to do next, he continued. So the following year [2009] we cleaned a beach in Monterey, California,
Jeff Erickson
(jeffrey.x.erickson@ oracle.com) is a senior editor with Oracle Publishing.
NExT STEpS
LEARN more about ODTUG odtug.com WATCH the interview oracle.com/oramag/upclose
BOB Adler
35
Three peers on faith in end users, straightforward problem solving, and specializing.
Demystifying IT
SuSan Behn
COnnOr MCDOnaLD
rOB ZOeTeweIJ
Company: Infosemantics, a professional services company specializing in Oracle E-Business Suite, business intelligence, and Oracle Fusion Middleware solutions Job title/description: Vice president of Oracle delivery, responsible for managing Infosemantics Oracle practice Location: Grapevine, Texas Length of time using Oracle products: 18 years
Company: Self-employed Job title/description: Independent consultant, responsible for database configuration, tuning, and PL/SQL development Location: Perth, Australia Oracle credentials: Oracle Certified Professional (Oracle8i Database, Oracle9i Database, Oracle Database 10g), with 15 years of experience using Oracle products How did you get started in IT? When I was 10 years old, if you won the weekly classroom math quiz at my school, you got a precious hour on the schools sole Apple II computer. From that point on, I was hooked. I worked as a mainframe IMS [Information Management System] programmer before being exposed to Oracle Database during the client/server boom. A talk by [longtime Oracle expert] Dave Ensor inspired me to invest more time in continuous learning about Oracle technology, rather than being happy with the status quo. What is your favorite technique on the job? Its actually from the movie Apollo 13: Lets work the problem, people. People think that getting the best out of Oracle technology is some sort of mystical art. Its not. You just need to take a methodical, disciplined approach without resorting to guesswork or unproven claims. What is your go-to Oracle reference book right now? Probably Expert Oracle Exadata by Kerry Osborne, Randy Johnson, and Tanel Pder (Apress, 2011). Everyone seems to be getting on Oracle Exadata, so its good to be getting some solid insight into it.
Company: Zoeteweij Consulting; current clients include ING Bank and Rabobank, both financial services institutions Job title/description: Independent senior Oracle consultant, involved in the implementation of Oracle Enterprise Manager Grid Control Location: Various cities in the Netherlands Length of time using Oracle products: 26 years Which new features in Oracle Database are you currently finding most valuable? Im especially enthusiastic about the Oracle Provisioning and Patch Automation Pack [now part of Oracle Database Lifecycle Management Pack]. With this pack you can really achieve a high level of standardization for instance, when deploying complete Oracle Real Application Clusters [Oracle RAC] and when creating Oracle RAC database instances in a fully configured grid infrastructure and Oracle Automatic Storage Management environment. What advice do you have about how to get into Oracle technology? As Oracle Fusion Middleware becomes more and more important, try to specialize in this areaand focus in particular on products such as Oracle WebLogic Server, Oracle Universal Content Management, Oracle WebCenter, and Oracle Identity Management. What technology has most changed your life? I would say Oracle Database has most changed my lifenext to Harley-Davidson technology, which has made it possible for me to relax riding my 2010 FLHX Street Glide after a hard days work.
Which new features in Oracle applications are you currently finding most valuable? Oracle E-Business Suite Diagnostics is one of the suites best and most underutilized features. Rolling this out to those in the user community who use our applications to perform their job functions can take a huge load off already overworked IT departments. How have you seen the relationship between IT and your user community evolve? I remember the days when IT was thought of as that geeky group in the back room who could automate some business processes mysteriously, and any minor deviation required significant help. Now, with everyone using the internet and smartphones, its not so mysterious. Those of us in IT need to have confidence that the user community can manage more of their own applications, including error corrections. What advice do you have about how to get into application development and support? Start early, be open to trying new things, and be very self-motivated. When I want to learn something new, I start by trying to build a presentation to teach it to someone else.
Learn more about the Oracle ACE program at oracle.com/technetwork/community/oracle-ace. oracle magazine January/February 2012
36
11 20
37
ovation. who engineer inn d technologists ers, partners, an stom Oracle honors cu
Innovation was the watchword at Oracle OpenWorld 2011, as Oracle, its partners, and its customers demonstrated their creativity and excellence across a variety of applications and technology fields. At the event, Oracle honored customers, partners, and technologists with the Oracle Excellence Awards, which reach across categories ranging from enterprise sustainability and applications implementation to Java advancements and leadership in the field of cloud computing. The Oracle Excellence Awards include the CIO of the Year awards, for global leaders demonstrating outstanding performance and vision in the role of CIO of an organization that uses Oracle products and services; the Technologist of the Year awards (formerly the Oracle Magazine Editors Choice Awards), recognizing individuals for their extraordinary efforts and contributions to enterprise technology solutions as DBAs, IT managers, cloud architects, enterprise architects, and developers; the Specialized Partner of the Year awards for partner excellence in database, middleware, applications, server and storage, and industry categories; the Data Warehouse Leader of the Year, recognizing individuals who demonstrate excellent technical ability and superior knowledge of Oracle data warehouse technologies and consistently apply best practices while demonstrating leadership; the Eco-Enterprise Innovation awards, for customers and their partners who are using Oracle products to reduce their environmental footprint while reducing costs; the Java Innovation awards, for extreme innovation in the world of Java technology; the Oracle Fusion Middleware Innovation awards, for customers who are developing cutting-edge Oracle Fusion Middleware solutions that deliver exceptional business value; and the Proactive Support: Champion of the Year awards, for customers or partners driving the proactive adoption of support tools and resources.
BY DAVID A. KELLY
taying ahead of the competition requires speed and agility, especially in the communications field. Thats why Moscow, Russiabased US$11 billiona-year Mobile TeleSystems (MTS) recently signed an unlimited license agreement (ULA) with Oracle covering a range of Oracle solutions that can be deployed as quickly as necessary, in response to business needs. Technology is just a means to an end, says Frederic Vanoosthuyze, vice president
for information technology and CIO at MTS. With the ULA, we have the tools to deploy very fast. We can skip the procurement processes that can take a substantial amount of time, such as six or nine months. It allows us to generate savings for the company faster. The payback for MTS is huge. MTS is the leading telecommunications group in Russia and eastern Europe and one of the largest in Europe, providing both mobile and fixed voice, broadband, TV, and content services to more than 100
million mobile subscribers and close to 10 million households. To give the company a competitive and consistent platform for future growth, Vanoosthuyzewinner of the Oracle Excellence Award for CIO of the Year, Europe, Middle East, and Africahas helped define and implement a software consolidation strategy. An important part of that strategy has been MTSs 2010 signing of a three-year ULA with Oraclean agreement that includes Oracle applications, middleware, and database products already used by MTS, as well as solutions Vanoosthuyze foresees deploying in the future. Oracle is a strategic partner for MTS, says Vanoosthuyze. We calculated the net present value [NPV] of our investment in an Oracle ULA, the value of the project, and the savings that wed achieve with it, and we ended up with a multimillion-dollar positive NPV. MTS has looked to Oracle for its technology solutions for years, including a large deployment of Oracles Siebel applications for customer interactions and an Oracle E-Business Suite application for accounting, which allows the company to run dual (U.S. and Russian) accounting standards simultaneously. Although he doesnt claim to be able to predict the future, Vanoosthuyze does know what it takes to support future business requirements. The role of a good CIO is to be able to understand the business, speak its language, and predict what will be needed tomorrow or a year from now, he says. At the end of the day, its up to the business to tell us what they expect from IT, rather than IT telling the business what they have to do.
Name: Frederic Vanoosthuyze Job title: Vice president for IT and CIO Company: Mobile TeleSystems Location: Moscow, Russia Award: Oracle Excellence Award for CIO of the Year, Europe, Middle East, and Africa, 2011
WINNER SPECS
39
Name: Christiane almeida Edington Job title: Cio Company: Telefnica Brasil Location: So Paulo, Brazil Award: oracle Excellence award for Cio of the Year, latin america, 2011
I
Paulo Fridman
n the past, technical expertise was the primary requirement for a CIO. Nowadays, CIOs need morecomprehensive and flexible skill sets in order to fully understand corporate issues, provide effective solutions, and establish businessminded IT leadership. I believe a CIO has to maintain a close relationship with business managers in order to broadly understand the business context and needs and to anticipate what will be required from IT, says Christiane Almeida
Edington, CIO of Telefnica Brasil and winner of the Oracle Excellence Award for CIO of the Year, Latin America. To do that, I have to keep up to date with all new technologies in order to create solutions with the best cost-benefit for the company. It is demanding, but satisfying to see how IT can promote a constant evolution by using state-of-the-art solutions. Telefnica Brasil, part of the 60-plus billion Telefnica Group, is a leading provider of communications and integrated services in Brazil. As head of IT operations, Edington
focuses mainly on helping to transform IT into a driving force of the business, reducing time to market and seeking continuous improvement in IT quality. Taking on an IT transformation is no small task. Telefnica Brasil has a lot of systems and applications in its mobile and fixed operations that are responsible for providing telecommunications services for more than 79 million customers. To provide a platform for dynamic growth, Telefnica Brasil has created a SOA approach built on Oracle components to integrate disparate systems and enable IT capabilities to align more closely with changing business needs. The company uses a wide range of Oracle solutions, including Oracle SOA Suite, Siebel Customer Relationship Management, Oracle Identity Management, and Oracle Universal Content Management. For Telefnica Brasil, the choice to standardize on Oracle technologies was clear. Oracle has a comprehensive product portfolio with end-to-end solutions that addresses all the requirements of our mission-critical applications, such as high availability, scalability, open standards, a well-defined roadmap, and easy integration, says Edington. Edington adds that by standardizing on Oracle solutions, Telefnica Brasil has reduced operating expenses and application deployment time. Weve seen time-tomarket reduction through SOA benefits like reusability, flexibility, new-development agility, and cost reduction, she says. But to Edington, being a good CIO takes more than simply selecting the right technologies. I strongly believe that a companys main asset is its people, so first and foremost, the CIO has to be ingenious in order to transform a large group of people into an integrated team with aligned objectives, she says. One way we can stand out from our competition is our team, so we always need to take care of people and support their ongoing professional development.
oracle magazine January/February 2012
WiNNer SpeCS
Name: Thaddeus Arroyo Job title: CIO Company: AT&T Location: Dallas, Texas Award: Oracle Excellence Award for CIO of the Year, North America, 2011
impact on our customers, says Arroyo, who is responsible for all of AT&Ts information technology. I like to view that role as one of a progressive innovator. Since 2007, Arroyo has been leading a number of innovative changes at AT&T, particularly technology changes related to its merger with BellSouth, which also resulted in full ownership of Cingular Wireless. He is most proud of being able
to support AT&Ts business evolution across all its markets while concurrently transforming and integrating a massive IT organization composed of roughly 27,000 IT professionals. Weve increased the velocity with which AT&T can bring products to market and successfully scale and commercialize those products, he says. To do that, Arroyo has consistently focused on building an agile IT infrastructure that can scale to unprecedented levels. As part of this strategy, AT&T uses a wide range of Oracle software supporting a myriad of business processes and enterprise integration capabilities across multiple business segments and functions. Oracle plays a key role both in supporting our migration and rationalization of base applications as well as supporting new technologies, explains Arroyo. Oracle is an important provider of technologies used to support business and operational systems as well as supporting new capabilities. By integrating and rationalizing systems, AT&T has reduced its number of deployed applications by more than 40 percent. At the same time the company is rationalizing its infrastructure, its also virtualizing portions of it. As we drive to a virtualized environment, Oracle supports us both on the application side and on the infrastructure side, says Arroyo. Were transforming the way we deliver services and evolving our complete application development process in such a way that well have a model that is linked from idea inception all the way through delivery. While AT&Ts consolidation and transformation strategy is paying off for customers and the business, its also extremely satisfying to Arroyo personally. I enjoy solving complex problems and ultimately proving that in fact, even at this scale, you can be nimble and you can have world-leading time to market, he says. The most interesting part of what I do is solving complex business problems and ultimately exploiting the art of the possible.
WINNER SPECS
PAUL S. HOWELL
41
Excellence Award for CIO of the Year, Japan, has been aggressive in deploying new technologies at SoftBank, including managing the companys replacement of its Teradata data warehouse with an Oracle Exadata system. Hes also been instrumental in the deployment of an Oracle Exadatabased private cloud solution for SoftBank and in the development of future public cloud services in Japan, based on Oracle Exadata and Oracle Exalogic. By deploying an Oracle Exadata Database Machine, SoftBank has been
able to create a data warehouse that is eight times larger than its previous Teradata warehouse, while at the same time reducing overall operational costs by 50 percent. Oracle Exadata also allows SoftBank to analyze call records and customer logs in 7 hours rather than the 25 hours it was previously taking. Implementation of the new solution took only three months and was completed in May 2010. Its an amazing technology. We were very impressed with Oracle Exadata, says Ata. We were using 36 racks of Teradata but were able to replace that with only 3 racks of Oracle Exadata, he explains. The performance of those 3 Oracle Exadata racks was eight times faster than 36 Teradata racks. It was amazing. SoftBank is also making a big investment in cloud computing with its White Cloud services for enterprises, which are based on Oracle technologies. Its already selling virtual desktop services, which not only help to save electricity but also enable corporate employees to work securely from outside the officean important consideration in postearthquake Japan. In addition, the company is planning to deploy Oracle Exalogic Elastic Cloud to handle Web services requests from more than 6,000 nationwide SoftBank sales stores, which collectively manage more than 50,000 customer visits each day. Were expecting Oracle Exalogic to take the place of thousands of Web servers that we use today, says Ata. The combination of Oracle Exalogic and Oracle Exadata will be fantastic for not only us but also our White Cloud customers. It makes it very quick and easy to test and deploy new applications.
Peter Stember
Name: Shinichi Ata Job title: executive vice president, director, and chief information security officer Company: Softbank mobile Corporation Location: tokyo, Japan Award: Oracle excellence Award for CIO of the Year, Japan, 2011
WiNNer SpeCS
ts not easy to cover a country as large as Australia with a state-of-the-art broadband network, but NBN Co is up to the task. NBN Co was created in 2009, and its purpose is to deliver Australias first national wholesale-only, open-access broadband network to all Australians. The companys goal is to connect 93 percent of homes, schools, and workplaces with optical fibre (fibre to the premises, or FTTP), providing high-speed broadband services to Australians in urban centers and regional towns. The remaining 7 percent will be connected to the national broadband network via a combination of fixed wireless and satellite technologies. Oracle is critical to our business strategy,
says Claire Rawlins, CIO of NBN Co and winner of the Oracle Excellence Award for CIO of the Year, Asia Pacific. As a low-cost wholesale broadband provider that needs to quickly deploy a complete set of integrated applications, NBN Co is highly reliant on the broad suite of products delivered by Oracle. Its solutions align with our Best of Suite product strategy and support our goal. NBN Co has implemented a complete portfolio of Oracle applications that run the company, from enterprise resource planning solutions to those for billing, supply chain management, and more. Oracle plays a major part across much of our application portfolio, says Rawlins. Oracle
E-Business Suite is the heart of our business and commercial systems, with Oracle Communications Billing and Revenue Management providing our billing platform. And were finding that the cloud-based Oracle CRM On Demand solution provides us with the necessary flexibility and speed of implementation to meet our changing business needs. Rawlins adds that in terms of total cost of ownership, Oracle is a strong fit for NBN Co for a number of reasons, including the preintegrated nature of the solutions, their scalability, and the broad availability of people with experience in the productsboth people from Oracle and from its partners. NBN Cos choice of and success with Oracle solutions reflects Rawlins strong belief in simplifying the technology. Rawlins also reinforces the importance of end-to-end process alignment, underpinned by clear metrics management as a best practice. Constantly measure results, in real time when possible, she advises fellow CIOs, as meaningful business intelligence and analytics are invaluable. Partnering is also high on the agenda at NBN Co, where retail service providers play an important role. I passionately believe in win-win solutions; anything else is unsustainable, Rawlins says. That belief seemingly extends to her view of what makes a great CIO. Successful CIOs should have a high emotional intelligence quotient, a degree in behavioral economics, and perhaps a few stiff drinks, says Rawlins. Humor aside, it isnt purely the technical challenges that drive her. Actually, the most satisfying part of being a CIO is creating an environment where people can accomplish and deliver outstanding business outcomes.
ROBERT EDWARDS
Name: Claire Rawlins Job title: CIO Company: NBN Co Location: Sydney, Australia Award: Oracle Excellence Award for CIO of the Year, Asia Pacific, 2011
WINNER SPECS
43
Name: Clark Golestani Job title: Vice president, it Company: Merck research Laboratories Location: Whitehouse station, new Jersey Award: oracle excellence award for Cio of the Year, Global business Unit, 2011
integrated development platform (IDP), a solution in which information is captured in the clinic and managed all the way through to when the product goes to market. From a scope and scale perspective, that endto-end process involves clinical investigators conducting trials in more than 50 countries. By the end of 2012, Merck hopes to be integrated on a single instance of its IDP across all key components, from electronic data capture to clinical trial management. Merck is also leveraging Oracle technology to gain new insight into the science of biopharmacology. Golestani notes that Merck currently runs one of the largest integrated single chemical repositories in the world on Oracle Exadatawith more than 5,000 concurrent users. Now, people are able to leverage our chemical repository not just for patent purposes but for research, he says. They can visualize and mine all the
information in it effectively and efficiently. When Merck finishes deploying its Oraclebased IDP, the combination of that IDP and the Oracle Exadata chemical repository will provide even more value. Well have a single repository of all clinical and pharmacovigilance information. Then well have the ability to mine that information in complex ways, because we made the decision to standardize all our clinical information on Oracle solutions. In Golestanis view, the Oracle-based product development infrastructure will help Merck deliver on its core mission: to discover, develop, and provide innovative products and services that save and improve lives. Weve given our researchers arguably some of the best tools in the industry for being able to hopefully find greater scientific insight, he says. We believe that will lead to new innovation.
oracle magazine January/February 2012
Catherine Gibbons
WiNNer SpeCS
odays best DBAs have a dual role: mastering intricate technologies while remaining closely connected to the needs and processes of the businesses they serve. Being a DBA for Alinma Bank gives me the immense satisfaction of managing one of the most complex Oracle RAC [Oracle Real Application Clusters] environments in the Middle East region, says Syed Jaffer Hussain, Oracle Database support manager
for Riyadh, Saudi Arabiabased Alinma Bank, an Oracle ACE Director, and winner of the Oracle Excellence Award for Technologist of the Year: DBA. I know our management appreciates the database teams ability to prevent rather than only resolve businesscritical and challenging database and technology problems. Established in 2008, Alinma Bank is a rapidly growing bank based on the principle of Islamic law. The bank runs its complete
business solutions on Oracle cluster technologies. In order to provide uninterrupted service availability around-the-clock to our valued customers, we rely on Oracle cluster technologies, says Hussain. On top of these clusters, Alinma has implemented a sophisticated Oracle RAC 10g Release 2 environment with four systems running nearly 200 database instances. Hussain and his team recently upgraded all four Oracle RAC environments and databases to Oracle 11g Release 2. Most of our critical business processes run on Oracle databases and use Oracle E-Business Suite solutions, and we are also in the process of implementing other Oraclerelated solutions, says Hussain. Beyond any doubt, Oracle technology is the integral part of our organization. We strongly rely on Oracle technologies for our reputation and business growth. Having mastered a wide range of Oracle technologies and gained experience putting them into practice in real-world situations, Hussain likes to give back to the Oracle community. Hes continually sharing his knowledge of Oracle database technology both as a blogger (at jaffardba.blogspot .com) and as the coauthor of Oracle 11g R1/R2 Real Application Clusters Essentials (Packt, May 2011), a book focused on real-world Oracle RAC scenarios. In addition, he continues to refine his expertise by exploring new technologies and implementation challenges, so he can deliver more at work and contribute more to the community. To be a good DBA, one needs to be hungry for new skills, says Hussain, and keen to learn, test, and apply new technologies that could have a big impact on the organization.
45
and winner of the Oracle Excellence Award for Technologist of the Year: IT Manager. Dells grid solution hosts more than 1,300 database instances on 200 Oracle Real Application Clusters (Oracle RAC) nodes. Dell IT started the private cloud program in 2008, when the organizations data centers were at capacity. Although the original architecture and process had served well for a few years, they were unable to scale with customer needs. Chintala was brought in to manage
Dells grid team, improve processes, and design the next-generation grid program. He helped lead the transformation by introducing various architectural and process changes and he also helped facilitate the cultural changes necessary for the application and database teams to understand the benefits of the new shared-infrastructure approach. I am very fortunate to have a team that is committed to making a difference, says Chintala. Its all about dedication, integrity, and passion to make it better. Consolidating databases and servers into an Oracle grid architecture reduced the number of Dells physical servers by more than 1,000 and saved more than 500 terabytes of usable storage. The program also saved data center space and operational costs, and significantly reduced the number of hours required for database provisioning and maintenance operations. The infrastructure is all run on Dell enterprise products, and Dells open hardware solutions and Oracle software combine to run an efficient database environment. Oracle and Dell are key partners, says Chintala. We work closely with Oracle on what our day-to-day challenges are and how they can improve their products. Since its initial deployment in 2008, Dells grid has continued to grow, with a more than 30 percent yearly increase in the number of database instances. Succeeding with such rapid growth requires good collaboration between an organization and its partnerssomething Chintala and his team have fostered. Additionally, the team has proven the efficiency of running Oracle technology on Dell standard platforms for a more efficient environment, Chintala says, adding, Its a winning situation for both companies and, most importantly, the customers.
PAUL S. HOWELL
Name: Sreekanth Chintala Job title: Senior manager, grid team Company: Dell Inc. Location: Austin, Texas Award: Oracle Excellence Award for Technologist of the Year: IT Manager, 2011
WINNER SPECS
Name: Grcan Orhan Job title: Software architect and senior developer Company: Turkcell Technology Location: Istanbul, Turkey Award: Oracle Excellence Award for Technologist of the Year: Enterprise Architect, 2011
WiNNer SPeCS
software solution that leverages an ELT [extract, load, and transform] approach. In 2008, Turkcell Technology created a team to compare different data integration products and ultimately selected Oracle Data Integrator. We selected Oracle Data Integrator because its architecture leveraged the database engine power and provided best-in-class performance and scalability, says Orhan. It eliminated the use of a middle-tier transformation server and thereby avoided additional hardware investment. Orhans integration solutions feed into a multiterabyte Oracle Real Application Clusters data warehouse called NODI (Network Operations Data Infrastructure), which is running on Oracle Database 11g Release 2. NODI is unique because it has an unprecedented model design and is flexible, easy to maintain and implement, and modular.
Some of the data flowing into NODI is unstructured data from network monitors and alarms, so Orhans team had to build algorithms to analyze it and successfully identify the exact location of more than 100,000 alarms each day. Were currently correctly identifying the five unstructured dimensions, such as reason, source system, vendor, and more, for the alarms 100 percent of the time, and the location of the alarms more than 99.99 percent of the time, says Orhan. In the end, Turkcells bet on Oracle infrastructure is paying off, especially when it comes to creating flexible solutions that will continue to address any future need. Oracle Data Integrator is a tool that can talk, or learn how to talk, with any database or operating system in its own language, says Orhan. Thats the power of Oracle Data Integrator.
47
Cloud evangelist helps organizations embrace Oracle software in a virtual data center.
hen it comes to designing successful and scalable solutions, Dr. Frank Munz, an independent Oracle architect, consultant, and trainer, thinks companies should start at square one. Its important to thoroughly understand the technology and the architecture alternatives before you make your design decisions, says Munz, winner of the Oracle Excellence Award for Technologist of the Year: Cloud Architect. Very often I see people who make their design decisions and then attend a technical workshop. I think its just the wrong way around. As founder of the Munich, Germany and Sydney, Australiabased consulting firm munz & more, Munz has helped organizations from telecommunications companies to logistics giants optimize, fix, and finetune their SOA; cloud; Java Platform, Enterprise Edition; and Oracle Fusion Middleware solutions. Hes also an expert on
the integration of heterogeneous technologies with Oracle-based solutions. In addition to helping his consulting customers, Munz also enjoys sharing his expertise with the general public. He has published more than 200 articles on Oracle Fusion Middleware and cloud computing on Oracle Technology Network and in his blog. In his new book, Middleware and Cloud Computing (munz & more Publishing, 2011), he explains what it takes to achieve availability, elasticity, and management of Oracle Fusion Middleware in clouds. Munz focus on cloud computing comes as organizations join the rush to design and deploy new cloud-based solutions, and hes particularly impressed with Oracles new public cloud offering. I think that Oracle is making a dramatic achievement with Oracle Public Cloud, he says. It offers an easier-to-use solution thats more accessible to most users.
TON HENDrIKS
Name: Dr. Frank Munz Job title: Principal Company: munz & more Location: Munich, Germany and Sydney, Australia Award: Oracle Excellence Award for Technologist of the Year: Cloud Architect, 2011
Name: Shlomi Noach Job title: CTO and architect Company: SFNK Ltd. Location: Kiryat Uno, Israel Award: Oracle Excellence Award for Technologist of the Year: Developer, 2011
hen Shlomi NoachCTO and architect at Kiryat Uno, Israel based SFNK Ltd. and winner of the Oracle Excellence Award for Technologist of the Year: Developerencounters technology challenges, he doesnt look for help. Instead, he creates solutions. Noach, an active MySQL community member (openark.org), has spent years developing complex, scalable systems using MySQL, publishing much of his work as open source software. SFNKs product, makam, provides real-time social media analysis services to companies, based on information flowing in from Facebook, Twitter, and other types of social media. The companys core systems are built on MySQL Community Edition 5.1 and 5.5, so Noach devotes much of his time to developing open source tools for
managing and extending MySQL implementations. One example is a tool he created that enables organizations to manage large MySQL instances and allows for live, nonblocking schema changes. We had large MySQL tables and needed to be able to make changes on the fly, says Noach. I came up with an algorithm using available MySQL tools that enables organizations to refactor MySQL tables dynamically. The resulting solution was so successful, says Noach, that his ideas on refactoring live MySQL databases inspired similar efforts by the MySQL team at Facebook. Im thrilled to have people use my code to their advantage. Its a wonderful feeling, says Noach. Of course, those people also give me feedback that helps improve the code I write, so its a beneficial situation for everyone.
oracle magazine January/February 2012
WiNNer SPeCS
WiNNer SPeCS
Specialized, data WarehouSe, eco-enterpriSe, Java, oracle FuSion MiddleWare, and proactive Support
Eco-Enterprise Innovation Award Winners Front row (from left to right): Tapas Roy, Raqmiyat (partner); Deug-ha Park, Gunsan City Hall; Beverly Townsend, University of Western Ontario; Jong Hee Kim, Gunsan City Hall; Jeff Henley, Chairman of the Board, Oracle; Valentin Tcherkezov, Telenor ASA; Bryon Rickey, AT&T; Marion Wilson, Association of Chartered Certified Accountants. Back row (from left to right): Ivan Vojvodic, Juniper Networks; Ross Sharman, Knowledge Global (partner); Shawn Pressley, Hill International; Erick Hahne, Denver Health Hospital; Michel Schoolenaar, Centre Consulting Netherlands (partner); Hans Verlouw, Geodan; Massimo Vogesi, Oracle
technical ability and superior knowledge of Oracle data warehouse technologies and consistently applies best practices while demonstrating leadership and sharing experience both within and outside of his or her business. data Warehouse leader of the Year, europe, Middle east, and africa: Jim Duffy, Head of Data Warehouse Development, BNP Paribas data Warehouse leader of the Year, asia pacific: Chan Sung Lee, Deputy General Manager, Asiana IDT data Warehouse leader of the Year, latin america: Rabih Youssef, Head of IT, Digicel Group Haiti
eco-enterpriSe innovation
Oracle Eco-Enterprise Innovation honors customers for their use of Oracle products to take an environmental lead, as well as to reduce costs and improve business efficiencies using green business practices. Several partners were also honored because they helped these winning customers with their sustainability initiatives. Marion Wilson, Solution Architect and
data Warehouse leader of the Year, north america: Brian Beckman, Enterprise Data Warehouse Platform Owner, Procter & Gamble
Specialized Partners of the Year left to right: abdul Sheikh, cintra; Stef oud, Deloitte; Jean-claude Viollier, capgemini; atsushi egawa, accenture; eugeny Shablugin, Jet infosystems; Jeff Henley, chairman of the Board, oracle
Data Warehouse leaders left to right: andy mendelsohn, Senior Vice President of Database Server Technologies, oracle, with Jim Duffy, BnP Paribas; Brian Beckman, Procter & gamble; rabih Youssef, Digicel group Haiti
49
Winners of the Java innovation award pictured with adam messinger, Vice President of Development, oracle (second row, far left)
Design Group Manager, Association of Chartered Certified Accountants Bryon Rickey, Executive Director , AT&T (partner: Stan Bartel, Area Vice President Key Account Director, Oracle) Erick Hahne, Citrix/Sun Application Support Supervisor, Denver Health Hospital Hans Verlouw, Engineer, Geodan Jong Hee Kim, Director of Local Administration Bureau, and Deug-ha Park, Junior Official, Office of Information and Communications, Gunsan City Hall (partner: Jeong Gwon Go, CEO, SysGen) Shawn Pressley, Vice President of Project Management, Hill International
Ivan Vojvodi, Senior Director, Software Engineering, Juniper Networks (partner: Ross Sharman, Technical Director, Knowledge Global) Dr. Manfred Hrdtner, Deputy Manager, Data Center, Klinikum rechts der Isar der Technischen Universitt Mnchen (partner: Tilo Kaspar, Sales Manager, Research & Development, circular Informationssysteme GmbH) Yunus Dohadwala, CFO, Masafi Company (partner: Tapas Roy, CEO, Raqmiyat) Takakazu Imai, CIO, Rakuten Securities Valentin Tcherkezov, Accounting Director, Telenor ASA (partner: Michel Schoolenaar,
Senior Consultant, Oracle Enterprise Performance Management, Centre Consulting Netherlands) Beverly Townsend, Energy and Environment Manager, University of Western Ontario
Java InnovatIon
Following in the tradition of previous years Dukes Choice Awards, the Java Innovation awards celebrate extreme innovation in the world of Java technology and are granted to the best and most-innovative projects using the Java platform. Andrew Lee Rubinger, Arquillian Project Antoine Mischler, Cofounder, dooApp
Orange PhOtOgraPhy
Specialized, data WarehouSe, 50 eco-enterpriSe, Java, oracle FuSion MiddleWare, and proactive Support
Colby Clegg, Ignition by Inductive Automation Vinicius Senger, Cofounder, Global Code, jHome Shlomi Ben-Haim, JFrogs Artifactory Oliver White, JRebel Trisha Gee, Disruptor by LMAX Scot Tutkovics, Vice President of Engineering, Rockwell Automation Dr. Andreas Stefik, Project Lead, SodBeans Trustin Lee, The Netty Project
Callista Software Services KCI (Honorable Mention) sOa/aia/BPM: Choice Hotels Siram S.p.A Turk Telecom Electronic Arts Premium Wine Brands (Honorable Mention) Oracle webcenter: Agilent Medtronic Dutch Prosecutors Office (Openbaar_Ministerie) Schneider National (Honorable Mention) application Grid and Oracle exalogic: Banco de Chile Telecom Italia AT&T All Nippon Airways (ANA) Haier (Honorable Mention) Bi and ePM: HealthSouth State of MarylandGovernors Office of Crime Control & Prevention Telenor ASA
The Clorox Company Dunkin Brands (Honorable Mention) data integration: Sabre Holdings BT Elsevier identity Management: ING North America Insurance College Board TTNET A.S. Manpower (Honorable Mention)
Orange PhOtOgraPhy
National Geographic Education supports the mission of the National Geographic Society to inspire people to care about the planet by creating compelling educational materials for young people and the adults who teach them. NG Education provides unique learning experiences to educators and advocates for improved education in geography, the environmental sciences, and other disciplines that are critical to understanding our world. With support from Oracle, National Geographic Education is engaged in a major project to develop teacher leaders in marine ecology and create materials about ocean science and geography for students, families, the ocean recreation community, and the general public.
Is for Cloud
Jaime Ferrand
53
by david baum
D
iT management into the cloud.
esigned to manage data center and cloud environments, Oracle Enterprise Manager has consistently focused on business-driven IT management. The latest release, Oracle Enterprise Manager 12c, continues this focus and expands its cloud management capabilities to deliver a complete solution for setting up, managing, provisioning, and charging back for Oracle technologybased enterprise clouds. Organizations using Oracle Enterprise Manager 11g are already seeing the benefits of Oracle Enterprise Managers commitment to applicationsto-disk management, and are looking forward to even better control in the cloud with Oracle Enterprise Manager 12c.
Paulina mcFarland
Anton Topurov, an IT professional on the database and middleware administration team at CERN, says CERNs IT specialists rely on Oracle Enterprise Manager to monitor CERNs Oracle infrastructure, which includes single-instance databases, Oracle Real Application Clusters databases, Oracle VM, and Oracle WebLogic Server.
ManageMent as a science Since the 1950s, some of the worlds leading physicists have converged at the European Organization for Nuclear Research (CERN) to study the properties of subatomic particles. Today these researcherswho are located throughout the worldprocess a staggering amount of information. All told, CERNs four big-particle detectors produce more than 15 million gigabytes of data per year. In addition to obvious business functions, Oracle databases are essential for management of these particle detectors, as well as for the Large Hadron Collider accelerator. For years CERNs IT specialists have used Oracle Enterprise Manager to monitor the associated database infrastructure, which includes Oracle WebLogic Server and Oracle VM. We rely on Oracle Enterprise Manager 11g as a monitoring tool for our Oracle infrastructure, including single-instance databases and Oracle Real Application Clusters databases, says Anton Topurov, an IT professional on the database and middleware administration team at CERN. The core value of Oracle Enterprise Manager is proactive monitoring. Oracle Enterprise Manager 11g lets Topurov and his colleagues monitor the physical hardware and software assets, as well as the quality and availability of the associated services that rely on those assets. His team has grouped databases, hosts, listeners, and application servers together so they can monitor them as a unit. This lets them gauge the performance and availability of complete business services rather than individual IT components.
During 2011, CERN evaluated a beta version of Oracle Enterprise Manager 12c. IT professionals there determined that the new software will make it easier to maintain database and middleware services in a virtualized environment for several hundred developers in the U.S., France, Russia, Switzerland, and other locations. Overall, CERNs IT professionals found Oracle Enterprise Manager 12c to be more developer friendly because it lets them handle many debugging, performance testing, and tuning exercises on their own. The improved Automatic Workload Repository feature, with its Active Session History statistics, is a good example of this enhanced usability, Topurov says. In addition, the new named credentials are a real game changer because they provide more flexibility for authorizing access to hardware and software resources and provide a clean separation between security officers and operators. Topurov also likes Oracle Enterprise Managers new functionality for consolidation management, which analyzes usage patterns and loads on a hardware infrastructure and makes recommendations for consolidating databases. As in most large IT shops, some of CERNs servers are underutilized and others are maxed out. The consolidation management functionality of Oracle Enterprise Manager 12c looks quite attractive to us, because it also addresses our electricity and cooling shortage, he explains. We plan to continue to virtualize more resources in the computer center, and this functionality of Oracle Enterprise Manager will accelerate the rollout. We can select a set of production machines on the one hand, and propose a set of new machines as a destination. Oracle Enterprise Manager analyzes
Ton Hendriks
55 sNapshOTs the existing usage levels and proposes a consolidation plan. The result of the collected new features and improvements is not an incremental product release. We see Oracle Enterprise Manager 12c as a major step forward, concludes Topurov. around the world, including more than 2,600 hospitals; 3,500 physician practices cern.ch Industry: Scientific research covering more than 30,000 physicians; 500 Employees: 2,500 employees plus 10,000 ambulatory facilities, such as laboratories, visiting scientists ambulatory centers, cardiac facilities, radiOracle products and services: Oracle ology clinics, and surgery centers; 800 home Database 11g, Oracle Enterprise Manager, health facilities; and 1,600 retail pharmacies. Oracle WebLogic Server, Oracle JRockit Virtual Edition, Oracle Streams, Oracle Active Data Our data center hosts applications Guard, Oracle Real Application Clusters, Oracle Managing Business services that support more than 150,000 beds, Advanced Compression, StorageTek tape According to Richard Sarwal, senior vice which equates to 17 percent of U.S. hospital libraries, Oracle E-Business Suite, Oracle VM president of product development at Oracle, capacity, says Tony Myers, Oracle strategist consolidating and virtualizing an IT infrafor the CernerWorks hosting facility. Oracle Cerner cerner.com structure are important activities, but they Enterprise Manager plays an important role Industry: Healthcare are just the starting point for creating an by helping us keep an eye on that vital data. Employees: 8,000 enterprise cloud environment. The longBy providing integrated applicationsRevenue: US$1.85 billion in 2010 term goal is to manage cloud resources as to-disk management capabilities for its Oracle products and services: Oracle business services rather than just a collecpublic and private clouds, Oracle Enterprise Database, Oracle Enterprise Manager, Oracle Real Application Clusters tion of technical components, he explains. Manager has enabled Cerner to increase This lets you relate those resources to its return on investment and pursue new Epsilon users and monitor the performance of their business opportunities without incurring epsilon.com applications to make sure they are receiving incremental IT costs. This success is partly Industry: Marketing services adequate service levels. what motivated Cerner to offer a new cloudEmployees: 3,000 Revenue: US$613 million in 2010 Such was the motivation for Cerner, one based service supported by Oracle Enterprise Oracle products and services: Oracle of the worlds largest healthcare IT comManager. Cerner had already created a multiDatabase 11g, Oracle Enterprise Manager, panies. The Kansas City, Missouribased tenant version of Oracle Enterprise Manager Oracle Exadata Database Machine, Oracle company currently depends on Oracle for use internally within its private cloud. It Active Data Guard Enterprise Manager 11g to manage more simply extended that architecture to enable than 1,000 client databases associated a secure and private management layer for with its Millennium healthcare applicationsabout 18 petabytes external clients as well. The database-as-a-service offering is now of healthcare data in all. Customers can install Millennium at their part of an on-demand software suite called SkyBox that includes own premises or access the functionality on demand through the cloud-based messaging, storage, and virtual desktop functionality. CernerWorks hosting facility. Oracle Enterprise Manager allows Myers and his team to monitor Cerner solutions are licensed by approximately 9,000 facilities and manage the experience of their clientsincluding all business Total Cloud Control with Oracle Enterprise Manager 12c
Creating Oracle Enterprise Manager 12c was a three-year project that represents 2 million developer hours. Oracles goal with this foundational product was to automate operations for traditional data centers, virtualized environments, and cloud computing environments. For years Oracle has been enhancing its integrated technology stack with an integrated management stack, says Richard Sarwal, senior vice president of product development at Oracle. We build manageability into each product and expose it in a meaningful way through one integrated management environment. This philosophy has driven the creation of total cloud control embodied in Oracle Enterprise Manager 12c: one holistic tool that helps you set up and manage the entire cloud lifecycle. The cloud lifecycle has three basic phases: planning/setup, deployment, and optimization. To assist with planning/setup, Oracle Enterprise Manager 12c features new discovery capabilities to identify all the elements of an IT environment, as well as capacity-planning tools to advise IT professionals on how to combine that environment into a shared infrastructure. Oracles new management software also helps administrators determine what types of services they want to offerinfrastructure as a service, with basic computing, memory, and storage capabilities, or higher-level offerings such as platform as a service. To streamline cloud deployment, developers can provide a complete suite of applications as virtual assemblies that can be uploaded into Oracle Enterprise Managers software library. Users have self-service access to those resources through a modern cloud management portal, according to their predefined levels of authorization. To optimize production clouds, Oracle Enterprise Manager 12c provides a new centralized console called Oracle Enterprise Manager Cloud Control. This wizard-driven, role-based management platform helps administrators manage the entire cloud lifecycle, including consolidation and capacity planning, self-service, testing, monitoring, and metering and charge-back. The software can monitor resource use at a discrete level and charge back for that usage based on common metrics such as CPU consumption and storage consumption, as well as by the types of technologies being utilized. Enterprise customers are struggling to develop more-comprehensive cloud management strategies that go beyond todays self-service provisioning and VM [virtual machine] control projects, says Tim Grieser, program vice president, enterprise system management software, at IDC. Oracle has raised the bar by including mission-critical database, middleware, and application self-service provisioning and dynamic scaling in the corporate cloud management discussion. They have laid out a comprehensive cloud lifecycle approach, and especially for those customers who deploy Oracle engineered systems or a complete Oracle technology stackOracle has been remarkably clear on the steps needed to plan, implement, operate, and manage clouds to derive business value from increasingly complex application deployments.
56
transactions and application interactionsfrom one management console. By adopting a proactive philosophy of prevention rather than constantly reacting to incidents, the team has reduced database incidents by 50 percent; 17 percent of problems are now identified without DBA intervention. According to Myers, fine-tuning
Oracle Enterprise Manager plays an important role by helping us keep an eye on that vital data.
Tony Myers, Oracle Strategist, Cerner
Cerners database assets to maximize server utilization has saved the company US$9.5 million in capital expense. Our service-level agreements [SLAs] call for 99.9 percent uptime, but weve been able to surpass that and achieve 99.99 percent as a direct result of Oracle Enterprise Manager, says Myers. Our DBAs are more efficient, which has allowed us to increase our client base without increasing our head count. Oracle Enterprise Manager automates many mundane tasks, which enables us to be more proactive and to focus on new technologies that improve client services. CernerWorks has 350 Oracle Enterprise Manager users50 of whom are external and access the management software as a cloud service. According to Myers, many of these users are intrigued by Oracle Enterprise Manager 12c, which he says will allow them to analyze the data more closely and conduct deeper analysis than they can do with Oracle Enterprise Manager 11g. If the database hangs, previously you couldnt connect to it, but Oracle Enterprise Manager 12c lets you go around the database and access the data thats necessary to continue the analysis, he adds. Thats phenomenal. An Evolving StAndArd As vice president, technology, Strategic Database Services, at Epsilon, Jeff White values Oracle Enterprise Manager for its standard processes, procedures, and consolidated interface. We looked at other solutions, but for integrated monitoring, configuration, and management, Oracle Enterprise Manager was the best, he states. The majority of DBAs are familiar with Oracle Enterprise Manager, and we heavily utilize templates to standardize common tasks and actions. This standardization allows us to save time that we would have spent writing, maintaining, and deploying scripts, so we can focus on higher-value tasks that provide ROI such as application system performance and tuning that enhances the customer experience. Epsilon offers a broad array of data-driven, multichannel marketing solutions that help brands deepen their relationships with customers. Whites group develops and manages customer loyalty programs, which
Tony Myers, Oracle strategist for Cerners CernerWorks hosting facility, says a proactive philosophy of prevention rather than constantly reacting to incidents has resulted in a 50 percent reduction in database incidents and 17 percent of problems being identified without DBA intervention.
57
monitors these information systems to ensure that they are online, up to date, and meeting customer requirements. Oracle Enterprise Manager 11g gives Epsilon a cohesive view of all Oracle Exadata components, either individually or in a consolidated snapshot. System administrators rely on this centralized management insight to monitor many database systems and attributes, eliminating shadow management consoles for independent database servers. Administrators throughout the company now have a common management interface for the entire Oracle-based infrastructure. According to Tim Grieser, program vice president, enterprise system management software, at International Data Corporation (IDC), the latest Oracle Enterprise Manager release is optimized to support highly integrated full stack Oracle environments and engineered systems. While Oracle Enterprise Manager 12c can be used to coordinate the provisioning of third-party infrastructure and hypervisors supporting Oracle databases, applications, and middleware, customers can anticipate the greatest cost savings, performance improvements, and productivity increases by implementing Oracle Enterprise Manager 12c to manage full-stack Oracle environments, he says. Epsilons IT team is looking forward to implementing Oracle Enterprise Manager 12c in this context. White is Jeff White, vice president, technology, Strategic Database Services, at Epsilon, says his particularly interested in the products enhanced managecompany uses Oracle Enterprise Manager and Oracle Exadata to provide real-time support for tens of thousands of point-of-sale terminals at a large U.S. retailer. ment capabilities for Oracle engineered systems. Oracle Enterprise Manager 12c monitors an entire Oracle Exadata or generate large amounts of data that require transaction processing, Oracle Exalogic system, with performance and monitoring views for tracking, configuring, offer/content targeting, personalization, all hardware and software components, he says. For example, builtlogging, and campaign execution. With many of its information in schematics let you visualize all the ports in the InfiniBand switches. systems seeing 40 percent growth year over year and increased That makes it easier to monitor the load and isolate throughput or demand for real-time reporting and conversation with end users, latency issues. He also looks forward to using Oracle Enterprise Epsilon decided to deploy an Oracle Exadata Database Machine to Managers Active Session History analytics capabilities to slice and meet strict performance and availability requirements for some of its dice tuning metrics via a GUI. client programs. According to Oracles Sarwal, Active Session History analytics is Client needs for real-time data and near-real-time reports are in just one of more than 200 new features and 500 enhancements high demand and growing, says White. We deliver highly available in Oracle Enterprise Manager 12c, many of which Oracle created in and performing marketing solutions that adhere to strict SLAs that response to specific requests from customers. Oracle Enterprise govern the customer experience. Manager 12c is a transformative product, he says. It helps you do White and his team used to spend considerable time architecting, everything, from creating a cloud to deploying it and charging back configuring, and deploying high-performance computing systems. for usage, along with capacity planning, self-service provisioning, We decided to purchase Oracle Exadata because we wanted an inte- and management and monitoring of all the underlying compograted server, storage, and network solution, so we would not have nents. Oracle Enterprise Manager 12c enables organizations to view to manually select, configure, and validate hardware and software cloud resources as meaningful business services rather than isoconfigurations, he notes. lated IT components. Today Epsilon uses Oracle Enterprise Manager and Oracle Exadata David Baum ([email protected]) is a freelance business writer to support a large U.S. retailer, including providing real-time support for tens of thousands of point-of-sale terminals, resulting in peak loads based in Santa Barbara, California. exceeding 500 Web service calls per second and reaching 200,000 NExt StEpS IOPS [input/output operations per second]. Each Web service call can include tens to hundreds of transactions, yet these transactions LEARN more about Oracle Enterprise Manager average between 10 and 150 milliseconds, meeting the stringent oracle.com/us/products/enterprise-manager expectations of true real-time data processing. Whites team closely
Paul S. Howell
Partner Excellence!
Congratulations 2011 OPN Specialized Global Award Winners
Capgemini
Full Color
Java Developer
59
Protect your Oracle ADF applications from unauthorized access using the Oracle ADF Security feature.
istorically, Java EE developers have used container-managed security and Java Authentication and Authorization Service (JAAS) to implement security in their applications. For implementing security in Oracle Application Development Framework (Oracle ADF) and Oracle Fusion Middleware applications, however, Oracle provides Oracle platform security services, an integrated security environment that builds on the underlying Java EE standards and is portable across application servers. The Oracle ADF Security feature provides a declarative and visual development environment for building Oracle platform security servicesbased security into Oracle ADF applications. Together, Oracle ADF Security and Oracle platform security services enable developers to focus more on what needs to be protected than on how it should be protected. This article introduces Oracle ADF Security and shows how developers can use it to implement security within their enterprise Oracle ADF applications. IntroducIng oracle adF SecurIty and oracle PlatForm SecurIty ServIceS Three key concepts are critical in understanding Oracle ADF Security and Oracle platform security services: user identities, enterprise roles, and application roles. User identities define users in an enterprise. Userssuch as company employees usually have a single username/password pair they use to authenticate themselves to applications within an organization. A user identity defines only who the user isit does not define any access privileges. To ease system deployment, administrators often organize users into enterprise roles, which provide a way to manage groups of users who have similar requirements when accessing enterprise resources. For example, employees may all be grouped
into an enterprise role called Employees to give them access to all employee self-service applications within an enterprise. From an administrative point of view, it is easier to add users to or remove them from an enterprise role than to maintain individual user grants for an application. Application roles are specific to an application and are used to grant privileges to users defined in enterprise roles. Application roles make it possible for all users who belong to an enterprise role (such as Employees) to have specific access privileges defined for various applications. For users within an enterprise role to work within an application, application roles must be granted to the enterprise role. Application roles can be granted directly to users, but this practice is rare and is not considered good programming design. Figure 1 shows the Oracle platform security services architecture, both at design time in Oracle JDeveloper and at runtime in Oracle WebLogic Server. At design time, user identities, enterprise roles, and security policies are defined in a local file called jazn-data.xml. It is located in the src\ META-INF directory of the application root folder on the file system.
For testing applications by using Oracle WebLogic Server integrated with Oracle JDeveloper, security policies defined in jazn-data.xml are copied into the system-jazn-data.xml policy file in the config\fmwconfig directory of the target Oracle WebLogic Server domain. In this scenario, user identities and enterprise roles defined in the jazn-data.xml file are deployed to the integrated Oracle WebLogic Server in Oracle JDeveloper. In a production environment, user identities and enterprise roles defined in the application jazn-data.xml file generally cannot be deployed to Oracle WebLogic Server instances. On a production server, user authentication is instead performed with the identity management system set up for the enterprise. Typical mechanisms include LDAP, RDBMS, Oracle Internet Directory, and Microsofts Active Directory. SamPle aPPlIcatIon overvIew This article walks through a sample application designed to show how Oracle ADF Security and Oracle platform security services work. You can download this application, containing configuration and code examples for you to explore at design time and
RDBMS Oracle Internet Directory Oracle Virtual Directory LDAP Active Directory LoginModule
Deploy
Grants
60
Oracle aDF
runtime, at oracle.com/technetwork/issuearchive/2011/12-jan/o12adf-524995.zip. To get started, make sure you have an Oracle Database instance installed and running, with the HR schema unlocked. Then unzip the o12adf-524995.zip file into a directory on your local machine. Next, launch Oracle JDeveloper 11g Release 2, select File -> Open, and navigate to the directory where you unzipped the sample application. In the OramagAdfSecurity folder, select the OramagAdfSecurity.jws file and click Open. The sample application contains three projects: EmployeeEdit, Model, and ViewController. The Model project contains a business service, based on Oracle ADFs Business Components feature, that queries the Departments and Employees tables in the HR schema. The EmployeeEdit project defines a single bounded task flow, edit-employeesflow-btfsdc, that edits a selected employee record. Because it is designed as a reusable task flow deployed in an Oracle ADF library, this project would usually be created in a separate Oracle JDeveloper workspace. For this simple demo, however, it is part of the OramagAdfSecurity.jws workspace. The ViewController project references the edit-employees-flow-btfsdc task flow
described above. To see this reference, double-click the ViewController project node and expand the Libraries and Classpath node in the dialog box that appears. Select ADF Library, and click Edit to see the ADF Library reference and understand how to authorize application content located in ADF Library files. Before running the sample application, change the database configuration to point to an accessible HR database schema. In Oracle JDeveloper, select View -> Database -> Database Navigator. Expand the OramagAdfSecurity node, right-click the hrconn node, and choose Properties from the context menu to edit the database connection information. Close the configuration dialog box by clicking OK after applying the changes. Run the sample application by opening the Oracle JDeveloper Application Navigator. Expand the ViewController project node, and select the Home.jsf page from the Web Content folder. Right-click Home.jsf, and select Run from the context menu. (If this is the first time you have run an application in Oracle JDeveloper and you see a Create Default Domain dialog box asking you to create the Oracle WebLogic Server domain, fill out the form fields and click OK.) Figure 2 shows the running applica-
tion. Click the application Login link, and try authenticating as sking (HR manager), ahunold (Manager), and dfaviet (Employee). The password for all three accounts is welcome1. The sample application enforces the following security rules for the different users: The Home tab is public and accessible by all (the home page is granted to the anonymous role). Other tabs only require the user to be authenticated (security expression language [EL] is used on the panel tabs to check the users authentication status). The User Profile tab enables managers to create new reporting employees (security EL is used on the command button to check if the user is in a manager role). Only HR managers are allowed to change the employee salary for existing employees (entity security is defined in Oracle ADF Business Components). All managers can define the salary of new employee records (custom permission is created in jazn-data.xml and programmatically checked inside the Employees entity class). The Management Salary Overview tab is enabled for managers (security EL is used on the panel tabs to check the users authentication status). The Employee Search tab allows all users to search for employee records. Only HR managers are allowed to edit employees in this context (EL is used on a command button and the train stop definition of the editemployees-flow-btfsdc task flow call activity in the browse-employees-btf task flow). A hidden tab, HR Managers Only, is readonly for all managers except HR Managers, for whom it is enabled (EL is used on the tab component to check a custom resource permission). After a user has been successfully authenticated, the Login link changes to a Logout link to allow logout and login as a different user. Enabling OraclE aDF SEcurity By digging deeper inside the sample Oracle ADF application, you can see how the security rule definitions described above are implemented for the three defined user accounts.
61
The first step in securing an application is to enable Oracle ADF Security. In the OramagAdfSecurity project, select Application -> Secure -> Configure ADF Security to open the Oracle ADF Security wizard. This wizard is re-entrant, so you can safely open it and browse security settings without worrying about losing data. The first dialog box in the configuration wizard enables you to define the type of security you want. The ADF Authentication and Authorization option, used in the sample application, enables you to configure login information as well as access to specific application features. Another option, ADF Authentication, is for controlling only who can access the application (via a login dialog box when a user requests access to the application). The Remove ADF Security Configuration option does not delete any existing policy definitions, but it disables the enforcement of Oracle ADF Security. This option can be useful for allowing application testing while temporarily disabling security. The next dialog box, Select Authentication Type, is where you define the type of authentication to use (such as form-based or basic). The authentication mechanism you choose depends on whether you want to provide your own login form or if you want to use client browser certificates for authentication. The sample application uses basic authentication, which performs programmatic authentication leveraging a specific Oracle WebLogic Serverproprietary API. If you select form-based authentication instead, Oracle JDeveloper will generate a login form for you. The login form, built in HTML, is configured in the web.xml file of your Web project. The next dialog box, Enable Automatic Policy Grants, enables you to define how to protect existing resources, views, and task flows in your project. For large projects, you would ideally choose the No Automatic Grants option, which basically locks the application down until you explicitly grant access permissions to application roles and then map those application roles to users and enterprise roles defined in the jazn-data.xml file. Alternatively, the Grant to Existing Objects Only option enables authentication and
authorization for an Oracle ADF application while ensuring that the application remains accessible to everyone. Use this option to enable security for an existing application without interrupting the current development process. With this option, pages and task flows created after security is enabled are not accessible, by default. To make them accessible, you need to explicitly grant them to application roles defined in the application. The Grant to All Objects option is similar to Grant to Existing Objects Only, except that it also grants all users access to new pages and task flows created after security is enabled. Use this option to add security to an application for which you dont have any application roles or user identities defined. The next wizard dialog box, Specify Authentication Welcome Page, is where you define a landing pada page to which all authenticated users are redirected after login. If this option is not set, the redirect will go to the protected view that triggered the authentication process. When you are done, click Finish to close the Specify Authentication Welcome Page dialog box and the Oracle ADF Security wizard. Creating Users, enterprise roles, and appliCation roles Before building authorization into Oracle ADF applications, you need to create users, enterprise roles, and application roles for testing. Oracle JDeveloper provides a declarative configuration console where you can easily create users and enterprise roles that simulate identities as they would exist in the
identity management system in a production environment. Application roles in Oracle ADF Security are specific to an application and decouple security grants from identities. Upon deployment, application roles are copied to the policy store. Although you can grant permissions to users and enterprise roles directly, it is not recommendedyou should use application roles instead. To create users and enterprise roles, select Application -> Secure -> Users. If you do this for the sample application, you will see user accounts for Steven King, Alexander Hunold, and David Faviet. Next, select the Enterprise Roles tab, as shown in Figure 3. The sample application has three enterprise roles defined: Enterprise Employee Group, Enterprise HR Manager Group, and Enterprise Manager Group. Individual user identities can be assigned to one or many roles. Select the Application Roles tab to create application roles to which you will later grant resource permissions. Application roles are mapped to users and enterprise roles available on the target server. (The sample application has three application roles defined.) enabling seCUrity in oraCle adF bUsiness Components When you enable Oracle ADF Security for an application, the change does not immediately affect Oracle ADF Business Components. To enforce authorization on an Oracle ADF Business Component entity
62
Oracle aDF
or entity attribute, locate the entity in the Oracle JDeveloper Application Navigator and right-click it. In the sample application, entity security is defined on the Employees entity, which can be found in the Model project in Application Sources -> adf.sample .model -> model -> entities. To view entity security options in the sample application, right-click the Employees entity and select Open Employees to open the entity editor. In the editor, expand the Security node of the General category and select the entity actions on which you want to enforce framework security. Oracle ADF Business Component entities can be protected for read, update, and removal. To secure entity attributes, select an attribute in the Attributes section of the entity editor and select the Security tab. Attributes can be protected against update. When this option is enabled, only authorized users can see editable input fields in the user interface for the selected attribute. In the sample application, the Employees entitys security configuration is set up so that only HR managers can change the salary of an existing employee. You can test this configuration by running the application and testing the User Profile tab after being authenticated as both ahunold and sking. Note that although the steps described above enable entity security in Oracle ADF Business Components, they dont define which specific roles are authorized for access. The next step shows how these security policies are defined. Defining Security PolicieS A security policy is a rule that defines the users who can access a resource, along with the actions they can perform on it. Technically, policies associate access permissions with application roles by using a GRANT statement. At runtime, security policies are enforced on a resource by Oracle ADF or programmatically in the application with either specialized EL or Java. Enabling Oracle ADF Security for an application immediately secures application pages in all unbounded and bounded task flows. The protection of other resources such as Oracle ADF Business Component entities,
entity attributes, and custom resources such as menu items and Java methods in Oracle ADF is optional but recommended. Pages and page fragments contained in bounded task flows are not separately checked for security but, rather, run under the protection defined for the bounded task flow. If a page or a page fragment in a bounded task flow requires extra security to be enforced by the framework, you can enable this declaratively by moving the page or the page fragment into its own task flow or by issuing a manual permission check, using Oracle ADF security expressions or Java. An example of a manual permission check is a router activity in a task flow that navigates to different views, depending on user-granted permissions. The next section (Using Security Expressions) shows how to use security expressions to manually protect views and controller activities. Oracle ADF Security provides a visual and declarative environment to enable developers to define security policies in the jazn-data .xml file. To open the Oracle ADF Security policy editor (as shown in Figure 4), select Application -> Secure -> Resource Grants. The Resource Type and Source Project fields are where you select the type of resource and a project filter, and Oracle JDeveloper lists all available resources used in the application that meet these criteria. For example, Figure 4 shows all the task flow resources available in the ViewController project. If you also want to see task flows contained in Oracle ADF libraries (such as edit-employees-flow-btfsdc in the provided
sample application), check the Show task flows imported from ADF libraries checkbox. For a selected task flow resource, use the green plus (+) icon to grant access to users, enterprise roles, application roles, or code sources. Note that for task flows and page views, you can grant only the view action. Grants of other actions listed for task flows are enforced only with Oracle WebLogic. Among the other framework-provided resource types are ADF Entity Object, ADF Entity Object Attribute, Web Page, and custom resource permissions. You can use custom resource permissions to perform manual security checks for user access to menus, tabs, or custom application functionality. To create new resource permissions, click the green plus (+) icon next to the Resource Type field. A custom resource permission is defined by a name, a permission class, and a list of actions that can be performed on it. For example, the sample application uses a custom permission named InsertEntityAttribute to define the user privilege to update an attribute while a row is new. The custom permission uses the oracle .security.jps.ResourcePermission class at runtime and has a single actioninsert defined. The InsertEntityAttribute resource permission is checked programmatically with Java in the isAttributeUpdateable method contained in the adf.sample.model .entities.EmployeesImpl class of the Model project. With the InsertEntityAttribute permission in the sample application, managers such as ahunold can update a salary only
63
when an employee record is newly created. Another custom resource permission in the sample application is PanelTabProtection, which Oracle ADF Security EL checks in the rendered attribute of the af:showDetail item component that represents the HR Managers Only tab. In the Security Policy editor, the Entitlement Grants tab enables you to group resources that have the same access protection requirements to be granted in a single grant statement. The concept of entitlements in Oracle ADF Security simplifies security administration, because you dont need to grant access to individual resources. Instead, you can perform grants by using a single bulk statement. The sample application has a single Public Task Flows entitlement defined, which references all task flows accessible to all employees. To create new entitlements in your custom project, click the green plus (+) icon next to the Entitlements header and define a name for the new security group. Then click the green plus (+) icon on the Resources tab to choose the resources to combine in this entitlement. When selecting a resource type in the Select Resources dialog box, ensure that the Resource Projects field contains the name of the project that holds the resource. If a project is not shown, use the magnifier icon to add it to the list of projects. In Oracle JDeveloper 11g Release 2, entitlements can contain only resources that are defined in application projects. To secure resources stored in Oracle ADF libraries, use the Resource Grants option. After defining the resources in an entitlement, you select the resource action to be granted to an application role. To grant an entitlement to an application role, select the Grants tab and click the green plus (+) icon to choose one or many application roles. Using secUrity expressions For checking security in the user interface or in the Oracle ADF binding layer, Oracle ADF provides the following set of specialized security expressions: #{securityContext.authenticated} #{securityContext.userName} #{securityContext.userInRole['roleList']}
#{securityContext.userInAllRoles['roleList']} #{securityContext. taskflowViewable['target']} #{securityContext.regionViewable['target']} #{securityContext.userGrantedResource['p ermission']} #{securityContext.userGrantedPermission[ 'permission']} To add a security expression to a user interface component, select the component in the visual page editor and open the Property Inspector. Click the down-arrow icon to the right of the property to which you want to add the expression (such as the disabled property on an af:showDetail item on a panel tab). Choose Expression Builder from the context menu that appears. In the Expression Builder, expand the ADF Bindings node and the securityContext node it contains. To get help on how to use an expression, expand the Description node at the bottom of the expression editor. The sample application uses security expressions on the Home.jsf page to enable and disable panel tabs, based on the user authentication state and that persons role membership. The browse-employees-btf .xml task flow definition in the WEB-INF\ regions folder uses security expression on the edit-employees-flow-btfsdc task flow call activity to skip the train stop for all users except HR managers. Using Java for secUrity All permissions in Oracle ADF Security are represented at runtime by a Java class that can be instantiated and dynamically checked. Commonly used classes are oracle.security.jps.ResourcePermission, for custom resource definitions oracle.adf.controller.security .TaskFlowPermission, for bounded task flows oracle.adf.share.[].RegionPermission, for page permissions in unbounded task flows oracle.adf.share.[].EntityPermission, for entities oracle.adf.share.[] .EntityAttributePermission, for entity attribute permissions The sample application checks Oracle ADF Security from Java in two places: in the EmployeesImpl.java file in the Model project
and in the UserSearchBean.java managed bean in the ViewController project. The entity implementation class has a security check for a custom resource permission that allows managers (such as ahunold) to update employee salaries for newly created employee records. The permission check in the managed bean verifies the user privilege to access the task flow referenced by a dynamic region and returns an empty region if permission is not granted. This check is also an example of defense in depth, in that task flow security is also checked by the framework. in conclUsion Oracle ADF Security simplifies a complex topic by abstracting JAAS authorization and Java EE authentication. With Oracle ADF, you use visual editors to protect the resources you care about the most and enforce security configurations. You can also use security expression language or Java in applications to verify user access rights. With all the simplicity added, the most important thing to be aware of is that applying security to an application is a journey and not a destination.
NExt StEpS
READ more about Oracle ADF Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework 11g Release 2 (11.1.2.0.0) download.oracle.com/docs/cd/E16162_01/ web.1112/e16182/reusing_components.htm Oracle ADF Security Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework 11g Release 2 (11.1.2.0.0), Chapter 35: Enabling ADF Security in a Fusion Web Application download.oracle.com/docs/cd/E16162_01/ web.1112/e16182/adding_security.htm DOWNLOAD the sample application for this article oracle.com/technetwork/issue-archive/2011/ 12-jan/o12adf-524995.zip
SPARC SuperCluster
Twice as Fast
SSC T4-4 $1.2M IBM P795 $4.5M*
*Building
planets is expensive
8x Better Price/Performance
oracle.com/sunbeatsibm
65
OracLe DatabaSe
he previous articles in this introductory PL/SQL series focused on working with strings and numbers in PL/SQL-based applications. Without a doubt, strings and numbers are important, but it is certainly a very rare application that does not also rely on dates. You need to keep track of when events occurred, when people were born, and much more. As a result, you will quite often need to Declare variables and constants for dates Use built-in functions to display and modify date values Perform computations on dates A date is also a considerably more complex datatype than a string or a number. It has multiple parts (year, month, day, hour, and so on), and there are many rules about what constitutes a valid date. This article gives you all the information you need in order to begin working with dates in your PL/SQL programs. Dates, time stamps, anD intervals in pl/sQl Most applications require the storage and manipulation of dates and times. Unlike strings and numbers, dates are quite complicated: not only are they highly formatted data, but there are also many rules for determining valid values and valid calculations (leap days and years, daylight saving time changes, national and company holidays, date ranges, and so on). Fortunately, Oracle Database and PL/SQL provide a set of true date and time datatypes that store both date and time information in a standard internal format, and they also have an extensive set of built-in functions for manipulating the date and time. There are three datatypes you can use to work with dates and times:
DATEThis datatype stores a date and a time, resolved to the second. It does not include the time zone. DATE is the oldest and most commonly used datatype for working with dates in Oracle applications. TIMESTAMPTime stamps are similar to dates, but with these two key distinctions: (1) you can store and manipulate times resolved to the nearest billionth of a second (9 decimal places of precision), and (2) you can associate a time zone with a time stamp, and Oracle Database will take that time zone into account when manipulating the time stamp. INTERVALWhereas DATE and TIMESTAMP record a specific point in time, INTERVAL records and computes a time duration. You can specify an interval in terms of years and months, or days and seconds. Listing 1 includes example variables whose declaration is based on these datatypes. Working with intervals and time stamps with time zones can be very complicated; relatively few developers will need these more advanced features. This article focuses on the core DATE and TIMESTAMP types, along with the most commonly used built-in functions. Choosing a datatype. With such an abundance of riches, how do you decide which of these date-and-time datatypes to use? Here are some guidelines:
Use one of the TIMESTAMP types if you need to track time down to a fraction of a second. You can, in general, use TIMESTAMP in place of DATE. A time stamp that does not contain subsecond precision takes up 7 bytes of storage, just as a DATE datatype does. When your time stamp does contain subsecond data, it takes up 11 bytes of storage. Use TIMESTAMP WITH TIME ZONE if you need to keep track of the session time zone in which the data was entered. Use TIMESTAMP WITH LOCAL TIME ZONE if you want the database to automatically convert a time between the database and session time zones. Use DATE when its necessary to maintain compatibility with an existing application written before any of the TIMESTAMP datatypes were introduced. Use datatypes in your PL/SQL code that correspond to, or are at least compatible with, the underlying database tables. Think twice, for example, before reading a TIMESTAMP value from a table into a DATE variable, because you might lose information (in this case, the fractional seconds and perhaps the time zone). Getting the current date and time. PL/SQL developers often need to retrieve and work with the current date and time. Most developers use the classic SYSDATE function, but
DATE := SYSDATE; TIMESTAMP := SYSTIMESTAMP; TIMESTAMP WITH TIME ZONE := SYSTIMESTAMP; INTERVAL YEAR (4) TO MONTH := '2011-11'; INTERVAL DAY (2) TO SECOND := '15 00:30:44';
I-Hua cHeN
66
PL/SQL 101
Oracle Database now offers several functions to provide variations of this information, as shown in Table 1. Listing 2 displays the values returned by calls to SYSDATE and SYSTIMESTAMP. Because I have passed dates and time stamps to DBMS_OUTPUT.PUT_LINE, Oracle Database implicitly converts them to strings, using the default format masks for the database or the session (as specified by the National Language Settings NLS_ DATE_FORMAT parameter). A default installation of Oracle Database sets the default DATE format to DD-MON-YYYY. The default TIMESTAMP format includes both the date offset and the time zone offset. Note that it is possible to perform date arithmetic: I subtract the value returned by SYSTIMESTAMP from the value returned by SYSDATE. The result is an interval that is very close (but not quite equal) to zero. Converting dates to strings and strings to dates. As with TO_CHAR for numbers, you use another version of the TO_CHAR function to convert a date or a time stamp to a string. And, again as with numbers, Oracle Database offers a large set of format elements to help you tweak that string so it appears exactly as you need it. Here are some examples: 1. Use TO_CHAR without a format mask. If you do not include a format mask, the string returned by TO_CHAR will be the same as that returned when Oracle Database performs an implicit conversion:
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (SYSDATE)); DBMS_OUTPUT.put_line ( TO_CHAR (SYSTIMESTAMP)); END; / 07-AUG-11 07-AUG-11 08.55.00.470000000 AM -05:00
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (SYSDATE, 'FMDay, DDth Month YYYY')); END; / Sunday, 7TH August 2011
Note: The language used to display these names is determined by the NLS_ DATE_LANGUAGE setting, which can also be specified as the third argument in the call to TO_CHAR, as in
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (SYSDATE, 'Day, DDth Month YYYY', 'NLS_DATE_LANGUAGE=Spanish')); END; / Domingo , 07TH Agosto 2011
You can also use the format mask to extract just a portion of, or information about, the date, as shown in the following examples: 1. What quarter is it?
TO_CHAR (SYSDATE, 'Q')
3. Use TO_CHAR to display the full names of both the day and the month in the datebut without all those extra spaces in the date-as-string. Oracle Database, by default, pads the string with spaces to match the maximum length of the day or the month. In most situations, you dont want to include that extra text, and Oracle Database offers a format element modifier, FM, to control blank and zero padding. In the following block, I prefix the format mask with FM and remove the 0 (before 7) and extra spaces after August:
Function CURRENT_DATE CURRENT_TIMESTAMP LOCALTIMESTAMP SYSDATE SYSTIMESTAMP Time Zone Session Session Session Database server Database server
3. What are the date and time of a DATE variable? (This is a very common requirement, because the default format mask for a date does not include the time component, which means that asking DBMS_OUTPUT.PUT_LINE to display a date leaves out the time.)
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (SYSDATE,
Datatype Returned DATE TIMESTAMP WITH TIME ZONE TIMESTAMP DATE TIMESTAMP WITH TIME ZONE
Table 1: SYSDATE and other options for working with the current date and time
Code Listing 2: Calls to SYSDATE and SYSTIMESTAMP and the returned values
BEGIN DBMS_OUTPUT.put_line (SYSDATE); DBMS_OUTPUT.put_line (SYSTIMESTAMP); DBMS_OUTPUT.put_line (SYSDATE - SYSTIMESTAMP); END; / Here is the output: 07-AUG-11 07-AUG-11 08.46.16.379000000 AM -05:00 -000000000 00:00:00.379000000
2. Use TO_CHAR to display the full names of both the day and the month in the date:
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (SYSDATE, 'Day, DDth Month YYYY')); END;
67
You can also use EXTRACT to extract and return the value of a specified element of a date. For example 1. What year is it?
EXTRACT (YEAR FROM SYSDATE)
To convert a string to a date, use the TO_ DATE or the TO_TIMESTAMP built-in function. Provide the string and Oracle Database returns a date or a time stamp, using the default format mask for the session:
DECLARE l_date BEGIN l_date := TO_DATE ('12-JAN-2011'); END; DATE;
raise an exception:
DECLARE l_date BEGIN l_date := TO_DATE ('January 12 2011'); END; / ORA-01858: a non-numeric character was found where a numeric was expected DATE;
If the string you provide does not match the default format, Oracle Database will
You should not assume that the literal value you provide in your call to TO_DATE
which of the following blocks offers an exception section so that after that block is executed, the date and time 2012-01-01 00:00:01 will be displayed on the screen? a.
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR ( l_new_year - 24 , c_format)); END;
b.
CREATE OR REPLACE FUNCTION plch_first_day (date_in IN DATE) RETURN DATE IS BEGIN RETURN TRUNC (date_in, 'MM'); END; /
b.
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR (l_new_year - 1 , c_format)); END;
c.
CREATE OR REPLACE FUNCTION plch_first_day (date_in IN DATE) RETURN DATE IS BEGIN RETURN TRUNC (date_in, 'MONTH'); END; /
c.
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR ( l_new_year - 24 * 60 * 60 , c_format)); END;
d.
CREATE OR RETURN IS BEGIN RETURN || '-01', END; / REPLACE FUNCTION plch_first_day (date_in IN DATE) DATE
d.
BEGIN DBMS_OUTPUT.put_line ( TO_CHAR ( TRUNC (l_new_year) - 1 + 1 / (24 * 60 * 60) , c_format)); END;
68
PL/SQL 101
matches the default format. What if the format changes over time? Instead, always provide a format mask when converting strings to dates, as in
l_date := TO_DATE ('January 12 2011', 'Month DD YYYY');
Date truncation. Use the TRUNC built-in function to truncate a date to the specified unit of measure. The most common use of TRUNC is TRUNC (date)without any format mask specified. In this case, TRUNC simply sets the time to 00:00:00. You can also use TRUNC to easily obtain the first day in a specified period. Here are some TRUNC examples: 1. Set l_date to todays date, but with the time set to 00:00:00:
l_date := TRUNC (SYSDATE);
2. Get the first day of the month for the specified date:
l_date := TRUNC (SYSDATE, 'MM');
3. Get the first day of the quarter for the specified date:
l_date := TRUNC (SYSDATE, 'Q');
you to perform arithmetic operations on dates and time stamps in several ways: Add a numeric value to or subtract it from a date, as in SYSDATE + 7; Oracle Database treats the number as the number of days. Add one date to or subtract it from another, as in l_hiredate - SYSDATE. Use a built-in function to move a date by a specified number of months or to another date in a week. Here are some examples of date arithmetic with a date and a number (assume in all cases that the l_date variable has been declared as DATE): 1. Set a local variable to tomorrows date:
l_date := SYSDATE + 1;
And the following function can be used to compute the age of a person, assuming that the persons correct birth date is passed as the functions only argument:
CREATE OR REPLACE FUNCTION your_age (birthdate_in IN DATE) RETURN NUMBER IS BEGIN RETURN SYSDATE birthdate_in; END your_age;
4. Get the first day of the year for the specified date:
l_date := TRUNC (SYSDATE, 'Y');
When you add one date to or subtract it from another, the result is the number of days between the two. As a result, executing this block:
DECLARE l_date1 l_date2 BEGIN DBMS_OUTPUT.put_line ( l_date2 - l_date1); DBMS_OUTPUT.put_line ( DATE := SYSDATE; DATE := SYSDATE + 10;
Oracle Database offers several built-in functions for shifting a date by the requested amount or finding a date: ADD_MONTHSadds the specified number of months to or subtracts it from a date (or a time stamp) NEXT_DAYreturns the date of the first weekday named in the call to the function LAST_DAYreturns the date of the last day of the month of the specified date Here are some examples that use these built-in functions: 1. Move ahead one month:
l_date := ADD_MONTHS (SYSDATE, 1);
69
Steven Feuerstein
(steven.feuerstein@ quest.com) is Quest Softwares PL/SQL evangelist. He has published 10 books on Oracle PL/SQL (OReilly Media) and is an Oracle ACE Director. More information is available at stevenfeuerstein.com.
3. Starting with the last day of January, move ahead one month. Starting from a different date, go back one month. Starting with the last day of February, go back one month. Listing 3 shows three different calls to the ADD_MONTHS function along with the results. You might be surprised at the third date in Listing 3. The first date (28 February) makes perfect sense. There is no 31st day in February, so Oracle Database returns the last day of the month. The second call to ADD_MONTHS moves the date from 27 February to 27 January: exactly one months change. But in the third call to ADD_MONTHS, Oracle Database notices that 28 February is the last day of the month, so it returns the last day of the month specified by the second argument.
The second argument must be a day of the week in the date language of your session (specified by NLS_DATE_LANGUAGE), provided as either the full name or the abbreviation. The returned date has the same time component as the date. BAD THINGS HAPPENEVEN IN GOOD PROGRAMS Now that you have a solid foundation in working with key datatypes such as strings, numbers, and dates, I will switch focus in the next article of this series to an in-depth introduction to exceptions: how they can be raised and how you can handle them. t
NEXT STEPS
DOWNLOAD Oracle Database 11g bit.ly/fherki LEARN more about PL/SQL datatypes bit.ly/nrpGAw functions bit.ly/qbrR7I TEST your PL/SQL knowledge plsqlchallenge.com READ PL/SQL 101, Parts 14 bit.ly/fc0uoJ
We cant begin to tell you what winning Oracles highest honors means.
(Thankfully, our clients can.)
...expertise, thoroughness and dedication to getting things right. [They are] our trusted database services partner.
Oracles 2011 Specialized Global Partner of the Year for Database 2011 Oracle Titan Award for Database and Clustering Experts in the rapid deployment of Oracles Engineered Systems, including Oracle Database Appliance and Exadata To learn more about our commitment to specialization and what it means to your business, visit cintra.com
...a key partner in helping us architect and deliver a robust solution to our clients.
...a source of expert database services and support... Cintra exceeded my expectations
70
Our technologist recalls a Web seminar, gives the right hint, and dishes on network performance.
recently delivered an online Web seminar on Oracle Database security. At the end of the seminar, I took questions from the audience. There were many participantsa lot of questions on Oracle Total Recalland when it was done, many unanswered questions. Until now. The unanswered questions were forwarded to me, and Ill be addressing them here in this column. But before I begin, heres a quick overview of what Oracle Total Recall is and does.
The purpose of Oracle Total Recall is to provide longterm flashback query capability.
end users. So, the developers were motivated to find another approach that was less intrusive and easier to implement. When they asked, Can we use flashback query instead of our own custom audit trails, the answer was simply, No. There were a few technical reasons why that was the answer. The first was that flashback query is based on UNDO, so to execute a flashback query on the data as of five hours ago, you would have to have all of the UNDO generated in the last five hours available online. Likewise, to execute a flashback query on the data as of two days ago, youd need all of the UNDO generated in the last two days to be available online. I do not know of many systems in which the DBA would configure the UNDO tablespace to be able to contain two days of UNDOeven five hours is somewhat rarelet alone months or years of UNDO. The UNDO tablespace would be huge. Another reason flashback query is not a replacement for custom audit trails is that the theoretical limit for a flashback query is five days, so using UNDO-based flashback query is strictly limited to the last five days of uptime for the database. So, even if you kept the UNDO for a really long time, you still couldnt execute a flashback query on data as it stood more than five days ago. The last reason is that UNDO-based flashback query is somewhat nonscalable. The further back in time you use flashback
How oracle ToTal recall works The purpose of Oracle Total Recall is to provide long-term flashback query capability the flashback query can go many days, weeks, months, or even years into the past. Syntactically, an Oracle Total Recall query looks no different than a standard flashback query. It uses the AS OF and VERSIONS BETWEEN syntax in the FROM list. But under the covers, it operates very differently. When flashback query was first introduced in Oracle9i Database, I heard from many developers asking if this new database feature could be used to replace their own custom audit trails. The developers had developed custom triggers that would save the :OLD records in an audit trail, and this approach enabled them to reconstruct the data their tables contained at any prior point in time. The problem with this implementation was twofold. First, coding the query to retrieve the point-in-time data was nontrivial; it required a UNION ALL between the current table and the history table and a messy, complex WHERE clause to get the right version of a row. Second, it necessarily made the original UPDATE and DELETE transactions at least twice as big datawise as they were before the addition of these custom triggers, which resulted in increased response time for the
query, the longer it takes, because more work has to be performed. To execute a flashback query on data as of one hour ago, the database would have to roll back all the blocks it hit during the query to put them back the way they were an hour ago. If, for instance, a given block was modified by 100 different transactions in that last hour, the database would have to perform 100 rollback operations. Now, if you asked for the same data as of two hours ago, the database would likely have to roll back many more changes to that block it would take longer to execute a flashback query as of two hours ago than it would to execute a flashback query as of one hour ago. The further back in time you execute a flashback query, the longer it is likely to take for the query to execute, because there are many more changes to roll back. Enter Oracle Total Recall, available as of Oracle Database 11g. It solves both the performance issue and the UNDO storage and scalability issues associated with flashback query. With Oracle Total Recall, the client transaction is not affected: the processing performed by Oracle Total Recall takes place in the background, using a new database process called Flashback Data Archiver (FBDA). The client transaction just does its modifications, generates the UNDO for those modifications (as it always has done), and commits. Shortly after that client transaction commits, the FBDA process will mine the generated UNDO, looking for UNDO generated against tables in the flashback data archive. The DBA will have identified which tables need the special long-term query capability of the flashback data archive, and the FBDA process will look for UNDO generated against those tables. When the FBDA process finds interesting UNDOfor tables in the flashback data
71
archiveit rolls back the change, then and there, and reconstructs the row as it appeared before the UPDATE or DELETE operation. This reconstructed row is inserted into a flashback data archive tablea history table, if you willand the client transaction response time is not affected. That solves the performance issue as well as the scalability issue. To execute a flashback query as of six months ago against data in the flashback data archive, the database does not have to roll back all the changes made in the last six months, because the FBDA process has been doing that all along. Instead, the database just has to query the row that was in place six months agoa much easier challenge, with the same amount of time needed to query the data as of six months ago as six years ago. Oracle Total Recall also helps reduce storage requirements. UNDO-based flashback query would require preservation of all UNDO generated against every single table in the database. With the flashback data archive used by Oracle Total Recall, you store only the historical rows of interesting tablesnot the entire database. So, with that background in place, I can start looking at the questions received online during the Web seminar. I also encourage you to check out the Oracle Total Recall product page at oracle.com/us/products/ database/options/total-recall. Oracle TOTal recall: The QuesTiOns What is the performance impact of enabling Oracle Total Recall? Oracle Total Recall was designed to be as nonintrusive as possible. The vast majority of the work performed by Oracle Total Recall happens asynchronouslyin the background after your transaction commits. Therefore, assuming that your database server has the excess capacity to handle this background processing, the impact on existing applications will be nominal. If that assumption is not trueif your existing database server is running at full utilization right nowit would have an impact, of course, but that impact can be mitigated by rightsizing your hardware. You would need some additional CPU for the FBDA process, some additional I/O capabilities (youll generally be reading the UNDO out of the buffer cache, but youll be generating more overall
UNDO at the system level; more overall REDO at the system level; and of course, writing to the flashback data archive itself), and you might need a little more memory to make this all run smoothly. As always, I recommend benchmarking any change such as this before introducing it in production. You can benchmark either with your own tools or by using a product such as Oracle Real Application Testing (oracle.com/us/products/database/ options/real-application-testing). If a table is set up for Oracle Total Recall, will it affect DML and DDL on that table? This question is somewhat versionspecific and has two parts: data manipulation language (DML) and data definition language (DDL). As for DML, the short answer is that it will not affect DML operations, except that it will permit you to use flashback query syntax to query the table as of a long time ago. So a SELECT statement would be affected, but only in a positive way. Your other DML operations are not affected. As for DDL, the answer is versiondependent. In the first release of Oracle Total Recall, in Oracle Database 11g Release 1, DDL was very much restricted. Just about the only DDL that was permitted against a table used with Oracle Total Recall was the ALTER statement for adding a column. You could What Is Oracle Total Recall?
Introduced in Oracle Database, Enterprise Edition 11g, Oracle Total Recall is a database option that provides a secure, efficient, easyto-use, and application-transparent solution for long-term storage and auditing of historical data. Oracle Total Recall also makes it simple to securely track and query historical data for any database table. Oracle Total Recall can be used for many purposes. Examples include Data forensicsfind and revert changes made by a disgruntled employee Information lifecycle management (ILM) guarantee immutable history of data Retention policy enforcementautomatically purge history more than five years old Historical reportinganalyze product changes over time Error recoveryrestore erroneously removed or updated records Employee fraud detectionfind assets that were deleted but never sold
not drop a column, truncate the table, and so on. In short, pretty much anything that did not generate UNDO could not be performed against the table. These restrictions have been removed as of Oracle Database 11g Release 2. In this release, most DDL is natively supported for tables used with Oracle Total Recall, and even the DDL that is not directly supported can be executed by administrators. If administrators need to perform an unsupported operation, such as an ALTER statement to exchange a partition in a partitioned table, they can first invoke the DBMS_ FLASHBACK_ARCHIVE.DISASSOCIATE_FBA procedure, perform their operations, and then invoke DBMS_FLASHBACK_ARCHIVE .REASSOCIATE_FBA so the modified table will be rejoined with its history. So, in short, there are no DML restrictions and effectively no DDL restrictions for Oracle Total Recall in Oracle Database 11g Release 2. You said that it would take thousands of GB for an UNDO-based flashback query to be able to query months or years in the past. How much space would be needed for Oracle Total Recall? Yes, I did say that if you attempted to do a long-term UNDO-based flashback query, youd have to have all of the UNDO generated for that entire period of timefor the entire databaseonline and available. And that would quickly get into many terabytes of UNDO over time. The Oracle Total Recall processing will minimize the overall amount of storage you need, because it is enabled table by tablenot databasewideand is stored in a compressed format. So, first and foremost, youll need sufficient storage for only your interesting tables, not for every table in the database. The answer to how much space you will need is that it depends. If you have a table you mostly insert into and hardly ever delete from or update, your Oracle Total Recall storage needs will be minimal, because you need to log only the before images of rows that were updated or deleted. On the other hand, if you have a one-row table that gets updated 1,000 times per day, your Oracle Total Recall storage for the table will be many times larger than the base table itself, because you will have to enter 1,000 rows in
72
Ask Tom
the archive history every single daywhile the table itself remains small. So, you will need to understand how often you update and delete in the table(s) in your archive to determine how much storage will be required over time. Can Oracle Total Recall be used in the application realm as well as for security? For example, instead of using effective dating, could I use Oracle Total Recall to get a view of historic data? Absolutely. This is definitely one of the use cases for Oracle Total Recall. You can enable it on tables that do not use effective dating processingwithout modifying the applicationand it helps solve data purging issues as well. Typically, when applications use the effective dating type of processing, they need to retain the data for some period of time and then purge it. This purging is often accomplished with the DELETE statement, which is probably the slowest, most resource-intensive approach to purging old data. Additionally, after the DELETE, you may feel compelled to reorganize your tables and rebuild your indexes to reclaim the space you just freed up. With Oracle Total Recall, you get the ability to purge old information simply, without using DELETE and without consuming resources. When DBAs create flashback data archives with Oracle Total Recall, they specify a retention period that tells Oracle Total Recall how far back in time they want to flashback-query the tables in the archive. Oracle Total Recall will set up a partitioned table (dont worry if you dont have the partitioning option; it comes with Oracle Total Recall), and over time it will simply drop old partitions as they become older than needed. The dropping of a partition doesnt generate REDO or UNDO (as opposed to DELETE), and any indexes on the flashback data archive will be maintained through DDL as well (for example, dropping a table partition will drop the corresponding local index partitions). Will the database halt if the Oracle Total Recall allocated space is exceeded? The database will not halt, but DML in affected tables may be prevented. For
With the flashback data archive used by Oracle Total Recall, you store only the historical rows of interesting tablesnot the entire database.
example, if the tablespace containing the flashback data archive for a table is full and the FBDA process cannot log more changes in it, applications that attempt to modify the table will receive an ORA-55617 Flashback Archive <name> has run out of space and tracking on <name> is suspended error message. So the outage will be contained to only those tables in the affected flashback data archive. There were a few more questions, but they were all variations on these. You can watch a replay of this Webcast anytime, at bit.ly/omagdbsecurity. Back to Basics We use indexed tables and well-tuned queries in our application, but some of the tables are not making use of the indexes. The database table and index are create table records (system_no char(3), cust_id char(10), rec_no char(4), start_date char(8), end_date char(9), ); create index recpk on records (system_no,cust_id,rec_no); The rec_no field contains the values in descending order from 9999 to 0001. While selecting a row from the table, we are getting unexpected resultsas if the index hadnt been created. By unexpected results, I mean that the following query select /*+ INDEX_ASC (records recpk) */ * from records where system_id='123' and cust_id='3456218791' and rec_no>'0000' and rownum<2 order by system_id asc, cust_id asc, rec_no asc; is working fine in instance1, but its returning wrong information in instance2, and vice versa. Your querynothing elseis the problem. You cannot assume that a hint will be observed. A hint is a hint; it isnt a directive. If the index is unavailable for any reason (due to a different name, because its unusable . . . whatever), the query will just ignore it. The solution is to code the query the way Ill demonstrate, and I recommend not using the INDEX_ASC hint at all. What your query is asking for is to find the first record that matches your predicate on SYSTEM_ID, CUST_ID, and REC_NO. (The ROWNUM<2 portion of the predicate happens before the ORDER BY does.) Hence, you are getting a recordany record at allthat matches your predicate and then sorting it. You are getting the right answer for both of your instances. The SQL is allowed to return pretty much anything here, because youve said, Find the first record such that this condition is true, and then sort it. What you need to do instead is say, Sort these matching records, and return the first one. But you must ask the right question that is imperative. The right question for you would look like this:
select * from ( select /*+ first_rows(1) */ * from records where system_id='123' and cust_id='3456218791' and rec_no>'0000' order by system_id
73
That tells the database to find the records that match your predicate, sort them, and then return the first one. The database probably doesnt have to do that much workit would tend to use the index all by itself (without a hint), now that it knows that you want the first row of that ordered set and only that row. The FIRST_ROWS(1) hint is a much better choice than your INDEX_ASC hint, because it tells the optimizer what your goal is, and the optimizer will find the fastest way to meet that goal. If your index
is unavailable, the database will use a top-n query optimization to find the row as quickly as possible, but if an index is available, the database will tend to use that instead. But youll always get the right answer, because youve asked the right question. Oracle OpenWOrld: One Thing I was not able to attend Oracle OpenWorld 2011, but I heard about your Five Things presentations. Could you walk through some of those? Yes, at Oracle OpenWorld 2011, I gave two presentations that started with Five things you probably didnt know about . . . . One was for SQL, and the other was for PL/SQL. Here is one highlight from the SQL talk.
Oracle net Services compression. Did you know that Oracle has been silently compressing your data on the network for quite a few years now? Oracle Net Services automatically compresses data in the data stream by putting only the changes from the previous row into the data stream from the server to the clientthe deltas from the previous row, if you will. So, if you return two rows that contain many of the same values, the second row will not send back very many bytes at alljust the differences from the first row. This sort of compression works amazingly well on database data, especially when you use an ORDER BY clause. Here is a small example demonstrating this compression. Ill start with a test table:
SQL> create table t 2 as select * from all_objects; 3 4
Now, using AUTOTRACE TRACEONLY STATISTICS in SQL*Plus, Ill retrieve that data and measure the bytes transferred, as shown in Listing 1. Note that it took about 8 MB of network traffic to deliver that result set and that the query performed 5,794 logical I/Os (consistent gets). If I modify the query slightly by adding an ORDER BY clause, I can change those numbers dramatically. Im going to use ORDER BY TIMESTAMP in this case, because I know that this column is very wide (19 bytes), is NOT NULL, and has few distinct values compared to the number of rows in the table. The results are shown in Listing 2. That was pretty dramatic. It dropped from 8 MB to 3.4 MB of data transferred, and that was entirely due to this Oracle*Net compression taking place. Because the TIMESTAMP value repeated so often, it didnt need to be sent over and over again. Additionally, you might have noticed that the consistent gets
74
Ask Tom
went from 5,794 down to 1,031. This was another side effect of the ORDER BY. The first run of the query read the data directly out of the table but did not sort it and did not need to write it into temporary space. So every time I fetched data (the default array fetch size in SQL*Plus is 15 rows at a time), I had to get a block from the buffer cache and get 15 rows from it. My table stores approximately 73 records per block, so that meant that when I did not use ORDER BY, I had to retrieve the first block from the cache about five times to get all 73 rows from it, 15 rows at a time. When I sorted the data, I needed to read all the rows and sort them into temporary memory or temporary space on disk. When I retrieved them 15 at a time, I had to read them out of temporary spacenot from the buffer cache. So, what can you take away from that? Should you be applying ORDER BY statements to all your SQL to reduce the data transferred and to decrease logical I/Os? Of course not. The cost of sorting the data would almost certainly outweigh any gains achieved by compression and the reduction in the number of logical I/Os. That would be adding a lot of work (sorting). What you can take away is that if you are already sorting data, as you must in order to meet the application requirements, you are deriving some benefit, likely in the form of reduced data on the network and possibly less buffer cache contention. Now, what if I went a step further and sorted the data even more? Because TIMESTAMP repeats frequently and I know that OBJECT_TYPE and OWNER do as well (SYS owns a lot of TABLES, for example), I
might expect to see a further reduction in transferred data, as shown in Listing 3. The transferred data dropped from 3.4 MB to 3.2 MB. Note that the logical I/Os did not changethey cannot. The query must read every block in the table at least once, so 1,031 is the minimum number of I/Os, but the amount of data being transferred decreased a little bit. Now, you may be asking, What happens if I get more than 15 rows at a time? It seems logical that the array size could have some impact on the amount of data transferred. If I send more rows back at a time, Ill have more data that could be repeating and I could likely compress it better. Indeed, testing proves that. Table 1 shows the amount of data transferred (in megabytes), data transferred as a percentage of the original query (showing the percentage reduction), and number of consistent gets. The No Order columns represent the query executed without an ORDER BY, the Some Order columns represent the ORDER BY TIMESTAMP executions, and the Very Ordered columns represent the three-column sort. The number in the column headings represents the array size. As you can see, introducing a larger array size100 instead of 15had a material effect on the amount of data transferred. The original unordered query benefited from it by the same percentage as the other queriesthey all dropped another 7 percent. Before you get too excited thinking, If 100 was better than 15, then 1,000 will be even betterdont. You will hit the law of diminishing marginal returns here. I did the
test with an array size of 1,000, and Table 2 shows the results. As you can see, 1,000 was not much different from 100. There was about a 1 percent drop in data transferrednot really worth it. Also, the amount of client and server memory needed to package this 1,000-row fetch was about an order of magnitude more than in the case of the 100-row fetch. In my experience, somewhere between 100 and 500 rows at a time generally works extremely well, with 100 being a historically good number for me. I recommend making the array size your applications use a configurable parameter so you can try various values. Ill post more of the Five things you probably didnt know about . . . presentations in future columns.
NExT STEpS
ASK Tom Tom Kyte answers your most difficult technology questions. Highlights from that forum appear in this column. asktom.oracle.com READ more Tom Oracle Database Concepts 11g Release 2 (11.2) bit.ly/aonqPP Expert Oracle Database Architecture: Oracle Database 9i, 10g, and 11g Programming Techniques and Solutions, Second Edition amzn.to/ckGXaR DOWNLOAD Oracle Database 11g Release 2 bit.ly/epBiUG READ more about Oracle Total Recall oracle.com/us/products/database/options/ total-recall Oracle Real Application Testing oracle.com/us/products/database/options/ real-application-testing WATCH the Oracle Database Security Webcast bit.ly/omagdbsecurity
75
OracLe DatabaSe
art 2 in this series, Modeling and Accessing Relational Data (Oracle Magazine, November/December 2011), introduced readers to the ways data entities (tables) can relate to one another in a relational database. When your logical models and physical implementations use meaningful entities and well-chosen datatypes, you have multiple options for accessing the data. This article focuses on the purpose and anatomy of the SQL SELECT statementalso called a queryand explains how to use Oracle SQL Developer and Oracle Application Express to construct queries and view their results. (Although Ill briefly review the concepts covered in Part 2, I encourage you to read that installment before starting this one.) It All BegIns wIth A Query The goal of writing a SQL query is usually to get the answer from the database to a question or questions. For example, you might want to ask How many employees work in the accounting department? Of those employees, which ones are currently working on multiple projects? Which employees working on multiple projects in the accounting department have received a salary increase between their date of hire and today, and which employees havent? You obtain the answers to these questions by using a SQL SELECT statement. A SELECT statement has at least two parts: the SELECT list and the FROM clause. The SELECT list specifies one or more columns (or expressions, to be explained in subsequent installments of this series)selected from one or more tablesthat you want to display. The FROM clause lists the table(s)
from which your desired column data should be obtained. Know your DAtA Before you write a SELECT statement, you must determine which table or tables
contain the information of interest. For example, if you want to know all employees hire dates, you must first determine which table contains employee information. Perusal of your schema diagram reveals that employee data is in a table called
28 28
10 10
4 rows selected
LInDY grOenIng
76
SQL 101
and drop a table name from the TABLES node in the Connections Navigator into the SQL Worksheet. This action automatically creates an editable SELECT statement in the SQL Worksheet whose select list
includes all the columns in the table. Figure 1 shows the result of dragging and dropping the EMPLOYEE table into the Oracle SQL Developer SQL Worksheet. Figure 2 shows the SQL Worksheet icons.
The SELECT list in the above statement specifies three columnslisting the first name, last name, and date of hire for every employee contained in the EMPLOYEE table, which is specified in the FROM clause. (To specify multiple columns in a SELECT list, you separate the column names with commas; a good practice is to insert a space after each comma for readability.) When the above statement is executed, the result set is a list of all the values found in the first_name, last_name, and hire_date columns of the EMPLOYEE table, as shown in Listing 1. EvErything with a MErE * If you want to display all the columns for a particular table, you can use the asterisk (*) wildcard character as the SELECT list instead of typing the name of every column. For example
SELECT * FROM employee
Figure 1: Result of dragging and dropping the EMPLOYEE table into the SQL Worksheet
When this statement executes, the result set displays the columns in the order in which they are defined in the table, as shown in Listing 2. This is the same column order you see when you issue the DESCRIBE command (or when you click the Columns tab in Oracle SQL Developer), as shown in Listing 3. You should use the asterisk wildcard character primarily for ad hoc querying when you want an answer from the database that you have not already asked for via programmatic code. When you include SELECT statements in programmatic blocks of code (which youll learn about in subsequent articles in this series), it is a good practice to list your columns of interest by name in your SELECT lists. SELECt with OraCLE SQL DEvELOpEr In Oracle SQL Developer, an easy way to construct a SELECT statement is to drag
77
In Oracle SQL Developer, an easy way to construct a SELECT statement is to drag and drop a table name from the TABLES node in the Connections Navigator into the SQL Worksheet.
The leftmost green arrow in Figure 2 is the Execute Statement icon. When you want to obtain the results for a single statement, place your cursor anywhere on the statement line and click the Execute Statement icon. The results appear on the Results tab, as shown in Figure 3. In the tool bar, the small green arrow superimposed on the image of a piece of paper is the Run Script icon. By clicking it, you execute a SQL*Plus-like script consisting of multiple statements (as Ill illustrate in the next article in this series). The results are displayed on the Script Output tab, as shown in Figure 4. Build and Run a SElECT STaTEmEnT wiTh ORaClE appliCaTiOn ExpRESS You can also construct a SELECT statement in the SQL Commands window of Oracle Application Express SQL Workshop, a Webbased interface to the database. The SQL Workshop SQL Commands window has no drag-and-drop facility, so you must type your statement explicitly. Next, click Run to see your result set in the Results section of SQL Workshop, as shown in Figure 5. The results format is similar to that used on the Results tab of the SQL Worksheet, as you can see by comparing Figure 5 with Figure 3. Constructing a SELECT statement in the SQL Commands window of the SQL Workshop in Oracle Application Express is similar to constructing a SELECT statement in SQL*Plus (as I will illustrate in the next article in this series). EliminaTE REdundanCy wiTh diSTinCTiOn As you know from previous installments in this series, one of your database design goals should be to eliminate redundancy. Sometimes, however, the way you select data might cause the results to include duplicate values. Use of the DISTINCT or UNIQUE keyword in your SELECT list, however, helps you eliminate duplicate data in your result sets. In the example in Figure 6, four rows are returned yet only two employees are assigned to departments. Frances Newton and Emily Eckhardt have NULL values for DEPARTMENT_ID. If you want to display only the distinct (or unique) DEPARTMENT_ID values in the EMPLOYEE table, you can construct a SELECT statement like the one in Figure 7. Using the DISTINCT keyword to query a table containing only a few rows (as in this example) is probably unnecessary, because duplicate data would be obvious in the full results. But in a table with hundreds or thousands of EMPLOYEE records, it might not be at all obvious which departments are represented (or not). impROvE REadaBiliTy ThROugh COnSiSTEnT FORmaTTing The more consistently code is formatted, the easier it is to read. The easier code is to read, the easier it is for people reviewing it to discover obvious or potential bugs and suggest improvements. If your IT management insists that all developers adhere to a standard code format, Oracle SQL Developers formatting facilities can help you comply with such mandates more easily. For example, this articles examples show a mix of uppercase and lowercase keywords. However, your environments standards might dictate that you use a particular casing style. Oracle SQL Developer provides several methods to help you achieve consistency. At a minimum, you can make a statements keywords all uppercase, lowercase, or initial-capped by highlighting the statement, right-clicking in the
Figure 6: Employee first and last name data with corresponding departments
78
SQL 101
appear by default in blue and other statement criteria appear in black. Syntax highlighting, illustrated in Figure 12, can greatly improve your codes readability, enabling you and others to spot errors more readily. Syntax highlighting, along with the other Oracle SQL Developer formatting facilities Ive described in this article, can be edited or disabled via Tools -> Preferences. By default, they are enabled and exhibit the behavior and results shown in this article. ConClusion This article has shown you how to construct and execute simple SQL SELECT statements with Oracle SQL Developer and the SQL Workshop SQL Commands facility in Oracle Application Express. Youve also seen how the formatting, syntax highlighting, and code completion facilities in Oracle SQL Developer can enhance your codes readability and accuracy. The next installment of SQL 101 will examine the WHERE and ORDER BY clauses of a SQL statement and take a closer look at Oracles SQL*Plus tool.
Worksheet and choose Format (or type CtrlF7). (Be aware that selecting this option affects all the code in the SQL Worksheet as of Oracle SQL Developer Release 3.0.04). To set your preferences for this option, select Tools -> Preferences -> Database -> SQL Formatter -> Oracle Formatting and click Edit. Figure 10 shows some of the available formatting options. Finishing Your ThoughT You might occasionally need to refer to your schema diagram to identify the table(s) you want to include in a query or to look up the syntax for correct statement construction in the Oracle documentation. The code completion facility in Oracle SQL Developer helps you with both tasks. If you pause while typing your statement, the code completion facility will prompt you with a list of appropriate table names, column names, and commands you can select from. Figure 11 shows an example of this feature in action. highlighT Your Code Syntax highlighting in Oracle SQL Developer marks the SQL language keywords in your code with a color different from that of the table names, column names, and other statement criteria. When this feature is enabled, your SQL language commands
Melanie Caffrey is a senior development manager at Oracle. She coauthored Expert PL/SQL Practices for Oracle Developers and DBAs (Apress, 2011) and Expert Oracle Practices: Oracle Database Administration from the Oak Table (Apress, 2010). NExt StEpS
READ more about relational database design, concepts, and SQL Oracle Database Concepts 11g Release 2 (11.2) bit.ly/aonqPP Oracle Database SQL Language Reference 11g Release 1 (11.1) bit.ly/jYXQZn Oracle SQL Developer Users Guide Release 2.1 bit.ly/sueELL DOWNLOAD Oracle Database, Express Edition 11g bit.ly/tRw2un Oracle SQL Developer bit.ly/tGl3GL Oracle Application Express bit.ly/sYcjow
SQL Worksheet, and selecting To Upper/ Lower/InitCap (or typing Ctrl+Quote), as shown in Figure 8. Figure 9 shows the result of changing a statements keywords to uppercase via the mechanism illustrated in Figure 8. Another way to control your codes formatting is to right-click in the SQL
79
he most valuable benefit that members of the Independent Oracle Users Group (IOUG) share is our collective knowledge about our industries, technology, and Oracle products. It is why IOUG exists, and it is why people come to our conferences, read our periodicals, and attend our online or in-person seminars. This benefit is not confined to the IOUG community: increasingly, IOUG members opinions and insights into many of todays challenges are sought after and referenced by individuals and groups outside of our user group. The next time you see a presentation from Oracle on how it is addressing security, data warehousing, business intelligence, cloud computing, or big data, for example, look for the IOUG logo. In such presentations, the problem the technology solves is framed in introductory slides that show trends in the technology and what customers are saying about their current challengesand its there that you will often see data from IOUG surveys. IOUG is proud that our memberships opinions are valued, not only by those outside of our community but also by Oracle specifically. This is how we directly, proactively, and positively have an impact on solutions to some of our technology challenges. In fact, Oracle and other vendors have been so interested in our surveys that they are increasingly eager to participate in them with a few targeted questions of their own. IOUG and Unisphere Media, the firm used to execute and manage IOUG surveys, maintain control of the overall direction and content of the surveys. Yet having other vendors voice genuine interest in our members opinions is part of the advocacy mission of IOUG. Perhaps not surprisingly, the surveys help shape this column, because what is important to our members has a high probability of being important to the readers of this magazine. The surveys also direct the strategy of IOUG. Our annual review of IOUG programs evaluates the
Survey finding: Having multiple copies of data, in addition to production data, also drives growth. Nearly half of the respondents have three to five copies of their data, and 71 percent maintain all their data in-house. iOug assignment: Most organizations are throwing hardware at the data-growth challenge, with some implementing directed archiving strategies. But what about a fundamental rethinking of how data is managed? The IOUG assignments above are just some of the issues our members will be focusing on in the future, with the goal of providing solutions, recommendations, and direction to add to IOUGs collective knowledge. What can you do to take advantage of this IOUG knowledgebase or to add to it? Download the executive summary of our surveys from the IOUG Website (ioug.org). (IOUG members can download the complete surveys.) More importantly, you should join the conversation with your peers at IOUG and share your solutions with them, and learn from what other members are doing. Become an IOUG member and add your voice to a chorus to which industry insiders are increasingly listening.
Andy Flower
([email protected]) is president of IOUG and has been an active volunteer with the organization since 1998. In his day job, he is an information management and business intelligence consultant with Right Triangle Consulting.
NExt StEpS
LEARN more about IOUG the IOUG ResearchWire newsletter ioug.org
80
racle Magazine spoke with Tim Grieser, program vice president of enterprise system management software at International Data Corporation (IDC), about the challenge of creating, managing, and provisioning enterprise information systems, on premises and in the cloud. Oracle Magazine: What is the state of system management solutions today? Grieser: Todays system management solutions increasingly rely on automation and orchestration to help guarantee performance, availability, and security of highly complex, dynamic system infrastructures. Todays management scope goes beyond component management to focus on service management and application management especially the experience perceived by end users. Service levels such as business transaction rates, response times, and application availability are determined by quantitative measurements based on monitoring. These monitoring activities can be for synthetic transactionsstandard transactions that are run periodically to measure performanceor real transactions based on end-user activities, often measured through network traffic events. Business-oriented metrics like online sales transactions are particularly important. Oracle Magazine: What drives organizations to deploy automated management tools? Grieser: IT infrastructures have grown enormously in terms of complexity and scale. Deployment of scale-out architectures means that IT operations often must manage many hundreds or even thousands of physical servers. Virtualization creates a new layer that must be managed and adds virtual machine images in ratios typically 8 to 10 times the number of physical servers. Dynamic management operationssuch as moving virtual machine images between virtualized physical servers to achieve performance objectives add even more complexity because you must
there is an evolution toward integrated toolsets that support specific cloud lifecycles and platforms.
manage a number of functions at different levels of the infrastructure stack. These functions include support for the basic virtualized server environment at the hypervisor layer; creating, configuring, and provisioning virtual machines; loading guest operating systems and applications; and ongoing management of the operational environment. Functions such as performance management apply to virtualized servers, virtual machines, and applications. Oracle Magazine: How is cloud computing changing systems management? Grieser: Cloud computing builds on automated virtualized infrastructures by using extended management software to deliver environments where users can define, provision, and operate their own services in service models such as IaaS [infrastructure as a service], PaaS [platform as a service], or SaaS [software as a service]. Management software enables cloud facilities such as self-service portals; service catalogs; and automated monitoring, metering, and chargeback. System administrators must focus on delivering and achieving service levels for cloud environments. This means ensuring service objectives for both cloud providers and cloud consumers and can include managing public, private, and hybrid cloud environments. Monitoring, metering, and chargeback let cloud providers measure and account for cloud resource usage and assign costs to users. Cloud consumers need to be able to understand the level of
service they are actually receiving by having their own views of performance metrics and usage metrics based on monitoring. Oracle Magazine: How are toolsets evolving to work with the cloud lifecycle? Grieser: The cloud lifecycle involves a number of major stages including planning and setup; building and deploying prototypes for self-service provisioning of infrastructure, applications, and other resources; and operational management including monitoring, metering, and chargeback. While these activities can be performed using a combination of available management tools, there is an evolution toward integrated toolsets that support specific cloud lifecycles and platforms. At the user level, integrated management toolsets include common menus or graphical interfaces across functions and the implementation of a common master console or single pane of glass top-level interface. Between layers in the software stack, integrated toolsets connect service management, application management, virtualization management, and physical resource management components. Use of standards-based languages and APIs can enable the same set of management tools to handle both on-premises and cloudbased systems. For example, the use of Java for applications can help support portability and migrations across platforms.
NExt StEpS
READ more about enterprise management solutions oracle.com/us/products/enterprise-manager
Advertisement
Partner Product
WATCH
Quest Software Simplicity and Productivity for DB Professionals Millions of users trust Toad to provide a simple, consistent way to build, manage, and maintain databases. Whether youre a developer, DBA, or analyst, Toad can dramatically increase your productivity.
www.quest.com/SimplyBetterToad11 or scan for more info
Pythian Pythians Engineered Services for Oracle Engineered Systems Pythian CTO and Oracle ACE Director Alex Gorbachev, live from Oracle OpenWorld 2011, talks about Pythians win of the Oracle North America Titan Award for Oracle Exadata, Oracle Database Appliance, and Pythians new engineered services for Oracle engineered systems.
http://bit.ly/orclmagodaoffer or scan for more info
Frontline Consulting and SurfBI Frontline Consulting is an award-winning Oracle Platinum Specialized Partner offering worldclass solutions on Oracle Business Intelligence Applications, Oracle Business Intelligence Enterprise Edition, Oracle E-Business Suite, and Oracle Fusion Middleware. SurfBI by Enterprise Signal Inc. is an award-winning mobile business intelligence product available natively on multiple platforms. Download by searching surfbi on Appstore/Google marketspace.
http://bit.ly/ujPK5d or scan for more info
Excel4apps Excel-based Reporting with Excel4apps: Live at Oracle OpenWorld 2011 Live at Oracle OpenWorld 2011, Excel4apps presents the award-winning GL Wand reporting and inquiry solution for financial users of Oracle E-Business Suite. This video showcases functionality highlights of the Excel-based GL Wand, in addition to user and partner interviews. Scan the code to see the excitement at the Excel4apps booth today!
http://bit.ly/urtZQG or scan for more info
LoadSpring Project Portfolio Management Leader LoadSpring is the solution-centric destination for project management software, helping PMs make business decisions easier. As the leader in hosting and implementation services, we make it easy to select and deploy software. We provide trouble-free access, through our SpringBoard portal to projects while offering high levels of service, security, and support. Watch the interview with LoadSpring CEO Eric Leighton from Oracle OpenWorld 2011.
bit.ly/ttb9CR or scan for more info To advertise your solutions in Partner Product Watch, contact [email protected].