January February 2007

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View January February 2007 as PDF for free.

More details

  • Words: 39,556
  • Pages: 76
JANUARY/FEBRU ARY 2 0 0 7

O R A C L E.C O M / O R A C LEMA GA ZI NE

ALWAYS

AVAILABLE

ORACLE HIGH-AVAILABILITY TECHNOLOGIES DRIVE BUSINESS 24/7 GO XML/39

SMBs EXPAND TO MEET DEMANDS/44 SECURITY GOES MAINSTREAM/71 JF07_Cover.indd 5

11/17/06 3:47:47 PM

Fujitsu_Primequest.indd 2

9/15/06 10:53:53 AM

, ('&( !' %'&%&%) ('&(' ('&( ##"    %%&'%'%!%&#%'%!%&# ('&( !'"'"'''&"#'%#("'%&  &"'#"&(&"'&#(!"'!+'%!%&'(&#*+'%$%'&#%'%#*"$(%$#&&#( )# ''%'&#''%!%#*"%& "&"&"" '"# #+%%&%) "'  "'  ## "'  "& "'  "& ## '"(! '"(! "&%'%!%&#%%&'%'%!%&# "'  #%$#%'#"#%'&&(&%&"'"' ''&"#'%#("'%&



#! ) " "'%& &+&'! *)"#%&&+&'!    !    ! !             

              !              

!   # 

       " 

         !        !          !        !  !  !     

Fujitsu_Primequest.indd 3

9/15/06 10:54:25 AM



Number of silos in which your customer data resides. Coincidentally, also the number of totally different definitions you have for “customer.”

definition — Embarcadero solutions help manage data enterprise wide, enabling you to build and communicate an architecture of your data assets so you always know what is what, and where it is. With just one, everything gets simpler. You and your business are empowered to use and reuse reliable, relevant and timely data across a range of platforms and storage

© 2006 Embarcadero Technologies, Inc. All rights reserved.

formats. Understanding your data is finally possible, and getting a hold of the metadata is the key. Standards can be defined and enforced. Data redundancy is eliminated. Enterprise Data Management becomes achievable. It’s no coincidence that the most sophisticated solution is also the simplest. See how one gets it done. Call 415.834.3131 or visit www.embarcadero.com

CONTENTS

VOLU M E XXI , I SSUE 1

GO XML

F EATU RES

ALWAYS

Business transactions on the Web and content-rich applications have put new demands on enterprise databases. XML— the markup language that is used to store and exchange all kinds of data—can meet these demands. Find out how Oracle XML DB manages diverse XML data.

AVAILABLE Does your business depend on expensive hardware for disaster insurance? New high-availability technologies run on inexpensive commodity hardware, provide disaster insurance, and improve the performance of day-to-day operations. See how Oracle helps growing businesses stay up and running.

—David Baum

/39 EXPANDING TO MEET DEMANDS Small and medium businesses still have to meet big demands—for fast performance, high availability, data security, and scalability—usually under tight budgets. Discover what Oracle is doing to help SMBs meet these challenges, satisfy their customers, and grow and thrive under changing market conditions. —David A. Kelly

—Alan Joch

/30

Cover: Image by Corbis, enhanced by Stephanie Lee

/44

DE PAR T M E NTS From Our Readers / 9 Readers tell us what they think.

From the Editor / 11 Available and working —Tom Haunert

12

AT OR AC LE Events / 12

OTN Bulletin / 14

Find out about current and upcoming industry events.

Learn what’s happening with Oracle’s most dynamic online community.

Oracle Resources / 13

Oracle News Briefs / 15

Here’s your guide to Oracle’s broadband, education, and support offerings, plus what’s new at Oracle.

Oracle News / 21 Oracle is offering enterprise-class Linux support—the same level of support that Oracle provides for the database—through the Unbreakable Linux program.

ORACLE MAGAZINE

JF07_TOC.indd 3

JANUARY/FEBRUARY 2007

3

11/20/06 3:51:48 PM

CONTENTS

57

TEC HNOLOGY P L/S QL P R AC TIC ES The Right Place for PL/SQL / 57 Best practices for PL/SQL location, location, location

23

—Steven Feuerstein

R EC OV ERY

CH A NNEL S

Recover in a Flash / 59

Commitment / 23 The Nature Conservancy protects endangered species and drinking water.

Partner News / 24 GridApp Systems, IBM, EMC, Adobe, HP, Intel, Itemfield, Genpact, Turnkey Solutions, NAVTEQ, Application Security, Inc., and SilverStorm.

Reduce database recovery time, using the Oracle flash recovery area. —Arup Nanda

AS K TOM On Top-n and Pagination Queries / 63 Our technologist gets more results using ROW_NUMBER, RANK, and DENSE_RANK. —Tom Kyte

Book Beat / 24 Peer-to-Peer / 27 Steve Karam, Nicolas Gasparotto, Dave Moore

Cutting Edge / 29 Encrypted hard drives and perching planes

49

67 D EVEL O PER

R ES OUR C ES Oracle Certified Partner Index / 67 Advertisers’ Index / 70

O PEN SO U RCE Embedding Open Source / 49 The Oracle Berkeley DB family of products exemplifies Oracle’s open source commitment. —Rich Schwerin

F RA MEWO RKS Modeling Tables and Components / 51 Maintain your data-centric business services with visual diagrams. —Steve Muench

O D P.NET Using PL/SQL Associative Arrays / 53 Bring the power of PL/SQL stored procedures to ODP.NET. —Mark A. Williams

B RO WSER-B A SED Sizing Up Performance / 55 Tips and techniques for optimal Oracle Application Express performance —Mike Hichwa

4

JANUARY/FEBRUARY 2007

JF07_TOC.indd 4

69

C OMMENT IN THE FIELD Listening to You / 69 IOUG surveys provide guidance for expanding databases and open source software issues. —Ari Kaplan

ALL S EC UR E Security Goes Mainstream / 71 Security is too important to be left to experts. —Mary Ann Davidson

ANALY S T’ S C OR NER The Right Stuff / 72 Small businesses can compete on a big scale if they have enterprise-caliber software. —David Baum

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:51:51 PM

When information comes together, Blue Rhino sizzles.

Information lives at Blue Rhino, a midsize company that had a king-size problem. As the #1 brand in propane tank exchange, their information storage needs were doubling every year. But their IT budget wasn’t. They chose an EMC® solution that gave them less downtime, faster backups, and quicker recovery times. The entire package, hardware and software, delivered a high degree of flexibility at an affordable price, and allowed them to keep their focus on their customers. Read the Blue Rhino profile at www.EMC.com/BlueRhino. To see what EMC can do for you, talk to your EMC Velocity2 Partner or call 866-796-6369.

EMC2, EMC, and where information lives are registered trademarks of EMC Corporation. All other trademarks used herein are the property of their respective owners. © 2006 EMC Corporation. All rights reserved.

ED ITOR IA L Editor in Chief Tom Haunert [email protected] Senior Managing Editor Caroline Kvitka [email protected] Features Editor Kay Keppler [email protected] Contributing Editor and Writer Blair Campbell Editor in Chief, OTN Justin Kestelyn [email protected] Technology Advisors Tom Kyte, Christopher Beck Contributing Writers Marta Bright, Liz Campbell, Ed DeJesus, Jeff Erickson, Andre Kvitka, Aaron Lazenby, Fred Sandsmark, Rich Schwerin D ES IGN Senior Creative Director Susan Olsen Design Director Richard Merchán PUBLISH ING Publisher Jeff Spicer [email protected] A DV ERTISING SA LES Associate Publisher Kyle Walkenhorst [email protected] +1.323.658.6250, Ext. 201 Northwest & Central U.S., Technology Tom Cometa [email protected] +1.415.206.9855 Southwest U.S. Technology & Consumer Shaun Mehr [email protected] +1.323.658.6250 ext. 205 MidAtlantic U.S., Technology & Consumer Dawn Becker and Lisa Rinaldo [email protected] +1.732.772.0160 Northeast U.S./Canada, Technology & Consumer Ann and David Schissler [email protected] +1.508.394.4026 Southeast U.S., Technology & Consumer Doug Lewis [email protected] +1.770.333.1281 Europe/Middle East/Africa/Asia Pacific, Technology Mark Makinney [email protected] +44 0 1273 774341 Mailing-List Rentals Edith Roman Associates +1.800.223.2194, Ext. 684 PROD UCTION & OPERATIONS Circulation Director Jennifer Armstrong [email protected] Sales and Production Director Jennifer Hamilton [email protected] +1.650.506.3794 ED ITOR IA L BOA R D Ian Abramson, Jeff Bernknopf, Karen Cannell, Andrew Clarke, Chris Claterbos, Karthika Devi, Kimberly Floss, Kent Graziano, Taqi Hasan, Tony Jambu, Tony Jedlinski, Ari Kaplan, Val Kavi, Steve Lemme, Carol McGury, Sumit Sengupta, Danisment Gazi Unal, Jonathan Vincenzo, Dan Vlamis, Billy Yu

S U B S C R I P T I O N INF ORMAT ION 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. MAG A Z I N E C U STOME R SE RVICE [email protected], fax +1.847.763.9638, phone +1.847.763.9635 P R I VACY Oracle Publishing allows sharing of our 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].

RES OURCES Oracle Products +1.800.367.8674 (U.S./Canada) Oracle Services +1.888.283.0591 Oracle Press Books www.oraclepress.com Printed by Brown Printing

The information contained in Oracle Magazine is for information purposes only and may not be incorporated into a contract or agreement. Copyright © 2007, Oracle 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. Oracle, JD Edwards, and PeopleSoft are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. For a full listing of Oracle trademarks and registered trademarks, consult Oracle’s Web site at oracle.com or send a request to [email protected]. All other product and service names mentioned may be trademarks of their respective owners. 6

JANUARY/FEBRUARY 2007

JF07_TOC.indd 6

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:51:52 PM

The BIG news is here!

Introducing... ©2006 Quest Software, Inc. All rights reserved. Quest and Quest Software are trademarks or registered trademarks of Quest Software. All other brand or product names are trademarks or registered trademarks of their respective holders. 09/2006/TOAD-toadworld_announcement_Q32006

Toad World – Your free exclusive online resource for all things Toad™ Membership gains you access to exclusive freeware, demo videos, tips and tricks, expert blogs, fun Toad stuff, like ringtones, and much, much more. And the new Toad for Oracle 9.0 teams up with Toad World to unlock the power of database best practices through advanced automation and education. If you use Toad, want to start using the industry leading database tool, or just want to be a better database professional, then Toad World is the place to be. ———————————————————————————————————---------------------------------------------------------------------------------------------------------------------------------------------------------

To learn more and to join Toad World visit www.quest.com/toadworld ———————————————————————————————————---------------------------------------------------------------------------------------------------------------------------------------------------------

Available through

Toadworld Announce Oracle Mag fi1 1

9/19/06 5:17:21 PM

i Demand More...

innovation.

USi. Strategic. Experienced. The most experienced, successful Application Service Provider in the marketplace, USi is also the largest independent provider for managed and professional services for the complete Oracle Application Lifecycle. USi understands enterprises demand more performance, reliability and functionality from their applications. At USi, we know better than anyone how to deliver on these demands. Trust USi for your Enterprise Resource Planning and eBusiness needs. Scores of organizations in the Fortune 1000 already do.

Demand USi. Enterprise Applications Supported

Services

Oracle Applications

Application Outsourcing

Oracle Database

Remote Application Management

Oracle Middleware

HR Business Process Outsourcing

Oracle Enterprise Management

Professional Services

PeopleSoft Enterprise

Custom Hosting & Development

Siebel

ISV Enablement

Ariba

Information Security/Risk Management

800.809.3003 [email protected] www.usi.net

USi.indd 1

9/18/06 9:55:41 AM

f r o m o u r READERS

Your corrections, your opinions, and your requests: Here’s your forum for telling us what’s right and wrong in each issue of Oracle Magazine, and for letting us know what you want to read. MORE DIGITAL

Thank you for sending the digital copy of the November/December 2006 issue of Oracle Magazine. Can you send digital copies of previous issues of Oracle Magazine? How can I get these older magazine issues? Rojan Shrestha [email protected]

Digital back issues from the start of the digital subscription program are available to digital subscribers only. When viewing a digital issue, digital subscribers can click the “Archives” tab to access back issues. Oracle Magazine back issues are also available to all in HTML format at oracle .com/oramag/oracle. Any reader of Oracle Magazine who wants to change the preference of print or digital format can do so on the printed subscription card or the online subscription form at www.submag.com/sub/ oc?pk=orafaq. PRO PARTITIONING

I started reading the article “Partition Decisions” by Arup Nanda (September/ October 2006, oracle.com/technology/ oramag/oracle/06-sep/o56partition .html) with only mild interest, but I can’t describe in words how wonderful and useful the article is. It is written from a real-world point of view few other articles could lay claim to. This is exactly the type of article I would like to see in the magazine. There are articles, and there are articles, where the authors seem to align very closely with the real-world issues of the readers. For instance, in this article, the author has clearly moved

away from repeating what’s available elsewhere as commodities—the syntax and all that good stuff. Instead he describes an issue faced by architects and designers day in and day out. The layout of the article is particularly attractive—with the decision points spelled out as they would be discussed in a real meeting. I have to mention this: Just around the time this article was published, we were going through a series of meetings to decide on our own partitioning strategy, and the resemblance of the proceedings was, well, uncanny, to say the least! This article helped us significantly in our decision-making process, especially the section on data movement. Please continue to publish these types of articles. They are not just repetition of the ideas available in manuals. Brian Lentini [email protected]

I would like to thank you for the very informative article by Arup Nanda on Oracle Partitioning (“Partition Decisions.”) We as an organization have been grappling with Oracle Partitioning issues and best practices for a while, and this article was very timely. Mike Stearman [email protected]

We received many responses regarding Oracle Partitioning and this article. Thanks to all who sent feedback on Arup Nanda’s “Partition Decisions.”

GO WEEKLY

I am a regular reader of your magazine. I suggest that you publish the magazine once a week instead of every two months. This way you can publish database technology details from fundamentals to advanced levels. Km. Ravichandran [email protected]

BEGINNING WITH THE PAST

I subscribe to Oracle Magazine, and I am new to the Oracle PL/SQL language. I want to see past issues of Oracle Magazine to see basic and important PL/SQL information. Chandra Kishore Bakshi [email protected]

There’s an index of past Oracle Magazine PL/SQL articles at oracle.com/technology/ oramag/oracle/plsql. There’s also an index of past OTN PL/SQL articles at oracle .com/technology/pub/articles/tech_dev .html#plsql. And the PL/SQL technology center at oracle.com/technology/tech/ pl_sql includes links to additional PL/SQL articles, as well as links to book excerpts, sample code, Oracle University PL/SQL classes, and the PL/SQL discussion forum.

send mail to the EDITOR Send your opinions about what you read in Oracle Magazine, and suggestions for possible technical articles, to [email protected]. Or click on the Write the Editors link on our Web site, oracle.com/oraclemagazine. Letters may be edited for length and clarity and may be published in any medium. We consider any communications we receive publishable.

ORACLE MAGAZINE

JF07_Readers.indd 9

JANUARY/FEBRUARY 2007

9

11/17/06 12:02:28 PM

OMAG0506p024 24

3/8/06 10:55:30 AM

f r o m t h e EDITOR

Available and Working

Inexpensive resources for high availability improve enterprise performance. t 5 p.m. on October 17, 1989, I was ending my workday in the San Francisco Bay Area, backing up my PC data to tape. A few minutes after 5 p.m., my tape backup still in progress, a major earthquake hit the area. There were fatalities, and bridges, roadways, and homes collapsed. At my office the damage was minor—it included shattered windows and a power outage. Power was restored to the office the next morning, and when I went back into work, my focus shifted from trying to find out if my friends and family were OK after the quake (they were) to seeing if I still had a working PC, a working tape backup, and the data I had been trying to preserve. PC hardware in 1989 was not nearly as reliable as it is today, and for its capabilities, it was also quite expensive. Some of my concern about my PC came from my company; I worked at a PC hardware company that consistently warned its customers—and employees—that interrupting power to disk and tape drives while they were operating could cause permanent drive failure. Luckily my hardware and data survived. I did not need to recover data from an earlier backup—but I was certainly glad that I had an archive of tape backups, just in case—and didn’t need to requisition expensive new hardware. UPPING AVAILABILITY

DBAs and system administrators deal with backup and recovery in much more reliable and sophisticated ways than I did in on my old desktop PC. Tape and disk backups are centrally managed and widely used, and powerful backup and recovery capabilities are giving DBAs opportunities to recover data without ever going to the backup tapes. Oracle Flashback technologies, for example, including Flashback Query, Flashback Table, and Flashback Database,

READ more about Oracle Database high availability oracle.com/database/high-availability.html oracle.com/technology/deploy/availability

Oracle Real Application Clusters oracle.com/start keyword: RAC2

Flashback technologies

oracle.com/technology/oramag/oracle/flashback

give DBAs the ability to easily pinpoint and “flash back” to data in a previous state using log information. And the flash recovery area—automatically managed disk space for recoveryrelated data files—can allow for faster recovery than going to a backup tape and also simplifies Oracle Recovery Manager (RMAN) administration. For more information on Oracle Flashback technology, see the nextSTEPS box below, and for more information on using the flash recovery area, check out Arup Nanda’s article, “Recover in a Flash,” on page 59. HIGH AVAILABILITY MEANS HIGH PERFORMANCE

While businesses still need to go to disk or tape to recover from data errors—I had to have Support restore an accidentally deleted network folder for me last week—the demands of today’s 24/7 businesses have of necessity eliminated the time frame for recovery from hardware failure. Today’s businesses don’t stop running at 5 p.m., and they can’t stop running because of a failed server. In his feature article, “Always Available,” on page 30, Alan Joch reports on Oracle customers who are using Oracle Real Application Clusters (Oracle RAC) and Oracle Data Guard on inexpensive commodity hardware—not just as insurance for high availability, but to add continuous computing power to the enterprise. Oracle RAC automatically redistributes the workload of a failed server to the remaining healthy servers, and it enables companies to scale up—to add servers to the cluster to support more users and more transactions. Oracle Data Guard provides a “standby” database, ideal for a secondary site, but companies use synchronized, data-error-free Oracle Data Guard standby databases for ad hoc queries, backups, reporting, and other activities for better performance of these activities and the transactions at the primary site. In 1989, backup to disk was not a common solution, in part because of the high cost of this storage. Today, both disk and tape backups offer fast recovery and provide inexpensive archive solutions that can also meet compliance requirements using technologies such as Oracle RMAN and Oracle Secure Backup. And enterprise high availability that once required proprietary and expensive mainframe and minicomputers now starts with inexpensive commodity hardware, and, along with technologies such as Oracle RAC and Oracle Data Guard, provides both high availability and high performance.

Oracle Secure Backup

Tom Haunert, Editor in Chief [email protected]

oracle.com/database/secure-backup.html

ORACLE MAGAZINE

JF07_EdNote.indd 11

JANUARY/FEBRUARY 2007

11

11/20/06 3:43:30 PM

a t O r a c l e EVENTS ORACLE USERS GROUPS

Technology Events

Conferences and sessions to help you stay on the cutting edge

Packerland Local Users Group Meeting January 10, Fond du Lac, Wisconsin

www.wi-plug.org/calendar.htm Georgia Oracle Users Group

January 11, Dunwoody, Georgia

www.gouser.org Nashville Oracle Users Group Meeting January 17, Nashville, Tennessee

RSA Conference 2007 February 5–9 San Francisco

The RSA Conference is the largest, most comprehensive gathering of analysts, technology providers, service providers, and end consumers in information security. Oracle CEO Larry Ellison will give a keynote address at this weeklong educational forum. Visit www.rsaconference.com/2007/us for more information.

Los Angeles County Technology Week 2007 January 22–27, Los Angeles County, California

Technology Week is a series of events showcasing the depth and growth of technology companies throughout Los Angeles County. Events are held at a variety of countywide locations. Learn more and register at

Desktop Conference 2007 February 20–22, Online

Boasting presentations by dozens of Oracle experts and with tracks for BI, data warehousing, application development, and more, the Desktop Conference bills itself as the most comprehensive virtual conference of the year. Learn more at www.desktopconference.org.

GTC Southwest 2007

Gartner Business Intelligence & Information Management Summit

January 29–February 1, Austin, Texas

February 27–28, Sydney, Australia

www.latechweek.com.

The Government Technology Conference provides business and technology learning opportunities for government employees and provides opportunities to network with peers from state and local governments and meet with top technology vendors to the government. Get details at www.govtech.net/gtc/

This event highlights how BI applications and data infrastructure can affect financial and business performance. Technology’s role in compliance, the continuing data explosion, and complex business environments are on the agenda. Sign up at www.gartner.com/

2_events/conferences/bi1a.jsp.

index.php/GTCSouthwest2007.

Gartner Business Intelligence Summit

ALLISON LEVENSON

January 30–February 1, London

Aimed at IT and business professionals who are defining a business intelligence (BI) strategy, optimizing BI applications, and managing BI issues, this event highlights new research in organizational competencies, corporate performance management, data quality, application analytics, and service-oriented architectures. Get more information at www.gartner

.com/2_events/conferences/bie8i.jsp.

12

JANUARY/FEBRUARY 2007

JF07_Events.indd 12

OPP2007 February 28–March 1 San Mateo, California

The Oracle Development Tools User Group sponsors this “seriously practical” Oracle PL/SQL Programming Conference for Oracle technologists focusing on PL/SQL programming. It includes two days of intensive training by Steven Feuerstein, PL/SQL evangelist, Quest Software; Bryn Llewellyn, PL/SQL product manager, Server Technologies, at Oracle; and other PL/SQL experts. Learn more and register at www.odtugopp07.com.

www.noug.net/meeting.htm Sacramento Oracle Users Group Meeting January 17, West Sacramento, California

www.sacoug.org Twin Cities Oracle Users Group Quarterly Meeting

January 18, St. Louis Park, Minnesota

www.tcoug.org/calendar Atlanta Oracle Applications Users Group Meeting January 19, Dunwoody, Georgia

www.atloaug.org Northeast Ohio Oracle Users Group Business Meeting January 19, Independence, Ohio

www.neooug.org/generaltab/ generaltab.shtml?events UKOUG Open Source Seminar

January 23, Berkshire, England

www.ukoug.co.uk/calendar/show_events .jsp?year=2007&month=01&day=23 Philadelphia Area Oracle User Group Quarterly Meeting

January 24, Bala Cynwyd, Pennsylvania

philadelphia.oracle.ioug.org Dallas Oracle Users Group Data Warehousing Certification Class February 7–9, Dallas, Texas

www.doug.org/meetings2006.cfm Northern California Oracle Users Group Winter Conference February 8, Redwood Shores, California

www.nocoug.org Ottawa Oracle User Group Training Day 2007

February 9, Ottawa, Ontario, Canada

www.oug-ottawa.org North Carolina Oracle Users Group Meeting

February 16, Morrisville, North Carolina

www.ncoug.com/ncoug_upcoming_ events.htm

eventsLOCATOR Oracle Events oracle.com/events

Locate user groups

oracle.com/technology/collaboration/user_group

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:49:32 AM

a t O r a c l e RESOURCES

What’s New at Oracle The latest Webcasts, support offers, courses, and more NEW WEBCASTS Oracle Presents: Who Stole Mark Drake?

oracle.com/markdrake Who stole Mark Drake’s identity? From San Francisco to Singapore, the hunt is on and time is running out. Oracle’s interactive mystery shows how Oracle Fusion Middleware can help businesses manage risk and gain business insight. Oracle Security Strategy Briefing

oracle.com/pls/ebn/live_viewer.main ?p_direct=yes&p_shows_id=5029726 Oracle President Charles Phillips discusses Oracle’s strategy for a complete, unified, and standards-based security solution to meet the ever-growing security threat that organizations face. Best Practices for Securing Oracle Databases

oracle.com/pls/ebn/live_viewer.main ?p_direct=yes&p_shows_id=4967568 John Heimann of Oracle Security Program management and Roger Raj of Oracle Protected Enterprise discuss database security challenges, implementing a database security checklist, and developing a critical patch update strategy. Extracting More from Identity Management Using an Application-Centric Approach

oracle.com/pls/ebn/live_viewer.main ?p_direct=yes&p_shows_id=4975807 Identity management is a driving force in many implementations today, especially as it relates to security and compliance. Find out why Oracle is taking a new approach to identity management.

ORACLE SUPPORT Configuration Support Manager

oracle.com/support/premier/ advanced-support-technologies/ my-configurations-projects.html Configuration Support Manager, a proactive automated support capability included in Oracle Premier Support, offers you a simpler way to track, manage, and support your Oracle configurations while

reducing the risk of unplanned system downtime. Diagnose system issues before they become critical, increase system performance, resolve problems faster, and reduce IT risks and costs.

ORACLE ON DEMAND Oracle On Demand Perspectives

oracle.com/pls/ebn/swf_viewer.load? p_shows_id=4915801 Gartner analysts predict that 30 percent of software will be delivered on demand by 2010. Take a look at the business, technology, and financial reasons behind Oracle On Demand to determine if it is right for your business. Oracle On Demand for Siebel CRM

oracle.com/ondemand/ on-demand-siebel-crm.html Oracle’s On Demand offering now includes Oracle On Demand for Siebel CRM, giving Siebel CRM customers the flexibility and choice of managed applications, hosting, and software management services.

NEW PODCASTS Designing the Dynamic Data Center

oracle.com/techcasts Dr. Bernd Kosch, vice president of alliances for Fujitsu-Siemens Computers, offers a progress report on the evolution of grid computing and associated standards, as well as the story behind the formation of the new Open Grid Forum standards organization. Focus on Identity Management: Standards

oracle.com/techcasts Prateek Mishra, product manager for Oracle Identity Management and coauthor of the Security Assurance Markup Language specification, explains the impact of that specification and other standards on identity management deployments. Focus on Identity Management: ApplicationCentric Identity Management

oracle.com/techcasts What is application-centric identity man-

agement, and why should architects and developers care about it? Nishant Kaushik, a technical staff member from the Oracle Identity Management team, provides insight. Inside a “Power” SMB

oracle.com/techcasts Jody McDonough, CE0 and vice president of development at enetrix, discusses why identity management, business intelligence, and compliance architecture are important for his small business. Oracle Analytic Applications Strategy

oracle.com/appcasts Chris Leone, Oracle group vice president, applications strategy, discusses Oracle’s analytic applications offerings, product road map, and benefits to customers. Oracle Fusion Update

oracle.com/appcasts Jesper Andersen, Oracle senior vice president, applications strategy, provides an update on Oracle Fusion Applications and discusses the benefits of moving to current releases and what customers can do to prepare for Oracle Fusion Applications.

ORACLE UNIVERSITY Oracle Identity Manager: Develop Identity Provisioning

oracle.com/education (Search keywords: Identity Manager)

In this five-day course, learn how to use Oracle Identity Manager Design Console and Oracle Identity Manager Administration and User Console to build, customize, and use Oracle Identity Manager connectors for provisioning and reconciliation. OracleAS 10g R3: Oracle ADF for Forms/ 4GL Developers

oracle.com/education (Search keywords: Oracle ADF)

Learn to build applications using Oracle Application Development Framework Business Components (ADF BC), Oracle ADF Faces, and Oracle ADF databinding with Oracle JDeveloper 10g Release 3.

ORACLE MAGAZINE

JF07_Resources.indd 13

JANUARY/FEBRUARY 2007

13

11/17/06 12:03:19 PM

a t O r a c l e OTN BULLETIN

BY JU STIN KESTELYN

When Keywords Collide

OTN 3.0 beta brings semantic search to Oracle Technology Network users. n the previous edition of this column (November/December 2006), I described the so-called semantic search infrastructure behind the virtual press room at Oracle.com. I am happy to report that this infrastructure has been extended to power a new “OTN 3.0” Web site beta. This proof of concept, currently running in parallel with the production version of the Oracle Technology Network (OTN) site (and based on a subset of available content), will generate crucial community feedback and, down the road, help us create a template for a new semantic search–powered OTN. The differences between OTN 3.0 and the current OTN site are too numerous to describe here, but to a user, the site meets the bar set by Arthur C. Clarke’s famous aphorism, “Any sufficiently advanced technology is indistinguishable from magic.” In OTN 3.0 beta, the user is in complete control of the information taxonomy—in other words, users have the ability to control (well, “filter,” really) the content of any given page, rather than being guided through an endless series of static paths. As I explained in a blog post about this subject (“The Semantic Web Runs on Oracle,” blogs.oracle.com/otn/ 2006/09/08#a220), the problem with garden-variety search is that you don’t know what you’re missing—your search results will only be as good as your keywords. With semantic search—and OTN 3.0 is essentially a semantic search view of OTN content—you needn’t supply any keywords at all; the back end already knows more of them than you could ever hope to provide. OTN 3.0 also contains interesting visualizations that allow you, for example, to see who the most active discussion forums posters are in a “cloud”

14

JANUARY/FEBRUARY 2007

JF07_OTN_x.indd 14

view, and to view the posts of any given Oracle ACE across a certain subject or time period. This is great stuff. Explore OTN 3.0 beta at oracle.com/ technology/otnsemanticweb in early 2007. We hope to see your comments in the Beta Feedback Discussion Forum. “GREATEST HITS” OF 2006

One of the guilty pleasures of a new year is “contemplating the silent highway,” as I like to say—looking back at the previous year and determining what it can teach us about the new one. That process takes physical form in the OTN’s Greatest Hits CD—a library of the most-popular content published by OTN during the calendar year—distributed annually at Oracle OpenWorld. For example, here are the most-popular technical articles published last year across the developer, DBA, and architect roles: 1. “Oracle Database 10g: Top DBA Features,” by Arup Nanda (Oracle ACE) 2. “Installing Oracle Database 10g on Linux x86,” by John Smiley 3. “Best Practice PL/SQL,” by Steven Feuerstein (Oracle ACE) 4. “SOA Best Practices: The BPEL Cookbook,” by various authors 5. “Build Your Own Oracle RAC 10g Cluster,” by Jeffrey Hunter (Oracle ACE) 6. “Build a .NET Application on Oracle Database,” by John Paul Cook 7. “Installing PHP and the Oracle 10g Instant Client,” by Christopher Jones 8. “An Introduction to Linux Shell Scripting for DBAs,” by Casimir Saternos 9. “Guide to Linux File Command Mastery,” by Sheryl Calish 10.“An Introduction to Java Map Collection Classes,” by Jack Shirazi So, what does this list tell us? First, it tells us that OTN users are interested in practical, actionable content. (No surprise there.) It suggests that the relatively

advanced design concept of serviceoriented architecture (SOA) is attracting measurable attention across Oracle’s installed base. But most important, it suggests that .NET and PHP are continuing their progress in joining Java and PL/SQL as top-tier “communities of interest” in the Oracle world. Now, that’s important information for the coming year. IDENTITY MANAGEMENT CRASH COURSE

Identity management—the centralized management of the user identity lifecycle across the enterprise—is an area demanding serious attention. Oracle’s new Focus on Identity Management podcast series offers valuable introductions to key concepts such as fine-grained authorization, virtual directories, and attestation. Download the podcasts, or subscribe to Oracle TechCasts via RSS, at oracle .com/technology/techcasts. O Justin Kestelyn ([email protected]) is the editor in chief of Oracle Technology Network.

OTN home

oracle.com/technology

OTN headlines

oracle.com/technology/pub/news

Free software downloads oracle.com/technology/software

Documentation

oracle.com/technology/documentation

Technology Centers

oracle.com/technology/tech

Podcasts

oracle.com/techcasts

Technical articles

oracle.com/technology/pub/articles

Blogs

blogs.oracle.com

Discussion forums forums.oracle.com

ORACLE.COM/ORACLEMAGAZINE

11/28/06 12:20:29 PM

a t O r a c l e BRIEFS

Oracle Product News

An update on new product releases and key product enhancements ORACLE WEBCENTER SUITE DELIVERS UNIFIED USER EXPERIENCE

O

racle WebCenter Suite 10g Release 3, a new component of Oracle Fusion Middleware, provides a unified, context-aware user experience that integrates a full set of enterprise services. Users can access business applications, structured and unstructured content, business intelligence, enterprise search, business processes, and communication and collaboration services. By breaking down the boundaries among Web-based portals, enterprise applications, and Web 2.0 technologies, Oracle WebCenter Suite enables the rapid creation of flexible, context-sensitive work processes. “Information workers need an easy-

to-use, task-oriented, rich-client user interface through which they can access information and enterprise applications, quickly execute transactions within enterprise applications, and share information and collaborate with other people over a variety of channels—messaging, Voice over IP, discussions—using familiar desktop tools,” says Thomas Kurian, senior vice president, Oracle Fusion Middleware. Oracle WebCenter Suite represents the next step in advanced userinteraction environments and will be the basis for a new generation of context-aware applications designed to improve user productivity. Tasks that currently involve jumping between

many different applications and tools that aren’t aware of each other and don’t share content or context can be streamlined and automated through Oracle WebCenter Suite. Based on an open standards–based architecture, Oracle WebCenter Suite provides developers with a fast, low-risk way to develop and deploy Web 2.0 services across the enterprise, including wikis, mashups, instant messaging, Voice over IP, Really Simple Syndication feeds, discussion forums, and Web content publishing into structured applications. Enterprises can use Oracle WebCenter Suite’s capabilities to embed and synchronize task-oriented and informationoriented portlets and Web 2.0 services

P R O D U C T SPOTLIGHT ORACLE E-BUSINESS SUITE RELEASE 12 THINKS GLOBALLY racle E-Business Suite Release 12, scheduled for availability in 2007, is being designed to help businesses gain a competitive edge in the global economy. This major release is intended to allow organizations to think globally to make better decisions, work globally to be more competitive, and manage globally to lower costs and increase performance. “Oracle E-Business Suite Release 12 is expected to help companies meet global market needs,” says Fred Studer, group vice president of applications and technologies at Oracle. “Oracle E-Business Suite Release 12 should ensure companies that comprehensive requirements driving their global business are absolutely addressed with better technology and better applications—both coming together to drive value for our customers.” Oracle E-Business Suite Release 12 is planned to include key enhancements to help organizations make decisions based on complete information from systems that span regions and divisions. For example, as part of the release, Oracle Profitability Manager is expected to give users expanded capabilities to perform profitability analysis and reporting not only for individual product lines, but also for individual customers. Oracle Strategic Network Optimization is intended to allow users to continuously evaluate the cost and revenue implications of any decision affecting their global supply chain. Oracle Project Portfolio Analysis should enable users to choose, fund, and prioritize global projects based on what-if scenario analysis. For customers facing the complexities of running an organization with multiple divisions across different global regions, Oracle E-Business Suite

O

Release 12 is planned to include capabilities that make it simpler and cheaper to implement, manage, and scale applications. To ease compliance management, the release is expected to provide a repository for reviewing and auditing accounting business rules in a single environment. The release is also planned to leverage best practices from existing and acquired products to deliver an easy-to-use user experience. The release is intended to simplify global application management through preinstrumented management functionality in Oracle Enterprise Manager 10g for Oracle E-Business Suite Release 12. It is planned to include extensive integration capabilities, such as advanced support for integrating Oracle Applications with third-party applications and a Web services repository that catalogs hundreds of services in Oracle E-Business Suite. The release is also planned to include thousands of cross-industry capabilities spanning enterprise resource planning, supply chain management, and customer relationship management (CRM). For example, for the communications industry, Oracle Order Management is expected to support CRM by including the reconfiguration, upgrade, downgrade, and disconnection of services. Oracle Asset Tracking is intended to enable service providers to manage the financial and operational lifecycle of their network infrastructure. For the high-tech and manufacturing industries, the release is intended to support compliance requirements in Japan and China through Oracle Financial Management support for charge-based Shikyu and Golden Tax.

ORACLE MAGAZINE

JF07_BRIEFS.indd 15

JANUARY/FEBRUARY 2007

15

11/17/06 11:41:26 AM

BRIEFS

to create composite applications. Oracle WebCenter Suite is available as an option for Oracle Application Server Enterprise Edition, at US$50,000 per CPU. The first release includes Oracle WebCenter Framework, a JavaServer Faces (JSF) and Oracle Application Development Framework– based framework for embedding Asynchronous JavaScript And XML (Ajax) components, portlets, and content into JSF applications; Oracle WebCenter Services; embeddable Web 2.0 content, collaboration, and communication components; and Oracle WebCenter Studio, which exposes the Oracle WebCenter Framework and Oracle WebCenter Services to programmers inside Oracle JDeveloper. This release also includes Session Initiation Protocol–based instant messaging, online presence, threaded discussion and wiki services, Oracle Secure Enterprise Search, and a limited use license of Oracle Content Database. ORACLE DATABASE 11g BETA PROGRAM ANNOUNCED

O

racle has announced that the Oracle Database 11g Beta Program is underway. Customers and partners interested in participating in the beta program should contact their account manager or alliance manager or visit the Oracle Server Technologies Beta Programs Web site. “Oracle Database 11g will help organizations deal with one of the greatest challenges in IT: change,” says Willie Hardie, vice president of database product marketing at Oracle. “The new release will help lower the risk and cost of implementing new software, application, and other system changes and updates.” Oracle Database 11g is planned to include key change assurance features, such as a facility to easily capture actual production workloads at the database level and replay test systems to fully analyze the impact of system changes including critical concurrency characteristics. Another planned new feature, SQL Replay, identifies SQL execution plan changes and performance regressions. Other planned enhancements include rolling online application

16

JANUARY/FEBRUARY 2007

JF07_BRIEFS.indd 16

upgrades and “hot” patching; automated capture of fault diagnostics for faster fault resolution; and repair advisers to guide DBAs through the fault diagnosis and resolution process. ORACLE BERKELEY DB RELEASE 4.5 DELIVERS KEY ENHANCEMENTS

O

racle Berkeley DB Release 4.5, the newest release of Oracle’s open source, embeddable database, includes new capabilities for improved performance, availability, and ease of use. The new release supports multiversion concurrency control, nonstop upgrades for replicated environments, and a prebuilt replication framework to simplify development of highly available applications. “Oracle Berkeley DB Release 4.5 is quickly becoming the database of choice for open source and commercial developers who need to embed a fast, reliable, transactional storage engine within their high-performance applications,” says Rex Wang, vice president of embedded systems marketing at Oracle. Oracle Berkeley DB is part of Oracle’s strategy to provide developers with a broad range of embeddable products to meet the diverse needs of independent software vendors and original equipment manufacturers, who integrate Oracle technology directly into software applications, devices, and equipment. “This version adds compelling new features and helps developers build and deploy applications requiring fast, reliable storage without human administration,” adds Wang. Oracle Berkeley DB Release 4.5 is generally available under a dual license. A no-cost open source license permits redistribution if the application using Oracle Berkeley DB is open source. A commercial license is available for redistribution of proprietary applications. ORACLE ENTERPRISE MANAGER 10g INTEGRATES APPLICATION MANAGEMENT

O

racle has broadened the capabilities of Oracle Enterprise Manger 10g to deliver management functionality for Oracle Applications and third-party applications. Oracle Enterprise Manager 10g will enhance the management and

monitoring of Oracle E-Business Suite, Oracle’s PeopleSoft Enterprise, and Oracle’s Siebel environments and provide management capabilities for customer applications running on Oracle and nonOracle databases and middleware. Oracle will deliver advanced application management, monitoring, and service-level capabilities through three new Oracle Application Management Packs for Oracle E-Business Suite, PeopleSoft Enterprise, and Siebel. The Oracle Application Management Pack for PeopleSoft Enterprise is now available; the remaining packs are planned for availability in 2007. With new capabilities for application management, Oracle Enterprise Manager 10g delivers comprehensive management functionality from the operating system through the application layer—regardless of the underlying infrastructure—all the way to the end user. “Oracle Applications and thirdparty application customers will have a single solution at their disposal to manage their applications and underlying systems comprehensively,” says Jay Rossiter, vice president of system management products at Oracle. “With a consolidated view of their entire environment, customers will be better able to identify and resolve application availability and performance issues quickly and accurately, resulting in improved service quality.” ORACLE BUSINESS INTELLIGENCE SUITE ENABLES PERVASIVE INTELLIGENCE

T

he next version of Oracle’s open standards–based business intelligence (BI) suite, Oracle Business Intelligence Suite Enterprise Edition 10g Release 3, is planned to allow organizations to distill intelligence from existing applications and data sources and distribute it pervasively across the enterprise. This pervasive intelligence will serve to optimize business processes, decisions, and actions. Scheduled for general availability in the next calendar year, this release is planned to include strategic integration with Oracle Applications, Oracle Fusion Middleware, and Oracle

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:41:27 AM

XMLSuite_Oracle_Mag.qxp

11/16/2006

2:06 PM

Page 1

Altova® XML Suite 2007 – The world’s leading XML development tools.

Gear up for

XML excellence

Take off with the Altova® XML Suite, and save ½ off the top tools for XML development. Included with the Altova XML Suite 2007: O

Altova XMLSpy ®, MapForce®, and StyleVision® Enterprise or Professional Editions O Plus Altova SchemaAgent™, SemanticWorks™, and DiffDog® with Enterprise Suite The Altova XML Suite 2007 delivers the latest releases of world’s leading XML development tools all in an unrivaled deal. It contains Altova XMLSpy, the industry standard XML development environment; MapForce, the premier data integration and Web services implementation tool; and StyleVision, the ultimate visual stylesheet designer. What’s more, the Enterprise Edition also includes XML Schema management, Semantic Web, and XML-aware differencing tools. Save a bundle! Download the Altova XML Suite today: www.altova.com

BRIEFS

Database to provide a comprehensive BI solution, as well as expanded hotpluggable support for third-party data sources and systems. “The compelling benefits of the new release will further obviate the need for organizations to wire together tools from multiple point product BI vendors in order to have complete, integrated, best-of-breed solutions, regardless of whether they have Oracle, non-Oracle, or mixed environments,” says Thomas Kurian, senior vice president, Oracle Fusion Middleware. Oracle Business Intelligence Suite Enterprise Edition 10g Release 3 is intended to leverage service-oriented architecture techniques and integration with Oracle BPEL Process Manager to support multiple models of analyticsdriven workflow. This is planned to include invocation of a Business Process Execution Language (BPEL) process from the BI environment; BI that directs a BPEL process with intelligent decision points and conditional process steps based on analytics; and BPEL processes invoking analytic workflows through Web services. The suite is also planned to support seamless integration with Oracle Portal and Oracle Online Analytical Processing (OLAP). The next release is also planned to allow users to access information through interactive dashboards, reports, ad hoc analysis, real-time alerts, mobile disconnected analytics, and integration with Microsoft Office. The release plan also includes support for Really Simple Syndication capabilities. ORACLE DEVELOPER DEPOT SIMPLIFIES JAVA DEVELOPMENT

O

racle has announced the release of Oracle Developer Depot, a free, downloadable developer productivity tool that simplifies the way Java developers find, configure, and provision Java applications for learning or prototyping purposes. An integrated component of Oracle Fusion Middleware, Oracle Developer Depot complements Oracle’s end-to-end Java platform by facilitating development of Java and serviceoriented-architecture–based applications.

18

JANUARY/FEBRUARY 2007

JF07_BRIEFS.indd 18

As software shifts away from single, monolithic applications to assemblies of easily configurable services, developers are changing the way they work. To speed the development process, programmers often develop new applications by reusing existing or sample code as a starting point. However, obtaining, configuring, and deploying code can take a long time and be error-prone. Oracle Developer Depot, which runs on Oracle Application Server 10g, eliminates the complexity of the discover-todeploy process by providing a library of reusable sample application code that can be downloaded and deployed with a single click. As a result, programmers without Java experience can have an application up and running rapidly, and more-experienced developers can get a head start on complex projects to meet business requirements quickly. Oracle Developer Depot leverages popular Web 2.0 technologies such as Asynchronous JavaScript And XML (Ajax), the Spring 2.0 Framework, and Really Simple Syndication to facilitate code reuse and simplify development. ORACLE MAKES STRATEGIC ACQUISITIONS

O

racle has acquired SPL WorldGroup and Sunopsis and agreed to acquire MetaSolv Software and Stellent. SPL is a leading provider of revenue and operations management software for the utilities industry and tax management software for government organizations. SPL delivers best-in-class solutions for customer care and billing, mobile workforce management, outage and distribution management, and asset management that are specifically designed for electric, gas, and water utilities. Sunopsis is a leading provider of heterogeneous data integration products. Oracle plans to incorporate Sunopsis’ high-performance data integration technology into the Oracle Fusion Middleware product family and make the technology an integrated part of its service-oriented architecture, business intelligence, and master data management solutions. MetaSolv is a leading provider of service-fulfillment operations support

system (OSS) solutions for the communications and media industry. The company offers communications service providers a comprehensive product set for OSS service fulfillment, including provisioning, network inventory, and activation. MetaSolv’s standards-based solutions support all types of services, including next-generation Voice over IP, Internet Protocol Television, and IP virtual private network. Stellent is a global provider of enterprise content management software solutions. With Stellent’s Universal Content Management solution, customers can easily deploy multiple line-of-business applications—such as public Web sites, secure intranets and extranets, and compliance processes— and also scale the technology to support multisite management and enterprisewide content management needs. Oracle’s acquisition of Stellent will complement and extend Oracle’s existing content management solution portfolio. Stellent’s Universal Content Management works with Oracle Content Database and offers a variety of best-of-breed solutions for document management, Web content management, information rights management, digital asset management, records and retention management, and imaging, governance, risk, and compliance. O

Oracle WebCenter Suite

oracle.com/products/middleware/ webcenter.html

Oracle E-Business Suite

oracle.com/applications/e-business-suite.html

Oracle Server Technologies Beta Programs

otnbeta.oracle.com/bpo/prospects/index.htm

Oracle Berkeley DB Release 4.5

oracle.com/technology/products/berkeley-db

Oracle Enterprise Manager 10g oracle.com/enterprise_manager

Oracle Business Intelligence Suite 10g Release 3 Enterprise Edition oracle.com/bi

Oracle Developer Depot

oracle.com/technology/tech/java/oc4j/odd

Oracle strategic acquisitions oracle.com/corporate/acquisition.html

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:41:28 AM

value. “ImageNow saves us $223,000 annually by reducing overhead and manual tasks in the corporate accounting division.” Dolly Droze Director of Corporate Accounting Piggly Wiggly Carolina Company, Inc.

ImageNow document management, imaging and workflow Return on investment. It isn’t just industry buzz. At Perceptive Software, it defines our entire approach to ImageNow document management, imaging and workflow. Creating value for Oracle® customers at every step of implementation with ease, speed and a low lifetime cost. ImageNow® creates a direct and effortless connection between you and the documents you need to complete your daily business activities. With a rapid, patented integration style that works intuitively with your existing Oracle and other business software applications, ImageNow requires no costly programming and is practically maintenance-free. A little document management. A lot of payback.

www.imagenow.com/oracle

The documents you need. Now. © 2006 Perceptive Software, Inc. ImageNow is a registered trademark of Perceptive Software, Inc. All other product and company names may be trademarks or registered trademarks of their respective owners. ad_oracle0701

Use Add PL/SQL PL/SQLDeveloper Developer at work... to your business...

...and save ...and time save and time money and money to enjoy yourself

PL/SQL Developer is is the an Oracle Oracle development development tool tool that gives you maximum productivity, productivity, ease of use, and all the features you need.

Visit our website for additional details: www.allroundautomations.com/plsqldev

a t O r a c l e ORACLE NEWS

BY R IC H SCHWERI N

Enterprise-Class Linux Support

Oracle Unbreakable Linux delivers the same support for Linux as for Oracle Database. o meet customer demand for enterprise-quality Linux support and significantly reduced IT infrastructure costs, Oracle is offering Linux operating system support. The support program, Oracle Unbreakable Linux, provides enterprises with industry-leading, global support for Linux—the same level of support that Oracle provides for the database. “Oracle’s support program is all about broadening the success of Linux and helping customers deploy Linux seamlessly,” says Edward Screven, Oracle’s chief corporate architect. “In the same way we support the database, this new support program provides bug fixes to future, current, and past releases of Linux. We provide the same level of enterprise support for Linux as is available for other operating systems.” Oracle offers enterprise-class Linux support for substantially less than the price Red Hat currently charges for its best support. The program is available to all Linux users for as little as US$99 per system per year, and until January 31, 2007, Oracle customers can get a free trial, and anyone can purchase support at a 50 percent discount.

BOB ADLER

INDUSTRY ENDORSEMENT

Screven asserts that true enterprisequality support for Linux at a lower cost is something that customers demand, and many customers and partners have already endorsed Oracle’s new Linux support program. “We believe that better support and lower support prices will speed the adoption of Linux, and we are working closely with our partners to make that happen,” says Screven. “Intel is a development partner. Dell and HP are support partners. Many others are signed up to help us move Linux up to mission-

global support centers, providing help to customers in 27 languages, in every time zone. And the industry agrees. Oracle was awarded the J.D. Power and Associates Global Technology Service and Support Certification for providing “an Outstanding Customer Service Experience” to North American customers across all product lines. LEADING THE LINUX STANDARD

Edward Screven, Oracle’s Chief Corporate Architect

critical status in the data center.” Other partners endorsing the program include IBM, Accenture, BearingPoint, EMC, BMC, NetApp, Mercury, Kronos, Sterling, Ingram Micro, and Tech Data. Customer endorsements include Acuity Brands Lighting, Alcoa North America, Autodesk, Betfair, Cox Enterprises, IHOP, McKesson, and Southern Company. “As a customer with firsthand experience of Oracle’s outstanding support organization, Dell will use Oracle to support Linux operating systems internally,” says Michael Dell, chairman of the board, Dell. “Oracle’s new Linux support program will help us drive standards deeper into the enterprise. Dell customers can choose Oracle’s Unbreakable Linux program to support Linux environments running on Dell PowerEdge servers.” This widespread industry endorsement is backed by Oracle’s enterpriseclass technical expertise, advanced support technologies, and a global reach including 7,000 support staff in 17

“We think it’s important not to fragment the market, so we will maintain compatibility with Red Hat Enterprise Linux,” explains Screven. “Every time Red Hat distributes a new version, we will resynchronize with their code. We will add bug fixes, which will be immediately available to Red Hat and the rest of the community. We have years of Linux engineering experience and an excellent technical team solely dedicated to Linux. Oracle has a long history of contributing to the community, such as Oracle Cluster File System that is now part of Linux kernel 2.6.16, and several Oracle employees are Linux mainline maintainers.” Furthering this commitment, Oracle has joined the Free Standards Group, a nonprofit organization dedicated to strengthening and promoting Linux as a platform for application development. “Oracle will continue contributing Linux-related innovations, modifications, documentation, and fixes directly to the Linux community on a timely basis,” concludes Screven. O

LEARN more about the Oracle Unbreakable Linux support program oracle.com/linux

GET a free trial (Oracle customers only) and receive 50 percent off purchase price through January 31, 2007 oracle.com/events/linux/promotion.html

ORACLE MAGAZINE

JF07_News.indd 21

JANUARY/FEBRUARY 2007

21

11/17/06 11:53:21 AM

SQL_Italy.3.5 ad

11/14/06

11:46 AM

Page 1

Take control of your database applications with SQL Detective 3.5 NEW

E TH

WO

CLASS R LD

T O O L F O R E V E RY B O D

Y’ S

BUD

GE

T

Here is the latest! They forged a perfect alliance in their conquest of Italy and I hear that another market is already under contract. Details will follow soon!

SQLDetective: Mr Guidetti, you are the president of Confor Informatica, one of the largest certified Oracle partners in Italy. Confor is now the exclusive distributor of SQLDetective in Italy. Why SQLDetective? Confor: As the oldest Italian consulting company, focused on Oracle since 1986, we have tested many products extensively in order to grant our customers the best solutions available. SQLDetective amazes us. It is a superior product at an affordable price. SQLDetective: This represents the business and strategic side of Confor's decision. What aspects of SQLDetective satisfied the expectations of your technical experts? Confor: We marketed SQL Navigator* and Toad* prior to their acquisition by Quest Software* and up to the end of 2004. In 20 years of experience, we have not found a product like SQLDetective. Our experts are enthusiastic about its modularity and stability. It satisfies the need for an easy2use development tool as well as the in-depth analysis of our DBA’s. SQLDetective: What are SQLDetective’s key benefits for your clients? Confor: The advantages for the Italian market are: easy2use user interface; broad range of tools and features; strong stability; unique innovations; accurate technical support and leading price performance. SQLDetective: Why should Italian PL/SQL developers buy SQLDetective from Confor? Confor: We provide first rate technical support, training classes, technical consultancy and all marketing and sales activities in the local Italian language. We understand the needs of our Italian Oracle users!

SQLDetective: What are Confor's goals with SQLDetective? Confor: We know the Italian Market for PL/SQL developers extremely well. With SQLDetective, we expect to regain the number one position in the Italian market within 3-4 years for this type of solution. About Confor - www.confor.it Confor is a consulting and information technology company specializing in the automotive, leasing, petroleum, and telecom markets. The services includes software products, database & application management, system integration, management consulting and training. Solutions availabe for ERP and CRM systems, as well as for BI and HR projects. Confor has formed partnerships with leading international IT vendors and has partnered with Oracle for 20 years. Luca Guidetti, President of the Board, Confor Informatica S.p.A., Italy Discover SQLDetective 3.5 - the world class tool for everybody’s budget. Visit www.sqldetective.com to learn why the new 3.5 is one of the most powerful, advanced and easy2use Oracle application development tools available. The NEW SQLDetective 3.5 is ideal for developing database objects, writing and debugging stored programs, executing, testing and formatting SQL and PL/SQL statements, managing tablespaces and rollback segments.

NEW

SQL Detective 3.5 www.sqldetective.com

* Quest Software, SQL Navigator and Toad are a registered trademarks of Quest Software, Inc.

c h a n n e l s COMMITMENT

BY A A RO N L A Z E N BY

Protecting Nature and Information The Nature Conservancy protects endangered species and drinking water.

eginning in the Catskill Mountains, the Neversink River over the next two years. Specifically, the grant enables the winds its way for 60 miles to the confluence of the New Nature Conservancy to develop a new, expanded version of York, New Jersey, and Pennsylvania borders. Aside from ConserveOnline. Oracle is also making a US$200,000 in-kind featuring some of the best fly-fishing in the country, software donation that will enable the Nature Conservancy to this Delaware River tributary is home to the world’s healthiexpand its geographic information system, which allows conest population of the globally imperiled dwarf wedge mussel, servationists to visualize, query, and layer spatial information and the mussels’ endangered status has prompted a large-scale on a single screen. These tools allow the Nature Conservancy to conservation effort called the Neversink River Project. The better manage the growing amount of scientific data. project—operated by the Nature Conservancy—keeps the “As a decentralized, science-based organization that is mussels bubbling, the ecosysrapidly expanding, the Nature tem healthy, and New York Conservancy is increasingly City’s purest source of drinking dependent on quality and speed water potable. of knowledge sharing, both Since its founding in 1951, within the Conservancy and the Nature Conservancy has with our partners,” says Steve grown to be a leading conserMcCormick, president and CEO vation organization working of the Nature Conservancy. around the world to protect “Thanks to Oracle’s grant, orgaecologically important lands nizations will have ready access and waters. The organization to compelling information to and its one million members help direct—and inspire—contogether have saved more servation action on a regional, than 117 million acres and national, and global scale.” 5,000 river miles around the Oracle’s partnership with world. By 2015, the Nature the Nature Conservancy is Conservancy hopes to achieve an important part of Oracle’s an ambitious goal to preserve Commitment, the company’s places that represent at least 10 efforts to advance education, The Neversink River, home to the endangered dwarf wedge mussel, is also New percent of every major habitat promote diversity, enrich the York City’s purest source of drinking water. type on Earth. life of communities, and protect But massive projects such as the Neversink River Project the environment. Oracle has been a longtime supporter of the require innovative tools to keep information current, organized, Nature Conservancy; over the past 17 years, Oracle has made and available to the conservation community. It’s for this reason corporate contributions and in-kind donations totaling more that the Nature Conservancy developed ConserveOnline, a free, than US$3.4 million. internet-based resource tool designed to enhance the efficiency “We’re proud of the nearly two-decade relationship we’ve and effectiveness of global conservation by allowing conservafostered with the Nature Conservancy,” says Rosalie Gann, tionists to post data, form work groups, and search the dataOracle’s director of Global Corporate Citizenship. “We’re bases of organizations such as the World Wildlife Fund, the excited to help the organization improve its technology—and Rainforest Alliance, and the Nature Conservancy itself. improve conservation communication throughout the world.” O “We deal with a lot of information and a lot of complexity,” Aaron Lazenby is a senior editor with Oracle Publishing. says the Nature Conservancy’s George Schuler, conservation scientist and director of the project. “Complexity in terms of having researchers out in the river, and dealing with people from all over our region and all over the world.” Oracle’s Commitment To help in these efforts, in 2006 Oracle awarded the oracle.com/commitment Nature Conservancy a US$1 million Commitment Grant

ORACLE MAGAZINE

JF07_Commitment.indd 23

JANUARY/FEBRUARY 2007

23

11/17/06 11:47:17 AM

c h a n n e l s PARTNER NEWS

b o o k BEAT Querying XML: XQuery, XPath, and SQL/XML in Context

GRIDAPP SYSTEMS OFFERS FREE ORACLE REAL APPLICATION CLUSTERS LICENSES

By Jim Melton and Stephen Buxton Morgan Kaufmann www.elsevier.com ISBN: 1-55-860711-0

G

XML has become the lingua franca for representing business data, exchanging information between business partners and applications, and adding structure—and sometimes meaning—to text-based documents. In the area of search, XML offers some challenges and opportunities: querying XML can produce precise, fine-grained results—if you know how to express and execute those queries. Querying XML provides a comprehensive background on XML, from fundamental concepts (what is XML?), data models (infoset, post-schema-validation infoset, XQuery), to APIs (querying XML from SQL or Java), and more. The book provides software developers and system architects with the most-useful approaches to querying XML documents and repositories. It also offers managers and project leaders a way to grasp how querying XML fits into the larger context of querying and XML.

Oracle Database 10g Real Application Clusters Handbook By K Gopalakrishnan Oracle Press oraclepress.com ISBN: 0-07-146509-X If you need a comprehensive guide to Oracle Real Application Clusters (Oracle RAC), this is the book for you. Oracle Database 10g Real Application Clusters Handbook covers the full spectrum of Oracle RAC topics. Rather than providing a lot of commands and syntaxes that are readily available in the standard documentation and other Oracle texts, the book offers a solid background on Oracle RAC as well as its fundamentals. Author K Gopalakrishnan, a consultant with Oracle, provides tuning and troubleshooting tips and offers insight on the most advanced diagnostics available. He provides a complete conceptual overview of various Oracle RAC building blocks as well as deeper discussions on their inner workings. “The goal of this book is to explain implementing and using Oracle RAC in the most efficient manner,” says Gopalakrishnan.

Browse for Oracle books at oracle.com/ technology/books/10g_books.html.

24

JANUARY/FEBRUARY 2007

JF07_Partner.indd 24

ridApp Systems’ “Ready. Set. RAC!” promotion bundles GridApp’s D2500 database appliance with free Oracle Real Application Clusters (Oracle RAC) licenses. GridApp’s reference architecture for Oracle RAC allows companies to avoid possible unforeseen costs of installing and managing an Oracle RAC environment. The “Ready. Set. RAC!” offering also includes optional storage and migration services. GridApp’s D2500 appliance combines IBM BladeCenter servers with Clarity, GridApp’s database automation software, to simplify, automate, and virtualize the database environment. Because of the simplification and automation it provides, the D2500 can be put into production within one day and can scale databases in minutes, says GridApp Chief Scientist Matt Zito.

IBM BOOSTS ORACLE ON SYSTEM Z AND LINUX

I

BM and Oracle are collaborating on sales and marketing of enterprise business solutions featuring Oracle Applications (Oracle E-Business Suite and Oracle’s Siebel and Oracle’s PeopleSoft products) and technology for Linux on IBM System z mainframe servers. The Oracle/IBM Joint Solution Center in Montpelier, France, and the IBM Oracle International Competency Center in California’s Silicon Valley will develop best practices, implementation guidance, and support procedures for the new comprehensive solutions. The solutions will be available on the IBM System z9 Enterprise Class and IBM System z9 Business Class servers. Customer incentives up to US$250,000 are planned. “Today, we offer a comprehensive set of enterprise infrastructure and solutions that build upon and modernize customer investments in System z, including Oracle E-Business Suite, Siebel Customer Relationship Management, and PeopleSoft Enterprise using Oracle Database 10g Release 2

on Linux on System z,” says Robert Shimp, vice president of Oracle’s Global Technology business unit. EMC LAUNCHES NEW ORACLE SOLUTIONS AND SUPPORT

E

MC has expanded its specialized storage solutions and services portfolio for Oracle customers in midsize and enterprise organizations and has announced new investments to support Oracle Grid technology. For midsize enterprises, EMC has developed integrated solutions for Oracle Database 10g and Oracle Real Application Clusters based on the EMC Celerra IP storage systems. EMC and Oracle have performed system-level testing and validation of these storage systems in Oracle environments, and can provide documented best practices, reference architectures, and real-world validations to partners and customers. For enterprise environments, EMC has developed an assessment service for Oracle Database 10g Readiness, and a Health Check service for infrastructures supporting Oracle E-Business Suite. The assessment service uses EMC tools and information lifecycle management methodology to assess a customer’s environment and make recommendations about data layout, backup and recovery, availability, and infrastructure for migrating to Oracle Database 10g. The Health Check service evaluates the storage infrastructure up through the Oracle application layer to ensure that customers’ Oracle solutions are running on appropriate infrastructure, and makes recommendations for optimizing those environments. EMC is also investing US$20 million to help Oracle customers use its reference architectures, the two companies’ joint services, and EMC/Oracle proof-ofconcept facilities. ADOBE BUILDS FLEX INTO ORACLE PORTALS

O

racle and Adobe are collaborating to allow developers to include animations, charts, and graphs created

ORACLE.COM/ORACLEMAGAZINE

11/17/06 3:37:33 PM

Partner Spotlight

SMB Partner Momentum Builds

A

s the number of Oracle partners serving the small and medium business (SMB) market continues to grow, Oracle is offering several programs to support partners. “Oracle has long been a trusted partner for small and medium businesses, and we have developed a wealth of knowledge to help facilitate the unique needs of that market,” says Oracle President Charles Phillips. Oracle Accelerate is a new program targeting partners who want to sell Oracle Applications into the SMB market. Prepackaged, industry-specific application bundles are one key to Oracle Accelerate. Working with its partners, Oracle has identified 80 product bundles that can help SMBs quickly employ Oracle’s enterprise applications without sacrificing the applications’ flexibility or functionality. The bundles deliver comprehensive business flows (front-office, back-office, and industry-specific processes) and can be extended by Oracle partners. Oracle Business Accelerators—already an established part of Oracle’s enterprise business—comprise the second key component of Oracle Accelerate. These automated setup tools create end-to-end business flows based on a series of simple but specific questions about the business, and automatically apply that information to the Oracle application implementation. Once a setup questionnaire is complete, a new application can be up and running within hours. Oracle PartnerNetwork (OPN) is the third key element in Oracle Accelerate. Oracle has expanded SMB-specific content on the OPN portal, making available customer presentations, product positioning documents, sales kits, and specialized training materials used by Oracle’s own direct

in Adobe Flex (Adobe’s Flash-based application creation framework) with other Asynchronous JavaScript And XML (Ajax) content in enterprise portals created by Oracle Portal. This allows applications with highly visual displays to be integrated with enterprise processes and data, creating enterprise mashups that have the impact and effectiveness of Web 2.0 applications but that also preserve the standards-based infrastructure. The integration works with the current generation of Oracle Portal, and will be incorporated into future Oracle user-interaction environments. Oracle and Adobe intend to work with the Java Standardization Request (JSR) 168, JSR 268, and Web Services for Remote

sales team. Oracle also plans to open regional SMB Solution Centers throughout the world to showcase Oracle Accelerate and to bring partners into the sales cycle. To support Oracle Accelerate, Oracle has established an SMB Applications business unit, headed by Senior Vice President Tony Kender. The business unit will maintain the partner/reseller ecosystem, drive the development and refinement of product and industry-specific bundles, and generally work to ensure SMB customer success. Oracle currently has more than 19,000 applications customers worldwide that are SMBs. “Our goal is simple: to become the No. 1 provider of applications to small and medium businesses,” Kender says. “With Oracle Accelerate we are aligning Oracle’s proven applications and rapid implementation tools with our partners’ industry solutions under a single package. We have doubled our SMB marketing program budget and added a dozen new SMB-focused executives around the world.” In Europe, the Middle East, and Africa (EMEA), partner momentum around the SMB market is also on the rise. Since June 2006, more than 350 partners in EMEA have signed up for Oracle QuickStart Plus, an entry-level offering for new Oracle value-added resellers and independent software vendors wanting to sell Oracle Database and Oracle Application Server Standard Edition One and Standard Edition to SMBs. “[Oracle] QuickStart Plus provides support that allows partners to quickly take advantage of Oracle products and offer industry-leading solutions to a very buoyant SMB market,” says Penny Philpot, senior director, Oracle Alliances and Channels.

Portlets (WSRP) 2.0 standards groups on the integration. ITEMFIELD CONTENTMASTER NOW INTEGRATED WITH WAREHOUSE BUILDER

I

temfield has integrated its ContentMaster universal data transformation software with Oracle Warehouse Builder 10g Release 2. The combined offering uses ContentMaster’s data transformation capabilities to allow Oracle Warehouse Builder 10g to handle any type of data, including unstructured documents such as Microsoft Word and Excel documents and Adobe Portable Document Format files, and semistructured data such as electronic data interchange, Health Level 7, and complex

COBOL copybooks. By using Itemfield’s software, Oracle customers can integrate unstructured and semistructured data for extract, transform, and load; data quality and auditing; integrated relational and dimensional modeling; and lifecycle management of data and metadata. GENPACT AND TURNKEY AUTOMATE ORACLE E-BUSINESS SUITE TESTING

G

enpact and TurnKey Solutions, two members of the Oracle PartnerNetwork, have formed a global alliance to provide testing automation for Oracle E-Business Suite customers. Genpact will implement TurnKey’s testing scripts against a wide range

oracle magazine 

JANUARY/FEBRUARY 2007 

25

PARTNER NEWS of Oracle modules, including Oracle Financials, Oracle Human Resources Management, Oracle Manufacturing, Oracle Order Management, and Oracle Projects. This will automate functional and regression testing efforts to improve patching, upgrade, and go-live Oracle E-Business Suite 11i rollouts. One result, according to TurnKey CEO Bruce R. Guebner, will be moreeffective conference room pilots. “As a result of deploying these automated technologies, we’ve seen a significant drop off in the number of functional business users and technical engineers required to meet ever-more demanding testing lifecycle deadlines,” Guebner says. “With this automation deployed, customers no longer have to wait for the application to be ready prior to testing.” NAVTEQ MAP DATA NOW BUNDLED WITH ORACLE APPLICATIONS

O

racle and NAVTEQ, a global provider of digital maps for vehicle navigation and location-based solutions, have reached a multiyear worldwide agreement to incorporate NAVTEQ boundary mapping data into Oracle Database 10g and other Oracle products, effectively coupling geospatial information with enterprise data from supply chain, customer relationship management, and planning and risk-assessment applications. The NAVTEQ-Oracle combination will make it easier for customers to employ Oracle Spatial 10g, Oracle Locator, Oracle Application Server 10g MapViewer, and future Oracle products that will use geographic data. NAVTEQ’s mapping data includes administrative boundaries for countries, states, and cities, as well as major highways and roads. The company also plans to offer additional map and demographic products, such as street networks, ZIP codes, and industry-specific data sets, to Oracle customers.

26 

JANUARY/FEBRUARY 2007 

APPSECINC’S APPRADAR NOW AVAILABLE FOR ORACLE ON LINUX

A

pplication Security, Inc., (AppSecInc) has announced Oracle on Linux support in AppRadar, part of its application security solution. AppRadar uses real-time monitoring and security auditing to defend against application vulnerabilities while ensuring adherence to regulatory requirements. AppRadar protects databases against internal and external attacks without degrading database performance, and supports both host- and network-based deployment. AppSecInc’s decision to support Oracle on Linux was driven by customer demand. AppRadar is part of AppSecInc’s database security suite, which also includes AppDetective for database vulnerability assessment scanning, DbEncrypt for column-level database encryption, and AppSecInc Console for distributed management.

GridApp Systems

SILVERSTORM RDS OVER INFINIBAND NOW ON ORACLE REAL APPLICATION CLUSTERS

AppSecInc’s AppRadar

S

ilverStorm Technologies, a provider of high-performance interconnect solutions for clustered computing, has released the Reliable Datagram Sockets (RDS) over InfiniBand interconnect for Oracle Real Application Clusters 10g (Oracle RAC). InfiniBand is a highperformance, switched fabric interconnect standard for servers. RDS was codeveloped by SilverStorm and Oracle. In beta testing, RDS over InfiniBand provided up to 60 percent performance improvement over Gigabit Ethernet for interconnect-intensive applications. SilverStorm’s highperformance clustering solutions for Oracle RAC are showcased in Oracle’s Enterprise Technology Centers. RDS has been validated through Intel’s Enabled Server Acceleration Alliance program and is available for Oracle Database 10g Release 2 at no cost and in SilverStorm’s QuickSilver 3.2 or later host releases for Linux. ■

oracle.com/oraclemagazine

www.gridapp.com

IBM System z

www.ibm.com/systems/z

EMC Solutions for Oracle www.emc.com

Adobe Flex

www.adobe.com/devnet/flex/articles/flex2_ portal.html

Oracle Partners for SMBs

oracle.com/solutions/mid/acceleratepartners.html

Application Modernization Initiative www.hp.com/go/ami

Intel

www.intel.com

Itemfield’s ContentMaster Universal Data Transformation Software www.itemfield.com

Genpact and TurnKey automation solutions www.genpact.com www.turnkeysolutions.com

NAVTEQ

www.navteq.com www.appsecinc.com

SilverStorm RDS for Oracle www.silverstorm.com/oracle

c h a n n e l s PEER-TO-PEER

BY B LA IR CAMPBELL

The Good Old Days

Three peers reflect on early adventures in database programming, analysis, and split-finger fastballs. Steve Karam

running our nightly batches.

How did you get started in IT?

Which new features of Oracle Database 10g are you finding most valuable? The

My aunt gave me an 8086 computer when I was nine years old, and the first thing I learned to do on it was program in GW-BASIC. Around age 10 was when I really started programming, and by age 16, I was writing a program to hack into my school’s computer. A classmate who saw me writing that program in study hall told his dad, who was an Oracle contractor for the Navy, about me, and his dad ended up hiring me on as a junior Oracle DBA. What would you like to see Oracle, as a company, do differently? I’d like to see an increased focus on peerSPECS Company: Burleson Oracle Oracle Academy, Oracle’s education Consulting and Training program for high school students, Job Title/Description: Senior and the Oracle Academic Initiative, Oracle DBA and instructor, responsible for training, mentoring, for students at the college and unibackup and recovery, performance versity level. It would be great for tuning, and implementation of new systems Oracle to concentrate on getting Location: Virginia Beach, Virginia really intelligent up-and-coming Oracle Credentials: Oracletechnologists into the Oracle field. certified master (Oracle Database 10g ), with 10 years of experience using Oracle products oracle.com/technology/community/ oracle_ace

Tell us about your upcoming book, Easy Oracle Jumpstart ( Rampant TechPress, 2006). It’s a DBA

possibilities for composite partitioning, including range/list partitioning, open new doors for performance and storage. These features, along with the new partition pruning capabilities, are very useful in a large database like ours. I first did database analysis using bstat/estat utilities, so I find the latest version of Statspack greatly improves database analysis.

Do you have a favorite vacation spot?

What’s your favorite tool or technique on the job? Statspack and session tracing—to find the most important queries and optimize their execution time by rewriting them when possible, or by playing with indexes and parameters. Implementing table partitioning is a big challenge: One table in our database is more than 150GB, without accounting for the indexes, and finding the best partition settings for this table is crucial for

Job Title/Description: Oracle DBA consultant and Oracle’s PeopleSoft applications administrator, currently providing technical support to France Telecom’s development and production teams Location: Toulouse, France Oracle Credentials: Oraclecertified DBA (Oracle9i ), with more than 8 years of experience using Oracle products oracle.com/technology/community/ oracle_ace

Dave Moore What advice do you have about getting into Web and database development? Build a Web site for something you’re passion-

ate about. If it’s gardening, build and maintain a gardening Web site that you think would be useful to others. Then enhance it over time—add a database back end or wiki. It will be very rewarding.

What technology has most changed your life? First, there’s Quicken,

which has actually made me look forward to paying my bills each month. Second is my BlackBerry, which I depend on much more than my laptop these days.

How do you use the internet? I use it mainly for research—like finding out the pitfalls of throwing a split-finger fastball at too early an age. These days, however, I find myself visiting fewer and fewer sites. I use CNN .com as my morning newspaper but really only frequent about four other Web sites: asktom .oracle.com; oracleutilities.com; oracle.com/technology; and, of course, www.quicken.com. O

ORACLE MAGAZINE

JF07_Peer.indd 27

Company: Communication & Systèmes, a systems integration company

I love the Pyrenees—it’s a beautiful mountain range with a long and interesting history.

primer—the basic concepts you need to know. It’s a joint effort between me and another DBA, Robert Freeman. My second book, Oracle and Ajax, is due to the publisher next April.

Nicolas Gasparotto

peerSPECS

peerSPECS Company: Database-Brothers, Inc. (DBI), a firm specializing in database performance and accountability Job Title/Description: Vice president, research and development, responsible for all R&D tasks for database security and performance products Location: Austin,Texas Length of Time Using Oracle Products: 15 years oracle.com/technology/community/ oracle_ace

JANUARY/FEBRUARY 2007

27

11/17/06 11:59:31 AM

LLP3084

11/8/06

1:04 PM

Page 1

ORACLE PRESS —THE GENUINE AUTHORITY

For more than 10 years, Oracle Press has been working closely with Oracle experts and the user community to develop the most authoritative, comprehensive, and current references on Oracle products and technologies. The choice is clear—if you buy only one book, be sure it’s from Oracle Press.

Oracle Database 10g RMAN Backup & Recovery

Oracle Database 10g Real Application Clusters Handbook

Oracle SQL Developer Handbook

Matthew Hart and Robert G. Freeman

K Gopalakrishnan

Dan Hotka

0-07-226317-2

0-07-146509-X

0-07-148474-4

Deploy a rock-solid data backup and disaster recovery strategy using the tips and techniques in this complete guide to Oracle Recovery Manager.

This in-depth volume explains how to maximize database availability, scalability, and efficiency using Oracle Real Application Clusters (RAC).

Enhance productivity and simplify database development tasks using Oracle SQL Developer and this hands-on guide.

AVA I L A B L E N OW E V E RY W H E R E B O O K S A R E S O L D . Join the community to be the first to hear about new Oracle Press releases and special offers at www.oraclepressbooks.com.

O R I G I N A L • AU T H E N T I C

O N LY F R O M O S B O R N E

c h a n n e l s CUTTING EDGE

Driving and Flying

Encrypted hard drives and planes that mimic birds Perching Plane

SEAGATE, CORNELL UNIVERSITY

Secure Hard Drives

In this fast-paced world, we’ve all got plenty to worry about, so losing a laptop with sensitive information on it is the last thing you need—especially if you work for a large company or government organization. Sure, there are passwords and other security applications that limit access to data, but there are better ways to secure hard drive content. Seagate’s DriveTrust technology is a drive-level set of security services that take advantage of the hard drive’s computing environment. Modern disk drives contain a full-fledged computing element, including processor, RAM, a multitasking operating system, and dedicated private magnetic storage. Although host operating system environments are designed to enable widespread application support, hard drives are closed computing environments that run specialized code to manage drive functions. In short, the hard drive is an ideal place for securing information because its internal operations are sealed off from other computing system resources. DriveTrust-enabled drives automatically encrypt and decrypt all the data that travels in and out of the drive. Unlike other data encryption applications, DriveTrust encryption keys are password-protected and never appear in any readable format on the drive. Encryption combined with strong authentication simplifies and secures hard drive disposal and reuse. Data on an encrypted drive is only accessible when the encryption key is enabled through a valid password. If the encryption key is changed or eliminated, all of the data is instantly rendered inaccessible. Technicians can now safely repurpose or dispose of the drive, without compromising sensitive information. Just don’t forget your password.

It’s a bird! It’s a plane! No. . . it’s a perching plane—a plane that lands like a bird. From the early days of aircraft design, engineers have looked to birds for inspiration. Whereas most engineers focus on how birds fly, Ephrahim Garcia at Cornell University in Ithaca, New York, believes birds have a lot to teach us about landing. He is designing a pilotless aircraft that can land vertically by “perching” like a bird. Currently the perching plane is being developed to address a problem with reconnaissance planes: They find something interesting to look at but can’t inspect it properly because they don’t have enough fuel to keep flying over the area for any length of time. “If you could land the plane on the edge of a nearby building, you could continue surveillance of an area,” says Garcia. Since runways are hard to come by on the tops of buildings, the reconnaissance plane would have to land vertically. Existing vertical landing craft, such as helicopters or Harrier jump jets, are too heavy and require too much fuel to make them suitable for surveillance. Instead, Garcia believes, by mimicking the way birds come in to land, he can bring an aircraft to a gentle stop using aerodynamics alone. When a bird wants to perch, it flares its wing feathers, angling them against the airflow; then it does the same with its tail feathers as it lowers them. This configuration produces as much drag as possible, and slows the bird enough for a safe touchdown. When Garcia’s plane is preparing to land, the wings rotate upward to force the fuselage down, creating strong drag. The tail extends away from the body on a long boom, which is articulated so the tail can droop down to provide varying degrees of drag as it moves.

Seagate DriveTrust www.seagate.com

Perching plane

www.engr.cornell.edu

ORACLE MAGAZINE

JF07_Cutting Edge.indd 29

JANUARY/FEBRUARY 2007

29

11/17/06 11:48:13 AM

30

JANUARY/FEBRUARY 2007

JF07_HiAvail.indd 30

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:48:51 PM

ALWAYS AVAILABLE BY A LA N JOC H

CORBIS

ORACLE HIGH-AVAILABILITY TECHNOLOGIES DRIVE BUSINESS 24/7. on’t be fooled by appearances—Red Nose Day is no laughing matter. Comic Relief’s biennial fund-raiser invites people throughout the United Kingdom to don red noses as they get sponsored to do all sorts of silly things and donate money to support antipoverty programs locally and in Africa. The event culminates with a five-hour telethon, during which comedians such as John Cleese and Ricky Gervais might show up to push for a final round of telephone or Web donations. Donors apparently laugh all the way to their wallets: A recent campaign netted more than US$123.6 million. But peek behind the scenes at those make-orbreak telethons and you’ll find a lot of serious IT staff who could use a laugh themselves. Because so ORACLE MAGAZINE

JF07_HiAvail.indd 31

JANUARY/FEBRUARY 2007

31

11/20/06 3:48:53 PM

much of the fund-raising success hinges on efficiently processing more than 250,000 electronic transactions in a short time frame, Comic Relief’s data center is fine-tuned for high availability (HA). “If the system isn’t working, then obviously we can’t collect contributions,” says Martin Gill, head of new media for Comic Relief. “We can’t just go back to people a couple of days later and say, “Remember when you were feeling generous and you wanted to give us £100? Please try again now, because we fixed the glitch that prevented you doing it the other night.” Given the narrow window in which the charitable organization needs to process pledges, any glitch can cost the fund-raising effort—so systems need to be up, available, and fast. To avoid any awkward second acts, Comic Relief’s newmedia managers rely on a dual-data-center architecture built with Oracle Database 10g, Oracle Real Application Clusters (Oracle RAC), and Oracle Data Guard. Together these technologies ensure that the charitable fun doesn’t grind to a halt if a hard drive, server, network switch, or entire site crashes. This high-availability approach came in handy during a recent Red Nose Day when processing times were rising above targeted levels. The flexible high-availability environment enabled Comic Relief to switch all the transaction processing to one data center while using the second one for diagnostics, ultimately solving the problem with a quick upgrade before rejoining the two centers. “We had no loss of service to our donors,” Gill says. “Only some sweaty engineers who worked hard and brilliantly to successfully manage the situation.” EASIER CHOICES

High availability and disaster recovery (DR) have long been like life insurance: IT managers know they need them, but their hard-to-quantify return on investment (ROI) poses a challenge. Budget watchers struggle with how much is enough to spend for server and storage resources that might remain idle most of the time. Now, new HA/DR strategies mean IT managers don’t have to make that choice. The right technologies configured

“Clustering is what’s compelling about the Oracle technology,” says Hernan Alvarez, Director of Engineering Operations for Farecast. “We looked at other alternatives, but there really wasn’t any other choice.”

within an effective high-availability architecture keep data and systems protected against extended outages, while also contributing processing power for day-to-day tasks when crises aren’t looming. “Many companies think their disaster recovery infrastructure is an investment that cannot provide other operational benefits,” says Sushil Kumar, senior director of database product management at Oracle. “Oracle’s philosophy is for customers to derive the most out of their disaster recovery infrastructure, even in times when there is no disaster.” “K” Line America, a global transportation company specializing in ocean transport, found this high-availability balance when it installed Oracle Database 10g and Oracle

Oracle Data Guard is a feature of Oracle Database 10g that creates, synchronizes, and monitors one or more standby databases to protect data from failures, disasters, errors, and corruptions. These standby databases can be located at remote disaster recovery sites thousands of miles away from the production data center, or they may be located in the same city, same campus, or even in the same building. If the production database becomes unavailable

32

JANUARY/FEBRUARY 2007

JF07_HiAvail.indd 32

because of a planned or unplanned outage, Oracle Data Guard can switch any standby database to the production role, thus minimizing the downtime associated with the outage and preventing any data loss. In keeping with the imperative to make maximum use of standby database resources even while in standby role, an Oracle Data Guard standby database can field queries and run backups to relieve processing demands on the

main database. Operating system and hardware maintenance can be done in rolling fashion: First at the standby side, and then after a planned role transition (referred to as a switchover) the standby database assumes the production role and the same maintenance can be executed on the original primary with minimal downtime. Oracle’s Sushil Kumar says, “People have assumed that certain tasks require downtime, but Oracle’s goal is to eliminate planned maintenance downtime.”

REX RYSTEDT

STAYING SECURE WITH ORACLE DATA GUARD

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:48:58 PM

“High availability is not something you build on top of your existing applications. It needs to be thinking that pervades your entire IT infrastructure.” —Mano Malayanur, Manager of Technical Operations and Infrastructure Management and Infrastructure Architect, Fannie Mae Guarantee Businesses Systems (GBS) group RAC. Its dual server cluster protects “K” Line’s global transportation management system with automatic failover should either server node crash for any reason. “K” Line uses Oracle RAC to automatically balance transaction processing between its two servers. The result is a boost in processing capacity: All resources are used all the time, and users are protected from server failure. “Oracle RAC really impressed us because it allows us to take advantage of both servers,” says Knut LaVine, general manager of application development at “K” Line America. “We saw a dramatic improvement in the performance of the application because we were able to utilize both servers at the same time.”

DAVID DEAL

BUDGET RELIEF

The right high-availability architecture delivers other economic advantages as well. Because Oracle software can provide the highest level of availability on commodity hardware, such as x86-based servers, high-availability designers aren’t forced to buy expensive proprietary platforms, long thought to be essential for reliability. This expensive philosophy dates back to mainframe models and argues that the more you spend on hardware, the fewer breakdowns you’ll experience. Today, enterprises can achieve comparable reliability at a fraction of the mainframe cost using Oracle’s high-availability functionality and commodity-priced hardware. “We used to spend a tremendous amount of money buying very expensive proprietary UNIX systems,” says Hernan Alvarez, director of engineering operations for Farecast, an online travel-booking site based in Seattle, Washington. “With the advent of clustering software and open source operating systems, that paradigm has shifted. Now it’s the software that’s really making things happen.” Farecast invested in Oracle RAC, which automatically transfers and rebalances workload from a failed server to surviving servers in a cluster. The ability to deploy a high-availability solution on commodity hardware using Oracle RAC is a cornerstone of Farecast’s strategy. The travel site applies its proprietary algorithms to fare data collected from airlines and third-party sources to predict prices for customers shopping for the best deals. Customers access the site from around the world, which means that any downtime, whether for planned maintenance or resulting from technical problems, would almost always affect some customers during the business day. To cope, Farecast uses 100 x86 servers with 64-bit proces-

Mano Malayanur of Fannie Mae’s Guarantee Businesses Systems group calls Oracle Data Guard “our preferred solution for disaster recovery.” The decision to go with Oracle followed an extensive proof-of-concept pilot project.

sors and large amounts of RAM. These powerful servers came at a relative bargain of only about US$5,000 each. The redundancy available from these Oracle RAC–running econo-models gives Alvarez confidence about his HA capabilities. “If we lose a box, who cares—we’re not dependent on any one device in our network,” Alvarez says. Farecast’s predictive engine relies on an Oracle data warehouse with more than 5TB of data for storing and analyzing data for its airfare predictions. Before Oracle Database 10g and Oracle RAC, Farecast relied on a MySQL database, a product that Farecast just outgrew, according to Alvarez. “Clustering is what’s compelling about the Oracle technology,” he says. “We looked at other clustering and database alternatives, including IBM DB2 and Microsoft SQL Server. But we have a very large database, so with partitioning, compression, and clustering on top of that, there really wasn’t any other choice. SQL Server just wasn’t going to get it done.” Alvarez adds that Oracle RAC’s ability to configure multiple low-cost commodity servers and create a highly available and scalable grid that requires no change to application or database structures keeps total costs under control. “I’d say our hardware costs are one-tenth of what they were five years ago,” he says. Which helps Farecast align its high-availability needs with its business demands. “We could always roll out a $10 million solution and get the HA job done, but does that meet our business goals?” he asks. “We’re able to stay within budget and get the performance and availability we’re looking for [with Oracle], so it’s a huge business success.”

ORACLE MAGAZINE

JF07_HiAvail.indd 33

JANUARY/FEBRUARY 2007

33

11/20/06 3:49:02 PM

LOW-COST REDUNDANCY

SERIOUS PROTECTION

By the time Comic Relief’s Red Nose Day ends, about 14 million people will have watched the telethon broadcast on the BBC, and the Comic Relief Web site will have received hits from up to one million unique visitors. The organization’s financial model depends on quickly depositing donations into interest-bearing accounts. Interest yields are one of the income streams that Comic Relief uses to avoid paying for adminis-

34

JANUARY/FEBRUARY 2007

JF07_HiAvail.indd 34

M A K I N G I T AVA I L A B L E

UNPLANNED DOWNTIME

Site Failure Oracle Data Guard provides the ability to set up and maintain a standby copy of your production database.

PROTECTING FROM DATA FAILURE

Corruption When data corruption occurs, Oracle provides a host of tools for backup and recovery, such as RMAN and Oracle Secure Backup.

PROTECTING FROM COMPUTER FAILURE

Oracle Real Application Clusters (Oracle RAC) Oracle RAC enables enterprise grid computing by clustering multiple servers that are highly available and easily scalable.

trative overhead from the direct public donation pool. “We promise that for every pound a member of the public directly gives us, we will give a pound directly to the projects we support,” says Gill. “All time savings and systematic efficiencies offered by digital technology help us meet this promise to the public.” On the key nights, both of Comic Relief’s data centers move into action. Oracle RAC provides protection from server failure within the primary site. Unless there’s an emergency, the centers combine their processing capacities to keep individual e-commerce transaction processing times to less than two seconds. “Oracle RAC is the cornerstone of our high-

STEVE LYONS

Oracle RAC can grow from an initial two nodes to as many as 100 nodes as power is needed. Because all servers in an Oracle RAC cluster are active, application performance scales as additional servers are added to the cluster. In addition, the multiple servers in Oracle RAC all have access to all of the data. Because of Cache Fusion, users can coordinate access so all servers can modify any of the data. This allows work requests to run on any server, instead of being limited to a specific server because of some “partitioning” algorithm required of shared-nothing environments. The combination of these attributes makes it possible to build clusters of low-priced commodity servers that can provide higher availability and better performance than much more costly and proprietary mainframe-based high-availability architectures. The Oracle database shared by all servers in a cluster is exposed to storage subsystem failures that can cause data file corruptions on the primary database. Such failures are infrequent, but when they occur they result in unacceptable downtime for mission-critical applications. Oracle Data Guard isolates the standby database from such corruption by continually validating all data before it is applied. Corruptions caused by the primary database storage subsystem, or corruptions introduced by the network during the course of transmitting data to the standby site, are never applied to the standby database. This concept of isolating the standby site from failures that occur on the production database is one of the major benefits provided by Oracle Data Guard. Like Oracle RAC, Oracle Data Guard is implemented on top of commodity hardware. “It requires only a standard network link between the two computers,” says Oracle’s Kumar. “Oracle Data Guard not only saves customers money, but also provides them with a more efficient and better disaster recovery solution.” These technologies work together to provide a complete solution. “Oracle has developed very powerful availability technologies including Oracle RAC, Oracle Data Guard, Flashback, and RMAN. These technologies are each generally acknowledged to be ‘best-of-breed’ solutions in their space,” says Juan Loaiza, senior vice president for the Systems Technology group at Oracle. “Just as importantly, we have architected these technologies to work seamlessly together to cover all classes of downtime. Without this end-to-end approach, you continue to run the risk of unwanted downtime even if you build resilience into each and every component of your architecture.”

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:49:03 PM

Keeping your systems and data highly available means being prepared for both planned and unplanned situations. Oracle offers a complete set of technologies that enable you to avoid costly downtime and rapidly recover from unforeseen failures.

PLANNED DOWNTIME Storage Failure Automatic Storage Management simplifies disk management tasks such as mirroring, helping DBAs protect against data storage failure.

Rolling Patch Updates Oracle Database supports the application of patches to the nodes of an Oracle RAC system in a rolling fashion, keeping the system available during patch application.

AVOIDING DOWNTIME FOR SYSTEM CHANGES

BEST PRACTICES Maximum Availability Architecture Oracle offers a fully integrated and proven blueprint for building highly available systems, called Maximum Availability Architecture (MAA).

Human Error Human error can occur on many levels; Oracle offers capabilities such as Flashback technologies for analyzing and correcting human error, and LogMiner for analyzing and auditing data changes.

Rolling Release Upgrades Oracle Database 10g supports database software upgrades and the application of patch sets in a rolling fashion–with near-zero database downtime— using Oracle Data Guard. Dynamic Resource Provisioning Adapting to changes in hardware and meeting resource demands can be accomplished without disrupting the database.

JOHN BLYTHE

Fast Start Fault Recovery Fast Start Fault Recovery provides fast and predictable recovery from system faults and database failures.

availability solution. It gives us a chance to cope with flash crowds, high demand, or even a failure in one of our database servers with little or no degradation of performance to an end user,” says Gill. As an extra precaution, Oracle Data Guard provides disaster recovery failover between data centers by keeping a standby copy of the database at the second data center synchronized with the database at the primary location. “If there’s a failure in our primary environment, we can shift sessions to the other site,” he says. Comic Relief’s standby database also provides a critical layer of additional data protection and high availability.

AVOIDING DOWNTIME FOR DATA CHANGES

Partitioning Database administrators can partition large tables and indexes, helping prevent regular maintenance from impacting entire tables and confining errors to smaller data sets.

Online Reorganization Administrators can perform maintenance operations without disrupting database operations or users who are updating or accessing data.

HIGH AVAILABILITY IS A PHILOSOPHY

Fannie Mae, a financial services company that collaborates with mortgage lenders to ensure that loans are available for home buyers, needs guaranteed system uptime for its financial systems and to meet federal regulations. “Regulatory requirements dictate that all of our critical applications have complete redundancy to meet specific high-availability needs,” says Mano Malayanur, manager of technical operations and infrastructure management and infrastructure architect for Fannie Mae’s Guarantee Businesses Systems (GBS) group. The GBS arm of Fannie Mae runs Oracle Database 10g Release 2, a local high-availability cluster, and Oracle Data

ORACLE MAGAZINE

JF07_HiAvail.indd 35

JANUARY/FEBRUARY 2007

35

11/20/06 3:49:04 PM

COMPREHENSIVE HIGH AVAILABILITY Guard, for its production database to stay running if a breakdown occurs. Oracle Data Guard provides what Malayanur calls “our preferred solution for disaster recovery.” Some applications in Fannie Mae also use Oracle RAC for additional high-availability and horizontal scaling. Before Fannie Mae’s GBS group made its choice, it conducted an extensive proof-of-concept project that tested how well its database, middle layers, and client infrastructure could handle the projected business demand. The project simulated 1 million transactions per hour, with each transaction including many hits to the Oracle database. But beyond speed, the project also had to prove data reliability—Fannie Mae wanted nothing less than zero when it came to data loss protection. This approach is fairly typical for other applications in Fannie Mae. The performance tests help Fannie Mae reduce the time required for a failover to occur between servers at a site, and between sites. “When we go into our test lab,” says Malayanur, “we have a clear idea of what we want to see: Is the solution compatible with the other layers in our technology stack? How long does it take to fail over from server to server and site to site? Is the failover automated? And then we do tests to verify that the numbers are where we expect them to be.” Oracle Data Guard proved to be a key technology component in the organization’s data protection scheme. The pilot

SNAPSHOTS Comic Relief www.comicrelief.com Location: London Industry: Charitable fund-raising Employees: 95 Oracle products: Oracle Database 10g Release 2, Oracle Application Server 10g, Oracle Data Guard, Oracle Real Application Clusters

Fannie Mae www.fanniemae.com Location: Washington DC Industry: Financial services Employees: 5,500 Oracle products: Oracle Database 10g, Oracle Real Application Clusters, Oracle Data Guard, Oracle Enterprise Manager

Farecast, Inc www.farecast.com Location: Seattle, Washington Industry: Online travel Employees: 25 Oracle products: Oracle Database 10g, Oracle Real Application Clusters, Oracle Enterprise Manager

“K” Line America, Inc.

(A wholly owned subsidiary of Tokyo-based Kawasaki Kisen Kaisha, Ltd.)

www.kline.com Location: Richmond, Virginia Industry: Transportation Employees: 560 Oracle products: Oracle Database 10g, Oracle Real Application Clusters

Kemira GrowHow (U.K.) www.kemira-growhow.com Location: Chester, U.K. Industry: Fertilizer and agricultural products Employees: 450 (in the U.K.) Oracle products: Oracle E-Business Suite, Oracle Real Application Clusters, Oracle Data Guard

36

JANUARY/FEBRUARY 2007

JF07_HiAvail.indd 36

Enterprises need a wide range of tools to develop an effective HA architecture. These tools from Oracle can help ensure success.

Oracle Real Application Clusters (Oracle RAC) Oracle RAC lets enterprises set up clusters of multiple servers to provide processing power to applications that access a single database. No application or database changes are required. If a server fails, the surviving servers in the cluster automatically take over processing chores. Oracle RAC provides scalability; additional servers can be introduced into the cluster in a nondisruptive fashion to help with increasing workloads. Oracle RAC is a database option for Oracle Database 10g Enterprise Edition and is included with Oracle Database 10g Standard Edition.

Oracle Data Guard Oracle Data Guard enables IT managers to automatically maintain a synchronized, standby copy of a production database in another location that can immediately be elevated to primary status should the production database fail.

Oracle Enterprise Manager

recovery-related files, even daily backups, for an Oracle database. Automatically managed by Oracle Database, this resource cuts recovery time by eliminating downtime associated with restoring archived files from tape media.

Recovery Manager (RMAN) RMAN automates and manages backup and recovery processes for Oracle databases, including automatically backing up and recovering data to the flash recovery area. RMAN is integrated with the core database engine, allowing it to do its operations most efficiently.

Flashback Flashback helps companies recover from human error or logical corruption that results in damaged data, and it does so at a level of granularity appropriate for the corrective action required. Flashback Query can roll back changes from individual queries; Flashback Table can roll back data from a single table to its last correct version. For widespread data corruption, Flashback Database lets users roll the entire database to a desired point in time, many times faster than traditional point-in-time recovery methods.

This systemwide administration tool gives IT managers a Web-based interface for monitoring database performance, allocating resources, and managing Oracle RAC installations and Oracle Data Guard standby databases.

LogMiner

Automatic Storage Management (ASM)

This secure network tape backup software for Oracle databases and file systems lets administrators perform direct tape backups without third-party software. It provides an integrated, easy-to-use backup solution that encrypts data to tape to safeguard against the misuse of sensitive data if backup tapes are lost or stolen.

This integrated file system and volume manager eliminates the need for third-party storage management software and simplifies storage management for Oracle databases. A feature of Oracle Database 10g, ASM makes it easy to optimize performance of storage subsystems. ASM’s built-in mirroring provides high availability by protecting against local disk failure.

Flash Recovery Area This area consists of a unified disk-based storage location for all

LogMiner allows redo log files to be read, analyzed, and interpreted using SQL. IT managers can use the analyses to audit changes to data or recover deleted data.

Oracle Secure Backup

Maximum Availability Architecture (MAA) MAA provides an Oracle-validated blueprint of technology and architectural best practices to achieve highest availability.

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:49:05 PM

“We wouldn’t trust our business processes to other offerings. Oracle products have scaled from large systems down to smaller business servers, not up from PCs.” —Dave Allen, IS Facilities Manager, Kemira GrowHow (U.K.) project showed Oracle Data Guard could sustain synchronous zero data loss protection and avoid any loss of information for workloads running as high as 16 megabytes per second of redo data. This is very high database throughput, easily surpassing what is seen in most mission-critical applications. Fannie Mae found that Oracle Data Guard could run at even faster rates in asynchronous mode, for applications that didn’t have such stringent data loss requirements. Fannie Mae’s testing didn’t stop once the pilot project was over. The company continues to test and audit the system regularly to make sure that changes to the environment don’t reduce its protection. “High availability is not something you build on top of your existing applications,” Malayanur says. “It needs to be thinking that pervades your entire process of setting up an IT infrastructure.” CLEAR ROI

Because they traditionally haven’t been designed to contribute to daily business profitability, high-availability technologies have been difficult to evaluate for ROI. The consequences of downtime may be real, but how can companies know if the high-availability choices they’re making are financially sound? Kemira GrowHow (U.K.) grappled with this question as it reevaluated its high-availability service contract in 2003. The fertilizer and agricultural products company in the United Kingdom had been relying on a service-level agreement with an outside firm that promised replacements for any faulty hardware within four hours of crashing and a restoration of data to the most recent daily backup within 24 hours. But because manual processes would take over in the interim, “resynching” of the systems could take much longer. Kemira grew increasingly uncomfortable with that timetable, concerned that disrupted order and shipment processing would hurt the company long before repairs were made. Adding to the problem, the company was paying about US$37,000 for the service contract. The company made some changes. Thanks to a 2004 rearchitecting of its high-availability resources, Kemira reduced its maintenance costs, eliminated the service contract, and simultaneously boosted its availability so it would see little disruption in the aftermath of a system crash or site failure. Kemira now runs the Oracle E-Business Suite on a two-node cluster in its primary data center. Oracle Data Guard synchronizes the primary database with a secondary instance at a remote facility. If the production cluster or database fails, Kemira uses Oracle Data Guard to fail over to the remote

Dave Allen, IS Facilities Manager at Kemira GrowHow (U.K.) says that the company chose Oracle technology because of its proven track record. “The Oracle database is bombproof,” he says.

standby database and upgrade it to production mode—all without needing to perform any recovery tasks. As a result of this configuration, Kemira not only eliminated the service-contract fee but also cut its database downtime window from the 24 hours outlined in its service contract to a few minutes. It estimates it can return its applications to full production status in two hours or less in the worst-case scenario of a complete data-center failure. “The investment we made upfront for the new technology was justified by cutting costs from the old contracts,” says Dave Allen, IS facilities manager at Kemira GrowHow. Kemira chose Oracle technology because of its proven track record. “We wouldn’t trust our business processes to other offerings. Oracle products have scaled from large enterpriseclass systems down to smaller business servers, not up from PCs,” Allen says. “The Oracle database is bombproof.” O Alan Joch ([email protected]) is a technology writer based in New England who specializes in enterprise, Web, and high-performance-computing applications.

READ more about high availability

oracle.com/database/high-availability.html oracle.com/technology/deploy/availability/techlisting.html#Avail

DOWNLOAD Forrester report on Oracle RAC oracle.com/start keyword: RAC2

ORACLE MAGAZINE

JF07_HiAvail.indd 37

JANUARY/FEBRUARY 2007

37

11/20/06 3:49:10 PM

8.25x11.125 Coll07 Ad

11/8/06

12:58 PM

Page 1

APRIL 15-19, 2007 MANDALAY BAY RESORT AND CONVENTION CENTER LAS VEGAS, NEVADA

Don’t miss out on the most comprehensive Oracle education event of the year! For the second year, the Independent Oracle Users Group (IOUG), the Oracle Applications Users Group (OAUG) and Quest International Users Group (Quest) are collaborating to bring you the best practices and user-driven training that each users group has to offer for Oracle, PeopleSoft, JD Edwards, Oracle Retail and Siebel technology and applications.

As Oracle continues to enhance and grow its products and services, it’s more important than ever to find the pieces that complete your business puzzle and increase the performance of your Oracle environment. COLLABORATE 07 is the one event where you can: • ACCESS the latest education on Oracle database and applications technology through your choice of more than 600 presentations and workshops facilitated by industry experts and members of the IOUG, OAUG and Quest users groups. • HEAR directly from Oracle executives and product experts in educational sessions and keynote presentations. • LEVERAGE the users groups’ collective voice to Oracle. • EXPERIENCE expanded networking opportunities with more than 5,500 members of the greater Oracle user community. • DISCOVER the full breadth of top Oracle third-party solution providers with access to more than 200 vendors in the Exhibitor Showcase. Presented by: CONFERENCE REGISTRATION OPENS NOVEMBER 1, 2006 EARLY BIRD REGISTRATION CLOSES MARCH 16, 2007

Visit www.collaborate07.com for additional conference details.

GO XML

Oracle Database 10g gives enterprises a way to manage content-rich applications and diverse data with XML.

ENRIQUE FAJARDO

BY DAV I D BAUM

he increased use of content-rich applications and the internet, particularly for business transactions, has put new demands on enterprise databases. One way to handle these demands is with the increased use of XML. As a markup language capable of describing many different kinds of data, XML is used to store and exchange business information—including structured, unstructured, and semistructured data. At the heart of Oracle’s XML strategy is Oracle XML Database (Oracle XML DB), a unique feature of Oracle Database 10g that allows for generating, storing, retrieving, querying, and managing massive volumes of XML data. Oracle XML DB has been adopted by many enterprises that are seeking a way to take advantage of their database infrastructure and skills to manage diverse data.

STORAGE OPTIONS

One good example of how this works is CIMIRe—a government agency in Belgium that manages retirement, disability, and survivor benefits for workers and their families. The agency maintains information about 12.8 million Belgian citizens and uses Oracle XML DB to manage more than 200 million XML documents—and growing, by 70 million documents each year—making it one of the biggest XML databases in Belgium. “We are dealing with high volumes of rather complex XML data that need to be online for 45 years,” says Philippe Delcourt, IT manager for CIMIRe. “The only way to get the best-possible response time is to have a database that does not treat XML as just text but rather understands XML.” According to Delcourt, developers at the agency need to be able to store and access XML data without compromising

ORACLE MAGAZINE

JF07_XML.indd 39

JANUARY/FEBRUARY 2007

39

11/17/06 12:07:50 PM

“The only way to get the best-possible response time is to have a database that does not treat XML as just text but rather understands XML.”

performance. “We want to avoid having two databases—one for relational content and another for XML data,” Delcourt says. “Since both data structures are stored in our Oracle database, we do not have to spend time integrating, maintaining, and backing up two different data stores.” Additionally, CIMIRe needs to be able to exchange information in XML format with other social security offices. Using XML in the database allows the agency to send data to these partners without making any transformations. And because Oracle’s XML functionality is accessible through the standard SQL interface, CIMIRe can use many applications to query its XML data. “We are dealing with high volumes of rather complex XML data,” says Philippe Delcourt, IT Manager for “We can use one interface to query and CIMIRe, the government agency that manages retirement, disability, and survivor benefits for 12.8 million update both relational and XML content,” Belgian citizens. Delcourt is pictured here with CIMIRe Database Administrator Alexandra Lejeune. Delcourt says. “The complex XPath searches are very fast, with subsecond response times, system, according to a carefully defined structure,” she says. and we have maintained this superb performance despite our “Using Oracle XML DB to create and store structured docugrowing volume of data.” ments lets us automate a lot of the process.” VOLUME SIMPLIFIED The Office worked with Oracle, Linsonic, and the Xcential The State of California Office of Legislative Counsel finds Group to establish a data model by leveraging the schemathat Oracle XML DB enhances the power of Oracle Database based aspects of the Oracle XML DB technology. “Being able 10g while reducing storage space and memory requirements. to create a very complex and powerful schema—and leverThese capabilities are particularly appealing to the Office of age [Oracle] XML DB to implement it in an object-relational Legislative Counsel, because it creates a massive document fashion—was a big time-saver,” explains Don Neithinger, a repository for storing about 350,000 bills, constitutional consultant with Linsonic. “Oracle XML DB virtually elimiamendments, resolutions, and legislative measures. nated the pain of data modeling, since the data model evolved The Office is responsible for drafting all of the legislation directly from the schema. The application is tightly coupled for the California State Assembly and State Senate. It mainwith the schema and allows users to mark up the documents tains California statutes and codes—a compilation of all the the way they need to.” bills that have been passed and signed into law, and Oracle ith the initial database developDatabase 10g serves as a central repository for these. “We ment work behind them, the selected Oracle because we needed a database that is highly Office is immersed in putting hunavailable and dependable and that can support relational dreds of thousands of documents in structures along with flexible XML features as part of our billa searchable format for the public. drafting system,” says Mendora Servin, product manager for “Most of our users are attorneys who the Office of Legislative Counsel. don’t have time to learn complex Servin and her team maintain the bill-drafting system for information systems,” says the the State Assembly and State Senate. They also index all the Office of Legislative Counsel’s Servin. documents to simplify searching and research. “Our drafting “Our Oracle-based system makes it easy for them to find the system stores content in Oracle XML DB in a schema-based exact information they need.”

40

JANUARY/FEBRUARY 2007

JF07_XML.indd 40

TON HENDRIKS

—Philippe Delcourt, IT Manager, CIMIRe

ORACLE.COM/ORACLEMAGAZINE

11/17/06 12:07:57 PM

PETER STEMBER

While users enjoy the simplicity, Servin’s team appreciates Oracle Database 10g for its performance, stability, and rapid-development facilities. “Oracle Database 10g has been very reliable,” Linsonic’s Neithinger says. “On top of that, Oracle Database 10g has superior repository features. No other vendor gives the same degree of flexibility in how to store XML content natively in the database.” Neithinger says that fragment-level data retrieval from XML documents is practically instantaneous in Oracle Database 10g, even when very large documents are involved. “A document hierarchy is created within the folder hierarchy that allows users to navigate very quickly,” he says. “It’s a convenient way for users “We selected Oracle because we needed a database that is highly available and dependable and that to find specific parts of the California code.” can support relational structures along with flexible XML features as part of our bill-drafting system,” The future looks extremely promising. says Mendora Servin, Product Manager for the State of California Office of Legislative Counsel. Neithinger adds, “We are also very excited about the next-generation XML storage capabilthe strong data management capabilities that they offer.” ities in the works, because they further enable efficient XML Of course, users don’t care whether data is structured or search and retrieval.” unstructured, as long as the content is managed and stored XML EVOLUTION efficiently. That’s why Oracle works closely with standards As the popularity of XML grows, more enterprises are deploybodies to retrieve structured and unstructured data in a ing XML-capable databases as back-end repositories, says unified way. Noel Yuhanna, an analyst at Forrester Research. “Oracle offers “Oracle has expanded the capacity of the database to native XML support to store both unstructured and semistruc- handle text as well as media, images, videos, spatial data, tured data into databases, including images, faxes, movies, and other kinds of information,” says Vishu Krishnamurthy, XML, content, e-mail, and other complex datatypes,” he says. Oracle’s senior director of XML development. “We have pro“Customers like to use databases for this content because of gressively optimized speed and intelligence across datatypes

STRUCTURAL DETAILS There are two primary ways to store XML content in a relational database—structured and unstructured. Structured storage entails decomposing the content of the XML document into a set of objects. A benefit to this storage approach is that the data can be accessed by applications that understand only relational technology. When an XML schema is registered with Oracle XML DB, the required type defini-

tions are automatically generated from the XML schema, so they can be decomposed and stored in the database without any loss of information. This allows Oracle XML DB to leverage the full power of standard SQL interfaces, while reducing storage space and memory requirements. With unstructured storage the entire XML document is stored natively as a character large object (CLOB) inside the database, and

this storage yields optimal throughput when inserting and retrieving whole documents. This approach allows the document to be retained intact—increasingly important for digital signatures and authentication. Oracle Database 10g, which uses standard access methods for navigating and querying XML based on the World Wide Web Consortium (W3C) XML data model, supports both XML storage approaches.

ORACLE MAGAZINE

JF07_XML.indd 41

JANUARY/FEBRUARY 2007

41

11/17/06 12:08:05 PM

“Oracle’s built-in XML functions give us the option to produce XML data files in a single SQL query, which simplifies development and maintenance.”

—Dave Crichton, Senior Developer, British Skye Broadcasting

and enhanced the SQL syntax to handle domain-specific information.” Oracle has made XML a fundamental datatype—as part of Oracle XML DB, Oracle created the XMLType object to process XML documents and messages, with instances for both structured and unstructured storage. In Oracle Database 10g Release 2, Oracle added standardsbased XQuery capabilities, a schema-based resource metadata facility, a set of SQL functions for data manipulation operations on XML data, and much more. “Traditionally unstructured information is stored in a file system that includes files, folders, and all associated metadata,” says Krishnamurthy, “but this paradigm is inherently insecure and unreliable and certainly doesn’t scale well. That’s why Oracle provides the same access mechanism for all types of content that can be stored in a secure, centralized repository.”

SNAPSHOTS CIMIRe www.cimire.fgov.be Location: Brussels, Belgium Industry: Public sector Oracle products: Oracle Database 10g, Oracle XML DB

State of California Office of Legislative Counsel www.leginfo.ca.gov Location: Sacramento, California Industry: Public sector Oracle products: Oracle Database 10g, Oracle XML DB

British Sky Broadcasting Group www.sky.com Location: Isleworth, U.K. Industry: Media and entertainment Oracle products: Oracle Database 10g, Oracle XML DB

MEDIA CONVERGENCE

This approach to managing content is ideal for British Sky Broadcasting (BSkyB), the largest digital pay-television platform in the United Kingdom and Ireland and a leading broadcaster of sports, movies, entertainment, and news. The company manages real-time XML data feeds, which contain rich customer information—everything from the purchase of personal video recorders and high-definition television services to a specific movie preference in the video-on-demand program. To support its burgeoning subscriber base, BSkyB deployed an Oracle data warehouse. “We’re using Oracle to capture a great deal of information about subscribers—not just basic contact information but also case-management data arising from technical inquiries,” says Dave Crichton, a senior developer on BSkyB’s Customer Marketing Business Intelligence team. Crichton is responsible for maintaining a 3TB data warehouse of customer relationship management (CRM) information about all of BSkyB’s 8.2 million subscribers, such as customer name, contact information, location details, and onsite equipment. The information is used to cross-sell and up-sell additional products and services to these established customers, as well as to reach out to new customers throughout the United Kingdom. Each night, BSkyB’s data warehouse is refreshed with information from its CRM system in the form of XML data feeds into relational data structures in the data warehouse. BSkyB

42

JANUARY/FEBRUARY 2007

JF07_XML.indd 42

uses Oracle XML DB to parse the messages and break them into relational structures, which are then passed through to the data warehouse. Setting up relational tables to store XMLType data enables the growing media company to keep schema-less XML documents in its Oracle database. Crichton likes several things about the XML functionality in Oracle Database 10g— namely, a notable performance improvement, better stability, and plenty of room to scale to 10 million customers. “Oracle has always given us the performance we need, and the XML functionality is becoming progressively more robust,” he says. VERSATILE FRAMEWORKS

XML has become a popular way to store and exchange complex information. Nextgeneration application development stacks will build XML-based content-management applications that are much more versatile and dynamic. “That’s when the technology will move from the edge to the core,” Oracle’s Krishnamurthy predicts, “as businesses start using XML to store all types of business information and to build applications that include voice mail interfaces, videos, new sets of connections and associations, and collaborative work models.” BSkyB’s Crichton agrees with that assessment. He says the company plans to use Oracle XML DB to produce output for third parties, such as customer viewing profiles for informing targeted marketing campaigns. “Oracle’s built-in XML functions give us the option to produce XML data files in a single SQL query, which simplifies development and maintenance,” Crichton explains. “Oracle is definitely at the forefront when it comes to building XML functionality.” O David Baum ([email protected]) is a freelance business writer based in Santa Barbara, California.

READ “Using XML with XML DB and ODP.NET”

oracle.com/technology/pub/articles/williams_xmldotnet.html

“Getting Started with Oracle XML DB”

download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb02rep.htm

DOWNLOAD Oracle Database 10g

oracle.com/technology/software/products/database/oracle10g

ORACLE.COM/ORACLEMAGAZINE

11/17/06 12:08:06 PM

Enterprise

Linux Support From $99

Per server/per year*

Unbreakable Linux

oracle.com/linux or call 1.800.ORACLE.1 *Terms, conditions and restrictions apply. $99 price solely includes access to Linux binaries and updates. 24x7 global support starts at $399 per year/per server.

Copyright © 2006, Oracle. All rights reserved. Oracle, JD Edwards, PeopleSoft and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. The Tux design is copyrighted work of Larry Ewing.

CORP_Linux_99Price_1730

JF07_043.indd 1

12/6/06 2:00:03 PM

EX

JF07_SMB.indd 44

11/17/06 3:41:41 PM

PANDING TO MEET DEMANDS BY DAV ID A . K EL LY

SMALL AND MEDIUM BUSINESSES GROW UP WITH ORACLE.

ORACLE MAGAZINE

JF07_SMB.indd 45

GIL ADAMS

mall business doesn’t mean small requirements. Take the case of fast-growing Bebo.com, the United Kingdom and Ireland’s most popular social networking site. “Our scalability challenge is managing the huge growth in our page views,” says Michael Birch, Bebo’s cofounder, CEO, and CIO. “We already have 27 million subscribers and turn about 4 billion page views a month. 25 percent [monthly] growth on top of that is significant.” Bebo started out with Oracle Database 10g Standard Edition One, but has since scaled up to Enterprise Edition so it could spread the load across additional processors. “Oracle Database 10g allows us to scale trouble-free, I’m pleased to say,” says Birch. “We just built a standby database and then flipped our systems over.” Bebo’s experience is a good example of the types of pressures facing today’s small and medium businesses (SMBs)—business demand for fast performance, high availability, data security, and scalability in an IT environment where resources are tight. For JANUARY/FEBRUARY 2007

45

11/17/06 3:41:46 PM

companies who can meet these demands, the result is improved relationships with customers and partners, reduced risk, and an ability to adapt to changing market conditions. “There are no global boundaries anymore, so even small and medium companies can compete with the big guys,” says Donald Feinberg, vice president and distinguished analyst at Gartner. “Because of that, SMBs need enterprise-quality software applications to compete and run their business. They need the same performance, reliability, and much of the same functionality that large companies need.” Enter Oracle. While Oracle built its reputation by serving the needs of enterprise customers, it has taken its core products and packaged them into solutions suited to SMBs. “Oracle makes it very easy to develop, deploy, and scale systems using Oracle Database and Oracle Fusion Middleware,” says Willie Hardie, vice president of database marketing, Oracle. “Because Oracle offers a choice of solutions built on a common code base, SMBs get enterprise-class technology at a low entry cost, which can then scale inexpensively.” For Bebo, the choice of selecting Oracle Database 10g as its primary database had a lot to do with reliability. “We can’t afford to be down, and we certainly can’t afford to lose data,” says Bebo’s Birch. “That’s why we selected Oracle.”

Michael Birch is Cofounder, CEO, and CIO of Bebo.com, a fast-growing social networking site. “We can’t afford to be down, and we certainly can’t afford to lose data,” he says. “That’s why we selected Oracle.”

pooling capabilities on its Web servers to integrate everyFor a social networking site such as Bebo, having a scalable thing. “Interoperability with Oracle is very straightforward,” and fast database to manage transactions and store user files is Birch says. critical to growing the business. Every day Bebo’s users upload Another important consideration that’s been straightmore than 1.2 million photos, which need to be stored in five forward for Bebo has been finding skilled personnel. Beyond formats and managed by their Oracle database. two internal administrators, Bebo occasionally uses a freelance “We’ve been growing at 25 percent a month, and we’re consultant. Birch says: “It’s definitely an advantage that Oracle hoping to continue that,” says Birch. “Without the right infrais commonly used. It wasn’t that hard for us to find skilled structure, it gets increasingly difficult to resources to help manage our growth.” cope with that rate of compound growth.” SNAP HIGH AVAILABILITY AND SECURITY Although Oracle Database 10g Standard Bebo For the American Osteopathic Association Edition One on a two-CPU server running www.bebo.com (AOA), located in Chicago, selecting SUSE Enterprise Linux met Bebo’s initial Location: San Francisco Oracle Database 10g Standard Edition startup needs, Birch realized that he Employees: 18 One wasn’t just about performance or ease needed to upgrade to handle the site’s Oracle products: Oracle Database 10g of use. It was also about agility. phenomenal growth. By upgrading to “It’s not just the breadth of the Oracle Enterprise Edition, Birch was able to take American Osteopathic Association www.osteopathic.org architecture that’s great. It’s our ability to advantage of features such as partitioning, www.do-online.org adapt it as our business needs change,” which helps manage the company’s scalLocation: Chicago says Bryan Pawlak, director of the AOA’s ability requirements. Employees: More than 150 Development division within the departAnother database feature that Birch Oracle products: Oracle Database 10g ment of Information Technology. “If we’re finds particularly useful is Oracle’s indexStandard Edition with Oracle Real to grow and double the amount of transoptimized table capability. “We found Application Clusters actions through our database, we could that it substantially reduces the amount Property Condition Assessments just add a node to our grid to increase of random I/Os that we do,” he says. “It www.pcallc.com capacity. Oracle gives us the capability to improves database performance and limits Location: Pasadena, California expand our environment as we grow—it’s the additional investment we’d otherwise Employees: More than 400 nationwide a great concept.” need to make in additional hardware.” Oracle products: Oracle Database 10g The AOA is a medical association that Bebo’s database has to be integrated Standard Edition One, Oracle XML Publisher, represents more than 59,000 osteopathic with its Java applications, so Bebo uses Oracle Application Server Standard Edition One physicians (DOs) in the United States. Oracle’s JDBC drivers and the connection SOCIAL SCALABILITY

46

JANUARY/FEBRUARY 2007

JF07_SMB.indd 46

PETER STEMBER

SHOTS

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:22:54 PM

“Oracle Database 10g allows us to scale trouble-free, I’m pleased to say. We just built a standby database and then flipped our systems over.” —Michael Birch, Cofounder, CEO, and CIO, Bebo Osteopathic doctors, like medical doctors, can prescribe drugs, perform surgeries, and work in different medical specialties. The AOA’s key functions include accrediting the osteopathic medical schools, postgraduate training programs, and board certification process for medical specialists, as well as tracking all the credentials of its 59,000 DOs throughout their careers. Therefore, in addition to meeting the basic needs of a large membership organization, the AOA needs to ensure data security and comply with all HIPAA privacy standards and different data integrity standards of the organizations it works with. “We could have chosen Microsoft SQL Server, but we selected Oracle for our database back end because we wanted its robust features and its high-availability model,” says Mike Zarski, the AOA’s director of the department of Information Technology. “The stability of Oracle was a real winner for us in terms of choosing the platform. Also, the security features that are available in the Oracle environment really met our needs across the board. The fact that it was available on Linux is also a huge factor for us.” Pawlak agrees. “We love Oracle on Linux,” he says. “We’ve seen great stability, security, and performance on the platform.” The AOA went live with Oracle Database Standard Edition One as a back end for its portal infrastructure in June 2005. More than 36,000 members have access to the portal, with more than 20,000 regular daily users. “We’re just scratching the surface on what we could use different parts of the Oracle architecture for; we’re looking to expand our production use of more Oracle technologies,” says Pawlak. The AOA is in the process of upgrading to Oracle Database 10g Standard Edition with Oracle Real

Bryan Pawlak (left) and Mike Zarski of the American Osteopathic Association appreciate the Oracle architecture for its robust features. “The stability of Oracle was a real winner for us in terms of choosing the platform,” Zarski says.

Application Clusters (Oracle RAC). “We’re expanding our use of the Oracle database by implementing a grid clustering environment,” Pawlak says. “Going to grid made sense for us from many perspectives—from the high-availability and security perspective, it’s a huge win for us. We’ll also be able to add on services to the grid as we go along—for example, the Oracle Internet Directory component—when we need it.” COMBINED SOLUTION BENEFITS

Smaller companies sometimes can take advantage of new technologies to make a big difference in their efficiency and ultimately their bottom line. Take Property Condition Assessments (PCA), based in Pasadena, California. PCA is a national architectural and engi-

ANDREA MANDEL

ORACLE’S SOLUTION FOR SMBS Balancing business requirements with limited IT resources is a key driver for most growing businesses. “The biggest issues with SMBs are budget and resources,” says Gartner’s Donald Feinberg. “They need hardware and software that can be installed and maintained with minimal staff.” To help solve that problem, Oracle has created technology that can meet the stringent requirements of the SMB market. Oracle Application Express, a feature of Oracle Database 10g, is one such solution. “With Oracle Application Express, all you need is an Oracle

database and access to a browser to develop secure Web-based applications,” says Oracle’s Willie Hardie. “You can easily consolidate data off in-secure desktop applications into a secure, reliable, and scalable database.” Oracle has simplified the installation, configuration, and management of its database and middleware. “Given the resource constraints of SMBs, it’s important that software is easy to use,” says Hardie. “It’s also important that the technology you start out with can easily scale at low cost without forklift upgrades and code

rewrites. Oracle’s Standard Edition and Standard Edition One products contain the same common code as Enterprise Editions; therefore, upgrading is a simple process.” Competitive pricing is also important in the SMB market. “The entry-level cost for Oracle Database 10g Standard Edition One starts at $149 per user,” says Hardie. “It’s the same entry price point for Oracle Fusion Middleware, so you can get the entire Oracle technology stack to store, share, secure, and manage your data for very little cost.”

ORACLE MAGAZINE

JF07_SMB.indd 47

JANUARY/FEBRUARY 2007

47

11/17/06 3:41:54 PM

“The Oracle Database gives us a critical advantage in its XML support, its stored procedure support, and its data structures.” —Thomas Clark, CIO, PCA

48

JANUARY/FEBRUARY 2007

JF07_SMB.indd 48

Thomas Clark of PCA sees his organization growing with Oracle. “Today, it’s not just about the database. It’s really about interconnecting people with data, and the Oracle architecture helps us do that.”

the XML Publisher–based reports throughout our company, we increased business by 40 percent while adding only one team member,” Clark reports. “We’ve achieved a huge productivity gain through the use of these Oracle tools. It greatly benefits all our customers as well.” For growing companies like PCA, saving money and helping customers are essential to good business. But PCA’s Clark has found something else that’s important for his company’s future growth—creating a strong working relationship with Oracle. “What’s impressed me most, and what makes Oracle unique, is that they really work supportively with a small company. They’re not making a lot of money off us. But, they’ve made a very loyal customer out of me,” says Clark. “Ultimately it’s the relationship that’s important, not just the software. We look to Oracle as a partner, someone that will work with PCA to grow our business.” O David A. Kelly ([email protected]) is a business, technology, and travel writer who lives in West Newton, Massachusetts.

READ more about SMBs oracle.com/solutions/mid

LEARN ABOUT resources for small and medium business oracle.com/technology/smb

VISIT the Linux Technology Center oracle.com/technology/linux

PHIL SALTONSTALL

neering firm that performs due-diligence reports for buyers, investors, and building owners. The company’s assessment solution provides flexibility now—and can be upgraded in the future as its business needs grow. Here’s how it works: PCA employees evaluate buildings and visit properties across the country. After they inspect a property, they remotely enter data into an XML form, which PCA then turns into a readable report for property owners. To coordinate all this data, PCA uses Oracle Application Server Standard Edition One to support its expanding application requirements and business needs and Oracle XML Publisher to create reports for internal and external use. “We chose Oracle because of its architectural design and its features,” says Thomas Clark, PCA’s CIO. “Oracle Database gives us a critical advantage in its XML support, its stored procedure support, and its data structures.” Thanks to the integration of XML and a combination of database and middleware capabilities, PCA can quickly generate reports and executive summaries. PCA’s reports can run in excess of 300 pages, examining all property conditions that can influence cost or purchase decisions. This data reviews structural analysis; heating, ventilation, and air conditioning systems; elevators; architectural overviews of how the space is used; and more. “Our reports are complex. XML Publisher is great because it can output reports into multiple file formats with a click of the mouse,” says Clark. “We typically output to PDF format, but we can also produce our work in [Microsoft] Word, Excel, or native XML files—whatever fits the needs of our customer.” Due to regulatory changes, PCA is also evolving into an online service provider for government clients. Starting in 2007 it will be rolling out a packaged version of its collection, analysis, and reporting tools for public-sector customers. This package can be customized for individual customer needs, creating a budgeting application for property assets for an entire portfolio of properties. PCA’s Oracle infrastructure allows clients to meet their future property asset challenges with better information. The company currently uses Oracle Database 10g Standard Edition One but even now is looking ahead. “In the future, we’ll probably grow into a clustered environment,” says Clark. “Today, it’s not just about the database. It’s really about interconnecting people with data, and the Oracle architecture helps us do that.” While PCA hasn’t completed a full return on investment (ROI) on its database investments, it knows that this is a winning approach. On the middleware front, the company is already seeing improvements. “Last year when we implanted

ORACLE.COM/ORACLEMAGAZINE

11/17/06 3:42:03 PM

d e v e l o p e r OPEN SOURCE

BY R IC H SCHWERI N

Embedding Open Source

The Oracle Berkeley DB family of products exemplifies Oracle’s open source commitment. racle’s role in open source development has been a well-kept secret. It’s also the reason for this column: To inform you about Oracle’s commitment to open source software—a commitment measured by significant investments in ongoing development and support across a wide variety of initiatives. “As ever, Oracle is driven by customer demand for choice, flexibility, and a lower cost of computing,” says Ken Jacobs, Oracle vice president, product strategy, Server Technologies. “In addition to contributing to many open standards and creating products that implement those standards, Oracle invests significant resources in developing, testing, optimizing, supporting, and contributing to open source technologies such as Linux, PHP, Apache, Eclipse, Oracle Berkeley DB, and InnoDB. Oracle is clearly a leader in embracing open source solutions as a viable choice for development and deployment in the enterprise.” UNDER THE HOOD

A prime example of Oracle’s true commitment to open source is Oracle Berkeley DB, an embeddable open source database used in applications and devices that demand a fast, scalable, transactional database engine. Running on all major operating systems (Linux, UNIX, Windows, embedded Linux, QNX, VxWorks, and Macintosh OS), Oracle Berkeley DB is available under a dual licensing model that has made it tremendously popular among both open source and commercial customers. With an estimated 200 million deployments, there’s a good chance you use Oracle Berkeley DB every day without realizing it. You’ll find Oracle Berkeley DB “under the hood” in

everything from Motorola cell phones, Microsoft/Groove’s collaboration suite, and Sun’s Java Enterprise System to Ericsson routers, EMC storage boxes, every distribution of Linux, a popular Web search engine, and a leading Web retailer. Several major stock exchanges and banks also use Oracle Berkeley DB, and many authentication systems rely on Oracle Berkeley DB to store user, profile, and preference information. “Where there’s a device or application that has a lot of information moving through it, and some of that information needs to be stored reliably in a fast, scalable, transactional embedded database engine, that’s most likely where you’ll find Oracle Berkeley DB,” says Mike Olson, Oracle vice president, Embedded Systems. “When you’re sending e-mail, surfing the Web, or using your cell phone, you have no idea that you’re hitting a database—it’s all happening entirely transparently.” Olson explains that because data management software can be used in anything from small mobile devices to enterprise applications to carriergrade infrastructure, the average person encounters Oracle Berkeley DB dozens of times each day through various transactions and devices. “There’s pretty broad use of Berkeley DB in the Web 2.0 and service-oriented architecture space, so it’s difficult to visit a Web site without hitting some Berkeley DB somewhere,” explains Olson. “One of the Web’s leading retailers uses it as a front-end cache for all of the data it delivers to users, so your personalization information is all cached in Oracle Berkeley DB.” FROM BERKELEY TO SLEEPYCAT TO ORACLE

Oracle Berkeley DB’s roots can be traced to its namesake in the early 1990s, when Olson was a student at the University

of California at Berkeley. Olson, Margo Seltzer, and Keith Bostic collaborated to develop a new key/value database to replace the Database Manager (Dbm) file-based storage found in UNIX systems. This database evolved to become Berkeley DB version 1.85 and was broadly distributed with the release of 4.4BSD UNIX in 1992. The Berkeley DB code became very popular and was widely adopted, but users wanted commercial support and new features added to the software. In response to the increasing demand for features and support, Seltzer and Bostic founded Sleepycat Software in 1996. The company released Berkeley DB version 2.0 in 1997, 3.0 in 1999, and 4.0 in 2001, with multiple point releases in between. In 2003, Sleepycat added a second product to its offerings, Berkeley DB XML, and in 2004, the company added Berkeley DB Java Edition. In February 2006, Oracle acquired Sleepycat Software and the Berkeley DB family became the Oracle Berkeley DB family. “At the time of the acquisition, there was some speculation that Oracle’s intentions were less than honorable and that the world’s largest enterprise software company was simply buying open source companies to quash them,” recalls Olson. “Instead, Oracle continues to make significant investments with several new product releases and global support. Our engineering team has been hard at work, building exactly the road map and products that we had planned to do before— we’re just doing it as part of a much larger and more capable organization.” Community pundits agree. “Nearly a year later, we’ve seen nothing less than good stewardship of Berkeley DB on Oracle’s part, and I think most people recognize that,” says Stephen O’Grady, principal analyst with RedMonk, a

ORACLE MAGAZINE

JF07_OpenSource.indd 49

JANUARY/FEBRUARY 2007

49

11/22/06 10:23:13 AM

OPEN SOURCE

Denver, Colorado–based IT analyst firm. “Beginning with Oracle’s long-standing commitment to Linux, there’s certainly a measure of goodwill toward Oracle from a developer perspective. And Oracle has done a pretty good job of supporting a variety of open standards that are of interest to the developer community. Sleepycat and Berkeley DB are no exception.” DUAL LICENSE: TWICE AS NICE

Oracle Berkeley DB is distributed under a dual license. Customers can select either an open source license that permits internal use and redistribution within open source applications at no charge, or a commercial license that enables the redistribution of Oracle Berkeley DB within proprietary applications. “The open source license allows you to download the software, to build it into your applications, and to use it at no charge. You can get the software from the Oracle Web site (without registering), build it into your applications, and use it,” explains Olson. “The restriction is that if you distribute the application that you build, your application must also be open source. In our thinking, this is really playing fair.” Of course, there are commercial vendors that simply can’t do that. “For customers who can’t give away their intellectual property, Oracle Berkeley DB is available under a commercial license. If you’re distributing a proprietary application that uses Oracle Berkeley DB, then buy the proprietary license to use it and distribute it without giving your source code away,” says Olson. “If you’re open source, we’re open source, and you can use the software on the same terms you use all the other open source projects you use,” says Olson. “On the other hand, if you’re a commercial vendor, we’ll behave exactly like all your other commercial suppliers. And you get all of the contractual assurances and business guarantees that you would normally expect in a contract of that sort.” Olson is quick to point out that Oracle Berkeley DB’s dual license has many benefits for developers, in both the open source and commercial markets. “The license revenue allows us to invest

50

JANUARY/FEBRUARY 2007

JF07_OpenSource.indd 50

More Eyeballs, Shallow Bugs The idea that the involvement of a huge user community focused on a project can result in higher-quality code is a common assertion made by open source supporters. In his widely popular collection of essays on the open source software movement and Linux, The Cathedral and the Bazaar (O’Reilly Media, 2001), author Eric S. Raymond states that, “Given enough eyeballs, all bugs are shallow.” As cofounder of the Open Source Initiative (OSI), a nonprofit organization that manages and promotes open source through the OSI certification mark and program, Raymond believes that if you throw a large enough number of beta testers and developers at a project, issues (aka bugs) are more rapidly identified and fixed. But not everyone agrees with this notion. Critics claim that the real work on open source projects is done by small groups of insular insiders, ignoring the teeming masses of external contributors who don’t contribute much anyway—a criticism that Stephen O’Grady, principal analyst with IT analyst firm RedMonk, takes issue with. “While I think it’s something of a misnomer to believe that simply because a product is open source, it’s intrinsically more secure and more reliable and so on, it is true that certainly having these sources available, you can have users fix problems and fix them more rapidly,” says O’Grady.

resources to make the product better, not just for the folks who pay commercial license fees but also for the very large open source community that makes use of Oracle Berkeley DB,” he says. “Even if you’re using the open source version, you get tremendous benefits from Oracle’s significant development investments.” The commercial users are better off, too. “Paid licensees of Oracle Berkeley DB benefit from the advantages that a very large open source community confers. Namely, lots of adoption, lots of testing, and lots of eyeballs looking at the code and lots of experts willing to give free technical advice and create complementary code,” says Olson. “It’s an ideal situation where you’ve got a huge user community and very highquality code, but for commercial customers, their source code stays private.” (See the “More Eyeballs, Shallow Bugs” sidebar for more information on open source community development.) FUTURE INTEGRATION

The Oracle Berkeley DB product family includes a trio of products: Oracle Berkeley DB, a transactional storage engine for untyped data in basic key/ value data structures; Oracle Berkeley DB Java Edition, a pure Java version of Oracle Berkeley DB optimized for the Java environment; and Oracle Berkeley DB XML, a native XML database with XQuery-based access to documents stored in containers and indexed based on their content. The latest releases,

Oracle Berkeley DB 4.5 and Oracle Berkeley DB Java Edition 3.1, are a strong testament to Oracle’s commitment to open source development, but what’s in store for the future? “At Oracle, unlike Sleepycat, we’ve got a much broader product line. Just in the embedded space, we’ve got Oracle Lite, Oracle Berkeley DB, and Oracle TimesTen. And, of course, we’ve got Oracle Database 10g, which supports huge repositories of information in the data center,” explains Olson. “As the only nonrelational product in Oracle’s portfolio, Oracle Berkeley DB fills out our product line for the embedded space, addressing a class of use cases that needs high performance, reliability, and scalability but does not need SQL. Since the very first day of Sleepycat, three things matter in every single release: performance, reliability, and scalability, and that is going to continue to be the case.” O Rich Schwerin ([email protected]) is a product marketing manager with Oracle Technology Marketing.

READ more about the Oracle Berkeley DB product family oracle.com/technology/products/berkeley-db

DOWNLOAD Oracle Berkeley DB oracle.com/technology/software/products/ berkeley-db

DISCOVER more about Oracle and open source oss.oracle.com

ORACLE.COM/ORACLEMAGAZINE

11/22/06 10:23:13 AM

d e v e l o p e r FRAMEWORKS

BY STEVE MUENCH

Modeling Tables and Components Maintain your data-centric business services with visual diagrams. n previous columns, I’ve discussed how you can use Oracle JDeveloper to create data-bound Web pages for an application’s view layer by dragging and dropping components in a visual editor. In a future column, I’ll investigate similar capabilities that Oracle JDeveloper provides for building Swing applications. In this column, I focus on a different aspect of Oracle JDeveloper, examining two visual editors that let you work on “back-end” artifacts such as database tables and business components. To follow along, make sure you’re using the latest maintenance release of Oracle JDeveloper (10.1.3.1), which you can download (for free) from oracle.com/technology/jdev. As I have done in past columns, I’ll be using the familiar EMP and DEPT tables in the SCOTT schema in Oracle Database to work through my examples. VISUALIZING YOUR DATABASE SCHEMA

If you’ve ever worked with relational databases, chances are that you’ve used a database schema diagram to give you a bird’s-eye view of the structure and relationships of your application’s underlying tables. Oracle JDeveloper provides a database diagram capability that lets you design your database schema and synchronize your schema changes with the underlying database. To see how it works, let’s create a simple diagram that displays the EMP and DEPT tables. Using Oracle JDeveloper, start by creating a database connection that maps to the SCOTT schema; name it scott. Then create a new application by using the Web Application [JSF, ADF BC] template, specifying oramag as the application package prefix. Oracle JDeveloper will automatically create Model and ViewController projects for your new application. Next, create a third

Figure 1: Oracle JDeveloper database diagram showing the EMP and DEPT tables

project, by selecting File -> New from the main menu to bring up the New Gallery wizard. Select the Project category, select Empty Project, and enter Database for the project name in the Create Project dialog box. Next, go to the Application Navigator and doubleclick the Database project to edit its project properties. Go to the Technology Scope page, shuttle Database to the Selected Technologies list, and click OK. This last step tells Oracle JDeveloper that I will be using this project for database modeling. It simplifies my database design work, by having Oracle JDeveloper filter out choices in various dialog boxes that aren’t relevant to the task at hand. The next step is to create a database diagram. Right-click the Database project in the Application Navigator, and select New. In the New Gallery dialog box, select the Diagrams category and Database Diagram. Name the diagram Database Design. Click OK, and a new diagram appears in the editor. Next, in the Connection Navigator, expand the Database folder, the scott connection, and the corresponding SCOTT schema to show the folders containing

the SCOTT schema’s objects. Expand the Tables folder, and hold down the Ctrl key while selecting both the DEPT and EMP tables. Drag the selected tables onto the diagram, and release the mouse button. In the Create from Database Object dialog box, click OK to create offline database objects. Your resulting diagram should look similar to Figure 1, showing two tables with a foreign key constraint between them. Next, select the DEPT table shape in the diagram. If you don’t already see the Property Inspector and the Component Palette in your Oracle JDeveloper workspace, use the corresponding options on the View menu to display them. The Property Inspector enables you to configure any of the visual aspects of your selected table, and the Component Palette enables you to create new schema objects by dropping them onto the diagram. The Component Palette supports a variety of schema objects, including tables, views, sequences, and synonyms. Furthermore, you can perform many common tasks by making changes directly to the diagram. For example, to add a column to a table, simply click inside the dotted rectangle

ORACLE MAGAZINE

JF07_Frameworks.indd 51

JANUARY/FEBRUARY 2007

51

11/17/06 11:50:29 AM

FRAMEWORKS

within the table shape, enter the new column name information (such as MANAGER_ID:NUMBER(5,2)), and press Enter. You can also rename a column or change its datatype by clicking the column entry and editing it in place. In addition, you can define one-to-many relationships between two tables by simply clicking the Foreign Key icon in the Component Palette, clicking the source table, and then clicking the target table. And if you double-click a schema object or relationship line in the diagram, the appropriate visual editor appears, allowing you to view and modify the object’s full definition. The tables and other schema objects are known as “offline” objects, because the changes you make in the diagram do not immediately cause updates to the database. Instead, you save your changes to disk, and when you are ready to make database changes, you generate a DDL script that creates or alters your database to match your database design. To generate a DDL script, right-click the database diagram and select Generate -> Data Definition Language for Diagram from the context menu. CREATING YOUR BUSINESS COMPONENTS

You can use Oracle JDeveloper business components diagrams to visually document and maintain the Oracle Application Development Framework (ADF) objects that implement your business services. To demonstrate, let’s create a simple diagram to work with entity objects, view objects, and an application module based on the underlying DEPT and EMP database tables. In the Application Navigator, right-click your Model project and select New to open the New Gallery dialog box. Select the Diagrams category and the Business Components Diagram icon. Name the diagram Business Service, provide oramag.model as the package name, and click OK. Next, go to the Connection Navigator, select the DEPT and EMP tables (as you did in the last section), and drag them onto the diagram. In the Create from Database Object dialog box, select Business Component Entity Objects, and click OK.

52

JANUARY/FEBRUARY 2007

JF07_Frameworks.indd 52

As a result, Oracle JDeveloper creates new Dept and Emp entity objects and adds them to the diagram. It also creates an association between the objects based on the foreign key constraint specified in the table definition. Note that you can now modify these components in much the same way you did in the previous section. You can use the Property Inspector to change a component’s visual aspects, the Component Palette to create new components, and onscreen editing functions to perform common inline tasks such as adding or modifying attributes. Furthermore, you can double-click any component to bring up the respective component editor for in-depth editing. Now drag a view object component from the Component Palette, and drop it onto the diagram. Give it the name EmployeeList, by typing that name directly into the new view object shape. Next, select the data the View Object query will reference. To do so, hold down the Ctrl key while selecting the Empno, Ename, and Sal attributes from the Emp entity on the diagram. Then drag the selected attributes to the new view object and release the mouse button. As a result, the Emp entity now becomes the primary entity for the new view object and the selected attributes are added to its attribute list. You can also add related join information to the view object. For example, to add the department name of each employee, just select the Dname attribute from the Dept entity and drop it onto the view object. Note that Oracle JDeveloper automatically adds the primary key attribute (in this case, Dept.Deptno) from a secondary entity and shows a message alert indicating that it has done so. Next, drop an Application Module component from the Component Palette onto the diagram. Give it the name EmpModule, by typing that name directly into the new application module shape. Add an instance of the EmployeeList view object to the EmpModule’s data model, by dragging the view object and dropping it onto the application module. By default, Oracle JDeveloper gives the view instance the name EmployeeList1, but you can change it to something

more meaningful (such as AllEmployees), by clicking the view instance shape and typing a new name. Finally, you can test the application module directly from the diagram by selecting it and selecting Test from the context menu. Your diagram will automatically update to reflect changes you make to any component, regardless of how you make them. For example, I have used familiar business components wizards in past articles to create view objects and view links. In this example, you could create a Departments view object based on the Dept entity and a view link between Departments and EmployeeList. Then you could use the Application Module editor to add master/detail linked view instances named Departments and EmployeeList to its data model. After you do so, the diagram will update to automatically show the changes to the data model. The online version of this column, at oracle.com/technology/oramag/ oracle/07-jan/o17frame.html, includes information on polishing, publishing, and printing your diagram. This whirlwind tour is meant to help you boost your own visual development skills up a notch. Hopefully, you’ll use these and other diagramming tools provided in the Oracle JDeveloper environment on your next project. O Steve Muench is a consulting product manager for Oracle JDeveloper. In his more than 16 years at Oracle, he has developed and supported Oracle tools and XML technologies and continues to evangelize them. Muench coauthored Oracle ADF Developer’s Guide for Forms/4GL Developers (Oracle, 2006), and he shares tips and tricks on OTN and in his Dive into BC4J and ADF Weblog (radio.weblogs.com/0118231).

READ online-only column content

oracle.com/technology/oramag/oracle/07-jan/ o17frame.html

READ more about Oracle JDeveloper 10g and Oracle ADF

oracle.com/technology/products/jdev oracle.com/technology/products/jdev/tips/ muench/designpatterns

DOWNLOAD Oracle JDeveloper 10g oracle.com/technology/products/jdev

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:50:29 AM

d e v e l o p e r ODP.NET

BY M A R K A. WI LLI AMS

Using PL/SQL Associative Arrays Bring the power of PL/SQL stored procedures to ODP.NET. uppose you’ve just received an e-mail detailing several IT initiatives, two of which will affect your future application development techniques. First, all applications should be designed to minimize network utilization. And second, applications that use Oracle databases must use PL/SQL for access to the database structures. Knowing that you need to use PL/SQL in the database as the application programming interface (API) and that you need to reduce network usage, where do you begin? Fortunately, ODP.NET’s support for PL/SQL associative arrays can help you meet both IT mandates. ODP.NET developers can use PL/SQL as an API to the data in the database and use associative array binding to reduce network round-trips. The result is a reduced workload for both the network and Oracle Database, which means faster performance and better scalability for your applications. THE SAMPLE APPLICATION

Suppose that one of the reasons for the PL/SQL and performance mandates is that your company is growing rapidly: The IT department alone has three new job classifications—database administrator, manager, and vice president. This column demonstrates how to use .NET, PL/SQL, and associative arrays to add these job categories to an Oracle database—with minimal network utilization. The sample developed in this column uses the HR schema provided with Oracle Database. This schema includes a JOBS table that contains a row for each job. THE PL/SQL CODE

PL/SQL code will provide the interface between the application and the database. The associative_array package specifica-

codeLISTING 1:

The PL/SQL code

create or replace package associative_array as -- define an associative array type for each column in the jobs table type type type type

t_job_id is table of jobs.job_id%type index by pls_integer; t_job_title is table of jobs.job_title%type index by pls_integer; t_min_salary is table of jobs.min_salary%type index by pls_integer; t_max_salary is table of jobs.max_salary%type index by pls_integer;

-- define the procedure that will perform the array insert procedure array_insert (p_job_id in t_job_id, p_job_title in t_job_title, p_min_salary in t_min_salary, p_max_salary in t_max_salary); end associative_array; / create or replace package body associative_array as -- implement the procedure that will perform the array insert procedure array_insert (p_job_id in t_job_id, p_job_title in t_job_title, p_min_salary in t_min_salary, p_max_salary in t_max_salary) is begin forall i in p_job_id.first..p_job_id.last insert into jobs (job_id, job_title, min_salary, max_salary) values (p_job_id(i), p_job_title(i), p_min_salary(i), p_max_salary(i)); end array_insert; end associative_array; /

tion and body code in Listing 1 are the interface, and it runs in the database’s HR schema. (Note that a Microsoft Visual Studio developer might use Oracle Developer Tools for Visual Studio .NET or a tool such as Oracle SQL Developer to create and edit the PL/SQL code.) The associative_array package contains code for both the package specification and the package body. The package specification declares the single procedure that will be implemented in the package body as well as four datatypes that define the parameter types to the procedure. Each type represents a column in the JOBS table, which has the following structure:

SQL> desc jobs Name -----------------------------JOB_ID JOB_TITLE MIN_SALARY MAX_SALARY

Type --------------------------------VARCHAR2(10) VARCHAR2(35) NUMBER(6) NUMBER(6)

Because each datatype in the associative_array package is defined to be a table of each database column type, the package code effectively creates four arrays that match the types of their respective columns in the JOBS table. For example, the t_job_id type is declared to be a single-column table

ORACLE MAGAZINE

JF07_ODPnet.indd 53

Null? -------------------NOT NULL NOT NULL

JANUARY/FEBRUARY 2007

53

11/17/06 11:54:03 AM

ODP.NET

(a PL/SQL table, not a database table) whose type matches that of the job_id column in the JOBS table. Each single-column PL/SQL table is essentially an array. The array_insert procedure in the associative_array package body takes four parameters (one for each column in the table); each parameter is an array of values supplied by the .NET client application. The statement for inserting the rows into the JOBS table resembles a traditional INSERT statement, except that it uses the FORALL keyword and that the inserted values are identified by a lowercase i. The FORALL keyword allows PL/SQL to process all of the elements in the associative array as a group rather than looping over the array, as with a typical FOR LOOP statement. The lower and upper bounds of the array are indicated by the first and last methods. The lowercase i in the values clause identifies the correct element in the array for PL/SQL retrieval. CREATING THE C# CODE

With the PL/SQL interface code available in the Oracle database instance, it’s time to deploy the .NET client application code, shown in Listing 2 (available with the online version of this column, at oracle.com/technology/oramag/oracle/ 07-jan/o17odp.html). Because the data processing logic is in the database, the client code is concerned largely with creating parameters, setting values, and invoking the code in the database. Note that the code for inserting data contains no SQL statements, because the PL/SQL interface has been colocated with the data in the database. To test the new PL/SQL interface, run the C# console application—available at oracle.com/technology/oramag/oracle/ 07-jan/o17odp.zip—in Visual Studio. First, change the connection string to the appropriate values for your Oracle database instance so ODP.NET can pass associative arrays, then compile the code in Visual Studio, and then select Debug -> Step Into from the Visual Studio menu to see how it works. As you step through the code, note that the application creates an

54

JANUARY/FEBRUARY 2007

JF07_ODPnet.indd 54

Figure 1: Stepping through the sample

OracleCommand object with the CommandText property value set to the PL/SQL package name and procedure (associative_array.array_insert). Next, the application creates Oracle-Parameter objects for each parameter to the PL/SQL stored procedure. The application then sets each parameter’s type to the OracleDbType to match that of the targeted column for each parameter. One key point to note as you step through the code is that the application must correctly set the collection type for each parameter to OracleCollectionType .PLSQLAssociativeArray for associative arrays to work correctly. This is what enables the ODP.NET application to bind an OracleParameter object, as a PL/SQL associative array, to the PL/SQL stored procedure (see Figure 1). After setting the collection type, the application assigns the values (for the three new jobs) that will be inserted into the JOBS table. Next, the application sets the size of each array, adds the parameters to the OracleCommand object’s parameter collection, and invokes the stored procedure to insert the data. Finally, the application queries the table to show that the three new jobs (IT_DBA, IT_MAN, and IT_VP) were successfully added to the JOBS table. GOING FURTHER

PL/SQL associative arrays are not limited to INSERT operations. You can also use

them to perform SELECT, UPDATE, and DELETE operations. I encourage you to experiment further with PL/SQL associative arrays to discover how your applications may benefit from centralized data access via a PL/SQL API as well as from a mechanism for bulk data sharing between Oracle databases and .NET middle tiers. O Mark A. Williams ([email protected]) is an Oracle ACE, an Oracle Certified Professional DBA, the author of Pro.NET Oracle Programming (Apress, 2004), and a contributor to the Oracle Data Provider for .NET forum on Oracle Technology Network.

READ online-only column content

oracle.com/technology/oramag/oracle/07-jan/ o17odp.html

READ more about PL/SQL associative arrays

Oracle Database PL/SQL User’s Guide and Reference download.oracle.com/docs/cd/B19306_01/ appdev.102/b14261/toc.htm Oracle Data Provider for .NET Developer’s Guide download.oracle.com/docs/cd/B19306_01/win.102/ b14307/toc.htm

VISIT the .NET Developer Center oracle.com/technology/tech/dotnet

DOWNLOAD sample code for this column

oracle.com/technology/oramag/oracle/07-jan/ o17odp.zip

ODP.NET

oracle.com/technology/software/tech/ windows/odpnet

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:54:05 AM

d e v e l o p e r BROWSER-BASED

BY M IKE HI CHWA

Sizing Up Performance

Tips and techniques for optimal Oracle Application Express performance s Oracle Application Express becomes more popular, many users are asking for guidance on sizing and performance tuning. In this column, I’ll show you a quick and convenient way to estimate performance and sizing. I’ll also demonstrate how to identify and deal with performance issues. Here are some of the more common questions this column will answer: OHow much hardware, especially how many CPUs, will I need to handle a given workload? OHow many users will my application support? OHow do I locate my performance bottlenecks? Let’s start with some background. UNDERSTANDING ORACLE APPLICATION EXPRESS APPLICATION PERFORMANCE

The key to optimal performance for most Oracle Application Express applications is to keep the average page-view times relatively short. Scaling is linear: For example, an application with average page-view times of 10 milliseconds (ms) will be able to handle about 10 times as many concurrent users as an application with average page-view times of 100 ms. You can use the performance statistics collected by Oracle Application Express to easily approximate how well an Oracle Application Express application will scale. The performance statistics are available on the Monitor Activity page. Assuming that the application is well tuned, with efficient SQL and PL/SQL, the single most important sizing factor is the CPU. For example, suppose you are developing an Oracle Application Express application that is required to support 1,000 page views per minute. On a dualCPU system, the application would need to achieve 500 page views per minute,

per CPU, or 8.33 page views per CPU per second. Meeting this requirement dictates that the average page-view time in the application must not exceed 120 ms. The relationship between the available CPUs and the required page views per minute results in the average response time per page, which can be expressed in the following equation:

(N*60)= A P where N is the number of CPUs, P is the number of page views per minute, and A is the average response time per page. Using this simple equation, you can approximate the required average pageview time to support a targeted number of page views per minute. By altering the number of CPUs or page views per minute, you can establish clear performance targets for your application. An application’s average page-view time can also help you predict the impact a change in the size of your user community will have as that community grows. To determine how many users the application can support, start by first determining the number of page requests during a given time period. For example, if an average session comprising 50 page views takes 10 minutes, then the application supports 5 page views per minute for a typical session. If you are sizing the application to allow for 1,000 page views per minute, the application will support 200 concurrent users per session. Extrapolating this data to approximate the daily user community, let’s further assume that all users are in the same time zone and that, on average, each user performs two sessions per eight-hour day, resulting in 100 page views (2 * 50 page views per session). Because you are sizing the application for

1,000 page views per minute, multiply the number of minutes in eight hours (480) by the page views per minute (1,000) to determine that the application can support 480,000 page views per eight hours, or 4,800 users. As a rule of thumb, you should size for your busiest hour, because an application may serve only 100 page views per minute in the course of a day but may serve 1,000 page views per minute during the peak hour. Another rule of thumb is that you should ensure an average page-view time of 300 milliseconds or less. For highvolume applications, with many hundreds or thousands of concurrent users, the goal should be an average page-view time of 150 milliseconds or less. FINDING AND ELIMINATING THE BOTTLENECKS

The overhead associated with the generation of a page view in Oracle Application Express is fairly static. Any other processing of developer-created SQL and PL/SQL in an Oracle Application Express application is in addition to this static overhead. The easiest way to begin tuning your Oracle Application Express application is to run the application as an end user with an adequate volume of real data. Then, using the Monitor Activity feature of Oracle Application Express, you can readily identify the poorest-performing pages in the application (see Figure 1). Once you have identified the poorestperforming pages, you can examine them in Debug mode, by running the application and clicking the Debug link in the Developer Toolbar. Debug mode renders the page concurrently with timing information—you’ll see time codes that correspond to specific Oracle Application Express actions as well as additional details about item names, computation, and processing points.

ORACLE MAGAZINE

JF07_Browser.indd 55

JANUARY/FEBRUARY 2007

55

11/17/06 11:44:25 AM

BROWSER-BASED

then invoked from your application. Use declarative conditions. Declarative conditions are faster than dynamic SQL and PL/SQL conditions; for example, using an “Item=Value” condition is faster than using the PL/SQL expression “:ITEM=value.” Use “Rows X to Y” pagination for reports that return numerous rows. “Rows X to

Figure 1: Page views by weighted page performance report, available in Monitor Activity

...

By identifying steep jumps in the elapsed time in the debug output, you will find the poorest-performing page elements. For example, here is a snippet from a page run in debug mode:

0.05: Region: Projects 0.06: Show report 0.06: Determine column headings 0.06: Activate sort 0.07: Parse query as: MIKE1 0.07: Binding: “:P24_SEARCH”=”P24_ SEARCH” value=”” 0.07: Print column headings 0.07: Rows loop: 15 row(s) 0.18: Region: Icon View ...

TUNING PAGE ELEMENTS

Note the jump from 0.07 seconds elapsed to 0.18 seconds elapsed. This jump indicates that the query took 0.11 seconds to execute, which, in this example, is a large percentage of the total page time and thus an excellent target for performance tuning. TUNING SQL

The most common area of tuning focus is SQL. The Oracle Application Express engine parses, binds, executes the statement, and fetches the results of the SQL for a reporting region. Use bind variables whenever possible to avoid unnecessary parsing and promote reuse of shared SQL by Oracle Database. Additionally, ensure that an optimal query plan is being used for the query. Use Explain Plan from the SQL Commands menu to easily generate plans for a particular query.

56

JANUARY/FEBRUARY 2007

JF07_Browser.indd 56

For a thorough examination of every element of SQL and PL/SQL on a particular page, you can enable SQL tracing for the entire page view. SQL tracing generates a trace file on the server that you can analyze with the Oracle utility TKPROF. (See “Debugging an Application” in the Oracle Application Express User’s Guide for more information about using TKPROF in Oracle Application Express.) Page processes, computations, authorizations, validations, and conditions are other common tuning opportunities in Oracle Application Express applications. The performance of these elements on the page should be readily apparent when you run your application in Debug mode. Here are some guidelines for these page elements: Set page processes to run on a per-page (rather than per-session) basis. If you are

employing application-level processes, you can set the process to run once per session or per page view. Keep in mind that using the per-session option for an application process can affect all the other page views in the application. A poor-performing application-level process can affect every page view in an application. Optimize page zero components. Page zero components are rendered on every page, so take special care to optimize all page zero logic. Consolidate numerous PL/SQL blocks into packages. If you are writing large

PL/SQL blocks in a page, consolidate them into PL/SQL packages, which are

Y of Z” takes longer to compute than the simple “Rows X to Y” pagination scheme. With “Rows X to Y of Z,” if your report returns 900 rows, Oracle Application Express will need to fetch all rows to obtain the total row count; with “Rows X to Y,” on the other hand, the reporting engine needs to fetch only Y + 1 rows.

CONCLUSION

Using the sizing guidelines presented in this column will help you estimate the performance and scalability of Oracle Application Express–based applications. If you’re not happy with an application’s performance, use these pointers to locate the slowest pages and then identify the poorly performing components within those pages. With this information, you can ensure that your Oracle Application Express applications meet performance expectations. O Mike Hichwa ([email protected]) is vice president of software development at Oracle and manages Oracle Application Express, Oracle SQL Developer, and other database development tools.

READ more about application tuning Oracle Application Express User’s Guide download.oracle.com/docs/cd/B31036_01/doc/ nav/portal_booklist.htm

TKPROF Oracle Database Performance Tuning Guide download.oracle.com/docs/cd/B19306_01/server.102/ b14211/toc.htm

DOWNLOAD Oracle Application Express 2.2.1

oracle.com/technology/products/database/ application_express/download.html

VISIT the Oracle Application Express Forum on OTN

forums.oracle.com/forums/forum.jspa?forumID=137

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:44:27 AM

d e v e l o p e r PL/SQL PRACTICES

BY STEVEN FEUERSTEI N

The Right Place for PL/SQL Best practices for PL/SQL location, location, location write packages and procedures in both Oracle Database and Oracle Developer applications (Oracle Forms). How should I decide where to put my code?

Another way to frame this question is to ask what the scope of your program should be. That is, from which programs in your application can it be called? Within just a single form? All forms? From within a single program on the server? From any schema that connects to your instance? I make my decision on these issues by following this principle: Implement the program as closely as possible to where it is used (called). LOCATION AND RELOCATION DEMONSTRATION

For this answer, I use the following business requirement to demonstrate the variations possible and appropriate ways to define my code: My team is building a call support application. Purchasers of my company’s product call us when they have a problem, and we put their calls into a queue if they cannot be handled immediately. I must now write a program that distributes unhandled calls to members of the call support team. The package that will hold all of this logic is call_manager. The procedure for distributing unhandled calls is distribute_calls. Listing 1 shows the header and executable section of this program. As you can see, this executable section is quite readable: While there is still at least one unhandled call, then for each employee in the specified department, if the current caseload is less than the average for that department, assign the next open call to that employee. Then continue only if there are still unhandled calls. The executable section calls many subprograms to get the work done:

codeLISTING 1:

distribute_calls procedure

PROCEDURE distribute_calls ( department_id_in IN departments.department_id%TYPE) IS BEGIN WHILE ( calls_are_unhandled ( ) ) LOOP FOR emp_rec IN emps_in_dept_cur (department_id_in) LOOP IF current_caseload (emp_rec.employee_id) < avg_caseload_for_dept (department_id_in) THEN assign_next_open_call (emp_rec.employee_id); END IF; END LOOP; END LOOP; END distribute_calls;

codeLISTING 2:

Four local programs in distribute_calls

PROCEDURE distribute_calls ( department_id_in IN departments.department_id%TYPE) IS FUNCTION calls_are_handled RETURN BOOLEAN IS BEGIN ... END calls_are_handled; FUNCTION current_caseload ( employee_id_in IN employees.employee_id%TYPE) RETURN PLS_INTEGER IS BEGIN ... END current_caseload; FUNCTION avg_caseload_for_dept ( employee_id_in IN employees.employee_id%TYPE) RETURN PLS_INTEGER IS BEGIN ... END current_caseload; PROCEDURE assign_next_open_call ( employee_id_in IN employees.employee_id%TYPE) IS BEGIN ... END assign_next_open_call; BEGIN

calls_are_unhandled function: takes no arguments; returns TRUE if there is still at least one unhandled call, FALSE otherwise O current_caseload function: returns the number of calls (caseload) assigned to that employee O avg_caseload_for_dept function: returns the average number of calls assigned to employees in that department O assign_next_open_call procedure: assigns the employee to the call, making O

it handled (as opposed to unhandled) One other thing to note: I haven’t yet actually implemented any of these programs. I am using top-down design, also known as stepwise refinement, to stay focused on the overall, high-level logic of the program. That way I avoid getting consumed by all the little details. I can now go down to the next level of detail and figure out where to put the implementation for these subprograms. As I said, my rule is: Define the

ORACLE MAGAZINE

JF07_PLSQL.indd 57

JANUARY/FEBRUARY 2007

57

11/17/06 12:00:36 PM

PL/SQL PRACTICES

codeLISTING 3:

Relocating the current_caseload function

CREATE OR REPLACE PACKAGE BODY call_manager IS FUNCTION current_caseload ( employee_id_in IN employees.employee_id%TYPE) RETURN PLS_INTEGER IS BEGIN ... END current_caseload; PROCEDURE show_caseload ( department_id_in IN departments.department_id%TYPE) IS BEGIN ... END show_caseload; PROCEDURE distribute_calls ( department_id_in IN departments.department_id%TYPE ) IS BEGIN ... END distribute_calls; END; /

codeLISTING 4:

Revised distribute_calls executable section

BEGIN WHILE ( calls_are_unhandled ( ) ) LOOP FOR emp_rec IN emps_in_dept_cur (department_id_in) LOOP IF current_caseload (emp_rec.employee_id) < call_util.dept_avg_caseload (department_id_in) THEN assign_next_open_call (emp_rec.employee_id); END IF; END LOOP; END LOOP; END distribute_calls;

subprogram as closely as possible to its usage. Following that rule without any further analysis, I would define each of the programs as local subprograms within distribute_calls itself, as shown in Listing 2 (the ellipses [...] indicate the implementation of the subprograms). Procedures and functions directly defined within the declaration section of any PL/SQL block are called local or nested subprograms. In this example, they can be called only within the distribute_ calls procedure, and that certainly defines them as closely as possible to their usage. Yet, as I do this, I find myself thinking about the other programs I have already written in this package and how I might want to use some of this new code in programs I’ll write in the future. I realize, for example, that last week I wrote another function that is very similar to current_caseload. It is now “buried” inside a procedure named show_caseload. Rather than implement the same logic twice (and thereby need to debug and maintain it in both places),

58

JANUARY/FEBRUARY 2007

JF07_PLSQL.indd 58

it makes more sense for me to move the current_caseload function out of both distribute_calls and show_caseload. So with a little reshuffling of code, I end up with the package body shown in Listing 3. Now I have moved the current_ caseload function farther away from distribute_calls, but that is because it is used by two subprograms in the package. So it is now as close as possible to both of its usages. Yet I don’t expect or see any need for current_caseload to be used outside of the distribute_calls package, so I do not place the header of current_ caseload in the package specification. Now my attention turns to avg_ caseload_for_dept. Something about this program seems so familiar. What is it, what is it? Oh, yeah! My coworker Sandra sent out an e-mail last week letting us all know that she had put together a package named call_util that contained several handy utility programs, including a function that returned the average caseload for an employee.

I slap my forehead, dig out the e-mail, and find that the function is named dept_avg_caseload. I check for the existence of call_util in my PL/SQL editing environment, and—lo and behold—the call_util.dept_avg_caseload function in all its already implemented beauty is there, waiting to be used. I now go back to my distribute_calls procedure, delete the avg_caseload_for_ dept function, and change my executable section as shown in Listing 4. Now one of the subprograms I am using in my procedure is declared so far away that I don’t even have control over its implementation and may never even see that implementation. Is that a problem? No. I have more than enough to do and worry about! The call_util.dept_avg_caseload function is implemented far from my usage, but it is as close as possible to all usages, which span various packages, and so must be declared in the package specification of call_utils. This column concludes online, at oracle.com/technology/oramag/ oracle/07-jan/o17plsql.html, with a checklist of recommendations on where to locate your PL/SQL code for Oracle Developer applications. O Steven Feuerstein ([email protected]) is Quest Software’s PL/SQL evangelist. He has published 10 books on Oracle’s programming language, including Oracle PL/SQL Programming and Oracle PL/SQL Best Practices (O’Reilly Media), and has created the free Quest Code Tester for Oracle.

READ online-only column content

oracle.com/technology/oramag/oracle/07-jan/ o17plsql.html

READ more PL/SQL Practices

oracle.com/technology/oramag/oracle/plsql

Best Practice PL/SQL

oracle.com/technology/pub/columns/plsql

LEARN more about using PL/SQL collections with SQL object types Oracle Database PL/SQL User’s Guide and Reference download.oracle.com/docs/cd/B19306_01/ appdev.102/b14261/objects.htm#sthref2434

DOWNLOAD Oracle Database 10g

oracle.com/technology/software/products/database/ oracle10g

ORACLE.COM/ORACLEMAGAZINE

11/17/06 12:00:37 PM

t e c h n o l o g y RECOVERY

BY A RU P N A N DA

Recover in a Flash

Reduce database recovery time, using the Oracle flash recovery area. f you are using Oracle Recovery Manager (RMAN) as a backup tool for your Oracle database, you probably already know that you have two options for the backup location: disk and tape. If you choose the former, you may back up to any location available to the server, but you must make sure the location has enough space for the backups. You also have to remove the old backups to make room for the new ones, keep track of the redundant backups, and make sure that backups and archive logs are available. FLASH RECOVERY AREA

DAN HUBIG

To help manage disk backups, in Oracle Database 10g Release 1 and later, you can define a special disk area that serves as a location for all types of backups. This location is the flash recovery area (FRA). Oracle Database manages the space inside this area; keeps track of backups that are needed; and if necessary, deletes old ones to make room for new ones. By default, the Oracle RMAN backups (both regular and image copies), online redo logs, archived logs, control files, and flashback logs are created in the FRA. When new backups or files demand more room, Oracle Database automatically removes the nonessential backups, freeing the DBA from this chore. The files in the FRA are considered nonessential when they become obsolete according to the retention policy, or when they have already been backed up to tape with Oracle RMAN. SETTING UP

To set up the FRA, first decide on its location and size. To set /home/oracle/

You can check the values of the FRA parameters set by querying the V$RECOVERY_FILE_DEST data dictionary view: select * from v$recovery_file_dest;

FRA as the location and 2GB as the size, you issue the following while logged in as the SYS user: alter system set db_recovery_file_dest_size = 2G; alter system set db_recovery_file_dest = ‘/home/oracle/FRA’;

To ensure that the values are set after the database is restarted, put the following lines in the initialization parameter file: db_recovery_file_dest_size = 2G db_recovery_file_dest = ‘/home/oracle/FRA’

If you are setting up the FRA on an Oracle Real Application Clusters (Oracle RAC) database, the FRA location must be visible to all database nodes. So it must be one of the following: a shared file system, an NFS-mounted file system, or an Automatic Storage Management (ASM) disk group. If you use ASM, the parameter is set as db_recovery_file_dest = ‘+DISKGROUP1’

For my example, the result shows that there are 51 files in the FRA (the NUMBER_OF_FILES column). To determine the file types, you can check the V$FLASH_RECOVERY_ AREA_USAGE view. This view shows the used and reclaimable spaces of each type of file as percentages of this total space. To get a more useful picture, you can combine these two views in a single query, shown in Listing 1, which shows the total size of the files instead of percentages. As you can see from the output, there are 34 archived log files, 16 Oracle RMAN backup files, and 1 flashback log file. The nonessential backups that can be deleted show up as RECLAIMABLE. If there is not sufficient space, the Oracle RMAN backup will return with an error: ORA-19809: limit exceeded for recovery files ORA-19804: cannot reclaim 104857600 bytes disk space from 1073741824 limit

To create enough space for the Oracle RMAN backups to complete successfully, either manually remove some backups or increase the size of the FRA. To see the list of image copies in the FRA made by Oracle RMAN, you can use the Oracle RMAN list copy of database command, shown in Listing 2. In addition to storing the backups of

ORACLE MAGAZINE

JF07_Flashback.indd 59

JANUARY/FEBRUARY 2007

59

11/17/06 3:33:35 PM

RECOVERY

datafiles and flashback logs, the FRA can also be configured to store archived logs, control files, and online redo logs. For information on these storage options, see the “Configuring the Flash Recovery Area: Advanced Topics” link in nextSTEPS. IMAGE COPY

Backup sets are the Oracle RMAN default backups, in which only the used blocks in the datafiles are captured in the backup files. Oracle RMAN image copies are exact copies of the datafiles, with all the blocks—used or not. Oracle RMAN takes this image copy while the database is up and running, and the database need not be put into any special mode. Here is how to make an Oracle RMAN image copy backup: run { backup as copy database; }

INSTANT RECOVERY

Image copies in the FRA become truly useful when you need an “instant recovery.” Remember that these image copies are copies of the datafiles—a fact recorded in the Oracle RMAN catalog and the control file. In case of a disaster, you don’t need to restore the file; you can use the copy as the principal datafile immediately. Suppose that one of your datafiles has become corrupted and needs recovery. Traditionally, you follow this general approach: 1. Take the tablespace offline. 2. Restore the datafile from the backup. 3. Recover the datafile to the point of failure. 4. Place the tablespace online. Step 2 may take a long time, depending on the size of the file, the speed of the underlying disks, the transfer rate from backup to the original datafile location, and the other processes running on the system. Suppose that

JANUARY/FEBRUARY 2007

JF07_Flashback.indd 60

If you are familiar with Oracle Data Guard, you might wonder how using this FRA recovery method is different. Oracle Data Guard maintains physical or logical standby databases that are kept synchronized with the primary database through the transfer and application of redo data. These standby databases are geared toward disaster recovery and should not replace your backup-and-recovery operations. For example, if you lose a file, you can restore that file from the physical standby database, but that approach may take time, depending on the state and location of the standby database, and is the same as a traditional recovery solution. Oracle Data Guard, however, allows fast failover/switchover (role transition) to a standby database running on separate servers and storage, which may be geographically separated, maintaining data availability, in the event the primary database site goes down for any reason. The FRA, on the other hand, is local to the database server, so although it provides quick access for recovery purposes, it is prone to the same failure as the local site. For Oracle Data Guard, applications that utilize the database must be reconnected to use the new primary database in case of a role transition. Because the FRA is local to the database, no application reconnection is needed. Oracle Data Guard provides a predictable recovery time (time to perform role transition), versus the time to recover FRA image copies, which is gated by the amount of redo application needed to bring the image copies up-to-date with the rest of the database.

codeLISTING 1:

Space, by file type, consumed in the FRA

select file_type, space_used*percent_space_used/100/1024/1024 used, space_reclaimable*percent_space_reclaimable/100/1024/1024 reclaimable, frau.number_of_files from v$recovery_file_dest rfd, v$flash_recovery_area_usage frau;

This command, when run from the Oracle RMAN command prompt, creates the copies of the datafiles in the FRA with an Oracle-generated name such as o1_mf_users_2kmqr57t_.dbf.

60

Oracle Data Guard and the FRA

FILE_TYPE ---------------------------------CONTROLFILE ONLINELOG ARCHIVELOG BACKUPPIECE IMAGECOPY FLASHBACKLOG

USED --------------.00 .00 664.86 573.23 .00 6.07

codeLISTING 2:

RECLAIMABLE ------------------------------.00 .00 547.20 520.73 .00 .00

NUMBER_OF_FILES -----------------------------------------0 0 34 16 0 1

RMAN report of image copy datafiles in the FRA

RMAN> list copy of database; List of Datafile Copies Key

File S Completion Time Ckp SCN

Ckp Time

Name

--------- ------ -- -------------------------------- ---------------- -------------------

---------------------------------------------------------------------------

4404 1

A 26-SEP-06

1607862

4407 2

A 26-SEP-06

1607935 26-SEP-06

4405 3

A 26-SEP-06

1607907 26-SEP-06

4408 4

A 26-SEP-06

1607939 26-SEP-06

4406 5

A 26-SEP-06

1607926

/home/oracle/FRA/PRODB2/datafile/ o1_mf_system_2kmqnygd_.dbf /home/oracle/FRA/PRODB2/datafile/ o1_mf_undotbs1_2kmqqy2b_.dbf /home/oracle/FRA/PRODB2/datafile/ o1_mf_sysaux_2kmqpcnz_.dbf /home/oracle/FRA/PRODB2/datafile/ o1_mf_users_2kmqr57t_.dbf /home/oracle/FRA/PRODB2/datafile/ o1_mf_example_2kmqqgto_.dbf

26-SEP-06

26-SEP-06

on your system, it takes more than two hours to complete this step, making the tablespace data unavailable for the entire duration. This motivates you to take a look at minimizing recovery time. You consider using image copies to speed up the recovery. Using image copies, step 2 in the recovery is replaced by “Instruct the database to use the copy of the datafile instead of the original.” This reduces

the time taken by the step from hours to seconds. Here is the description of the recovery process, assuming that the USERS tablespace has been damaged: First, check the file ID (number) and name of the datafile of the tablespace. The output is shown in vertical format: select file_id, file_name from dba_data_files where tablespace_name = ‘USERS’;

ORACLE.COM/ORACLEMAGAZINE

11/17/06 3:33:36 PM

FILE_ID : 4 NAME : /home/oracle/oradata/PRODB2/ users01.dbf

Connect to Oracle RMAN and complete the rest of the recovery activities, which are similar to the steps listed above except that Step 2 is now “Switch datafile 4 to the copy in the FRA.” All the operations are shown in Listing 3. After the tablespace is brought online, check the filename:

Normal Operation

Copy of Datafile

DATABASE Datafile 2

/home/oracle/FRA/PRODB2/datafile/ o1_mf_users_2kmqr57t_.dbf

Note that the filename is no longer /home/oracle/oradata/PRODB2/users01 .dbf; rather, the copy in the FRA is shown as the original datafile. The tablespace becomes usable very quickly without a restore operation. Figure 1 shows original and copy datafile status before and after switching from a damaged datafile 4. SWITCHBACK

Even though the datafile has been quickly brought online to minimize downtime, it is now in the backup location, which may be on slower disks than what the main database is on. You may not want to run the database with the datafile at this location for long; you would typically want to move the datafile back to the original location— /home/oracle/oradata/PRODB2/—as soon as it becomes available. You can use Oracle RMAN to accomplish this. Here is a summary of the steps: 1. Make an image copy of the datafile at the original location. 2. Take the tablespace offline. 3. Switch the datafile to the “copy” (however, in this case, the “copy” is at the original location). 4. Recover the tablespace. 5. Place the tablespace online. These steps are presented in Listing 4. After the switchover, you can make sure the datafile is back in its original location:

Datafile 3

FRA Datafile 4

Datafile Copy 2

DATABASE

Datafile Copy 4

Damaged Datafile (not useful)

Datafile 2

Datafile 3

FRA Datafile 4

Datafile Copy 2

Datafile Copy 3

Datafile Copy 4

Figure 1. Using a copy of a datafile

codeLISTING 3:

RMAN operations to switch to the FRA

RMAN> sql ‘alter tablespace users offline’; sql statement: alter tablespace users offline RMAN> switch datafile 4 to copy; datafile 4 switched to datafile copy “/home/oracle/FRA/PRODB2/datafile/o1_mf_users_2kmqr57t_.dbf” RMAN> recover datafile 4; Starting recover at 26-SEP-06 using channel ORA_DISK_1 starting media recovery media recovery complete, elapsed time: 00:00:03 Finished recover at 26-SEP-06 RMAN> sql ‘alter tablespace users online’; sql statement: alter tablespace users online

codeLISTING 4:

Switching back from the FRA to the original location

RMAN> backup as copy datafile 4 format ‘/home/oracle/oradata/PRODB2/users01.dbf’; Starting backup at 27-SEP-06 using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile copy input datafile fno=00004 name=/home/oracle/FRA/PRODB2/datafile/o1_mf_users_2kmqr57t_.dbf output filename=/home/oracle/oradata/PRODB2/users01.dbf tag=TAG20060927T103710 recid=45 stamp=602246230 channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01 Finished backup at 27-SEP-06 Starting Control File Autobackup at 27-SEP-06 piece handle=/home/oracle/FRA/PRODB2/autobackup/2006_09_27/ o1_mf_n_602246232_2ko34s42_.bkp comment=NONE Finished Control File Autobackup at 27-SEP-06 RMAN> sql ‘alter tablespace users offline’; … RMAN> switch datafile 4 to copy; datafile 4 switched to datafile copy “/home/oracle/oradata/PRODB2/users01.dbf” RMAN> recover datafile 4; … RMAN> sql ‘alter tablespace users online’; …

ORACLE MAGAZINE

JF07_Flashback.indd 61

Datafile Copy 3

After Switching to the FRA for Datafile 4

select name from v$datafile where file# = 4; NAME ----------------------------------------------------------------------------------------------------

Live Datafile

JANUARY/FEBRUARY 2007

61

11/17/06 3:33:38 PM

RECOVERY

select name from v$datafile where file# = 4;

burden of managing the space from the DBA to the database.

NAME ----------------------------------------------------------------------------------------------------

BACK UP TO TAPE

/home/oracle/oradata/PRODB2/users01.dbf

In case of a failure, you save valuable time by quickly using the image copy of the datafile in the FRA, and there is no need to restore it first. The same concept can be applied to the entire database as well. If the original location of all the datafiles is damaged, you can easily switch the entire database to the copy stored in the FRA. To switch to the FRA copy, issue the following, which directs the whole database to use all the latest image copies in the FRA location as its datafiles:

Although the backup to the FRA comes with great benefits, it is still not foolproof for normal disaster protection. Disks can fail, making these FRA backups disappear. Similarly, unlike tapes, disks cannot be removed easily and stored at a different location. Therefore, you still need to back up the FRA to tape. To do so, use the following command in RMAN. It backs up all contents of the FRA, including archived logs: run { allocate channel c1 type sbt_tape; backup recovery area; }

RMAN> switch database to copy;

Note that you can also perform the above operations on the image copies in any location without using the FRA. However, using the FRA moves the

CONCLUSION

The primary objective of any backup design is to enhance the process of recovery—to make it faster and more reliable. Using the flash recovery area,

DBAs can direct all backups to a single location that is managed by Oracle Database. Using the Oracle RMAN image copies in the FRA, DBAs can very quickly recover from damage to a datafile without using a traditional restore-andrecovery operation. O Arup Nanda ([email protected]) has been an Oracle DBA for more than 12 years, handling all aspects of database administration—from performance tuning to security and disaster recovery. He is a coauthor of PL/SQL for DBAs (O’Reilly Media, 2005) and was Oracle Magazine’s DBA of the Year in 2003.

READ more about the flash recovery area “Configuring the Flash Recovery Area: Advanced Topics” download.oracle.com/docs/cd/B19306_01/ backup.102/b14191/rcmconfg001.htm#sthref476

Flashback database command “Flash Back to a Better Time” oracle.com/technology/oramag/oracle/04-may/ o34tech_avail.html

             

            

 

   

               

 !  "  "         

#    $ % $ &    !  ""   ' ( )                         

     !   & * *&       " +&) !   #     "$     %      

 ! **  %   #     " 

   

     )#     "'   ' ,--.'  " '

62

JANUARY/FEBRUARY 2007

JF07_Flashback.indd 62

ORACLE.COM/ORACLEMAGAZINE

11/20/06 10:53:03 AM

t e c h n o l o g y ASK TOM

BY TO M KYTE

On Top-n and Pagination Queries

Our technologist gets more results using ROW_NUMBER, RANK, and DENSE_RANK.

select * from (your_query) where rownum <= 10;

in order to get the first 10 rows from “your query,” and how to use ROWNUM like this: select * from ( select rownum rnum, a.* from (your_query) a where rownum <= :M ) where rnum >= :N;

in order to get rows n through m from “your query.” As always, there is more than one way to do things in Oracle Database, and these top-n and pagination queries are no exception. In this column, I’d like to take a look at alternative ways to achieve this functionality by using analytic functions and introduce another variation on the top-n query: getting the top-n records by some set of attributes, such as getting the “set of rows representing the top three salaries by DEPTNO” from EMP. TOP-N QUERY

Another way to write a top-n query (which is similar to using the LIMIT clause in MySQL or using “set rowcount” in SQL Server to limit

the number of records returned by a query) is to use the analytic function ROW_NUMBER. It behaves similarly to the ROWNUM pseudocolumn but is more flexible and has more capabilities. Specifically, I’ll be able to use ROW_ NUMBER to get the “top-n records by some set of attributes” in the next section (“Top-n Queries by Something”). Let’s look at what ROW_NUMBER can do. Here is an example query using ROW_NUMBER to assign an increasing number to each row in the EMP table after sorting by SAL DESC: SQL> select ename, sal, 2 row_number() 3 over (order by sal desc) rn 4 from emp 5 order by sal desc 6 / ENAME --------------KING FORD SCOTT JONES

SAL RN ----------- ----5000 1 3000 2 3000 3 2975 4

7 over (order by sal desc) <= 3 8 order by sal desc 9 / row_number() * ERROR at line 6: ORA-30483: window functions are not allowed here

The problem here is that analytic functions are evaluated after the WHERE clause and therefore cannot be used in the WHERE clause. That is not really a problem, however, because I have inline views—I can apply a predicate to ROW_NUMBER after it is assigned. For example SQL> select * 2 from ( 3 select ename, sal, 4 row_number() 5 over (order by sal desc) rn 6 from emp 7 ) 8 where rn <= 3 9 order by sal desc 10 /

...

n a recent Ask Tom column (September/October 2006), I wrote about using ROWNUM to perform top-n queries, getting the first n number of rows from an ordered result set, and pagination queries, getting rows n through m from a result set. In that column, I demonstrated how to use ROWNUM like this:

JAMES SMITH

950 800

ENAME --------------KING SCOTT FORD

13 14

14 rows selected.

So, ROW_NUMBER allows me to easily assign this increasing number after sorting, but at first glance, it doesn’t seem to support retrieval of just the first n rows: SQL> select ename, sal, 2 row_number() 3 over (order by sal desc) rn 4 from emp 5 where 6 row_number()

3 rows selected.

So, that demonstrates how to perform a top-n query by using ROW_ NUMBER and also points out a general issue with top-n queries. If you look at that result, you see two rows with the value 3000. What if, in the EMP table, three people, instead of just two, had a salary of 3000? The result obtained by the above query would be ambiguous—I

ORACLE MAGAZINE

JF07_AskTom.indd 63

SAL RN ----------- -----5000 1 3000 2 3000 3

JANUARY/FEBRUARY 2007

63

11/17/06 11:37:10 AM

ASK TOM

SQL> update emp 2 set sal = 3000 3 where ename = ‘SMITH’; 1 row updated.

X -------–– 1 1 1

SQL> select * 2 from ( 3 select ename, sal, 4 row_number() 5 over (order by sal desc) rn 6 from emp 7 ) 8 where rn <= 3 9 order by sal desc 10 / ENAME -------------– KING SMITH SCOTT

SQL> select * 2 from 3 (select x,y, 4 row_number() 5 over (order by x) rn 6 from t) 7 where rn <= 3; Y RN -------- -----100 1 200 2 300 3

3 rows selected.

Now, here’s what happens if I reload this table with the same data, just in a different order: SQL> truncate table t; Table truncated.

SAL RN ----------- -----5000 1 3000 2 3000 3

3 rows selected.

As you can see, FORD disappeared from this result set. However, you might find that if you perform this update and query your data, FORD does not disappear but rather SCOTT or SMITH does. Which row would disappear would be quite arbitrary. That shows a problem with top-n queries in general: If you are ordering by something nonunique, the first set of n rows you get back may be different, given exactly the same input data. For example

SQL> insert into t 2 values ( 1, 400 SQL> insert into t 2 values ( 1, 200 SQL> insert into t 2 values ( 1, 300 SQL> insert into t 2 values ( 1, 100

); ); );

Y RN -------- -----400 1 200 2 300 3

3 rows selected. SQL> insert into t 2 values ( 1, 100 SQL> insert into t 2 values ( 1, 200 SQL> insert into t 2 values ( 1, 300 SQL> insert into t 2 values ( 1, 400

64

); ); ); );

JANUARY/FEBRUARY 2007

JF07_AskTom.indd 64

SQL> select ename,sal, 2 row_number() 3 over (order by sal desc)rn, 4 rank() 5 over (order by sal desc)rnk, 6 dense_rank() 7 over (order by sal desc)drnk 8 from emp 9 order by sal desc 10 / ENAME --------------KING FORD SCOTT JONES BLAKE CLARK

SAL RN RNK DRNK ------------ ------ ---------- ------------5000 1 1 1 3000 2 2 2 3000 3 2 2 2975 4 4 3 2850 5 5 4 2450 6 6 5

14 rows selected. SQL> select * 2 from 3 (select x,y, 4 row_number() 5 over (order by x) rn 6 from t) 7 where rn <= 3; X -------–– 1 1 1

SQL> create table t 2 ( x number, 3 y number 4 ); Table created.

);

ambiguity. They will do so, but the analytic functions might return more than n rows. In my opinion, when the attribute I order by is not unique, I want my query to return all of the relevant records—not just the first n arbitrary ones. To that end, I can use the RANK and DENSE_RANK analytic functions. Let’s take a look at what they do:

...

would get three records, but the records I retrieved would be somewhat random. For example

All of a sudden, I get an entirely different answer. This is something to be aware of when you perform top-n queries and the attribute you order by is not unique. Bearing this in mind, I can use other analytic functions to remove the

The main things to note here are the following: O ROW_NUMBER assigns contiguous, unique numbers from 1..N to a result set. O RANK does not assign unique numbers—FORD and SCOTT tied for second place—nor does it assign contiguous numbers. No record was assigned the value of 3, because two people tied for second place, and no one came in third, according to RANK. O DENSE_RANK, like RANK, does not assign unique numbers, but it does assign contiguous numbers. Even though two records tied for second place, there is a third-place record. You can use RANK and DENSE_ RANK in the same way you would use ROW_NUMBER to restrict the number of rows returned, but obviously you’ll get subtly different results. For example

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:37:11 AM

SQL> select * 2 from ( 3 select ename,sal, 4 dense_rank() 5 over (order by sal desc)drnk 6 from emp 7 ) where drnk <= 3 8 order by sal desc 9 / ENAME --------------KING SCOTT FORD JONES

SAL DRNK ----------- -----------5000 1 3000 2 3000 2 2975 3

4 rows selected.

That query returns “the set of people who make the top three salaries,” which is likely the desired result. Getting the first three records from EMP after sorting by SAL is rather arbitrary, because using exactly the same set of data, simply inserted in different orders, you could observe different result sets with ROW_NUMBER (because SAL is not unique). Using DENSE_RANK, however, I don’t get precisely three records but, instead, a repeatable (deterministic) result set. And I suspect that I retrieve the set the end user really meant to retrieve—the set of people making the top three salaries. TOP-N QUERIES BY SOMETHING

Using analytics is superior to using the ROWNUM pseudocolumn when it comes to processing more-complex queries. For example, suppose you wanted the top-n highest-paid people from the EMP table by DEPTNO. That is, for each department, display the top three highest-paid people (or the set of people making the top three salaries, using DENSE_RANK). To achieve this, I need to break up the result set by DEPTNO, sort it by SAL DESC, and then assign the analytic function result to each row. Fortunately, analytics are designed to do exactly this type of work. For example SQL> break on deptno skip 1

ries in each of the departments, I would code the following:

SQL> select deptno, ename,sal, 2 row_number() 3 over (partition by deptno 4 order by sal desc)rn, 5 rank() 6 over (partition by deptno 7 order by sal desc)rnk, 8 dense_rank() 9 over (partition by deptno 10 order by sal desc)drnk 11 from emp 12 order by deptno, sal desc 13 /

SQL> break on deptno skip 1 SQL> select * 2 from ( 3 select deptno, ename, sal, 4 dense_rank() 5 over (partition by deptno 6 order by sal desc)drnk 7 from emp 8 ) where drnk <= 3 9 order by deptno, sal desc 10 /

DEPTNO ENAME SAL RN RNK DRNK ---------------------- --------------- ------------ ------ -------- ----------10 KING 5000 1 1 1 CLARK 2450 2 2 2 MILLER 1300 3 3 3 20

SCOTT FORD JONES ADAMS SMITH

3000 3000 2975 1100 800

1 2 3 4 5

1 1 3 4 5

1 1 2 3 4

30 BLAKE ALLEN TURNER MARTIN WARD JAMES

2850 1600 1500 1250 1250 950

1 2 3 4 5 6

1 2 3 4 4 6

1 2 3 4 4 5

DEPTNO ENAME SAL DRNK ------------------- ----------------- ------------ ----------10 KING 5000 1 CLARK 2450 2 MILLER 1300 3 20

30

3000 3000 2975 1100

1 1 2 3

BLAKE 2850 ALLEN 1600 TURNER 1500

1 2 3

10 rows selected.

PAGINATION IN GETTING ROWS N THROUGH M 14 rows selected.

Here I’ve used the PARTITION clause of the analytic function. This breaks up my result set virtually into some number of groups and then applies the analytic function to each group in turn, resetting itself as it goes from group to group. That allows me to assign an increasing number—using ROW_NUMBER, for example—to the rows in each department, resetting the ROW_ NUMBER to 1 as I go from group to group. As you can see, it would be quite easy to get the “top 3 by DEPTNO” now, using an inline view and applying the predicate WHERE RN <= 3 or RNK <= 3 or DRNK <= 3, depending on which numbering method returns the answer you deem most applicable. So, for example, to retrieve the set of employees who make the top three sala-

The last thing I’ll take a look at is performing pagination with analytics. Pagination is common in Web-based applications: The user inputs a set of criteria, which runs a query and then lets the user click the Previous and Next buttons to page through the result set. To achieve this paging functionality, the application needs to be able to get a certain set of rows from the query. In the prior column dealing with ROWNUM (at oracle.com/technology/ oramag/oracle/06-sep/o56asktom.html) and in the “Top-n Query” section above, I demonstrated how to achieve that pagination, but it required two levels of inline views and could be considered rather unwieldy. A syntactically easier way to write that pagination query is select * from (

ORACLE MAGAZINE

JF07_AskTom.indd 65

SCOTT FORD JONES ADAMS

JANUARY/FEBRUARY 2007

65

11/17/06 11:37:12 AM

ASK TOM

select /*+ first_rows(25) */ your_columns, row_number() over (order by something unique)rn from your_tables ) where rn between :n and :m order by rn;

For example, suppose you wanted to paginate through the ALL_OBJECTS view, wanted to show 25 rows on a page, and needed to show page 5. The query would be SQL> variable n number SQL> variable m number SQL> exec :n := 101; :m := 125 PL/SQL procedure successfully completed.

RN ------101 102

I_ACCESS1 I_TRIGGER1 I_TRIGGER2

123 124 125

SQL> set autotrace on explain SQL> select job, count(*) 2 from emp 3 group by job 4 /

...

OBJECT_NAME --------------------------------I_SEQ1 I_OBJAUTH1

124 125 126

25 rows selected.

I chose 25 for the FIRST_ROWS hint because that is my page size and pagination-style queries should be optimized to get the first page as fast as possible. I assign ROW_NUMBER to each row after sorting by OBJECT_ID. Then I use a simple BETWEEN to retrieve the specific rows I need (101 through 125 in this case). You need to order by something unique for these pagination queries, so that ROW_NUMBER is assigned deterministically to the rows each and every time. Otherwise, you end up with a problem similar to what I pointed

66

JANUARY/FEBRUARY 2007

JF07_AskTom.indd 66

DOES GROUP BY SORT? Does a GROUP BY clause in a query guarantee that the output data will be sorted on the GROUP BY columns in order, even if there is no ORDER BY clause?

Unless and until there is an ORDER BY statement on a query, the rows returned cannot be assumed to be in any order. Without an ORDER BY, the data may be returned in any order in which the database feels like returning it. This has always been true and will always be true. In fact, in Oracle Database 10g Release 2, you’ll see GROUP BY returning data in a random order much more often than before:

SQL> select * 2 from ( 3 select /*+ first_rows(25) */ 4 object_id,object_name, 5 row_number() over 6 (order by object_id) rn 7 from all_objects) 8 where rn between :n and :m 9 order by rn; OBJECT_ID -------------------------102 103

out with the salary top-n query. For more details on deterministic queries, go to oracle.com/technology/oramag/ oracle/06-sep/o56asktom.html. Also, for complete information on using analytic functions, see download.oracle. com/docs/cd/B19306_01/server.102/ b14223/analysis.htm#i1007779 (chapter 21 of the Data Warehousing Guide). In my opinion, analytic functions are the coolest thing to happen to SQL since the SELECT keyword was introduced.

JOB --------------------------CLERK SALESMAN PRESIDENT MANAGER ANALYST

COUNT(*) ---------------------4 4 1 3 2

------------------------------------------------------------------------------------| Id | Operation | Name | ------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | | 1 | HASH GROUP BY | | | 2 | TABLE ACCESS FULL| EMP | -------------------------------------------------------------------------------------

The HASH GROUP BY step in the explain plan is a newer and generally

faster and more efficient query plan step for a GROUP BY operation, and it definitely doesn’t sort data. Don’t be misled if the results are not the same on your system. It does not matter if, when you execute that query, the results are sorted on your system—it takes only one countercase to demonstrate that something is not always true. Only with an ORDER BY can you make any assumptions about the sorted order of data. Many things—from parallel query to partitioning, to reverse-key indexes, to hash-partitioned indexes, to HASH GROUP BY steps, to the presence (or lack) of B*tree indexes—can and will cause data not to be returned in the sorted order you anticipated. If you need data sorted, you have to use an ORDER BY statement; there is no avoiding that. For more of this ORDER BY discussion, check out asktom.oracle .com/~tkyte/OrderBy.html. O Tom Kyte has worked for Oracle since 1993. He is a vice president in the Oracle Public Sector group and the author of Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions (Apress, 2005) and Effective Oracle by Design (Oracle Press, 2003), among others.

ASK Tom Oracle Vice President Tom Kyte answers your most difficult technology questions. Highlights from that forum appear in this column. asktom.oracle.com

READ more Tom Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions amazon.com/exec/obidos/tg/detail/-/1590595300/ Effective Oracle by Design amazon.com/exec/obidos/tg/detail/-/0072230657/ “On ROWNUM and Limiting Results” oracle.com/technology/oramag/oracle/06-sep/ o56asktom.html Tom Kyte Blog tkyte.blogspot.com

DOWNLOAD Oracle Database 10g Express Edition (Oracle Database XE) oracle.com/technology/xe

READ more about analytic functions

download.oracle.com/docs/cd/B19306_01/server.102/ b14223/analysis.htm#i1007779

ORDER BY

asktom.oracle.com/~tkyte/OrderBy.html

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:37:13 AM

CERTIFIEDadvantage partner index

Oracle PartnerNetwork Certified Advantage Partner Index

The partners featured in this index have recently reached or renewed their status of Certified Advantage Partner in the Oracle PartnerNetwork. COMPANY NAME Global Accenture Advanced Micro Devices, Inc. Apple Avnet, Inc. BearingPoint Capgemini CDW CGI Group, Inc. Cisco Computer Sciences Corporation Comverse Convergys Dell Inc. Deloitte EDS EMC Fidelity Information Services Fujitsu Group Hitachi HP IBM / IBM Global Business Services i-flex Infosys Ingram Micro Intec Intel Microsoft NEC Network Appliance, Inc. Novell Red Hat Satyam Sun Microsystems Sungard Tata Consultancy Services TechData Temenos Unisys Wipro Africa 2Cana Solutions (Pty) Ltd. EOH Consulting Services (Pty) Ltd. Implementation Factory (Pty) Ltd. Integrated Tertiary Software (Pty) Ltd. New Dawn Technologies Waymark Infotech (Pty) Ltd. Asia Pacific Acumen Alliance Investments ASG (Asia Pacific) Pty Ltd. Application Hosting Services Co., Ltd. Attain IT Pty Ltd. Automated Systems (HK) Ltd. Beijing Futong Dong Fang Technology Co. Ltd. China National Software & Service Company Limited DataHeaven Co., Ltd. Dataone Asia (Thailand) Co. Ltd. Daesang Information Technology Co., Ltd. Digital China (China) Limited DMS Software Technologies (Pvt.) Ltd. ECS International Trading (Shanghai) Co., Ltd. FPT Information System FPT Software Solutions Fujian Fujitsu Communication Software Co., Ltd. Fusion5 Limited GTL Limited FPT Corporation HAND Enterprise Solutions Co., Ltd. HPT Vietnam Corporation Huadi Computer Co., Ltd. Huawei Technologies Co., Ltd. iCE Consulting Co Ltd. Jigsaw Services Pty Ltd. LG CNS Co., Ltd. IT&C Co., Ltd. KPMG Consulting Co Ltd. Kolon Data Communication Co., Ltd. NCS Pte. Ltd. Nucleus Software Exports Ltd. Ora-Tech System Pvt. Ltd. OED Technology Sdn Bhd Propia Co., Ltd. Pythis

URL www.accenture.com www.amd.com www.apple.com www.aps.avnet.com www.bearingpoint.com www.capgemini.com www.cdw.com www.cgi.com www.cisco.com www.csc.com www.comverse.com www.convergys.com www.dell.com www.deloitte.com www.eds.com www.emc.com www.fidelityinfoservices.com www.fujitsu.com www.hitachi.com www.hp.com www.ibm.com www.iflexsolutions.com www.infosys.com www.ingrammicro.com www.intecbilling.com www.intel.com www.microsoft.com www.nec.com www.netapp.com www.novell.com www.redhat.com www.satyam.com www.sun.com www.sungard.com www.tcs.com www.techdata.com www.temenos.com www.unisys.com www.wipro.com www.2cana.co.za www.eoh.co.za www.ifactory.co.za www.its.co.za www.ndt.co.za www.waymark.co.za www.acumen.com.au www.asggroup.com.au www.a-host.co.th www.attainit.com.au www.asl.com.hk www.futong.com.cn www.css.com.cn www.dataheaven.co.kr www.diasia.co.th www.daesangit.com www.digitalchina.com.cn www.dmsswt.com www.ecschina.com www.fis.com.vn www.fss.com.vn www.ffcs.cn www.fusion5.co.nz www.gtllimited.com www.fpt.com.vn www.hand-china.com www.hptvietnam.com www.huadi.com.cn www.huawei.com/cn www.iceconsulting.co.th www.jigsawservices.com.au www.lgcns.com www.itnc.co.kr www.kpmg.com.tw www.kdc.kolon.co.kr www.ncs.com.sg www.nucleussoftware.com www.ora-tech.com www.patimas.com www.propia.co.kr www.pythis.com

COMPANY NAME

ORACLE MAGAZINE

JF07_CAPindex.indd 67

URL

Red Rock Consulting Sam Yung Holdings IT Business Division Samsung SDS Shen Yang Neusoft Co., Ltd. Sierra Atlantic Sysage Technology Co., Ltd. System Access Pte Limited Sysware Corporation Systex Information (H.K.) Ltd. Taiji Computer Corporation Tata Infotech Ltd. TechAccess Pakistan (Pvt.) Ltd. Wezoomtek Corporation Canada MTS Allstream Inc. Oto Global Solutions Inc. Europe Actebis Peacock GmbH ACURE A/S Afina Sistemas Informaticos Alcatel Alcatel CIT Anelia SAS Ares Arinso Nederland BV Asseco Poland S.A. Atos Origin IT Services UK Atos Origin Nederland BV Basilica Computing Limited Bechtle Logistik & Service GmbH Borlas IBC Capgemini Telecom Media und Networks GmbH CBOSS Cedar Consulting Ltd. CIBER UK ComArch S.A. Compelsysao CompIT Technologies Computacenter AG & Co. OHG ComputerLand S.A. Consit A/S CROC Incorporated Cronos NV Cronos Ibérica, SA CSC Portugal Deutsche Post ITSolutions GmbH Developing World Systems Ltd. DIGORA Distrilogie Belgium BVBA DBConcepts Daten - und Informationsverarbeitungsges.m.b.H. DNS Hungary Ltd. Engineering Ingegneria Informatica S.p.A. Explorer (UK) Limited FORS Development Center Fujitsu Services Limited Getronics PinkRoccade Global Services Aarhus & Copenhagen A/S Groupe LGS France GWI Unternehmensgruppe Hunkler GmbH & Co. KG I-Teco Inatech Solutions Ltd. Industrial and Financial Systems, IFS AB Ineum Consulting Infor Global Solutions GmbH Informacines Technologijos Informatica El Cortes Ingles Information Technologies Company Inter Access B.V. IT Alise KNAPP Systemintegration GmbH KPMG Consulting Kurt Salmon Associates Leaves LogicaCMG LOGIX Mdtvision Micros-Fidelio GmbH Montora Morse Group Msg Systems ag Network Centric Solutions Limited Noetix

www.redrock.net.au www.syhds.com www.sds.samsung.co.kr www.neusoft.com www. sierraatlantic.com www.sysage.com.tw www.systemaccess.com www.sysware.com.tw www.systex.com.hk www.taiji.com.cn www.tatainfotech.com www.techaccesspak.com www.wezoomtek.com www.allstream.com www.oto.com www.actebispeacock.de www.acure.dk www.afina.es www.alcatel.com www.alcatel.fr www.anelia.fr www.ares.fr www.arinso.com www.asseco.pl www.atosorigin.com www.atosorigin.com www.basilica.co.uk www.bechtle.com www.borlas.ru www.de.cgey.com www.cboss.ru www.cedarconsulting.co.uk www.ciber.com www.comarch.pl www.compelsysao.co.uk www.compit-t.com.by www.computacenter.de www.computerland.pl www.consit.dk www.croc.ru www.cronos.be www.cronosiberica.es www.csc.pt www.dp-itsolutions.de www.dwsonline.co.uk www.digora.com www.abcomp.be www.dbconcepts.at www.dns-hungary.hu www.eng.it www.explorer.uk.com www.fdc.ru www.uk.fujitsu.com www.getronicspinkroccade.nl www.maerskdata.dk www.lgsrecrut.com www.gwi-ag.com www.hunkler.biz www.i-teco.ru www.inatech.com www.ifsworld.com www.ineum.fr www.infor.de www.it.lt www.ieci.es www.it.ru www.interaccess.nl www.it-alise.com www.knapp.com www.kpmg.be www.kurtsalmon.com www.leaves.ru www.logicacmg.nl www.logix.fr www.mdtvision.com www.micros-fidelio.org www.montora.com www.morse.com www.msg-systems.com www.ncsltd.com www.noetix.com

JANUARY/FEBRUARY 2007

67

11/21/06 3:11:13 PM

COMPANY NAME

URL

Nokia Corporation Oficina de Cooperación Universitaria OpenPSL Open Technologies Opitz Consulting GmbH Patech Solutions Limited PC-Ware Information Technologies AG PDV-Systeme Erfurt Gesellschaft für Systemtechnik mbH Peak Systems Support Ltd. Peter-Service Prodatis Consulting AG Professional Computer Services S.A. QAS Ltd. Quantix Ltd. RDTEX RTC Real-Time Center AG Satyam Computer Services S.C. RomSoft S.R.L. SCC PLC Sddc SIV AG Service & Systems Solutions Softman SA Software Design & Management AG Sogeti Espana Sopra Group Sphinx CST TEAM GmbH Teamsolve Tech Data Midrange GmbH Technology Reply Srl Teta S.A. TietoEnator Corporation TimeStamp - Sistema de Informação TopS Business Integrator T-Systems International GmbH Up to Data, Professional Services GMBH Vector Software SRL Version 1 Software Vertis BV Whitehouse Consultants Ltd. WM-data Danmark A/S

www.nokia.com www.ocu.es www.openpsl.com www.ot.ru www.opitz-consulting.de www.patech-solutions.com www.pc-ware.de www.pdv.de www.peaksystems.uk.com www.billing.ru www.prodatis.com www.pcs.gr www.qas.com www.quantix-uk.com www.rdtex.ru www.rtc.ch www.satyam.com www.romsoft.info www.scc.com www.sddc.fr www.siv.de www.northgate-is.com www.softman.pl www.sdm.de www.sogeti.biz www.sopragroup.com www.sphinx.co.uk www.team-pb.de www.teamsolve.co.uk www.tdmidrange.de www.reply.it www.teta.com.pl www.tetioenator.com www.timestamp.pt www.topsbi.ru www.t-systems.com www.uptodata.de www.vectorsoftware.ro www.version1.com www.vertis.nl www.whitehouse-consult.com www.wmdata.com

Latin America Abaco Tecnologia de Informacao Ltda Acao Informatica Brasil Ltda Advanced Database & IT Sistemas de Informação S.A. Asi Consultants Aporte Gestao Empresarial e Tecnologia da Informacao Ltda Appteck S.A. de C.V. Apply Solutions Asistir Ltda. B2BR Business to Business Informatica do Brasil Bertini Consultoria em informatica BGH, S.A. BusinessMind S.A. Casa de Software S/A Compusoluciones y Asociados, S.A. de C.V. CFP3 Consultoria e Tecnologia Datastar Argentina S.A. Datum, S.A. (Guatemala) Datum, S.A. de C.V. (El Salvador) Discover Technology Informatica Ltda e-Builders & Consulting Group S. A. C. E-Partner Comercial e Serviços de Informática Ltda EN-SOF Consultoria e Informática Ltda. ERP Soluciones S.A. de C.V. Excelsis S.A.C.I.G Elucid Solutions S.A. Eserv Expert Services Del Ecuador SA FYC Soluciones Integrales, C.A. Grupo Quanam Illuminat In Motion Servicios S.A. Ingenieria Condor S.A. DE C.V. Innovat S.A. J Evans y Asociados S.A.C. JFM Informática Ltda. MATERA Systems Informatica Ltda MOST S.A. MPL Corporate Software SA

www.abaco.com.br www.acao.com.br www.advancedit.com.br www.asiconsutants.com www.aporte.com www.appteck.com.mx www.applysolutions.com.br www.asistir.com www.b2br.com.br www.bertini.com.br www.bgh.com.ar www.businessmind.com.ec www.casasoft.com.br www.compusoluciones.com www.commitconsultores.com.br www.datastar.com.ar www.datum.com.gt www.datum.com.sv www.discover.com.br www.ebuilders.com.pe www.epartnerbr.com.br www.en-sof.com.br www.erpsol.com.mx www.excelsis.com.py www.elucid.com.br www.eserv-andina.com http://www.fyccorp.com www.quanam.com www.illuminatnm.com www.inmotion.cl www.i-condor.com www.itexperts.com.ec www.jevansa.com.pe www.jfm.com.br www.matera.com www.grupomost.com www.mpl.com.br

COMPANY NAME

URL

Netix Distribuidores de Tecnologia, C.A.

www.netixcorp.com

Nexsys

www.nexsysla.com

Officer Distribuidora

www.officer.com.br

Preteco SA

www.preteco.com.ar

Procwork CRM

www.procwork.com.br

Recours Informatica Consultoria e Assessoria Ltda

www.recours.com.br

RedPartner, S.A.

www.red-partner.com

Servicios, Tecnologia y Organizacion S.A. de C.V. (STO)

www.stoconsulting.com

Sinergy Solutions, S.A. de C.V.

www.sinergysolutions.com.mx

Snoop Consulting S.R.L.

www.snoopconsulting.com

Soft Bolivar S.A.

www.softbolivar.com

Solusoft

www.solusoft.com

Soluciones Casee SOCASEE, S.A.

www.socasee.com

Sonda del Peru S.A.

www.sonda.com

SQL Technology S.A.

www.sqltech.cl

Sunrising Desenvolvimento de Sistemas

www.sunrising.com.br

Sysdesign Consultoria Em Informatica Limitada

www.sysdesign.com.br

Tilsor S.A.

www.tilsor.com.uy

TSnet S.A.

www.tsnetglobal.com

Unimix Tecnologia Ltda

www.unimix.com.br

YKP Consultoria e Sistemas Ltda.

www.ykp.com.br

Middle East Bahwan Cybertek LLC

www.bahwancybertek.com

Computer and Communications Systems

www. ccs.com.jo

Computer Information Systems

www.cis.com.lb

Computer and Engineering Bureau CEB

www.ceb.com.jo

Districom

www.cis.com.lb

Emirates Computers Est

www.emiratescomputers.co.ae

Global Technology Services LLC

www.gtsuae.com

Hyperlink

www.hyperlink-me.com

International Turnkey Systems (ITS)

www.its.ws

Intracom Jordan

www.intracom.jo

Mannai Trading Company Limited

www.mannaicorp.com

Mercator

www.mercator.co.ae

Macro Software Systems LLC

www.macro-soft.com

Mindscape

www.mindscapeit.com

Raya Gulf LLC

www.rayaholding.com

Royah

www.royah.com

United States 170 Systems, Inc.

www.170systems.com

Abaris, Inc.

www.abaris-inc.com

Agilysys

www.agilysys.com

Apex IT, Inc.

www.apexit.com

Applications Software Technology Corp.

www.astcorporation.com

Applied Biosystems

www.appliedbiosystems.com/sqllims

BMC Software, Inc.

www.bmc.com

CedarCrestone

www.cedarcrestone.com

CherryRoad Technologies

www.cherryroad.com

CIBER

www.ciber.com/ces/oracle

Compuware Corporation

www.compuware.com

CSS International

www.cssus.com

DAZ Systems

www.dazsi.com

DLT Solutions, Inc.

www.dlt.com

Emerging Solutions

www.emergenow.com

Enterprise Business Solutions, LLC

www.theebsgroup.com

Hyperion Solutions

www.hyperion.com

INRANGE Consulting Corporation

www.inrangeconsulting.com

Intermec

www.intermec.com

KBACE Technologies, Inc.

www.kbace.com

Kronos Inc.

www.kronos.com

Lucidity Consulting Group LP

www.luciditycg.com

MI Services Group, Inc.

www.mi-services.com

NaviSite, Inc.

www.navisite.com

Optimum Solutions Group, LLC

www.optimumsolutions.com

OSI Consulting, Inc

www.osius.com

Perot Systems Corporation

www.perotsystems.com

Princeton Softech

www.princetonsoftech.com

Protege Software Services, Inc.

www.protege.com

RCM Technologies

www.rcmt.com

Solbourne Computer Inc.

www.solbourne.com

SYSTIME Computer Corporation

www.systime.net

TITAN Technology Partners

www.ttpartners.com

TUSC

www.tusc.com

USinternetworking, Inc.

www.USi.net

Vertex, Inc.

www.vertexinc.com

Waters Corporation

www.waters.com

Wave Consulting Group

www.wavecg.com

Whitbread Technology Partners, Inc.

www.whitbreadtech.com

Xcelicor, Inc.

www.xcelicor.com

Partners able to demonstrate superior product knowledge, competence, and a commitment to doing business with Oracle qualify for the Oracle PartnerNetwork Certified Advantage Partner level. These partners receive a higher level of service, training, benefits, and resources from Oracle to support them in delivering quality to customers. For more information on partners, please visit the Oracle PartnerNetwork Solutions Catalog at solutions.oracle.com.

68

JANUARY/FEBRUARY 2007

JF07_CAPindex.indd 68

ORACLE.COM/ORACLEMAGAZINE

11/21/06 3:11:14 PM

c o m m e n t IN THE FIELD

BY A R I K A P L A N

Listening to You

IOUG surveys provide guidance for expanding databases and open source software issues. hom do you listen to? When you need insight into how to do your job better or where the database industry is headed, what is your best source of information? Does one particular columnist resonate with you? Is it a company’s press releases or white papers that make you go “Hmm”? Is it some coworker or colleague who has just the right perspective on the matters that matter? The Independent Oracle Users Group (IOUG) conducts quarterly surveys of its membership on all kinds of issues that affect your job, your enterprise, and the industry as a whole. The monthly magazine Database Trends and Applications and vendors looking for specific information sponsor these surveys, but it’s your opinion that makes them valuable. These e-mail surveys go out to 20,000 IOUG members worldwide, and what the membership says is worth listening to. One recent IOUG survey about database growth revealed invaluable information for perspective and planning purposes. Databases are growing by 20 to 80 percent per year. Just a few years ago, a 10GB database was big. Our survey revealed that 23 percent of enterprises now have at least one terabytesized database. These bigger databases aren’t just found at large enterprises, although 41 percent of large enterprises do report at least one terabyte database. Fully 24 percent of medium enterprises and 10 percent of small enterprises also report terabyte databases. Some enterprises—including heavyweights like Google, Yahoo!, and Oracle itself— report petabyte-sized database environments. (That’s a million gigabytes.) Such large databases, and the yearly growth in all databases, present challenges that we need to handle. Backup solutions need to become faster—

perhaps more selective—if our backup windows aren’t to exceed operational windows. Performance issues—how the application response scales with database size—must be investigated, clarified, and solved. Replication to multiple sites—for high availability, disaster recovery, and efficient access—becomes problematic with large and growing databases. The storage aspect is significant, with tiers of options—archives, expensive disks, inexpensive disks—to consider and select. Another recent IOUG survey queried the use of Linux, an open source operating system with both free and for-pay versions. Once regarded as a hobbyist operating system, Linux now has a place at most enterprises, and its adoption is increasing. The survey suggests that in the next year, Linux installations will increase from 37 to 44 percent of enterprises in a year; Windows popularity will fall from 60 to 48 percent, and UNIX will fall from 74 to 67 percent. The main attraction of Linux is cost savings: It’s hard to say no to free. “You get what you pay for” doesn’t seem to apply to a solid and stable operating system that many major enterprises accept. Even the for-pay versions of Linux are less expensive than the more widely used commercial operating systems. Performance and reliability equal or exceed those of commercial products, according to many respondents. Clearly Linux is a phenomenon that we all need to be aware of and to include in enterprise planning. In the recent survey, Linux has taken the lead as the top platform for databases, but Linux is only one example of open source software that many enterprises use. A full 66 percent of respondents reported using open source software for at least one mission-critical application. In fact, 9 percent use it for

more than half of their critical apps. And although price is the irresistible appeal of open source software, other considerations are important. Maintenance and support is one of the major concerns: 35 percent of those surveyed see open source as more difficult than commercial software to maintain and support. The rapid adoption of open source in Oracle environments presents many challenges, as well as rewards, for enterprises. Companies need to plan for integrating open source solutions and have firm policies in place. Do the open source solutions meet company security policies? Are current applications compatible and certified with the open source technologies? Does staff need to be retrained for new skills? Will the scalability and performance meet business requirements? These and other questions need to be asked before companies can realize the rewards of cost savings, easier maintenance, and better performance. The IOUG surveys will continue in the year ahead, giving everyone the opportunity to profit from the valuable experience and perspective that IOUG members offer. The IOUG is listening to DBAs, IT directors, system architects, application designers, project managers, CIOs, and presidents like you. O Ari Kaplan ([email protected]) is president of the Independent Oracle Users Group (IOUG) and senior consultant at Datalink. He founded Expand Beyond Corporation, a leader in mobile IT software. He has been involved in Oracle technology since 1992.

READ about Oracle on Linux oracle.com/technologies/linux

DOWNLOAD Oracle Database 10g Release 2

oracle.com/technology/software/products/database/ oracle10g

ORACLE MAGAZINE

JF07_InTheField.indd 69

JANUARY/FEBRUARY 2007

69

11/17/06 11:51:56 AM

Receive Free Product Information from Our Advertisers adINDEX

Contact vendors below for additional information about products or services advertised in this issue.

ADVERTISER

WEB SITE

PAGE

Allround Automations Altova Collaborate 2007 Conquest Software Solutions Dell, Inc. Embarcadero EMC Fujitsu Group Imagenow by Perceptive Software McGraw-Hill/Osborne NetApp Pillar Data Systems Quest UKOUG University of Massachusetts USi

www.allroundautomations.com www.altova.com www.oaug.org www.sqldetective.com www.dell.com www.embarcadero.com www.emc.com www.fujitsu.com www.imagenow.com www.oraclepressbooks.com www.netapp.com www.pillardata.com www.quest.com www.ukoug.org www.umass.edu www.USi.com

20 17 38 22 IBC 2 5 IFC-1 19 28 OBC 10 7 62 70 8

Web addresses are provided as a service. Oracle Magazine is not responsible for errors or Web address changes. Oracle Publishing allows sharing of our mailing list with selected third parties. If at any time you would like to be removed from this mailing list, please contact our customer service department at +1.847.763.9635 or send an e-mail to [email protected].

For Oracle product information, call the number for your region: Country

Phone Number

U.S. and Canada .....................................1.800.367.8674 Australia ....................................................1800.735.467 Austria...................................................0800.1.81.01.11 Belgium ........................................................0800.73280 Brazil ........................................................0800.9701985 China.........................................................800.810.0161 Denmark.........................................................8088.1068 Finland ......................................................0800.113.573 France .......................................................0800.905.805 Germany.................................................0800.1.810.111 Greece.................................................00800.353.12020 Hong Kong....................................................800.901039 India ........................................................1800.425.6725 Indonesia................................................0800.1.672.253 Ireland ........................................................1850.672253 Italy .......................................................800.872.934720 Japan ........................................................0120.155.096 Malaysia ....................................................1800.80.1837 Mexico...................................................01800.221.7321 The Netherlands .............................................0800.0827 New Zealand .............................................0508.555.215 Norway...........................................................800.14411 Philippines........................................................811.5831 Portugal......................................................800.85.33.22 Singapore ................................................1800.672.2531 South Africa...............................................0800.994.225 South Korea...............................................080.2194.114 Spain............................................................900.952900 Sweden ........................................................020.798798 Switzerland................................................0800.55.2574 Taiwan.......................................................0800.672.253 Thailand ..............................................001800.441.0545 Turkey .....................................................0800.211.0444 U.K. .........................................................0870.5.332200

G 5-!33D98 )SENBERG3CHOOL OF-ANAGEMENT 5NIVERSITYOF-ASSACHUSETTS!MHERST

*Àˆ˜Vi̜˜Ê,iۈiÜÊ ,>˜ŽÃÊ̅iÊÃi˜LiÀ}Ê Ê*Àœ}À>“Ê >ÌÊ̅iÊ1˜ˆÛiÀÈÌÞʜvÊ >ÃÃ>V…ÕÃiÌÌÃÊ“…iÀÃÌ

, ‡ 

,Ê9"1,-  9œÕʎ˜œÜÊÌiV…˜œœ}Þ]ʘœÜʈ̽ÃÊ̈“iÊ̜ÊÌ>ŽiÊޜÕÀÊ V>ÀiiÀÊ̜Ê̅iʘiÝÌʏiÛiÊ>˜`ʏi>À˜Ê̅iÊÀiiÛ>˜ÌÊ LÕȘiÃÃÊΈÃʘiViÃÃ>ÀÞÊ̜ÊVœ“«iÌiʈ˜Ê̜`>Þ½ÃÊ Vœ“«iÝÊ/Êi˜ÛˆÀœ˜“i˜ÌðÊ

›

{ -/Ê*," --",-

*ÀœviÃȜ˜>Ê ÃÕVViÃÃÊ ˆÃÊ ˜œÊ œ˜}iÀÊ ÕÃÌÊ >LœÕÌÊ Ž˜œÜˆ˜}Ê "À>ViÊ ÌiV…˜œœ}Þ]Ê ˆÌÊ ˜œÜÊ ÀiµÕˆÀiÃÊ Ž˜œÜˆ˜}Ê Ì…iÊ º>˜}Õ>}iÊ œvÊ LÕȘiÃð»Ê /…iÊ

pÊÓääx]ÊÓääÈÊ>˜`ÊÓääÇÊ*Àˆ˜Vi̜˜Ê,iۈiÜ\Ê iÃÌÊ ÕȘiÃÃÊ-V…œœÃÊÀ>˜Žˆ˜}Ã

1>ÃÃÊ“…iÀÃÌÊ"˜ˆ˜iÊ*ÀœviÃȜ˜>Ê Ê}ˆÛiÃÊ ÞœÕÊ̜ÊLÕȘiÃÃÊ̜œÃÊ̜ÊÃÕVVii`°Ê

ˆÃi˜LiÀ}°Õ“>Ãði`ÕɓL>É"1

70

JANUARY/FEBRUARY 2007

JF07_Adindex.indd 70

UÊ ÝVÕÈÛiÊ«ÀœÛˆ`iÀʜvÊ"˜ˆ˜iÊ Êi`ÕV>̈œ˜Ê vœÀÊ"1 UÊ "1ʓi“LiÀÃÊÀiViˆÛiÊ>ÊÃÕLÃÌ>˜Ìˆ>Ê VœÕÀÃiÊ`ˆÃVœÕ˜ÌÊ UÊ œ“«iÌiÊޜÕÀÊi˜ÌˆÀiÊ`i}Àiiʜ˜ˆ˜iʇÊ̅iÀiʈÃÊ ˜œÊV>“«ÕÃÊÀiÈ`i˜VÞÊÀiµÕˆÀi“i˜Ì UÊ ÎÇÊVÀi`ˆÌ]Ê«>À̇̈“iÊ«Àœ}À>“ UÊ œÕÀÃiÃÊÌ>Õ}…ÌÊLÞÊ}À>`Õ>ÌiÊv>VՏÌÞ UÊ VVÀi`ˆÌi`ʘ>̈œ˜>ÞÊ>˜`ʈ˜ÌiÀ˜>̈œ˜>ÞÊ LÞÊ - UÊ -Ì>ÀÌÊ œÜÊqÊÌ>ŽiÊÓÊVœÕÀÃiÃÊ«ÀˆœÀÊ̜Ê>VVi«Ì>˜Vi

ORACLE.COM/ORACLEMAGAZINE

11/20/06 3:41:34 PM

c o m m e n t ALL SECURE

BY M A RY A N N DAVI DSO N

Security Goes Mainstream Security is too important to be left to experts. t occurs to me as I reflect upon my 14-odd years in security at Oracle how mainstream security has become during that time. For example, most well-known security conferences are now dominated by businesspeople instead of security kahunas. I started attending these conferences when they were small, furtive gatherings of what could only be described as the high priests of security: people who’d invented cryptographic algorithms (and others who had broken them), people you’d read about in the New York Times (the few times security made it on the front page—or any page), and people who literally wrote the book on some arcane aspect of security. In those days, security was a religion with a cult following. Few understood its precepts or could intone them. Security rituals—like hacking—were restricted to a few initiates to the high priesthood. All this sounds great until you realize that if you want your religion to grow, you need more true believers. Lots more. Now, security has gone mainstream both by happenstance and by design. As IT has become widespread (for example, almost everyone has e-mail and almost everyone now does things online that they used to do in person or on paper), computer security mechanisms have necessarily evolved to take the place of locked file cabinets in locked offices. As for those who build the IT systems that have made the paperless (OK, “much less paper”) world possible, security ought to—indeed, must—become mainstream instead of an afterthought. At Oracle, security has evolved from being largely centralized (through a small group of security mavens) to being decentralized: all development groups have security points of contact; all developers are trained on security. My goal for security is not to build another high

priesthood but to “spread the security gospel” so all developers become true believers. In a way, security is just too important to be left to experts. A recent example of how security has gone mainstream at Oracle is the work that my team and others did before Oracle Database 10g Express Edition (Oracle Database XE) shipped. Oracle Database XE is a lightweight, strippeddown version of Oracle Database that is intended to be used as an embedded database—it just ships inside another product and you don’t really even know it is there. Many products have embedded databases that you wouldn’t expect, such as physical security systems (for example, card readers) used for building access. While we didn’t make a big deal about it in terms of patting ourselves on the back (nor do I think vendors should take big bows for exercising due security care on behalf of their customers), we put a lot of security work into Oracle Database XE. We ensured that critical security issues were fixed, Oracle’s ethical hacking team took a crack at it, and we did a lot of work to lock the product down so that it installs in a “default secure” configuration. Some may wonder why we put the extra effort into hardening Oracle Database XE. After all, it is not necessarily going to be a big moneymaker; it’s not the Oracle enterprise database protecting the corporate crown jewels. Why, in short, go to the extra security effort? The answer is, we hardened Oracle Database XE for all the “security is mainstream” ideas I outlined earlier. Because Oracle Database XE is an embedded database, it’s not likely that a professional, security-trained DBA will administer it. It’s very likely to be used in a Web-facing application, which is another reason you want it hardened out of the box. Also, we took a lesson from history.

One of the reasons the SQL Slammer worm spread so quickly several years ago was because of all the embedded SQL Server databases that many enterprises did not know they had and, thus, did not know to patch. Remember those card systems I talked about? A number of them failed when SQL Slammer wormed its way through their embedded databases. If, someday, there are thousands of Oracle Database XE databases embedded in applications, we want them to be as secure as we can make them precisely because this is a “mainstreamed” database application and not administered by the high priests of the temple of security. I’m pleased that we hardened Oracle Database XE and even more pleased that multiple people lined up behind the effort. It was not a hard sell, and that, too, is a mainstream idea. Security isn’t just for enterprise databases but for all IT products. This leads me to the very last reason but really the first reason why we did what we did for Oracle Database XE: Oracle’s name is on it, and security is part of everything we do. O Mary Ann Davidson is the chief security officer at Oracle, responsible for secure development practice and security evaluations and assessments. She represents Oracle on the board of directors of the Information Technology Information Security Analysis Center and the Defense Science Board and is on the editorial review board of SC Magazine.

READ more about security

oracle.com/security/security-solutions.html

READ more Davidson

blogs.oracle.com/maryanndavidson

DOWNLOAD Oracle Database 10g Express Edition (Oracle Database XE) oracle.com/technology/products/database/xe

ORACLE MAGAZINE

JF06_Security.indd 71

JANUARY/FEBRUARY 2007

71

11/17/06 12:04:07 PM

c o m m e n t ANALYST’S CORNER

BY DAVI D BAUM

The Right Stuff

Small businesses can compete on a big scale if they have enterprise-caliber software. onald Feinberg is a vice president and distinguished analyst at Gartner. He talked to Oracle Magazine about how the business world is changing for small and medium businesses (SMBs) and how technology vendors such as Oracle are responding to these changes. Oracle Magazine: SMBs are adopting increasingly complex IT environments to keep up with business demands. What issues do SMBs face today, and why have these resulted in enterpriselevel software deployments? Feinberg: It’s important to establish why so many small companies are interested in enterprise-class software. Take the manufacturing industry as an example. Until recently, small companies in this sector mainly catered to local markets or specialized niches because they didn’t have the resources to reach much further. Now even small shops can compete with big companies because they can connect and exchange information online. However, if they can’t participate in the supply chain, they can’t sell to the big guys, and that’s why they need enterprise-caliber software. We’re seeing this trend in many other industries, not just manufacturing— anywhere where the business world is dominated by SMBs. These companies need high-end software capabilities to service a worldwide market. Oracle Magazine: How are today’s database products addressing ease of administration, tuning, and upgrade? Feinberg: These software products are improving in several ways, from fast installation to automated storage management to push-button data recovery. Essentially, vendors such as Oracle are making the databases simpler to use and more self-managing, so they will work right out of the box. A self-

72

JANUARY/FEBRUARY 2007

JF07_Analyst.indd 72

managing database is particularly attractive to SMBs because they don’t have to hire a battery of technical people or pay a systems integrator to set it up and take care of it for them. This was not the primary reason for automating today’s database management systems, but it’s certainly one of the side effects that have benefited SMBs. Oracle Magazine: What level of security do the entry-level database editions like Oracle Database 10g Standard Edition One provide? Feinberg: Oracle provides the same security model in all of its database editions. Of course, you still have to set up the security. Many SMBs hire a systems integrator or professional services organization to help. There are lots of boutique companies that specialize in installing software applications, developing data warehouses, configuring identity management systems, and even selling remote DBA services over the internet. Oracle Magazine: What compatibility challenges do SMBs face in upgrading their databases to enterprise editions? Feinberg: There isn’t any upwardcompatibility problem at all. The only problem is money, since the higher-end editions are more expensive to purchase, implement, and maintain. One way to get around that is to avoid customization. SMBs usually end up modifying their business processes more than modifying their software, which makes it easier to upgrade to a larger edition. Oracle Magazine: Do the requirements of SMBs for database software also apply to application software? Feinberg: The reasoning is the same: SMBs don’t want to hire specialists to deploy and maintain their application environments. They want to manage their businesses. This gives them two basic choices: Either they can go to

a small application vendor and buy a complete software package, or they can subscribe to an on-demand version from an enterprise software vendor. This second option is becoming more and more popular. Today’s SMBs can outsource just about everything, from computers and physical infrastructure to communications devices, phone systems, and all types of software. That is an appealing prospect to a lot of small companies. Oracle Magazine: What requirements top the wish lists of SMBs looking for simple, turnkey database software? Feinberg: Most SMBs don’t have large IT budgets or a great deal of expertise in their IT departments. Thus they tend to favor proven solutions that are easy to install and configure. That said, they still want top-end performance, availability, security, and reliability—all at a comparatively low cost. This leaves them with a couple of choices. Either they can buy database software especially geared toward SMB shops, or they can purchase an entry-level edition from one of the enterprise database management systems vendors, such as Oracle Database 10g Standard Edition One. O David Baum ([email protected]) is a freelance business writer based in Santa Barbara, California. Founded in 1979, Gartner (www.gartner.com) researches, analyzes, and reports on vendors, technologies, and business processes in the IT industry.

DISCOVER resources for SMBs oracle.com/technology/smb

READ about Unbreakable Linux oracle.com/technologies/linux oracle.com/technology/tech/linux

ORACLE.COM/ORACLEMAGAZINE

11/17/06 11:40:02 AM

Servers Storage Systems Management Services Software

How Dell Does IT Dell™ understands that mission critical databases require powerful performance, highly reliable and available hardware platforms, and scalability that allows you to grow with your database needs. Dell understands this so well we run our own supply chain management system, which supports hundreds of suppliers and manages nearly a billion parts per year, on powerful and scalable Dell PowerEdge™ servers running Oracle® Database 10g. Dell offers pre-engineered, tested, and validated solutions for Oracle Database 10g on Linux® and Windows®. The entire solution stack is tested and supported by Dell – the servers, storage, switches, and software, including the Oracle Database software and the operating system – and Dell offers services to help you accelerate deployment.

Go to dell.com/oraclemag to get the full story on how Dell IT uses Oracle Database 10g in our supply chain management system. Dell cannot be responsible for errors in typography or photography. Dell and the Dell logo are trademarks of Dell Inc. Windows is a registered trademark of Microsoft Corporation. Oracle is a registered trademark of Oracle Corporation. Linux is a registered trademark of Linus Torvalds. Other trademarks and trade names may be used in this document to refer to either the entities claiming the marks and names or their products. Dell disclaims any proprietary interest in the marks and names of others. © 2006 Dell Inc. All rights reserved. Reproduction in any manner whatsoever without the written permission of Dell is strictly forbidden. August 2006.

It’s not your drawer. It’s your data center.

Find out why: Visit Booth 1614 at Oracle OpenWorld

NetApp simplifies your data center. Managing complexity in your data center is never as simple as shutting a drawer. Network Appliance partners with Oracle to deliver a comprehensive platform that greatly improves data management capabilities for Oracle administrators. With NetApp, you can back up and recover in seconds instead of hours. Provisioning instances are easy and nondisruptive. To help speed development and maximize storage utilization, allocation is quick and painless—you can even grow or shrink your database storage on the fly. Effortless, near-instantaneous cloning takes the pain out of testing. Though we can’t organize your drawer, no one makes working with Oracle database and applications easier than NetApp. ®

Join the thousands who’ve left their legacy environments behind. See us at Oracle OpenWorld Booth 1614 or visit http://www.netapp.com/partners/oracle/ for more information. © 2006 Network Appliance, Inc. All rights reserved. Specifications subject to change without notice. NetApp and the Network Appliance logo are registered trademarks and Network Appliance is a trademark of Network Appliance, Inc. in the U.S. and other countries. Oracle is a registered trademark of Oracle Corporation. All other brands or products are trademarks or registered trademarks of their respective holders and should be treated as such.

NetApp_ad_0717.indd 1

Part # C14989-01

7/18/06 12:08:08 PM

Related Documents