oracle partner guide

oracle partner guide
United Kingdom and Ireland
OracleScene
A UK Oracle User Group publication
Who’s knocking
on your door?
Who has done what
to your data?
These, and many more questions
answered in this Conference edition
Issue 36 | Winter 2008 | £10.00 | www.ukoug.org
AN INDEPENDENT PUBLICATION NOT AFFILIATED WITH ORACLE CORPORATION
EDITORIAL
e
m
o
c
l
We
to Issue 36 of Oracle Scene!
Goodbyes, Hellos and Elections!
I am sad to say that this edition heralds a couple of goodbyes.
Firstly, Brigit Wells is leaving Scene in order to focus on other
areas of the UKOUG. Brigit started working on OS back in
summer 2000, departing a year later to move to Turkey,
getting married and starting a family. She returned in March
2006 to rejoin a much-changed team and we would all like
to thank her for all her hard work in taking the magazine
forwards. However, her departure brings me to our hello
and welcome to Iyisha Rocke (best email address ever –
IROCKE@ukoug.org!!) who will be taking over
responsibility for the publishing complexity that is
Oracle Scene! Iyisha joins us straight from university
(Birmingham, but we won’t hold that against her – at least
she will feel at home during conference!) and please do come
and introduce yourselves to her during conference at the
Focus Pubs or similar.
The second goodbye is from me – I have now been Editor of
Oracle Scene since 2005, and I feel it is time to allow someone else to pick up the baton and see how they can add their
own special touches to the magazine. I have hugely enjoyed
having the privilege of editing the wonderful words of so
many people, including Debra Lilley, Jonathan Lewis, Tim
Onions, Tony Hasler and many more. Thank you all for
bearing with my eclectic hat collection and random musings
on my life! I will be back……
Elections will take place either at conference or immediately
afterwards, in plenty of time for the Spring 2009 edition.
Some highlights from the last 3 years include: new, up-to-date
layouts, as a direct result of the services of a new designer,
Anne Kotan; inclusion of blogs; revival of Top Tips; addition
of author biographies.
This edition
Hopefully your appetite has been whetted by the questions
on the front of the magazine – we have a fantastic selection of
articles, many from our regular contributors such as Tony
Hasler (love the pic!) with Part 2 of his Partitioning article,
Bob Mycroft with something I genuinely can’t even begin to
understand, and Jonathan Lewis with a Top Tip on Overindexing. We have an HR theme to the Apps part of the magazine, as well as many of our regulars such as Debra’s Diary
(please do read and have a good laugh at the “lift” story!!)
We had a massive number of submissions for this edition, and
our apologies to all of those whose articles were held over –
this is no comment on the quality of the submissions, but the
editorial team do need to ensure that they have a balance of
content for each edition and as you can see, we are so full that
we can’t even fit any of our normal blogs in!! A special
mention must go to iTrain, who have been consistently strong
contributors over the last year or so, and without whom we
would struggle for Apps content. If you’re missing them,
I know they will be at conference, so look them up. We are
still always keen to source content as not every edition is as
well resourced, so if you are thinking about writing for the
magazine please do contact Iyisha or the Editor-to-be.
OracleScene Issue 36 Winter 2008
Ophelia Dodds
Editor, 2005-2008
editor@ukoug.org.uk
I am also pleased to say that we now have a regular column
from Grant Ronald on Tools of Fusion, starting this edition
with “A Beginners Guide to JDeveloper and Oracle ADF”.
To find out more about Grant, check out Chris Muir’s
interview with him on p26. Fusion is such a hot topic of
interest, and we are very lucky to have Grant on board.
Look out for the next one in the Spring Edition!
And finally, wishing you all the very best for the remainder
of 2008 and a safe, happy 2009.
Chez Moi
Well, in these times of credit crunch (which hopefully, by
the time we go to press, will no longer be such a problem
– I’m writing this in the middle of October!) I thought I
would share some relevant humour with you all with this
email recently received:
NOTICE:
OFFICE OF THE TREASURER GENERAL REPUBLIC OF NIGERIA.
DESK OF: ALHAJI. IBRAHIM. H. DANKWAMBO
E-MAIL:
TEL: +234 7023186029
I AM SECRETARY OF MINISTRY OF TREASURY OF SMALL
AFRICAN NATION.
I MUST SHARE MY CONFIDENCE WITH YOU IN TRUST:
I WAS PLANNING TO SEND AN EMAIL TO RIP OFF RICH ENGLISH
LIKE YOU.
AFTER LAST WEEK OF FINANCIAL NEWS, I NO LONGER HAVE THE
HEART TO DO THIS.
CLEARLY ENGLISH'S HAVE ALREADY BEEN SCAMMED ENOUGH
BY THE BEST IN THE CITY - MUCH BETTER THAN ME AND
MY FRIENDS.
I CAN NO LONGER COMPETE WITH SUCH CLEVER ENGLISH
WHO HAVE RIPPED OFF FELLOW COUNTRYMAN FOR TRILLIONS
OF POUNDS.
PLEASE ACCEPT OUR SINCERE CONDOLENCES ON YOUR LOSS OF
YOUR LIFE SAVINGS.
BEST REGARDS,
ALHAJI. IBRAHIM. H. DANKWAMBO
TREASURER GENERAL OF THE FEDERATION
OF NIGERIAN REPUBLIC
03
Contents
Oracle Scene Editorial Team
Editor
Ophelia Dodds, editor@ukoug.org.uk
Deputy Editor, Applications
Giovanni D’Alessio, deputy_apps@ukoug.org.uk
Deputy Editor, Technology
Neil Jarvis, deputy_tech@ukoug.org.uk
Marketing Assistant
Iyisha Rocke, IRocke@ukoug.org
Advertising & Subscriptions
For advertising/subscription information,
see www.ukoug.org or contact
opportunities@ukoug.org
UKOUG Directors
03
Editorial
Business and Management
05
Global Resourcing: A Weapon in the War for IT Talent
Tom Harris, Elan Computing
Brave New World for HR
Why HR transformation should be a strategic priority for the global organisations
Subroto Kar and Satish Srinivasan, Infosys Technologies Limited
07
Applications
11
Chairman
Ronan Miles, ronan.miles@bt.com
+44 (0) 7917 025 435
Deputy Chair
Debra Lilley, debra.lilley@ukoug.org.uk
Director
Peter Phillips, director@ukoug.org.uk
Director
Peter Robson, peter.robson@justsql.com
Director
Carl Dudley, director@ukoug.org.uk
Director
Jonathan Lewis, director@ukoug.org.uk
Director
Jane McCullough, director@ukoug.org.uk
Director
Anne Power, director@ukoug.org.uk
Director
Roy Bailey, director@ukoug.org.uk
Director – PeopleSoft
David Kurtz, director@ukoug.org.uk
Director – JD Edwards
David Rowntree, director@ukoug.org.uk
Director
Tracey Bleakley, director@ukoug.org.uk
13
UKOUG Office
37
Over-indexing
Jonathan Lewis, JL Computer Consultancy
25
UKOUG calendar of events 2009
Interview
26
Q&A with Grant Ronald
Chris Muir, SAGE Computing Services
39
Oracle Restructures Support for Customer Success
Debbie Wynne-Owen, Oracle
40
UK Oracle User Group – A Year in Review
Simon Corbett, Jargon Public Relations
Paper selection day for UKOUG 2008
Niall Litchfield, Maxima Managed Services
UKOUG Director becomes Oracle ACE Director
Debra’s diary
UK Oracle User Group, User Group House,
591-593 Kingston Road, Wimbledon,
London, SW20 8SA.
Tel: +44 (0) 20 8545 9670
Fax: +44 (0) 870 9000 335
Email: info@ukoug.org
Web: www.ukoug.org
The Guide to Fusion Development
17
The Tools of Fusion
Oracle JDeveloper and Oracle ADF
Grant Ronald, Oracle
18
Who has done what to your data?
Shane Creedon, Ategrity Limited
21
Who’s knocking on your door?
Dynamic Resident Connection Pooling
Bob Mycroft, Fortissimo Solutions
Advanced Topologies
A real world example
James Ball, independent Oracle consultant and Crispin Caws of Sapient
Partitioning in Oracle Database 11g Release 1 – Part 2
Tony Hasler, Anvil Computer Services Ltd
JD Edwards
Technical
29
33
Top Tip
Production
Designed and produced by Anne Kotan
Tel: +44 (0) 1273 833 923
Email: anne_kotan@hotmail.com
Web: www.anne-kotan.moonfruit.com
Printed by Woking Print & Publicity
Tel: +44 (0) 1483 884 884
Web: www.wokingprint.com
Oracle News
UKOUG News
OracleScene © UK Oracle User Group Ltd
The views stated in Oracle Scene are the views of the author and
not those of the UK Oracle User Group Ltd. We do not make any
warranty for the accuracy of any published information and the UK
Oracle User Group will assume no responsibility or liability regarding
the use of such information.
All articles are published on the understanding that copyright
remains with the individual authors. The UK Oracle User Group
reserves the right, however, to reproduce and article, in whole or
in part, in any other user group publication.
The reproduction of this publication by any third party, in whole or
in part, is strictly prohibited without the express written consent of
the UK Oracle User Group.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates, used under license. This publication is an independent
publication not affiliated or otherwise associated with Oracle
Corporation. The opinions, statements, positions and views stated
herein are those of the author(s) or publisher and are not intended
to be the opinions, statements, positions, or views of Oracle
Corporation.
4
How I Learned to Stop Worrying and Love Excel
MFA: Live Oracle Data in a Spreadsheet
Mark Bastable, Mokum
Who, what, where, why and how?
Oracle Identity Management Solutions
Manpreet Singh Johal, Inatech Solutions Limited
44
Event News
42
43
JD Edwards Update
PeopleSoft Update
UKOUG Partner of the Year Awards 2008/2009 Ceremony Dinner
UKOUG Partner of the Year Awards 2008/2009 winners
46
Blogspot
Look for Oracle PIM Data Hub R12.1 Release
Bob Barnett
A UK Oracle User Group publication
Global Resourcing: A Weapon in the
War for IT Talent
by Tom Harris, Elan Computing, A Manpower Professional Company
A
sk an economist what would happen if a given commodity – such as
oil – became scarce, and you might just receive a textbook, two-part
answer: firstly, make more efficient use of what you have (the hybrid car
comes to mind); and secondly, explore alternate sources towards the same
end (think windfarms and solar panels). If consumption cannot be
limited, the price of that commodity will, of course, continue to rise.
The recent huge increases in the price of oil driven by increasing demand
from the developing nations has demonstrated what happens when supply
and demand gets out of sync.
Whether you are filling up at the petrol
station or filling positions for information
technology (IT) professionals as your
company’s hiring manager, you will
encounter much of the same problem: IT
talent – as a local market commodity – has
become preciously scarce and hence
expensive and difficult to procure.
Just like discussions around our nation’s
dependency on (mostly foreign) oil, it is
impossible today not to consider the localglobal context behind the demand and supply of IT talent. Especially with all the
recent talk of the impending ‘Talent
Shortage’ that many labour experts believe
will have a crippling effect on our country’s
economy at large.
The British Computer Society has estimated
that Indian Universities are releasing
500,000 high quality IT and engineering
graduates into the Indian economy every
year. By contrast, UK Universities release
only 20,000 Computer Science and related
discipline graduates every year. Data from
university applications body UCAS shows
that there has been a 50% drop in applications for computer science in the past five
years, a 47% drop in systems engineering
and a massive 60% drop in software
engineering applications. The qualitative
research suggests that these courses need a
30% increase in the number of student
entrants year-on-year in order to begin to
return to acceptable levels. Even this
growth, however, would leave the IT sector
far behind the predicted 150,000 IT
professionals needed per annum, as
predicted by e-skills UK.
The current economic slow down may take
some of the pressure off the demand for IT
talent but there is evidence that technology
is increasingly becoming an integral part of
many companies’ competitive strategy.
Therefore, it is not as easy to cut back on
IT budgets and investments as on those,
for example, in Marketing and Training,
which have traditionally been the first
“casualties” in a slow down.
OracleScene Issue 36 Winter 2008
Demographics (those irreversible trends
like declining birth rates and the coming
vacuum left by the soon-to-retire Baby
Boomer generation) and steadily dropping
enrolment rates for computer science
graduates, will make the Talent Shortage
one of the great economic problems for
decades to come.
Already – and especially in the field of IT –
it is taking hiring managers longer to find
fewer qualified candidates at higher salary
levels. In Germany, another fast-aging
country, there are now more landscape
architects than electrical engineers.
offshore services provider. The notion that
IT and other business activities can be
performed remotely, in a virtual fashion,
now seems hardly revolutionary. Even the
(non-technical) ‘rest of us’ will agree that
for the most part, work is something we
do, and not just a place we go to.
Through Global Resourcing, employers
can remotely deploy individuals and teams
across geographic distances and time zones,
managing them and collaborating with
them (almost) just as effectively as if they
were all in one physical location. This is
typically accomplished through enabling
processes and technologies – giving rise to
something akin to a ‘Virtual Workplace’, a
collaborative and often web-based environment for performing distributed work. By
electronically moving the work, rather than
physically placing the worker, employers
can effectively augment their local staff
with global talent that is situated off-site
for tasks that can be performed remotely.
This Talent Shortage – by now at crisis
level at many IT organisations, both large
and small – will bring out the textbook
economist in most of us: either we make
our existing people more efficient, and/or
we find alternate (non-domestic, global)
sources of talent. The former, an exercise in
what is known as ‘Talent Management’, is
about creating just the right match between
work and worker as well as striking an
optimal balance between full/part-time
workers and internal/external positions.
The latter, often referred to as ‘Global
Resourcing’, works on the principle that
there is an asymmetric distribution between
work and workers in high and low-cost
countries, respectively (e.g. the UK or
Germany vs. Brazil, Bulgaria or India); and
that it is more practical (in most cases and
for all parties concerned) to move the
work, and not the worker.
There are some fundamental changes in
the world of work that are re-shaping the
nature of both the workplace and the
workforce; changes brought about by
technology and globalisation that are calling into question the traditional proximity
between the work and the worker. Most IT
professionals today have experience with
distributed development teams – either as
part of a geographically dispersed
organisation across multiple office locations
or during the course of working with an
5
GLOBAL RESOURCING: A WEAPON IN THE WAR FOR IT TALENT
Needless to say, to pretend that there is a
simple solution to such a complex problem
as the Talent Shortage (or its highoctane-moniker cousin, the ‘War For
Talent’) would be naïve; and in fact, the
most successful players on the ‘battlefield’
of corporate Britain fighting this talent
crunch are engaged in highly sophisticated
forms of both Talent Management and
Global Resourcing. Given the sheer
population size and ample talent pools in
many low-cost countries (current ‘there-isIT-services-export-beyond-India’ favourites
include: Argentina, Ukraine, Egypt,
Vietnam and Philippines), seemingly
poised to do just the opposite from
our high-cost countries in terms of high
fertility rates and the wholesale graduation
of IT workers, the long-term fundamentals
behind Global Resourcing appear to
be solid.
Using remote IT workers is, of course, not
practical for all IT tasks. IT Design and
Architecture usually benefits from face to
face collaboration. Other restrictions on
remote working include the requirement
for security cleared personnel and data
security itself. For example, Swiss banks
have offshore centres but they use the
bank’s own buildings and network and are
therefore inside the bank’s firewall. Many
IT projects are being resourced by a blend
of IT resources: 1) On site personnel; 2)
Personnel brought in for a time period
(usually landed from low cost countries);
and 3) Offshore resources (again usually
based in low cost countries). It is the exact
nature of this mix of resources that determines the overall cost of the project. Global
resourcing is not for everything but like any
balanced portfolio it should be considered
as part of an efficient mix.
To be an effective weapon in the war for
IT talent, however, a Global Resourcing
strategy must be implemented (and its
effectiveness continuously measured) along
the following three success factors:
• Access – give yourself the flexibility you
need to meet all your skills requirements, as the likelihood of finding just
one offshore partner that has the
breadth, depth and ready availability of
all skills required is low (consider multivendor arrangements for reasons of
both readiness and redundancy). Also
geographical diversity mitigates risk in
terms of political, military, and natural
disasters. The recent earthquakes in
China, floods and terrorist attacks in
India and the invasion of Georgia by
Russia illustrate only too well the need
for a “go lightly” strategy.
• Quality – remember the adage ‘quality is
not a function of size’; find suitably sized
offshore partners that will commit quality
resources, regardless of business volume.
There are thousands of high-quality firms
in South America, Eastern Europe and
Asia that may be successfully engaged on
smaller or mid-sized projects on a dial up
and dial down basis – often for business
volumes which are generally too low for
the top-tier Indian vendors.
• Cost – follow a diversified country
approach and be careful not to overinvest in one particular offshore location
which may overheat due to popularity (is
India – with its 40% staff turnover and
20% wage inflation – trending after
Ireland, which priced itself out of the call
centre business in the nineties?). Poland
and Czechoslovakia are further examples
of locations that for IT were once
considered “low cost” but not any more.
If indeed the world is flat (as it has been
famously and convincingly argued), or at
least, if the world is becoming bigger and
smaller at the same time, the dual realities
of a global workforce and a virtual workplace are forcing us to simply think differently about workers and their work. Global
Resourcing is a key part of that new thinking, as the Talent Shortage combined with
rising cost pressures and the fact that many
of today’s IT jobs can be performed
remotely, call for a more global and virtual
view of talent acquisition and delivery.
References:
1. British Computer Society Working Party
on Offshoring: A Challenge or
Opportunity for British IT professionals.
BCS, 2004. www.bcs.org.
2. Developing the future 5th July 2006.
Report by the Initial Working Party for
Developing the Future on the
Challenges and Opportunities Facing the
UK Software Development Industry.
For more information and to discuss further please contact tom.harris@elanit.co.uk
About the Author
Tom Harris is the
Director of
Elan Global
Resourcing, the
outsourcing
division of Elan,
the specialist
European IT
recruitment
consultancy. Elan Global Resourcing
provides its clients with access to a
well established, vetted network, of
around 250 professional consultancy
partners based in over 40 low cost
countries. A significant number of
these partners have extensive
experience and capabilities in Oracle
Applications and Services. Tom can be
contacted at tom.harris@elanit.co.uk
For more information on the Elan
alternate model to ‘black box’
outsourcing please visit
www.elanglobalresourcing.com
6
A UK Oracle User Group publication
Brave New World for HR
Why HR transformation should be a strategic
priority for the global organisations
by Subroto Kar and Satish Srinivasan, Infosys Technologies Limited
O
ver the past decade, there has been an emergence of some key global
trends such as globalisation, faster innovation and balancing of
global work force, necessitating increased emphasis on alignment of HR
departments to corporate strategy. The next generation organisations are
embracing “HR transformation” – as a means to enhance HR service
delivery and continue to align the focus of HR with the business. In this
article we talk about three major trends – Globalisation, Faster innovation
and balancing a global workforce.
Globalisation
It’s hard not to recognise this trend in our
lives. Globalisation is driven by the notion
of producing the goods and services where
it makes the most economic sense and
selling where it is the most profitable.
Whilst creating opportunities to open up
newer markets, the lowering of the investment barrier in practically in all countries
and rapid reduction of communication
costs is also forcing the organisations to
transform the way they operate. When we
talk of globalisation, one cannot ignore
the increased numbers of mergers and
acquisitions (M & A) that are taking place
at a rapid pace. While some of the reasons
can be attributed to the financial and market factors, a substantial number can be
attributed to Human Resource issues and
activities, leading to serious HR challenges
in the M&A situation – cultural differences,
role, value, management style, policy
differences, alignment of compensation and
benefit plans and so on. Another challenge
presented by globalisations (and more
directly M & A) is the fragmentation of
HR systems into heterogeneous and disparate systems. Disparate systems are a
major impediment to getting a holistic
view of information and often provide a
distorted view of HR information.
Therefore, in an age of increased mobility,
diminishing trade barriers, lean operations
and mergers and acquisitions , one of
the key challenges that every global
organisation faces is how best to organise
global operations. While on the one hand
standardisation becomes a key priority,
there is also a need to leverage the full
potential and knowledge of the global
organisation.
OracleScene Issue 36 Winter 2008
Top transformation initiatives to
support Globalisation process
• Standardising global HR processes
There are at least three key items that are
the top of the agenda for HR and these
are:
First, as an organisation grows across
geographies it is critical for HR to derive
reduced administrative costs. Economies of
scale and process consistencies are critical
to sustain growth. One way organisations
achieve this is by deploying a shared
services model. This is typically common
amongst large retailing organisations with
extensive store network, a huge number of
employees and high turnover.
Second, in the face of increasing mergers
and acquisitions, organisations need to
ensure that their HR systems are aligned
and integrated, and that their business
processes are standard. Organisations
need to understand the importance of
technology in implementing global policies
and procedures.
Third, there has been increased scrutiny
of regulatory compliance with the rise of
globalisation. Organisations must maintain
audits for processes with financial
implications, such as compensation reviews
and expenses, under purview of focused
legislations such as the US Sarbanes Oxley
Act 2002. HR departments have to
understand and implement legislations and
statutory rules enforced in the geographies
of operation.
• Empowering the workforce with
HR self service solutions
By enabling employees to access their own
personal data, download pay slips, and
apply for leave and travel requests the
burden of the HR administration is
dramatically reduced.
• Reporting and analytics
While an integrated HR system enables
standardisation of processes and ensures
information is aligned, a good reporting
and analytics solution is critical to ensuring
that this information is leveraged.
Business intelligence has become an
important tool in an age when accurate
availability of information drives executives
to make faster decisions and ensure
operational efficiency.
(See Illustration 1, next page.)
Faster Innovation
In this era of globalisation, it is not only
important to innovate but rather to
innovate swiftly and ensure that an idea
becomes a product or a service and is
launched in the market earlier than a
competitor’s. This has placed pressure on
the HR department to ensure that the
correctly skilled people are available at all
times. In short, there is also a need for HR
to innovate.
While the traditional views on the
competitive advantage advocates patent
protection, economies of scale, and barriers
to entry, the need for faster innovation
means the organisation’s human resources
create a key competitive edge. According to
Jeffrey Pfeffer, a renowned leadership
expert and Stanford professor – “Most of
the organisations today can copy technology, manufacturing processes, products and
strategy. However, human resource
management practices and organisations
are difficult to copy, thereby representing a
unique competitive advantage”.
7
• Performance Management
and Training
BRAVE NEW WORLD FOR HR
Illustration – 1
Global organisation that has undertaken a transformation initiative to support
globalisation process
Profile I
Area of Business : High-tech Storage Solutions / US
#Employees: ~ 4000 across
> 30 countries
Turnover
Revenue: USD 2-3 Billion
: Low
HR Challenges
• Compensation schemes not aligned with best practices
• Inconsistent HR processes across geographies
• Disproportionate amount of manual intervention in personnel
administration processes
• HR professionals constrained with administrative and paper activities
• At best, HR systems are fragmented; difficulties in reporting consolidated information
Transformation Initiatives
• Participation in global job and salary surveys; Use survey inputs and key forums to
appreciate and adopt contemporary and proactive HR practices
• Performance driven incentive schemes to attract employees in short and long term
• Employee and manager self reliance across global locations; minimal
administrative HR
• Standardisation of global HR processes
• Empowerment of local HR representatives; shift in corporate HR from administrative
to strategic focus
• Partnership with SI to implement single integrated HR system
Business Benefits
• Compensation policies aligned to reward and retain top talent
• Managers and employees enabled to execute processes and make decisions
• Decentralized approach to repetitive and administrative activities
• Key HR personnel available to continuously review and improve HR processes
and policies
• Significant Cost savings resulting from:
- Single integrated HRMS system
- Elimination of time consuming manual procedures
- Reduced IT costs
- Leverage holistic and accurate view of HR information to make decisions and
implement actions
Note: Today best of breed HCM solutions with standardised global processes are critical to
HR transformation as stated above. They are designed in conjunction with industry-wide best
practices and conformance to legislative and statutory requirements. Self reliance facilities are
usually fully enabled thereby empowering employees and at the same time freeing the HR
professional for more strategic activities.
Top transformation initiatives to
drive faster innovation
• Talent management
Scarcity of talent across the world continues to be a major challenge – which is
driving HR to focus on hiring, developing,
rewarding and retaining talent. Traditional
practices are no longer valid as next genera8
tion HR must make itself more attractive
to the global talent by improving effectiveness in the recruitment process. More than
just attracting talent, improving the capability of the talent pool has become a key
priority. Similarly, in order for the organisation to inculcate a high performance work
culture and drive innovation, setting up a
performance management system with
goals and metrics have become a necessity.
Robust appraisals processes, 360 degree
feedback, encouraging time for research
and innovation, rewards for good
performance and avenues for learning are
the order of the day. HR departments that
proactively emphasise and improve these
processes and policies ensure that they
attract and retain the best people for the
organisation. The ability to differentiate
and reward key performers still remains the
most effective means for an organisation to
attract and retain its best employees.
• Use of innovative reward
programmes to encourage high
performing workforce
Keeping motivation at a high level
continues to remain a challenge for HR
departments with a high performance
workforce. While there are several
compensation frameworks, the most widely
followed is variable compensation – that
attempts to link compensation to certain
key performance measures. HR needs to
look for ways to make the compensation
program more attractive to the workforce.
(See Illustration 2, next page.)
Balancing the global workforce
Globalisation, aging population, rising
labor costs, fierce competition and
compliance concerns are driving
organisations to innovate newer models by
which they can leverage the global pool of
resources, at reduced cost, without
compromising product or service quality.
Global multinationals continue to explore
how to balance the workforce in order to
benefit from labor cost arbitrage, access to
talent, scale and a delivery model that can
give better customer service. Today,
organisations are exploring next generation
outsourcing models that extend beyond
traditional organisational boundaries.
This allows collaboration with partners
leveraging offshore resources, technology,
low cost connectivity and multi-location
distribution of work components. It is
essentially driven by the notion that if the
organisations can componentise the work
in a modular fashion, it is feasible to get the
components produced, assembled and
delivered from practically anywhere in the
world. The distribution of the work components across various parts of the globe is
not a simple process and requires a high
degree of internal business process change.
In addition, the organisations need to
consider: the workforce competency, ability
to scale, workforce mobility, learning
capability, ability to retain talent, language
and cultural sensibilities to maintain a good
balance among a global team spreading
over multiple geographies.
A UK Oracle User Group publication
Top transformation initiatives to
drive balancing global workforce
Illustration – 2
Profile II
Area of Business : Quick service food Retailing / US
#Employees : ~ 1100 across
> 5 countries
Turnover
Revenue : NA
: Low
HR Challenges
• Identifying and managing talent is a challenge; Systems and processes not enabled to
manage workforce performance management effectively
• Compensation and incentive administration procedures not aligned with HR systems
• HR information is only available in silos; Fragmented HR IT landscape is an obstacle
to strategic decision making and policy implementation
• HR systems do not integrate with other key groups such as finance and procurement
effectively
Transformation Initiatives
• Deployment of effective appraisal procedures and learning paths
• Implementation of self service across HR processes
• Integration of the HR IT landscape – consolidation of HR systems and processes and
seamless integration with other departments
Business Benefits
• Effective appraisals and determination of learning paths
• Merit information seamlessly reflects in compensation and incentive decisions
• Managers, recruiters and learning administrators are fully self reliant; automated
approval mechanisms ensure actions and decisions are enforced per defined policies
Note: Means to achieve excellence at all levels is key to an organisation’s success.
An integrated system of appraising employee performance, identifying key talent, training
needs and distribution of incentives helps not only attract and retain talent but also enables
the organisation to effectively handle succession planning and ensure that the placement of the
right person is in the right position.
“...HR transformation is one of the powerful
strategies that can drive huge benefit to align
the focus of HR to the business.
Transformation is not one time activity;
its momentum must be maintained to align
ongoing changes within the organisation.”
• Scalability. Aligning the workforce to
the needs of the business at the right time
and at optimal cost is becoming
increasingly complex. The HR department is also challenged by its ability to
scale in different parts of the world and
attract talent. Outsourcing continues to
remain a key strategy to strike a balance
among cost , efficiency and scale – HR’s
role in cross border outsourcing is critical
due to issues with surrounding people in
the extended workforce and local country
regulatory norms.
BUSINESS & MANAGEMENT
Franchise-Model organisation that has implemented talent management to drive faster
innovation
• By utilising comprehensive talent
management solutions, many HR
organisations bring in improved
efficiencies in workforce planning and
scheduling, recruitment and competency
management for the global workforce.
• Managing issues around data
protection. As HR increasingly found,
getting involved in outsourcing
contracts, understanding and managing
cross-border transfers of employee data is
critical. Most developed countries have
stringent rules with regards to making
personal information, and compensation
and benefits data available outside their
shores. HR has to understand the nature
of data protection laws in all the
geographies within which they operate.
For instance, one of North America’s
largest Employee and Benefits services
has successfully developed a secure and
legally compliant offshore development
center in liaison with their long term IT
and HR Consulting partner.
• Managing employee mobility.
With increased mobility, transfers and
secondments, strategic relocations and
geographical expansion of organisations,
the pressure is again on HR to enable the
organisation by ensuring seamless
mobility for its employees. Understanding customs and immigration laws,
labour laws, employee welfare,
eligibility for visas, cross-cultural training
and sensitivity, language training and
administrative processes (filling forms,
visa lead times and processes, etc.) are
critical components to ensure this
mobility. Organisations have to invest
sufficient time and costs to collate the
requisite knowledge, implement travel
policies and enable robust and efficient
processes to manage employee mobility.
(See Illustration 3, next page.)
Subroto Kar
OracleScene Issue 36 Winter 2008
9
BRAVE NEW WORLD FOR HR
Illustration – 3
Global enterprise that has taken advantage of outsourcing
Profile III
Area of Business : Employer and Benefit Services / US #Employees: ~ 10000
Turnover
: Low
Revenue : NA
stage. A Level 4 recruitment process, on
the other hand, is both scalable and mature.
Strategic initiatives to attract top talent by
HR are supported by intelligent and
scalable systems. The organisation is able to
predict future trends and continuously
improve their processes. Such an
organisation is well positioned, not just to
survive economic and technology shifts,
but also to derive the full benefits of
changing global conditions.
Conclusions
HR Challenges
• Critical to leverage talent and services from BRIC economies
• Sensitive nature of information presents key challenges to outsourcing
Transformation Initiatives
• Collaboration with long term IT and HR Consulting partner
• Deployment of secure and legally compliant offshore center in India
• Investment in captive unit in India
Business Benefits
• Cost efficiencies from offshore locations
• Successfully implemented a near 24-hour work day (across the US and India) to
obtain service efficiencies
• Leveraged expertise and experience of IT partner in HR services
A road map to HR Transformation Maturity
Globalisation, faster innovation and balancing
global work force are the key emerging trends
which are causing organisations to become
leaner and more efficient, whilst at the same
time fiercely competitive. Focus for most of
the organisations is on their people, as
ultimately human resource management
practice for any organisation is difficult to
duplicate, representing a unique
competitive advantage. Significant
opportunities exist today for HR to
enhance its service delivery – transformation is one of the powerful strategies that
can drive huge benefit to align the focus of
HR to the business.
However, transformation is not one time
activity; its momentum must be maintained
to align with ongoing changes within the
organisation.
The chart below is an attempt to present a road map with key HR initiatives against the
level of maturity.
About the Authors
Subroto Kar is the
Delivery Manager –
Enterprise Solutions
(HCM) Practice with
Infosys Technologies
Limited. He is responsible for the delivery of
HCM Solutions and HR transformation
programs for the global clients. He has
several publications IT demand
management, technology strategies
and process improvements.
He can be reached at
Subrata_kar@infosys.com
To further illustrate the above diagram with
a specific example of a HR process,
consider the Recruitment process maturity
of an organisation. At Level 1, it is, at best,
a means to source people rather than attract
talent. Recruitment at Level 1 is not
enabled by empirical information or
supporting systems. Level 2 recruitment
processes would be streamlined and
10
organised, scalable to meet organisational
growth but still lacking focus on people
orientation. These needs are met in Level 3
where there is an involved attempt to focus
on developing the Human Capital and
focusing HR policies towards strategic
people initiatives and long term
organisational goals – typically organisations are proactive to a certain extent at this
Satish Srinivasan is
a Senior Consultant
with the Enterprise
Solutions (HCM)
Practice at Infosys
Technologies Limited.
Satish is responsible
for managing HCM programs
including consulting customers on
the HR systems.
He can be reached at
Satish_Srinivasan@infosys.com
A UK Oracle User Group publication
How I Learned to
Stop Worrying and
Love Excel
MFA: Live Oracle Data
in a Spreadsheet
I have spent a huge proportion of my life in the
company of accountants. I have come to know
their little ways, their charming idiosyncrasies.
Like that intrepid woman who hung out for years
in the mists of the Rwandan rainforests, I have
been accepted by accountants into their group,
and I have even formed close relationships with
some of them. I am so comfortable around
accountants that just by sniffing any given
individual I can distinguish a Chartered one from
The Other Sort. Nobody, I’m saying, maintains a
higher regard for accountants than I.
by Mark Bastable, Mokum
And yet, in my capacity as an Apps Implementation Project
Manager, I take the view that your common-or-garden abacusjockey is not temperamentally disposed towards an enthusiastic
acceptance of innovation. I have based that opinion on what I
perceive to be accountants’ attitude to Excel. They like it. They
don’t want to be without it. Even when their organisation invests
serious wedge in an ERP system not only to record the fine detail
of any real-world event carrying the tiniest fiscal implication but
also to report such recorded information at any imaginable level
of zoom, accountants want to see it in Excel.
But ask them to express a preference for spreadsheet tools, you’ll
hear a unanimous ovation for Excel.” He pointed to the members
of his team beavering away in the cubicles outside his ever-open
door. “Every single one of my people knows how to use Excel.
And beyond this department, beyond this company, beyond even
this industry, everyone else knows how to use it too. You can’t
often say that about a given piece of technology.” He leaned
forward and beckoned me closer. “You can’t even say that about
Oracle Financials.”
I winced and let out a pained squeal.
“I’m sorry,” Runcie said. “Does that come as a shock?”
“No, no,” I said, “I crunched my Imperial Mint and snapped a
crown off my tooth.” I spat white shards of sweetie onto my
palm and began to sort through them in search of six-hundredquids-worth of cosmetic dentistry. “Okay – I get it. Excel is what
the accounting punter wants. With or without an ERP, Excel is
unimprovable.”
“Ah, no,” Runcie said. “With an ERP, it’s very improvable. In
fact, I can specify two improvements I’d like to see right now.”
His first gripe had to do with ease of data transfer. By the time
you’ve identified an FSG you like, specified how you want it
changed, persuaded some techno-sprite to change it, figured out
how to get it in a format that can be loaded to Excel and implemented a mechanism by which that can be done, you’ve spent
as much time on it as you can afford. That wearisome palaver
conspires against innovation and creativity at the Excel end
because too much effort is expended in the pursuit of the data
in the first – and, actually, the second – place. What Runcie
wanted was a magically instantaneous transfer of numbers direct
from the database to Excel.
His second gripe concerned the age of the data. As he put it,
“the moment you get the figures into Excel, they’re out of date.
When I present to the board on Thursday having worked all day
Wednesday, I have to tell them that these are Monday’s figures
that I received on Tuesday. That’s mediaeval. We’re in the
twenty-first century here. I want to do ingenious stuff today, and
then press a button tomorrow and see the overnight figures in
the clever way I worked out yesterday. I want live data in Excel.”
“Yeah, well – I want universal peace, bankruptcy at Stamford
Bridge and George Clooney’s teeth.” I wrapped fragments of
plastic molar in a Costa napkin and slid the package into my
breast pocket. “But we can’t always get what we want, can we?”
Runcie shrugged. “Who knows what the future holds?” he said.
“Oh, God,” I groaned. “Do you use it for forecasting too?”
To a technically-inclined applications person such as myself, this
dogged attachment to a spreadsheet tool just doesn’t make sense.
“Look,” I said to an FD of my acquaintance whom I shall call
Runcie, “the information’s right there in the database. You can
get at it through the screens and you can arrange it on the page
in all sorts of reports. Why on earth would you want it in Excel?”
Last week, I dropped in on Runcie at work.
“I want to show you something,” I told him.
“You’ve had your misaligned molars fixed?”
He smiled at me indulgently, like an archbishop explaining the
loaves-and-fishes sting to a curious but incompetent curate.
“There’s more to my job than checking that it all adds up,”
he said.
“Actually, yes,” I said, firing up the laptop. “But that’s not it.”
I directed his attention towards the screen. “Get a load of this.”
“It’s a spreadsheet,” he said. “Looks like a trial balance.”
“But what’s in the apps is fact,” I protested. “It’s the single
source of the truth. What more do you want?”
He offered me an Imperial Mint and explained that I was
confusing two fundamentally different operational requirements.
Oracle eBusiness Suite – yep – very clever, very thorough, very
good at capturing huge volumes of raw information, shoving it
through the right filters and squirting it into balanced containers
for constant and indefinite access.
Excel on the other hand – incredibly powerful, immensely
flexible, an unparalleled tool for the kind of analysis, manipulation, exploration and presentation of numbers that comprise the
real function of accountants. Excel is indisputably the lingua
franca of the profession.
“You ask ten accountants to choose between browsers,” Runcie
said, “and you’ll get a split across IE, Netscape and Firefox.
OracleScene Issue 36 Winter 2008
“Essentially correct. But the data is from Oracle.”
“So what? We load data from Oracle into spreadsheets all the
time. And a real pain it is too.”
“Aha. But this is from Oracle as it stands now. It’s live data.”
I paused a moment to let that thought sink in. “Allow me to
present the Mokum Financial Analyser.”
Mokum Financial Analyser (MFA) is a reporting tool that
dynamically links Microsoft Excel to Oracle’s eBusiness Suite.
Users can simply open a spreadsheet, change a period – or an
account number, or any other attribute – and instantly see their
real-time financial balances. They can also drill down to journal
details and sub-ledger entries. All within Excel.
11
How I Learned to Stop Worrying and Love Excel
Developed in the US by Global Software, this essential tool
is licensed to 2500 clients in thirty-nine countries. Last year,
Mokum partnered with Global to bring the branded MFA suite
to Oracle users in the UK.
MFA: Live Oracle Data in a Spreadsheet
In a bullet-point, this is what it does.
• It gives you up-to-the-minute Oracle data in
an Excel spreadsheet.
But, of course, there’s more to it than that.
• MFA is preconfigured for any set-up of Oracle
GL – so you can plug-and-play.
• Both MFA and the Distribution Manager
are as simple to use as they are to install.
It takes less than a day to get them running.
• Both tools are Excel Add-Ins – so users
already know how to use this software.
They can be running and distributing reports
almost immediately.
“I’m really impressed with the speed that
MFA updates information. I keep getting
new projects from my manager and its
absolutely great once the document is
created just to hit a button and refresh
info instead of trawling through prints.”
Carol Morrissey, Management Accountant,
North Yorkshire Fire & Rescue
• Consolidations become easier with instant access to
real-time data.
• The Budget Manager add-on increases the efficiency and
timeliness of your budgeting process.
• The Distribution Manager automates email distribution of your
reports as .xls, .pdf, .doc, or zips.
Runcie spent a few minutes experimenting – that was all it took
for him to understand the features and to recognise the potential.
He sat back in his chair.
“At the risk of sounding like something out of a soap-powder
commercial, I have to say that I’m impressed with what I’m
seeing. This could be the answer to a whole raft of issues.”
Figure 1 – MFA gives you Oracle Data Live in Excel
“Well, we endeavour to meet our clients’ needs, whatever the
personal cost.”
• Oracle security rules apply within MFA.
• The user accesses real-time period, year-to-date, quarter,
opening and closing balances.
• You can drilldown within Excel to the lowest level of detail –
including specific sub-ledger drill-downs.
“Personal cost?”
“I’ve come over to the dark side,” I said. “I’ve admitted the
universal power of Excel. I could get thrown out of the Database
Designers’ Guild.”
“Serious stuff.” Runcie offered me an Imperial Mint. “Still – if
you’re shunned by your peers, you can always hang out with
us accountants.”
“Oh, goody,” I said, flipping the mint into my mouth.
“For a minute there, I thought I might be in trouble.”
Learn more about MFA here: www.mokum.com/mfa.php
Figure 2 – Drilldown within Excel
• There’s no need for specialist report writing skills, and no IT
involvement is necessary to create or alter reports.
• There’s no more downloading, cut’n’pasting, exporting, staging
areas, data warehouses or re-keying of data.
• You can combine reporting, account inquiry, and journal
inquiry into one application – which is likely to reduce the time
required to close your books.
• Finance users can free up time for true business analysis.
12
Mark Bastable has extensive
knowledge of Oracle programming
and the design of financials
applications gained from more than
twenty years experience working
within the Oracle consulting market.
He has a wealth of management
experience on implementation and
upgrade projects in both private and
public sector organisations coupled
with extensive knowledge of Oracle
technology and applications. He has
acted as Solutions Architect and
Functional Expert on a number of
Oracle programmes. Mark is one of
the founding directors of Mokum.
Mbastable@mokum.com
A UK Oracle User Group publication
Who, what, where, why and how?
Oracle Identity Management Solutions
Manpreet Singh Johal, Inatech Solutions Limited
T
his article gives an overview of Oracle Identity Management solutions
and how to quickly deploy Oracle Enterprise Single Sign-On, using
Oracle Internet Directory as a user profile and credential repository.
Identity management is the process by
which the complete security lifecycle for
end-users and network entities is managed
for an organisation. Identity management
most commonly refers to the management
of an organisation’s users, where steps in
the security life cycle include account
creation, deletion, suspension, privilege
modification, and attribute management.
The network entities managed include
devices, processes, applications, servers,
or anything else that needs to interact in a
networked environment. Entities managed
by an identity management process may
also include users outside of the organisation, for example customers, suppliers, or
trading partners.
Benefits
Identity Management System
Components
• Identity management improves the
end-user experience. An identity
management strategy allows new users to
gain access to their applications quickly,
eliminating wasted employee time.
It also allows the users to modify any of
their attributes or preferences at only one
place, instead of changing it for every
application
A complete identity management solution
includes the following components:
• Scalable, secure, and standards complaint
directory service for storing and
managing the user information
• User-provisioning framework that can
either be linked to the enterprise provisioning system (such as HR application),
or that can be operated stand-alone
• Delegated administration model and
application that allows the administrator
of the identity management system to
selectively delegate access rights to the
administrator of the individual
application or to the end-user directly.
An appropriate security model, and userinterface model that can support various
requirements is critical
• Identity management saves money.
For most enterprises, application user
administration is a very expensive,
laborious and error-prone process
• Identity management enables faster
deployments. Typically, provisioning
of a new application means creating and
managing separate user accounts and
their privileges. Identity Management
enables the new applications to leverage
the existing infrastructure for its user
management, and thus reduces the
time it takes to deploy and manage
new applications
• Identity management improves
application security. An identity
management strategy allows users to
have their passwords and security
credentials managed centrally
Oracle Identity and Access
Management Suite
Oracle Identity and Access Management
Suite allows enterprises to manage end-toend lifecycle of user identities across all
enterprise resources within and beyond the
firewall. Administrators can deploy
applications faster, apply the most granular
protection to enterprise resources, and
automatically eliminate latent access
privileges. The Oracle Identity and Access
Management Suite is a member of Oracle
Fusion Middleware family of products,
which brings greater agility, better decisionmaking, and reduced cost and risk to
diverse IT environments. (See Figure 1.)
The Oracle Identity and Access
Management Suite include the following
components:
• Oracle Access Manager delivers critical
functionality for access control, single
sign-on, and user profile management in
heterogeneous application environments
• Oracle Identity Manager is a powerful
and flexible enterprise identity provisioning and compliance monitoring solution
that automates the creation, updating,
and removal of users from enterprise
systems such as directories, email,
databases and so on
• Oracle Identity Federation enables
cross-domain single sign-on with the
industry’s only identity federation server
that is completely self-contained and
ready to run out-of-the box
Figure 1: The Oracle Identity
and Access Management Suite
• Directory integration platform that
enables the enterprise to connect the
Identity Management directory with
legacy or application specific directory
• Run-time model and application for user
authentication
• System to create and manage
PKI certificates
OracleScene Issue 36 Winter 2008
13
ORACLE IDENTITY MANAGEMENT SOLUTIONS
• Oracle Internet Directory, a scalable,
robust LDAP V3-compliant directory
service that leverages the high availability
capabilities of the Oracle 10g Database
platform
• Oracle Virtual Directory provides
internet and industry standard LDAP and
XML views of existing enterprise identity
information, without synchronising or
moving data from its native locations
• Oracle Web Services Manager is a
comprehensive solution for adding
policy-driven security and management
capabilities to existing or new
Web services
• Oracle Enterprise Single Sign-On
provides users with unified single sign-on
and authentication across all their
enterprise resources, including desktops,
client-server, and custom and host-based
mainframe applications
• Oracle Adaptive Access Manager
provides web access real-time fraud
detection and multifactor online
authentication security for the enterprise
• Oracle Role Manager is an authoritative
source for role lifecycle management
that leverages business policy and
organisational data to automate role
based provisioning and access control
Oracle Enterprise Single Sign-On
(eSSO) Example Deployment
Oracle Enterprise Single Sign-On (eSSO)
provides single sign-on functionality for all
the enterprise applications i.e. web based,
client-server and legacy applications. Users
are able to use eSSO functionality whether
they are connected to corporate network,
traveling, or roaming between workstations.
Oracle Enterprise Single Sign-On uses any
LDAP directory or any SQL database as its
user profile and credential repository.
It accepts primary authentication from
Windows logon.
Oracle Enterprise Single Sign-On has the
following components:
i) Oracle Enterprise Manager Single SignOn Logon Manager: allows users to
securely use a single login credentials
for all web based, client-server and
legacy applications.
ii) Oracle Enterprise Single Sign-On
Password Reset: helps in reducing
helpdesk calls by enabling users to
manage Microsoft Windows password
through self-service interfaces.
iii) Oracle Enterprise Single Sign-On
Authentication Manager: allows
organisations to use a combination of
tokens, smart cards, biometrics and
password for strong authentication.
14
iv) Oracle Enterprise Single Sign-On
Provisioning Gateway: enables
organisations to distribute single signon credentials to Oracle eSSO Manager
based on provisioning instructions
from Oracle Identity Manager.
v) Oracle Enterprise Single Sign-On Kiosk
Manager: allows users to securely
access enterprise applications at
distributed workstations.
For the purpose of this article, we shall
demonstrate how to deploy Oracle
Enterprise Manager Single Sign-On
Logon Manager (eSSO-LM), using
Oracle Internet Directory as user
profile and credential repository at
Windows environment.
Step 1: Enterprise Single Sign-On
Logon Manager (eSSO-LM) Admin
Console Setup
This section assumes that Oracle Internet
Directory is already installed and functional
in your network.
Figure 2
3. Connect to Oracle Internet Directory by
entering following information, and click
OK.
Server Name: lon-int-lap0586 or name
of the server where OID is running.
Repository Type: Oracle Internet
Directory.
Port: 389
Use secure channel (SSL): Uncheck
Username/ID: cn=orcladmin
Password: <orcladmin password>
(See Figure 3.)
1. Download Oracle Enterprise Manager
Single Sign-On (eSSO) Suite from
Oracle Technology Network
(http://www.oracle.com/technology/soft
ware/products/ias/htdocs/101401.html)
2. Extract the software at C:\esso directory.
Extraction will create sub-directories for
each of Oracle eSSO sub-components
under C:\esso directory.
3. Go to C:\esso\ESSO Logon Manager
10.1.4.0.5 and click on “ESSO-LM
Admin Console.exe”.
4. At Welcome screen, click Next.
5. At License Agreement screen, accept
the agreement and click Next.
6. At Setup Type screen, select Complete
option and click Next.
7. At Ready to Install screen, click at
Install.
8. Click Finish, once installation is
completed.
Step 2: Extend Oracle Internet
Directory schema for eSSO-LM
Figure 3
4. After successful extension of OID
schema, a dialogue will appear.
Click on Close.
5. In order to store user credentials under
respective OID user objects, an additional schema change and rights assignment
is required. The OID user object needs
to allow the creation of a child object of
type eSSO-LM. A user also needs the
right to create this object and credential
objects under their own OID user
object. Click at Repository link at left
navigation of eSSO-LM Admini
Console, and click on the link Click here
to connect in right hand side pane.
(See Figure 4.)
1. Launch eSSO-LM Administration
Console.
Start -> Programs -> Oracle -> ESSOLM -> ESSO-LM Console
2. Click on Repository -> Extend Schema
menu option. (See Figure 2.)
Figure 4
A UK Oracle User Group publication
Figure 5
backup. Administrators can
deploy configuration overrides
to provide new registry, application template, and first-time use
settings or to update existing settings. eSSO-LM synchronises
credentials to a central repository
i.e. OID, in this example.
v. Expand Event Manager and
choose Windows Event
Extension. This plug-in
supports logging of events to
Windows Event Manager.
d. Languages: provides localised
language support for various
international languages.
6. At Ready to Install screen, click Install.
Step 3: Install eSSO-LM Agent
7. Click Finish, once installation
is completed.
1. Go to C:\esso\ESSO Logon Manager
10.1.4.0.5 and click on “ESSO-LM.exe”.
Step 4: Configuring OID
with eSSO-LM
2. At Welcome screen, click Next.
This section contains steps that enable
credentials to be stored in and retrieved
from Oracle Internet Directory.
This section includes:
- Configure logon manager agent to
connect to OID
- Create a container in OID for
storing SSO information
- Configure a test application
- First time agent setup and
confirmation of OID sync
3. At License Agreement screen, accept
the agreement and click Next.
4. At Setup Type screen, select Custom
option and click Next.
5. At Custom Setup screen, four options
will appear.
a. Application: installs all necessary
files and settings that serve as the
core foundation of the application.
b. Logon Methods: This option
provides plug-ins for different
methods of logging on to eSSOLM. Choose Windows Logon.
c. Extensions: This option provides
plug-ins that enhance and extend
the functionality of eSSO-LM.
i. Backup/Restore Manager: allows
a user or administrator to
backup a user’s passwords and
settings to file and restore, if
required. This feature should not
be used along with synchroniser,
due to conflicts in credentials
time stamp.
ii. Logon Manager: this is a required
component for credential
management, request and
delivery. It includes support for
web application accessed
through Internet Explorer or
Firefox. Mainframe applications,
console window applications
such as Telnet and JAVA
applications.
iii. Setup Manager: This plug-in
provides the initial first time use
experience when setting up the
SSO application.
iv. Expand Extensions ->
Synchronisation Manage ->
LDAP Synchroniser.
It will allow eSSO-LM to
synchronise administration
configuration, mobility and
OracleScene Issue 36 Winter 2008
5. Navigate to Global Agent Settings ->
Live -> Synchronisation ->
LDAPEXT -> Required. Select
Directory Type check box and specify
value as Oracle Internet Directory.
Select check box named Servers and
specifies OID server hostname/IP
address along with Port.
(See Figure 7.)
APPLICATIONS
6. Enter OID connection information, as
specified in Step 3. After successful
authentication, OID schema information
will appear in eSSO-LM Admin Console
as following: (See Figure 5.)
1. Start the eSSO-LM Admin Console
Figure 7
6. After configuring the eSSO-LM agent,
we need to configure OID to store
eSSO-LM application templates and
configuration settings in OID. Login
into Repository by clicking at link in
left pane.
7. Right click on container named
dc=lon-int-lap0586, dc=com and
select New Container. Specify container
name as SSOConfig and click OK.
New container will appear in OID
schema as following.
(See Figure 8.)
2. Right click Global Agent Settings from
left hand pane of Administrative
Console. Select Import, and select
From Live HKLM. This step imports
current configuration from the localmachine registry entry on your system.
Additional entries will appear in
Administrative Console
3. Expand Live -> Synchronisation
4. Set Enable role/group security
support by checking the appropriate box
and selecting Use role/group security
from the appropriate drop down box.
Set Sync Order to LDAPEXT and
Interval for automatic re-sync to 5.
(See Figure 6.)
Figure 8
8. Update the eSSO-LM agent
configuration to make use of container
defined in earlier step to store application templates and configuration information. Navigate to Global Agent
Settings -> Live -> Synchronisation
-> LDAPEXT -> Advanced.
9. Check the check box next to
Configuration Objects Base
Locations, and click on button on
right hand side of field. Specify
container location as
ou=SSOConfig,dc=lon-intlap0586,dc=com and click OK.
Figure 6
15
ORACLE IDENTITY MANAGEMENT SOLUTIONS
10. Update the configuration information
to OID. Click on Repository entry in
left window pane. In right window
pane, right click on container
ou=SSOConfig and choose
Configure SSO Support option.
1. Launch Internet Explorer and open
http://metalink.oracle.com
2. Click at Login to Metalink link.
(See Figure 10.)
12. Choose configuration mode as
Advanced, and click Next.
14. At Global Agent Settings screen,
choose Live and click Next.
15. At summary screen, review the
information and click Finish.
Application template information is
uploaded in OID.
16. To update the client systems registry
entries with updated information from
OID container, choose menu option
Tools -> Write Global Agent
Settings to HKLM.
Figure 10
Inatech Value Add
3. eSSO-LM will automatically detect
web login page and will prompt user to
enable ESSO-LM to remember the
login details. Click Yes.
The following services can be provided for
Identity Management Solution:
4. A New Logon for Login dialog will
appear. Provide Metalink
Username/Password details and
click Finish. (See Figure 11.)
• Single Sign On integration with
Microsoft Active Directory
Step 5: First Time Use (FTU)
Agent Setup
2. Next
9 screen will show the actions that
Figure
wizard can perform. Click Next.
3. At Primary Logon screen, click Next
and at next screen, choose Windows
Logon and click Next. It will prompt
for user’s Windows credentials.
Figure 11
5. ESSO-LM will implicitly login
user into Metalink with credentials
provided.
6. Next time, whenever the user will
access Metalink Login page, ESSO-LM
will login user with credentials provided during application registration.
7. User can view the registered applications information by right clicking at
ESSO-LM icon, which appears in system tray and choose Configuration->
Logon Manager. (See Figure 12.)
5. Click Finish and eSSO-LM is ready
for use.
Step 6: Add applications to eSSO-LM
16
• Synchronisation of Users’ Account from
Microsoft Active Directory to Oracle
Internet Directory and vice versa
• Available directory connectivity solutions
for Peoplesoft and Oracle Human
Resources
4. Provide the credentials and click Next.
In this section, we will demonstrate that
how we can add a web application to
eSSO-LM.
• Enterprise Single Sign On for Web
Application
• Integration functionality with 3rd party
Directory Services using out-of-box with
available Integration Functions, and
using LDAP APIs where standard
integration function is not available
(provided Directory Service should
support LDAP interface)
17. Restart client desktop.
1. After the system restart, login into your
desktop/laptop. Since this is first time
we are logging in after installing eSSOLM Agent, First Time Use (FTU)
wizard will appear and prompt for
OID username/password to update the
user information. (See Figure 9.)
Conclusion
Oracle Identity Management enables
customers to manage life cycle of user
identities by providing products which
manage different stages of user identity life
cycle. Customers can choose the products
that fulfill their business requirement and
integrate with existing in-house identity
management products. Thus, providing
a unified and integrated identity management solution.
11. At Configure SSO Support screen,
select Administrative Console as data
source, as we are uploading application
template defined in eSSO-LM
Administrative Console.
13. Click Next.
8. Similarly, users can add other desktop
and web applications to Logon
Manager.
Figure 12
• High Availability and Scalability
deployment and support
About the Author
Manpreet Singh
Johal, Solution
Architect –
Inatech Solutions
Limited
Manpreet Singh
Johal is an
Oracle Certified
Associate – AS
10g with nearly 8 years of cumulative
work experience. He has excellent
technical experience in Oracle
Applications 11i/R12; Fusion
Middleware - Application Server,
Identity Management, Enterprise
Management, OCS Implementation,
Portal Administration/Development,
and Software Development/System
Analysis. He has worked with various
teams successfully across multiple
projects globally. He has also conducted a presentation at UKOUG 2007 on
“Designing Disaster Recovery Site with
OracleAS Guard 10g”.
A UK Oracle User Group publication
The Tools of Fusion: Oracle
JDeveloper and Oracle ADF
A Beginners Guide to JDeveloper and Oracle ADF
For many of you reading this magazine, whether
you are an implementer of Oracle’s business
applications, hard-core technologists, or just the
guy in the middle who has to do everything, which
is probably most of us, the term “Fusion” is one
you are probably hearing more and more. Whether
through Oracle’s next generation of business
applications or as a company building applications
on Oracle technologies, Fusion is something that
will affect all of us in the Oracle eco-system.
And at the heart of this eco-system are a set of tools and
technologies. Now, you may not have made a conscious
decision to embrace them and may think: “they are not really
for me”, but these are the tools and building blocks now being
used by Oracle and customers alike to build their next
generation of business applications. Maybe these technologies “are for you” after all? This article is the first in a
series taking you on a journey of discovery, and hopefully
enlightenment, explaining how Fusion is built and the tools
and technologies used.
If I had a hammer
For Fusion developers, there are essentially two tool sets:
Oracle JDeveloper and Oracle Application Development
Framework (Oracle ADF). JDeveloper is the IDE (Integrated
Development Environment). The builder in which you
“do stuff ”: write code, debug it, design screen layout etc.
Complementing JDeveloper is Oracle ADF: a set of runtime
and design time features that implement common, and best
practices (often called design patterns) on the Java platform:
meaning you don’t have to write it yourself. So, for example,
the Java EE specification tells you how to map Java objects to
relational database tables; ADF implements that for you.
It’s probably worth pointing out that developing with
JDeveloper and Oracle ADF doesn’t tie you to either the
Oracle middleware or database, or in fact, even to JDeveloper.
Being based on standards, applications can be built to run
against a variety of data sources, middle tier servers and
developed with tools such as Eclipse. That’s what a standards
based platform is all about.
by Grant Ronald, Oracle
PL/SQL, Java or JavaScript! And WYSIWYG editors aid you
in designing your user interface or visualizing page flow and
service orchestration.
So let’s take a high level look at the IDE.
JDeveloper helps organise your source files, starting at the
top most level with an Application. Within the application you
have a number of Projects: a project being a logical container
for a portion of your application. For example, you might
decide to partition your user interface into a different project
from your business services. Furthermore, you can also
partition your source code into Packages. So you might
envisage the Application/Project/Package structure like a
filing cabinet (application), with separate drawers (projects)
and each drawer containing folders (packages) in which you
organise individual source elements. In fact, a feature of
JDeveloper called Application Templates automatically
creates a recommended application structure depending on
the type of application you want to build, and also tailors the
IDE menu choices to only present choices that make sense for
the application you are
Figure 1
building. Hence, the full
power of JDeveloper now
becomes focused on the
technologies that matter
to your application.
(See Figure 1.)
The Application Navigator in Figure 1 shows an application
called UKOUG_Application containing two projects, Model
and ViewController and four packages model, services,
UtilityClasses and views. Furthermore, JDeveloper provides
various ways of filtering and sorting the source files to ensure
you are working with a well ordered and structured view of
your source.
You can also see tabs for the Application Server and Database
Navigator. For example, the Database Navigator provides a
view of connections to your database(s) and allows you to
browse and edit database objects such as tables, sequences
and server side PL/SQL, of course, assuming your database
connection has those privileges.
What would you like to create today?
JDeveloper
Possibly a contradiction in terms, but the focus of JDeveloper
is everything! It’s not just Java development; it’s not even
just about Java developers. It’s about a single environment
for the complete lifecycle of application development whether
you are a database developer, Java developer or someone
coming from Oracle’s “classic” tools background like Forms
and Reports.
Complete Lifecycle
This one tool becomes your single point of development –
integration with a source code management system like
Subversion gives you the ability to version and manage your
source code, whether it is Java code, XML or SQL files. UML
tools allow you to visualise and model elements such as databases, class and use cases. Coding aids help you refactor,
syntax check, profile and debug your code; whether its
OracleScene Issue 36 Winter 2008
Figure 2
So, it’s from within
the Application
Navigator that you
would start building your application. But what do
you want to create?
Like most environments File -> New
is a pretty intuitive
place to start.
Figure 2 shows
the New Gallery
dialogue that lists
the various artefacts you might want to create. A new
application? A new Web page? A Web service? A database
diagram? Or maybe just a plain old simple Java class.
17
THE GUIDE TO FUSION DEVELOPMENT
Of course, what you choose to create will influence what
happens next.
As mentioned earlier, JDeveloper supports a range of developers and development styles. So, if you create a page flow
diagram, you will be presented with a blank diagram on
which you can drag on or create web pages (centre Figure 3).
Or if you are more comfortable at the code level, clicking the
source tab allows you to edit the source code directly; visually
or in code, it’s all the same source. (See Figure 3.)
However, regardless if you are
editing a page flow
diagram or a
simple Java class,
JDeveloper gives
you some
common insights
into the artefacts
you are editing.
The Application
Navigator, (top left,
Figure 3) as
described earlier,
shows the element
you are editing within the context of the whole application.
The Structure Panel (bottom left, Figure 3) gives a tree view of
the element you are editing. This can be useful for example,
when dropping a button onto a page that has many nested
panels and toolbars and you want to make sure you are dropping it at exactly the right spot.
Figure 3
who has access to them, the LOV and the order by clause. You
drag and drop user interface components onto your web page
and declaratively hook them up to your data sources. Without
Oracle ADF, you are on your own.
And the power of Oracle ADF is that much of this functionality
is declaratively driven. By setting properties and attributes, you
are driving the framework without the need to generate or
expose huge amounts of code. So, the above example of the
Employees application would be completely codeless. But, here
is the beauty in Oracle ADF: if you really want to change how
the framework behaves, augment or extend the framework,
Oracle ADF is a “white box” meaning if you want to expose
and change the implementation, you can. All the power of
declarative development, but with almost boundless flexibility.
But that’s enough of the marketing; let’s look a little closer at
Oracle ADF.
Model View Controller
Oracle ADF is developed to the architectural pattern called
MVC (Model, View, Controller). In layman’s terms, all this
means is that the implementation of the user interface (View)
is separate from the implementation of the stuff that does all
your business processing (Model), with the Controller linking
the two (See Figure 4).
Figure 4
The Property Inspector (bottom centre, Figure 3) shows
declarative properties for the selected element. This might be
a backgroundColor property for a button on a page or an
orderBy property for an object based on a database table.
And the Component Palette (right, Figure 3) provides a list of
components that can be dropped onto the diagram or page.
Tailoring the IDE to suit the developer is pretty straightforward as well since these windows can be repositioned,
resized, docked or hidden as required.
Of course, that’s only scratching the surface of JDeveloper,
and we’ll cover more in later articles, but let’s look at
the framework that really gives the Fusion developers
their power.
This separation means that your business services can be
accessed through different user interface technologies, from
other business services, or reused within part of a more
complex flow of business processing.
Oracle ADF
Fusion is based on the Enterprise Edition Java platform
(Java EE). Java EE defines a series of specifications on how to
build multi-tier, distributed Java applications. In addition,
there are a number of best practices as well as a whole host of
“nice to haves” that anyone embarking on a development
project would want to have. And herein lies the challenge.
Each development team embarks on their own undertaking to
implement, or source through other means, thousands of lines
of code just to put an infrastructure in place in which you can
actually do “real” development.
What Oracle ADF does is simplify Java EE development
by implementing specifications, design patterns and other
useful feature so that you can immediately focus on your
application.
For example, you want to query the Employees table ordered
by Salary with JobId as a list of values looked up from
the Jobs table and then commit back any changes the user
has made. Oh, and for added measure, you can only view
the Salary field if you are a manager. And did I mention,
I want this accessible from a browser with the data displayed
in a table that can be reordered and the columns resized.
Oracle ADF is doing all that hard stuff for you. You just set
declarative information to define the tables, the attributes and
18
To choose or not to choose,
now what was the question?
One of the key facets of JDeveloper and Oracle ADF is
choice. Within Oracle ADF, there are a number of technologies to implement a user interface (for example, Swing or
Java Server Faces) and the same is true for your business
services as well (see Figure 4).
For many, the freedom of choice gives them flexibility to develop
based on their existing skills, end user needs and architectural
requirements. For others, choice itself starts to raise too many
questions and so following the mantra of “just do what Oracle
does” provides the reassurance of knowing the chosen technologies, tools and development experiences are proven given
their significance within the Oracle eco-system. For those who
choose the Fusion path, the ADF choices are ADF Business
Components, ADF Controller and ADF Faces Rich Client.
So, given you now know what JDeveloper and Oracle ADF
are, in the next issue I’ll drill into the Fusion experience of
building business services.
Editor’s note – This is the first in a regular column from Grant.
To find out more about Grant, check out page 26 for an indepth interview with him!
A UK Oracle User Group publication
Who has done what to your data?
by Shane Creedon, Ategrity Limited
T
he purpose of this article is to introduce the JD Edwards Database
Audit Manager (DBAM) module and present the many benefits it
provides to the JDE World users. A brief description of how to configure
DBAM and get it working in your organisation is also provided. It is
essential that organisations know who did what to their data, when it was
done and by whom: DBAM lets you do this simply and effectively. Also,
as mentioned below, the functionality is FREELY available from Oracle
for maintenance paying JDE World users.
DBAM was introduced into the JD
Edwards World application in 2003 with
release of Cum 14 of A7.3 and Cum 6 of
A8.1. It was also made available via a PTF
for earlier releases of both A7.3 and A8.1.
It is now fully contained within version
A9.1 of the JDE World application. It is
compatible with all historic versions of
A7.3 and A8.1 of JDE World and if you
currently do not have the functionality, it is
downloadable (for free) from the customer
portal on Oracle’s website.
All organisations are now fully aware of the
compliance regulations introduced by
Sarbanes Oxley. This article is not intended
to summarise or précis these requirements
– suffice to say that SOX has placed
considerable responsibility on company
officials to ensure that the company
operates with an adequate control framework in place. In overall terms, billions of
dollars have been spent in order to create
adequate control frameworks and gain
SOX compliance. This has led to better
control awareness amongst all organisations – whether SOX is required or not.
Company directors and officials are now
fully aware of the impact inadequate
internal controls can have on their business
growth and profitability as well as, in
certain companies, their legal implications.
Within ERP application offerings, the JDE
World application has been a popular
choice with many organisations. The
application has been developed to cater to
all industries and offers the flexibility to be
fine tuned to suit specific businesses. It is
this flexibility that introduces an element of
control concern and places an added burden on the organisation to ensure that optimal controls are configured within the
application. Also, the base JDE World
application, which pre-dated SOX, has not
changed significantly. The existing security
functionality within JDE World has largely
been around since the inception of the
application.
OracleScene Issue 36 Winter 2008
Application security is crucial in any
organisation, regardless of SOX
compliance. It is critical that it is
implemented correctly. Facilities exist in
JDE to create good access control (menu
security); most interactive update programs
that can be secured to prevent users from
performing certain events (action code
security); videos can be secured (function
key security); certain data ranges can be
protected in certain files (business unit
security). Companies should also understand that there are many methods to
access and update JDE data, not just
through JDE applications themselves.
How it works
The DBAM functionality is executed from
the JDE menu G946. Firstly a customer
should decide on a naming convention for
the trigger programs and audit files DBAM
will create. There are then 3 simple steps
required to set up an effective audit history
of any JDE table.
1. Select the Files to be monitored
2. Select the Fields to be monitored
for updates
3. Select the Fields to be recorded
Once these selections have been made
through DBAM and the audit files and trigger program names have been defined, all
necessary objects will automatically be created either interactively or in batch mode.
All that is left to start a complete audit history of any Add, Change or Deletion event
is to turn on the audit triggers through
DBAM.
“Companies should also understand
that there are many methods to access
and update JDE data, not just through
JDE applications themselves.”
No matter what implementation strategy is
used for World security, or whatever third
party product is used to support this, the
efficacy of any implementation is proved by
auditing which users have performed data
updates and through which mechanism,
DBAM provides this capability.
Data Base Audit Manager
As the name suggests, DBAM (specifically
Database Audit Manage) allows the
organisation to monitor precisely who does
what to one of their most valuable assets –
the data itself. This powerful functionality
allows the user to select any JDE file and,
based on their own specific configuration,
capture all changes made to it. More
specifically, who made the changes, when
they were made and which application
(JDE or otherwise) was used to make it.
Reporting
The data stored in the audit history file can
be reported using Query, DREAM writer
or World writer reports.
DBAM versus Journaling or
Other monitoring methods.
A number of third party OS400/I5OS
tools for database audit exist and the OS
itself has its own database change recording
mechanism through Journaling. However
neither of these are designed to work
seamlessly with JD Edwards. This can
make setup more complicated (file/
environment identification etc.) and create
additional integration work for JDE
customers. Third party tools will obviously
generate additional costs, both in terms of
acquisition and implementation.
19
Security Files
Conclusion
• Record updates
It is quite apparent why the JDE World
security tables should be audited. These
will define both access control and what a
user can do when they are in an
application. Included in the recommended
audit file list are the menu tables. These
hold masking attributes that can grant or
deny access. All too frequently users will
create their own instance of menus that call
JDE or non JDE applications.
The DBAM functionality has been
developed to provide a truly effective audit
solution for its users. The functionality is
freely available and is an excellent addition
to any organisations operation. As
mentioned previously, it is vital for an
organisation to be able to determine who
has done what to the actual data it owns.
DBAM for JDE World is the ideal way to
do this.
• Support for commitment control
Configuration Files
Furthermore, the complexity of setup can
be daunting. Perhaps the most important
consideration when using Journaling,
as opposed to DBAM, is that it is
indiscriminate in terms of the database
updates it records. Within JD Edwards
many interactive applications will update
the user date and timestamp fields when no
other updates to the record are made. For
example, if a subfile screen holds 15 records
and an action code update is applied to one
record, the date and timestamp fields for all
15 records will be altered and recorded in a
journal. This can lead to confusion and
significant data volume issues.
There are many configuration files in JDE.
It is these that make the application so
flexible and user friendly. For example,
automatic accounting instructions will
define the path of automated transactional
processing in terms of source and
destination accounts. Careful analysis of
these files need to be performed for correct
configuration purposes.
WHO HAS DONE WHAT TO YOUR DATA?
Journaling itself has a very wide scope and
does not exist simply to record database
updates. It has been designed to cover
amongst other things:
• Updates to the journal receivers
themselves
• File operations including when they are
opened and closed
Because DBAM is based on trigger
program logic, it can specifically exclude
these or any other fields from a file being
monitored.
“...it is vital for an organisation to be able
to determine who has done what to the
actual data it owns. DBAM for JDE
World is the ideal way to do this.”
Getting the most from DBAM
There are literally thousands of tables in the
JD Edwards World application. Fortunately
the vast majority of these, while not
immaterial to an organizations operation,
would not warrant database audit monitoring. As a minimum Oracle recommends
that the JDE security tables are monitored.
Every customer is unique and may have a
specific audit requirement. However to
assist in the selection of files we can
consider four types of table.
1. Security files
2. Configuration files
3. Entity files
4. Transactional files
Entity Files
If a fraud were to be perpetrated, this
would in many cases require the definition
of some sort of entity. This might be an
account, supplier or fictitious employee.
For this reason, a selection of critical entity
definition files should be included.
Transactional Files
About the Author
The clearest record of what has been done
on a system will exist at the transactional
level. For that reason the primary transactional files have been included in this
section as a recommendation for auditing.
While data volumes are unlikely to be an
issue for the files in the other areas, the
selected audit fields in these tables should
be kept under review. The best way to manage data volumes is to purge the data from
these tables by audit history date, which is
a Julian value held on all audit tables.
Shane Creedon
has been involved
in designing
security and
compliance
solutions for
many organisations using SAP
and JDE. Since
1992 he has launched a number of
software companies which have
developed compliance and corporate
governance solutions for the market.
Currently Shane is a director of
Ategrity Limited which specialises in
developing integrated control
solutions for JDE applications.
The author can be contacted at
Shane.creedon@ategrity.com
20
A UK Oracle User Group publication
Who’s knocking on your door?
Dynamic Resident Connection Pooling
by Bob Mycroft, Fortissimo Solutions
T
his article should mainly be of interest to the Oracle DBA and
architect. In it I want to talk about one of the new 11g features –
Database Resident Connection Pooling (DRCP for short) and do a
comparison against the two methods for connecting to the database
before 11g – Dedicated and Shared Server.
An Overview of
Dedicated Server
Before 11g, the two main methods for
handling connections to the database were
“Dedicated Server” and “Shared Server”,
both of which have been around for a
very long time. Dedicated Server is your
“default” connection type. In this
connection type, every client connection
into the database has its own “server
process” running on the database server.
Hence, the relationship between a session
and its server-side process is 1:1. The server
process will continue to service only that
session until the session is closed, whereupon the process will close releasing its
resources back.
Dedicated Server is traditionally used for
Client-Server applications where the likely
number of sessions is known and where
potentially an end-user will connect to an
application and stay connected all day, with
few disconnects and reconnects. This does
mean that the resources assigned to the
process (especially memory) are held while
the process exists, even if the session is idle.
If you have a large number of sessions –
and hence a large number of server
Figure 1: Dedicated Server Components
processes – a large amount of memory can
be consumed and is held for the duration
of the session. Dedicated Server tends not
to perform well for applications that
connect to the database, grab a single piece
of information and release quickly, because
the creation of a new session along with the
server-side process is resource intensive.
You can see the dedicated server processes
at the operating system level. The process
names are of the format oracle<sid> ie. for
database db01, in a “ps –ef|grep oracle”
you would see the following: “oracledb01
(LOCAL=NO)”. There are no database
parameters that you need to set to use dedicated server as it works “out of the box”.
(See Figure 1.)
An Overview of Shared Server
For applications where the number of
sessions in the database may be large, or
likely to grow, shared server may be more
suitable. In this architecture, the number of
sessions is different to the number of server
processes. The idea is that a limited number
of server processes will service a larger
number of sessions in the database. There
is no direct permanent correlation between
a server process and a session in the way
there is with dedicated server – a session
can be served by any one of the shared
server processes. Shared Server is more
suited to “high think-time” applications,
where a particular session is idle more
than it is busy. In essence, when a particular
session has no work to do, the shared
server process is free to do work for
another session.
Shared Server uses a couple of additional
architectural components – namely
dispatcher processes and their relevant
queues. There is a single “common-request
queue” and each dispatcher has its own
“response queue”. Requests to run a piece
of SQL are placed on the request queue by
the client. The least-loaded dispatcher takes
the request from the request queue and
passes to an idle Shared Server for
processing (the listener keeps the info on
the loads on the dispatchers). This sharedserver process performs the query against
the database and the results are then posted
to the relevant dispatcher’s response queue;
the results are then picked up by the client.
In reality, there is a little more to the
process involving the listener and redirects;
If you want to know more, then look at the
“Net Services Administrators Guide,
Chapter 2 – Connectivity Concepts”
Because there is a limited pool of shared
server processes, you don’t want a single
request to hog a particular shared server
process – doing so effectively means that
server isn’t available to service any other
requests. It is because of this, that shared
server is unsuited to batch programmes and
applications with long-running queries.
Tuning shared server is a matter of
supplying enough dispatchers and enough
shared servers to cope with the workload.
If there is a shortage of either then you
may get waits occurring and hence a
performance hit.
The big advantage to shared server is that
for the same memory footprint, Oracle can
support many more concurrently connected
sessions than in dedicated server.
Remember though, this is a database scaling option, not a performance improvement
option. The added complexity of shared
server imposes a slight performance cost.
You can see the shared server processes and
dispatcher processes at the OS level; Shared
server process are called ora_snnn_<sid>
and the dispatchers are called
ora_dnnn_<sid>.
OracleScene Issue 36 Winter 2008
21
is “FRED” then only “FRED” can use that
connection in the future. In my opinion
this suggests that the session does exist in
some form behind the scenes when not in
use, even if it isn’t visible in v$session.
DYNAMIC RESIDENT CONNECTION POOLING
Figure 2: Shared Server Components
You can see this by looking in
V$CPOOL_CC_STATS. For every
different oracle-user that you connect to the
pool, you will get a new Connection-Class.
You can see then that DRCP is suitable for
applications where all the connections to
the database are made using the same
database account rather than as in many
Client Server applications where everyone
connects as their own user.
If the session in the database is pooled with
the process then this may also help explain
how pooled server connections are so blisteringly fast – just like in Shared Server on
connection, no new background process is
spawned but also there is no overlying cost
of having to build a new session from
scratch again. DRCP has the additional
bonus over Shared Server in not having the
Dispatcher processes to manage.
How DRCP works
Shared server and dispatcher configuration
is controlled at a minimum by setting
the shared_servers and dispatchers
parameters. (See Figure 2.)
An Overview of DRCP
In 11g we now have something called
Database Resident Connection Pooling
(DRCP). In effect, once a client has taken
one of the pooled connections, DRCP is
the same as dedicated server in that the
server process is working solely for the
relevant client process. Where DRCP
differs from dedicated server is in what
happens at the point that a client connects
to the database.
For some applications (generally web
applications), the client application may
create a new session, execute a query and
then release the session again, which is
both rather expensive in resources and a
little slow. In 10g and earlier versions, you
would probably want to use shared server
for connections for this as it allows the
number of connections to scale. The
creation of a new session though is still an
expensive operation even in shared server.
This is where DRCP can step in as it
reduces the overall memory resources and
the time taken to make that connection.
According to some Oracle documentation,
the Pooled Server processes are managed
by a background process called cmon or
the Connection Broker. There is only one
DRCP pool allowed in 11g, although the
specification of the procedures used to
manage the pool suggests that in the future
we may be able to have more pools.
22
Once the pool is started, a number of background processes are created to service any
requests for a new session. As new connections are requested, the Connection Broker
allocates a connection from the pool to
service the request and hands it off to the
client for it to do its work. At the point
that the connection is released by the client,
the connection returns to the pool again for
reuse. Unfortunately, I have not managed
to find any direct evidence of the “cmon”
process yet. It doesn’t appear in the OS
(ps –ef|grep cmon) or in v$process so I
can’t find any direct evidence for this
process. (Is this the nth L process though?)
The documentation tells us that “A pooled
server is the equivalent of a server foreground
process and a database session combined.1”
The pool is a set of sessions and associated
server processes which sit, waiting to be
used. While you can see the Pooled Servers
at the OS level (by looking for the (Lnnn)
processes running) and in V$PROCESS,
you don’t see an associated session in
v$session until a connection is allocated
from the pool to a client. (See Figure 3.)
One of the things that suggests that DRCP
is pooling both processes and sessions
together is the existence of connection
classes. A connection can only be shared at
the point of another request if the username matches matches the one used the
first time the connection was used. If the
first user to connect to a pooled connection
To understand how DRCP works it’s
probably easiest to walk through an example case. Imagine we want a connection
pool in place with a minimum of 2 and
maximum of 10 pooled servers, with a
“Max Think Time” of 20 seconds and
a pool increment-size of 2.
First, we have to start the connection
pool and we do this by executing
commands in SQL*Plus. By default,
there is a connection pool called
SYS_DEFAULT_CONNECTION_POOL
and in the current release of 11g we cannot
create new pools. The syntax for the
procedures that start the pool suggests that
in the future we may be able to create new
pools though.
Our first connection request from the client
takes the first connection from the pool and
connects to the database. When we make
the second connection, we see that the pool
of sessions starts to grow, 2 at a time, until
we have 9 concurrently connected pooled
connections. The 10th connection then
hangs and waits for one of the connections
to be released.
A pooled server is released when either a
connection is closed gracefully by the
application, or the connection is terminated
by oracle because it breached its
“max-think-time” condition. Once one of
the 9 connected sessions is released, our
10th connection attempt “unfreezes” and
this new connection is made to the database, reusing the freed pooled connection.
1
(Oracle® Database Administrator’s Guide
11g Release 1 (11.1) – “About Database Resident
Connection Pooling”).
A UK Oracle User Group publication
TECHNICAL
You can see that a session is using a pooled
server by looking at the programme column
of v$session as below; you should see that a
session is associated with an “Lnnn” process
and you can get that information from the
programme column in v$session. The other
thing that is interesting is that the
v$session.server column shows the connection type as DEDICATED. (See Figure 4.)
Figure 3: DRCP Components
Ok, so we have our pooled connections connected to the database. If the connections
then complete the work requested and exit,
the pooled connection is released back into
the pool. At this point, our pool will now
contain 10 idle pooled connections again.
You can check this in V$CPOOL_STATS
but you can also see this at the OS level by
looking for those (L000)-(L010) processes.
These pooled connections will stay in place
now until used again or until they are closed
because they have passed an InactivityTimeout threshold or have exceeded the
Max-Lifetime threshold that can be set, at
which point the pool will shrink back to its
Minimum Size.
Figure 4
select ses.username,
ses.sid,
ses.server,
ses.status,
ses.program
from v$session ses
where regexp_like(ses.program,'\(L[0-9][0-9][0-9]\)' )
SQL> /
USERNAME
----------------SYSTEM
SYSTEM
SYSTEM
SID
----135
126
143
SERVER
----------DEDICATED
DEDICATED
DEDICATED
STATUS
----------ACTIVE
ACTIVE
ACTIVE
PROGRAM
---------------------------------oracle@vulcan (L001)
oracle@vulcan (L002)
oracle@vulcan (L003))
Figure 5
SQL> select num_auth_servers from v$cpool_stats
2 /
NUM_AUTH_SERVERS
-------------------------------1
It’s interesting that with a maximum pool
size of 10, we can only connect to 9 of the
pooled connections. My guess is that the
last connection process is used either for
the connection manager mentioned earlier
as (cman) or as an Authorisation server –
on the basis of querying
V$CPOOL_STATS. (See Figure 5.)
How to implement DRCP
In essence, this is really simple to do.
There are no Oracle initialisation
parameters that are required and the pool
is managed through a database package –
DBMS_CONNECTION_POOL. Incidentally,
you cannot manage the pool when connected via a pooled session.
To start the pool we simply do the
following as SYS. (See Figure 6.)
To configure the pool, we can use either
ALTER_PARAM to change a single
parameter or CONFIGURE_POOL to
change multiple pool parameters simultaneously. In this example, we set the minimum and maximum size of the pool, define
how it grows, define how long an idle connection remains in the pool and finally how
long for an idle connection to time out.
All numbers are in seconds. (See Figure 7.)
If we want to stop the pool we just call.
(See Figure 8.)
Figure 6
exec DBMS_CONNECTION_POOL.START_POOL;
Finally if we want to reset do as in the
illustration. (See Figure 9.)
To make the connection requests to the
database use the Pooled Servers, we need to
make some changes to our tnsnames.ora
entries or to add a bit of text to the JDBC
connect string. In the tnsnames entry, add
the (SERVER=POOLED) as on the left.
(See Figure 10.)
OracleScene Issue 36 Winter 2008
23
For a configuration-less style connect, we
can connect to a pooled server by specifying POOLED as above. (See Figure 11.)
As you can see, DRCP isn’t that hard to set
up and get running.
DYNAMIC RESIDENT CONNECTION POOLING
Figure 7
exec dbms_connection_pool.configure_pool(minsize => 2 ,maxsize => 10,incrsize => 2 ,inactivity_timeout => 600,max_think_time => 60);
If you want to look at statistics about the
pool and its usage then there are three
views that you can use. Be wary of the
values reported in V$CPOOL_STATS
though as there are a number of bugs
relating to this view in 11g r1 and it rarely
seems to report correct information about
connected sessions etc. (See Figure 12.)
Figure 8
exec dbms_connection_pool.stop_pool;
Getting Test Timings
Figure 9
exec dbms_connection_pool.restore_defaults;
Figure 10
o11g =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Vulcan)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = o11g)
(SERVER=POOLED)
)
)
Figure 11
Connect fred/passfred@Vulcan.bob.com:1521/o11g:POOLED
Figure 12
DBA_CPOOL_INFO
Contains information about the connection pool configuration
such as the pool status, the maximum and minimum number of
connections, and timeout for idle sessions.
V$CPOOL_STATS
Contains pool statistics such as the number of session requests,
number of open and busy servers in the pool and the number of
times a client had to wait for a free connection.
Just for interest I wanted to test the
assertion that DRCP really can offer
a performance benefit. To test this, I wrote
some code that connected to, and
disconnected from the database a set
number (2000) of times. I did this for
each of the three connection types, both
with and without a workload. For the
‘workload’ connect the session simply
performed a count of the rows in a sample
table. All timings are in minutes and
seconds. (See Figure 13.)
The table shows some interesting results.
Looking first at just plain connects/
disconnects, with no work; DRCP allowed
the connections and disconnections to
perform the fastest – twice the speed of the
dedicated server connects/disconnects.
Shared Server has a very similar
connection/disconnect speed but was only
marginally slower. This is possibly because
shared server still has to create the session
in the database even though the server
processes already exist.
When it comes to performing the workload
once connected, we can see that in this case
DRCP is of a comparable speed to
dedicated server and much faster than
Shared Server.
The bottom line is that for this (very)
simple test, DRCP manages connects/
disconnects faster than the other methods
yet has the performance of Dedicated
Server when running queries.
V$CPOOL_CC_STATS Contains statistics on Connection Classes.
About the Author
Figure 13
Connection Method
Time to connect
Time to connect,
and disconnect only.
do work & disconnect
Dedicated Server
2:27
4:00 ( 1:33 to do the work )
Shared Server
1:29
4:29 (3:00 to do the work )
DRCP
1:15
2:56 ( 1:41 to do the work)
Bob Mycroft
works as an
independent
Oracle Consultant
for Fortissimo
Solutions.
He has over
thirteen years
experience with
Oracle as both DBA and a Developer.
Bob can be contacted at
bob_mycroft@yahoo.co.uk
24
A UK Oracle User Group publication
UKOUG calendar of events 2009
18th Business Intelligence & Reporting Tools SIG Meeting, London
January
20th UNIX SIG Meeting, London
23rd OUG Scotland Conference & Exhibition
24th App Server & Middleware SIG Meeting, London
30th Modelling, Analysis & Design SIG Meeting, Midlands
29th Public Sector HCM Customer Forum, Midlands
February
04th Oracle Financials SIG Meeting, London
05th Hyperion Enterprise Meeting, London
July
02nd DBMS SIG Meeting, London
14th Development Engineering SIG Meeting, Midlands
15th UKOUG Partner Forum, London
10th Business Intelligence & Reporting Tools SIG Meeting, London
11th RAC & HA SIG Meeting, Slough
11th Oracle Government User Group SIG Meeting, London
th
12
JD Edwards EnterpriseOne SIG Meeting, Slough
August
No events in August
24th Scottish SIG Meeting, Edinburgh
24th Hyperion HFM Meeting, London
26th HCM SIG Meeting, Slough
26th Criminal Justice SIG Meeting, London
September
08th UNIX SIG Meeting, Slough
09th Irish HCM SIG Meeting, Dublin
March
03rd Local Government Applications SIG Meeting, London
th
04
App Server & Middleware SIG Meeting & Apps DBA for OEBS
SIG Meeting, Slough
05th Siebel SIG Meeting, Slough
th
10
OUG Ireland Conference & Exhibition, Dublin
10th Hyperion Essbase Meeting, London
10th Oracle Financials SIG Meeting, London
17th Business Intelligence & Reporting Tools SIG Meeting, London
22nd App Server & Middleware SIG Meeting, Midlands
22nd Oracle Spatial SIG Meeting, Reading
24th Public Sector HCM Customer Forum, Midlands
29th Oracle Projects SIG Meeting, Midlands
29th RAC & HA SIG Meeting, London
30th Scottish SIG Meeting, Edinburgh
10th Hyperion Planning Meeting, London
11th Local Government CRM Customer Forum, London
17th DBMS SIG Meeting, Slough
October
17th JD Edwards World SIG Meeting, London
01st Local Government CRM Customer Forum, Midlands
19th PeopleSoft Combined Event, London
01st Management & Infrastructure SIG Meeting, London
th
Supply Chain & Manufacturing SIG Meeting, Midlands
06th Supply Chain & Manufacturing SIG Meeting, Midlands
th
UKOUG Partner Forum, London
06th Apps DBA for OEBS SIG Meeting, London
24
25
26th Development Engineering, Modelling, Analysis & Design
& Oracle and .NET Combined SIG Meeting, Slough
07th Oracle and .NET SIG Meeting, London
31st Oracle Spatial SIG Meeting, Midlands
08th Local Government Applications SIG Meeting, London
07th Siebel SIG Meeting, Reading
13th Criminal Justice SIG Meeting, London
April
02nd Management & Infrastructure SIG Meeting, London
23rd Education & Research SIG Meeting, London
28th Northern Server Technology Day, York
29th Oracle Projects SIG Meeting, London
May
12th Stellent SIG Meeting, London
20th UNIX SIG Meeting, Midlands
21st Oracle Financials SIG Meeting, Manchester
21st Public Sector HCM Customer Forum, Midlands
13th Education & Research SIG Meeting, Midlands
14th Stellent SIG Meeting, London
15th Development Engineering SIG Meeting, Midlands
22nd HCM SIG Meeting, Midlands
22nd Modelling, Analysis & Design SIG Meeting, London
November
03rd Oracle Government User Group SIG Meeting, London
30th UKOUG 2009 Conference & Exhibition, Birmingham
December
01st – 2nd UKOUG 2009 Conference & Exhibition, Birmingham
June
02nd UKOUG Partner Forum, Birmingham
09th Document Management & Workflow Special Event, London
10th JD Edwards Combined SIG Meeting, Slough
11th HCM SIG Meeting, London
16th RAC & HA SIG Meeting, London
All event dates are subject to change
Q& A with Grant Ronald
by Chris Muir
W
hen talking about Oracle Forms and
JDeveloper, one Oracle personality stands out
among others - long time blogger Grant Ronald
from Oracle Corporation UK. Grant has for a long
time “pimped” Oracle Forms and its big brother
JDeveloper at Oracle events and user groups events
around the world. His popularity is shown by his
blog receiving on average 2000 hits per day. Lately,
to reassure Oracle customers that Oracle intends to
keep on supporting Oracle Forms and show that
Forms has a future inline with JDeveloper, Grant
has been responsible for the Oracle’s Forms
Modernization message.
About the Interviewee
Grant Ronald is a Group Product Manager working
for Oracle’s Application Development Tools group
responsible for Forms and JDeveloper where he has
a focus on opening up the Java platform to Oracle’s
current install base. Grant joined Oracle in 1997,
working in Oracle support, where he headed up the
Forms/Reports/Discoverer
team responsible for the
support of the local Oracle
Support Centres throughout
Europe, Middle East and
Africa. Prior to Oracle,
Grant worked in various
development roles at EDS
Defence. Grant has a BSc.
in computing science and
has been working in the IT
Industry since 1989.
Chris Muir from SAGE Computing Services
Australia conducted the following Q&A session with
Grant to get the low down and latest on Forms and
JDeveloper, as well as a little about Grant himself.
CM: What role do you currently play at Oracle and what
does your day job entail?
Grant Ronald: Well, my title says “Group Product Manager”
and the products I cover are Oracle Forms and Oracle
JDeveloper. As a Product Manager you are responsible for the
success of the products in your area. That encompasses everything from working with developers on features, the marketing
department on campaigns or delivering presentations at events
like Oracle World. In the morning you can be rolling your
sleeves up and getting into code with a developer, and in the
afternoon you can be meeting with the CTO. It’s that varied.
CM: How did you get into this Oracle gig anyhow? What’s
your background at Oracle and computing in general?
Grant Ronald: Back in the early ’80s, home computing was
slowly starting to take off with computers like the Sinclair
Spectrum, Vic20 and BBC home computers, and it seemed like
a new an innovative field to get involved in when I left school.
So I got my degree in Computing Science then joined a small
IT outfit in the UK that eventually got consumed by EDS. It
was a pretty typical development role for about seven years,
mainly focused on military applications, and my last job was
designing, developing and leading the team for the development of the user interface for a military email system.
This took me up to 1996 when I fancied a change, and Oracle
was looking for people with development experience on Unix
and Motif in their support organization. So I joined Oracle
Support where I eventually headed up the group who
supported the local EMEA (Europe, Middle East, Africa) teams
in Forms, Reports and Discoverer. Given that I was working
closely with the Oracle Product Management team in this role,
I was eventually persuaded to make the jump into
Oracle Development!
CM: Ok, now for some tough questions worthy of any Q&A:
You’re currently known via your blog for discussions on
Oracle development including Forms and SOA, and
presentations in Oracle Developer Days around the
world. Previously you were also known for you work
on JDeveloper. Why the change? Has Oracle internally
panicked about the impression (my emphasis)
customers are getting that Oracle has killed Forms,
and now the need for Forms advocates?
Grant Ronald: There has not really been a change. The thing
is, we’ve never stopped talking about Forms. I’ve got the air
miles and passport stamps to show that we were still presenting
Forms at Oracle World, ODTUG (Oracle Development Tools
User Group), UKOUG (UK Oracle User Group), DOAG
(German Oracle User Group) and dozens of other events
covering EMEA, APAC and the Americas.
“In the morning you can be rolling your
sleeves up and getting into code with
a developer, and in the afternoon you
can be meeting with the CTO.”
26
The Forms OTN page (http://otn.oracle.com/
products/forms) is still a hive of activity: news,
events, whitepapers and how-to’s. Maybe people
thought we had stopped talking about Forms
because we were also talking about other technologies as well. Ten years ago if you developed on an
Oracle database then you pretty much used Forms,
simple as that. But the world has changed and there
are other things to talk about now. Which makes
sense, if you think about it; there is more need and
more demand to be talking about the “new” stuff,
especially when it is evolving at such a rate.
From the UK Oracle User Group
Grant Ronald: I think the strongest statement we have is the
fact that we published a statement of direction five years ago
and that statement remains true today. We’ve always said that
we are committed to Forms and that there have been no plans
to desupport it. That line has never changed. Regarding
support, we’ve recently just extended the support date for
10.1.2 (the latest release of Oracle Forms) and Forms 11g is in
development, having already had positive reviews from our beta
testers. So we are lengthening the support dates, we are
working on the next release and we are also discussing enhancements and features for post 11g. I think that’s all good news.
CM: Consider an Oracle shop with a large legacy Oracle
Forms application that is running well but in a
desupported version of Forms. Should they have any
intentions of upgrading their Forms installs and what
are the risks if they don’t?
Grant Ronald: Our roadmap for Forms customers is “upgrade
and integrate”. So the first point to consider is upgrade. There
are, of course, benefits of upgrading but you also have to
consider the risk of not upgrading: running your business
applications on desupported software that is neither security
nor bug patched, or being certified on newer OS or database
versions. Are you managing the risk that some piece of this
stack may change and destabilise your applications (e.g. a
forced O/S upgrade), or are you just hoping that this software
tower will hold up with no means of support. It’s your call.
“By following the “upgrade and integrate”
roadmap, you can limit the risk to your
business applications while still positioning
yourself for your long-term strategic goals.”
CM: Could the problem with Oracle Forms just be an image
problem? It’s never been known for sexy development
(a’la grey screens of boredom), and especially now that
the web world, web rich clients, AJAX etc have taken off.
Grant Ronald: The sweet spot for Oracle Forms has always
been the ability to rapidly develop rich, transactional business
applications. So you see Oracle Forms applications in your
government offices, airlines and bank back-offices etc. The need
for visual “bells and whistles” is less at the fore than, for
example, an online shopping application where a user makes a
snap decision, often based on visual aesthetics, as to whether
they will use the site.
But there is nothing to stop you pushing the boundaries of the
visual aspects of Oracle Forms. We have customers who are
using some of the features of Oracle Forms, like PJCs and Java
beans, to really push the boundaries of the Forms
UI. Like this story: http://www.oracle.com/
technology/products/forms/pdf/capula.pdf.
So there is nothing to stop you modernizing
your Forms application, starting with an update
of the user interface.
CM: So what plans do Oracle have in
addressing Forms customers?
Which takes us to the next point: integration.
By web deploying your Forms on the application server, you are positioning yourself on a
platform on which you can integrate both
your legacy applications, and new services and
applications.
By following the “upgrade and integrate”
roadmap, you can limit the risk to your
business applications while still positioning
yourself for your long-term strategic goals.
CM: Consider an Oracle shop with a large amount of SQL
and PL/SQL programmers who are cognisant in Forms.
Which Oracle development technology should they pick
for maintenance and extension of the existing system:
Forms, Apex or JDeveloper/ADF?
Grant Ronald: The simplest answer is really to pick the
technology/tool that suits you best. If you are extending your
existing Forms application it may be that you build new business logic in the database that could be shared between Forms,
Java and Apex applications. Or you might decide that you really
want to exploit the power of Java and so JDeveloper and ADF
would be a natural choice. Many customers are closely aligned
with Oracle’s business applications and so the Oracle Fusion
technology stack may drive the choice of development tool.
I try to discourage customers to think in binary terms when
choosing tools. The reality is that you will probably have a mix.
“I try to discourage customers to think
in binary terms when choosing tools.
The reality is that you will probably
have a mix.”
Grant Ronald: We are continuing to present at
all the major events and user groups. In addition,
we’ve launched a focus page
http://otn.oracle.com/goto/formsmodernize. This includes
recorded webcasts on Forms strategy, calling web services from
Forms and Forms new features. There are also white papers and
customer stories as well. This is also being backed up by a roadshow which to date has hit nearly 20 countries.
For those Forms customers who are taking a step into the Java
world, we have a dedicated site on OTN
http://otn.oracle.com/formsdesignerj2ee as well as dedicated
developers guides, books and Oracle University courses.
OracleScene Issue 32 Winter 2007
INTERVIEW
CM: On discussing Forms and considering that some Oracle
customers are confused on the future of Forms, can you
outline Oracle’s commitment to Forms in terms of existing versions and Oracle Support?
CM: You mention that JDeveloper and ADF would be the
natural choice for an Oracle developer. Why?
Grant Ronald: As I mentioned earlier, I look after Oracle
Forms and Oracle JDeveloper. One reason for this split in roles
is to bring my 4GL Forms experiences into JDeveloper and
Oracle ADF. When I first joined the JDeveloper team I was
amazed how developers were willing to write lines of code for
common actions that I set with the click of a checkbox in
Forms. Part of my job is to ensure that the kind of rich features
a Forms developer takes for granted are implemented in
JDeveloper and Oracle ADF.
27
INTERVIEW
JDeveloper and Oracle ADF is also a natural choice because it’s
the route our own Applications Division is taking. Our next
generation Fusion applications are being built using JDeveloper
and ADF. So, as the technology choice for Oracle’s own Fusion
Applications, the technology is built with the Forms/Database
and PL/SQL developers in mind. No other tool or framework
can make this claim.
courses specifically targeted at the Forms audience moving to
Java. There are a number of books already published and more
in the pipeline that are aimed at opening up the platform. And
of course, we have a dedicated focus page on OTN
http://otn.oracle.com/formsdesignerj2ee and the essential ADF
developer guides for 4GL developers.
“Fusion applications are being built using
JDeveloper and ADF... So, the technology
is built with the Forms/Database and
PL/SQL developers in mind. No other tool
or framework can make this claim.”
CM: What skills do you see a Forms developer needing in
moving to ADF, and what approach do you suggest to a
development team in minimising this learning curve?
Grant Ronald: There is a learning curve in moving
to any new technology but with JDeveloper and
ADF we are really smoothing out that learning
curve and lowering the barrier at which you can
start to become productive.
Of course, the bottom line is that you will need
some Java knowledge, but how much depends on
how far you want to get below the covers and
customize the behaviour of the framework.
Grant Ronald: The benefits of a service based
approach are already well documented: loosely
coupled, reusable implementations of business
processes gives a more flexible, agile architecture that is better aligned to the business.
Much of the work we are doing with Oracle
Forms now is to allow your existing Forms
application to hook into the SOA world. The ability to call
out to web services and for those services to call back
asynchronously is one example.
“... I think there is a great comfort in
knowing that the technology choices you
are making are the ones Oracle is betting
its business applications on as well.”
With an overview of ADF and some basic Java language skills, you can go a long way: building business services, validation, page flow, rich UI interaction, LOVs,
graphs – stuff that you couldn’t even consider if you weren’t
using ADF.
But if you have made a strategic choice to develop on the Java
platform, I’d expect you to still have some members of your
team who have a more advanced knowledge of the platform so
they can make architectural decisions and set up best practices.
We are also working on giving you the learning aids to get up
to speed. We have developed a number of Oracle University
About the Interviewer
Blogger Chris Muir [http://one-size-doesnt-fitall.blogspot.com] is an Oracle ACE Director for the Fusion
Middleware program and a senior consultant and trainer
for SAGE Computing Services [http:\\www.sagecomputing.com.au] in Australia. With
more than 10 years working in
traditional Oracle development,
he has more recently earned
battle scars working with,
training with, and promoting
Oracle JDeveloper and ADF.
Chris Muir is a frequent presenter
on Java and Oracle JDeveloper
on the Australian Oracle User
Group scene.
28
CM: Recently you’ve been focusing on SOA
technology integration with Forms.
Why advantages do you see this
combination providing? What
challenges do Forms programmers
face with integration?
CM: Grabbing your crystal ball, given your long-term
experience in development, where do you see Oracle
development in 10 years time?
Grant Ronald: I think the clearest view of the future can be
seen in Oracle’s own business applications. Oracle’s
Applications Division have upgraded to the most recent version
of Forms, while looking to exploit the benefits of a services
oriented architecture and a standards based platform.
Using JDeveloper and Oracle ADF, they are taking developers
from a background including Forms, PL/SQL and Peopletools,
and making them productive on the Java platform.
I think this gives the clearest indication of where Oracle
development is heading and I think there is a great comfort in
knowing that the technology choices you are making are the
ones Oracle is betting its business applications on as well.
CM: Finally, moving out of the Oracle arena, what keeps you
kicking out of work? I know you play in a band.
Grant Ronald: I play a bit of keys in a band, and that mixed
with a few weekends out biking helps balance out all the fun
I have at Oracle!
From the UK Oracle User Group
Advanced Topologies –
A real world example
by James Ball, independent Oracle Consultant
and Crispin Caws of Sapient
I
ncreasingly in an E-Business Suite implementation it is necessary to
provide access to different groups of users. Customers and suppliers
are now as likely to have a login to your ERP suite as the guys in
Accounts Receivable.
Oracle provide a series of techniques that
allow us to deploy the e-Business suite to
these groups. These areas were immature
and tricky to implement in earlier releases
but with the ubiquity of 11.5.10.2, the
technology is now established and reliable.
This article will look at a real world
example were an 11.5.10.2 implementation
made available to three groups of very different users across three networks. The
database version is 10.2.0.3 and the platform is IBM p-Series running 64-bit AIX.
The groups needing access are:
A. Internal users. This set of users come to
a secure office and connect to the office
local area network. They can access a
full range of responsibilities; there is no
requirement for the traffic to be
encrypted.
B. Remote users. They have access across
an extended WAN, which is shared with
other organisations. The users need
access to a full set of responsibilities and
traffic must be encrypted.
C. Internet Suppliers. Access is to be
provided across the internet to a highly
restricted set of responsibilities and must
be encrypted.
Diagram 1: Overall Architecture
Architecture and
Technologies Used
The diagram below shows the hardware
used to reach these users. There are three
farms of application servers, one for each of
the three user groups. Each farm is held
within a network cell where only known
and trusted ports are opened. The database
server is held within a further cell.
(See Diagram 1.)
The technical solutions used during
the install along with the Metalink
references are:
SSL for eBusiness Suite:
Metalink 123718.1
Shared Applications Tier:
Metalink 233428.1
e-Business Suite in a DMZ:
Metalink 287176.1
Advanced Configurations:
Metalink 217368.1
Step One – Split application
server types
We start with a two node installation in the
internal application server and the database
server. The application server install will be
the root from where we will clone out all
other nodes.
Following a successful two node install, the
next step is to change the profile hierarchy
from “security” to “server/responsibility”
this means that we will be able to set profile
options based on the server the user
initially logs in on rather than on the
normal site, responsibility, application or
user. This is important so that the pages
which make up the framework, all have the
correct referential links in them, otherwise
users accessing one application server farm
could find themselves clicking a link to a
server they do not have access to and seeing
browser errors. (See Figure 1.)
Figure 1
cd $FND_TOP/patch/115/sql
sqlplus apps/<password>
@txkChangeProfH.sql SERVRESP
Run autoconfig and then restart and
connect to the application server.
When querying back profile options, you
should have the option to specify the server
name. These should be populated with the
properties of the internal application server
just configured.
Step Two – Create External and
Internet nodes
We can clone out the node we just
configured to create the first nodes in the
External and Internet farms. To do this we
preclone, copy and post clone.
(See Figure 2.)
Figure 2
cd $OAD_TOP/admin/scripts/<context>
./adpreclone.sh appsTier
Copy the APPL/COMN/ORA file systems to
the target nodes. (See Figure 3.)
Figure 3
cd $OAD_TOP/clone/bin
perl adcfgclone.pl appsTier
OracleScene Issue 36 Winter 2008
29
ADVANCED TOPOLOGIES – A REAL WORLD EXAMPLE
At the end of this step, we should have a
single node in each application server cell.
We can check connectivity for the user
groups with access to each domain,
although it may be unwise to open up
access to the internet facing application
servers at this point as Apache is still
running unencrypted HTTP.
(See Diagram 2.)
Diagram 2: Base installation cloned to add in addition application tiers
Step Three – Add resilience in
application tier
To maintain a good level of service to all
users in each domain, we run at least two
nodes in each farm. A shared file system
utility allows us to present the Oracle file
systems to each node in each domain at the
same time. We can then use Oracles shared
application tier technology to deploy the
software to the additional nodes.
On the primary node in each domain, run
the shared application tier script and then
preclone the node. (See Figure 4.)
Figure 4
cd $FND_TOP/patch/115/bin
perl txkSOHM.pl
perl adpreclone.pl appsTier
On each secondary node in each domain,
clone the primary context file and then
run the shared application tier script.
(See Figure 5.)
At this stage, it is important to check that
the s_server_ip_address is set correctly in
the context.xml file for each of the nodes
and then run autoconfig. This parameter is
very important as this IP address is used to
create the server_id value in the dbc file for
the node. This file is used each time a user
makes a connection and it is this server_id
value, when compared to fnd_nodes, which
is used to identify the server a user is connected to make sure they stay in the correct
domain. If the server_ip_address parameter
is incorrect, then the user will find themselves directed to the wrong domain.
(See Diagram 3.)
Figure 5
export PERL5LIB=/ias_oracle_home/Apache/perl/lib/5.00503:/ias_oracle_home/Apache/perl/lib/site_perl/5.005:/appl_top/au/11.5.0/perl
cd /appl_top/ad/11.5.0/bin
/ias_oracle_home/Apache/perl/bin/perl adclonectx.pl sharedappltop contextfile=/appl_top/admin/SID_nodename.xml
cd /appl_top/fnd/11.5.0/patch/115/bin
/ias_oracle_home/Apache/perl/bin/perl txkSOHM.pl
Figure 6
cd $OAD_TOP/admin/certs/apache_$(hostname)
$IAS_ORACLE_HOME/Apache/open_ssl/bin/openssl genrsa -des3 -out apache_1024.key 1024
Figure 7
cp apache_1024.key apache_1024.key.bak
$IAS_ORACLE_HOME/Apache/open_ssl/bin/openssl rsa -in apache_1024.key.bak -out apache_1024.key
Figure 8
cd $OAD_TOP/admin/certs/apache_$(hostname)
$IAS_ORACLE_HOME/Apache/open_ssl/bin/openssl req -config $IAS_ORACLE_HOME/Apache/open_ssl/bin/openssl.cnf -new -key
apache_1024.key -out apache_1024.csr
Figure 9
$OAD_TOP/admin/certs/apache_<hostname>/ssl.crt/server.crt
Figure 10
$OAD_TOP/admin/certs/apache_<hostname>/ssl.crt/ca.crt
30
A UK Oracle User Group publication
Diagram 3: Each application domain cloned to add resilience
TECHNICAL
Step Four – Secure HTTP
Generate an apache key, (see Figure 6).
On untrusted networks, we need to encrypt
the traffic between the user and the application server. For this reason we need to
convert the nodes in the internet and
remote user networks to HTTPS. This step
is lengthy because it must be completed on
each node and because we rely on a third
party service to provide the SSL certificate
for each node.
Decode this key so that passcode is not
necessary to start the software each time
(otherwise it would not be possible to
automate the starting and stopping of the
software). (See Figure 7.)
Generate the signing request,
(See Figure 8.)
Figure 11
/u01/app/oracle/sprdcomn/admin/certs/apache_<hostname>/ssl.crt/intermediate.crt
Figure 12
cd $IAS_ORACLE_HOME/Apache/open_ssl/bin
./openssl s_client –connect localhost:8012
Table 1
Variable
Value
s_url_protocol
https
s_local_url_protocol
https
s_webentryurlprotocol
https
This signing request is submitted to a
signing authority such as Verisign, when
the authority responds they will provide
a certificate. This should be stored in,
(see Figure 9).
The certificate also needs to be converted into a PEM encoded version (using
Microsoft Internet Explorer – the
process is shown in Metalink note
123781.1) and stored in (see Figure 10).
The email from the signing authority
will contain a link to the intermediate
certificate. Download this and store in,
(see Figure 11).
The changes in Apache configuration
will all be taken care of by autoconfig
so the following amendments in the
context.xml file and a run of autoconfig,
will implement the new certificate
(see Table 1).
When autoconfig is complete, we can
start the apache server and test from
the server with the command (see
Figure 12).
This should return the certificate to the
command prompt.
s_frmConnectMode
https
s_webssl_port
8000
s_active_webport
8000
s_webport
8000
s_web_ssl_directory
$OAD_TOP/admin/certs/apache_<hostname>
s_web_ssl_keyfile
$OAD_TOP/admin/certs/apache_<hostname>/ssl.key/server.key
s_web_ssl_certfile
$OAD_TOP/admin/certs/apache_<hostname>/ssl.crt/server.crt
s_web_ssl_certchainfile
$OAD_TOP/admin/certs/apache_<hostname>/ssl.crt/ca-bundle.crt
s_apps_portal_url
https://www.domain.com/pls/<SID>_portal30/portal30.home
OracleScene Issue 36 Winter 2008
31
ADVANCED TOPOLOGIES – A REAL WORLD EXAMPLE
Diagram 4: Each domain is load balanced and the external and Internet
domains converted to HTTPS
Step Five – Configure Web
Entry Points
A hardware load balancer in each network
cell is used to direct traffic to the
application servers and make sure the load
is balanced across the available nodes.
Another run of autoconfig on each
application server after making these
changes in the context file will implement
this. This will need to be completed in each
application server farm changing the values
of web entry host and domain so that they
correspond to the load balancer name for
the farm. (See Table 2.)
Step Six – Set Application
Server Types
To increase the level of security on the
internet facing servers, we can specify that
they are “External”. To Oracle this means
that the server is a higher risk and only
certain responsibilities (also marked as
available externally) can be used.
From the system profile options form,
query each internet application server for
the profile option “Node Trust Level” and
set the value for this to “External”.
To make a responsibility available on these
servers use the same form to query the
“Responsibility Trust Level” profile and set
this to “External”. A run of autoconfig on
each node in the Internet farm implements
this change. Making this change also
introduces the URL firewall to the Apache
servers effectively disabling all URLs aside
from those specified. If there are any pieces
of custom code which need to be deployed
on the internet, this file will need to be
reviewed and amended. Note that this file
is always overwritten by autoconfig, so it’s
worth considering putting in a customised
version of the file so that changes don’t
always need to be reapplied.
(See Diagram 4.)
That completes the process. From the starting point of a base two-node
installation of 11i we now have six nodes
available to a range of users across different
networks and accessed via different URLs.
There is, of course, a great deal more which
could be discussed. The architecture
depends completely on the configuration of
networks, load balancers and storage area
network which will differ from site to site
but hopefully this article gives an insight
into how a number of different Oracle
technologies can be used together.
Table 2
Variable
Value
s_webentryhost
www
s_webentrydomain
domain.com
s_login_page
https://www.domain.com/OA_HTML/US/ICX_INDEX.htm
About the Authors
James Ball and
Crispin Caws
implemented this
solution as part of
an IT transformation
project by Sapient
for a central
government department.
James is an independent Oracle
consultant and can be contacted on
james@jamesballconsulting.com
Crispin is Oracle
Technical Architect for
Sapient and can be
contacted on
ccaws@sapient.com
32
A UK Oracle User Group publication
Partitioning in Oracle Database 11g
Release 1 – Part 2
By Tony Hasler, Anvil Computer Services Ltd
O
racle Partitioning has been extensively improved in Oracle Database
11g Release 1 and now has a new manual almost entirely to itself.
Last time we discussed most of these new features but one important
feature, interval partitioning, was left out. This article covers that gap with
a dedicated discussion.
Documentation for partitioning has moved
to the “VLDB and Partitioning Guide”.
This is a new manual dedicated almost
entirely to partitioning and you can find
much more information about this topic in
this manual.
What is Interval Partitioning?
Here’s a scenario that some of you may be
all too familiar with. You have a table
partitioned by range using a date column.
Each month you drop the oldest partition
and create a new partition for the coming
period. However, you went on holiday and
your colleague did something you would
never do: he/she forgot to create the new
partition. As a result, there was a service outage and all the associated post-mortem hooha that usually accompanies such events.
Interval partitioning is designed to make
such problems a thing of the past. You tell
Oracle how big your ranges are (one
month in the previous example) and
Oracle will automatically create the
partition for you when someone tries to
insert a row into it. You may well ask
whether Oracle will drop the old partition
automatically as well. Not surprisingly the
answer is: no it won’t. So you had better
not make your holidays too long or the
tablespace will fill up!
Management Extension or
Partitioning Strategy?
Officially, Oracle still has only three
partitioning strategies: range, hash, and
list. This has always been a little bit
confusing as composite partitioning
options provide additional options by combining the strategies. In 11gR1, “Reference
Partitioning” and “System Partitioning”
have been introduced and were discussed
in detail in the last issue. To my mind,
these are certainly new partitioning strategies but officially they are not.
“Interval Partitioning” is, in my opinion,
not a new strategy: it is a management
extension to range partitioning. The
VLDB manual does introduce it that way.
OracleScene Issue 36 Winter 2008
However, one paragraph heading in the
manual is “Adding a Subpartition to a
[Range | List | Interval]-Hash Partitioned
Table”. This is typical of many references
and reflects the ambivalence (or confusion)
Oracle has as to whether this is a new
strategy or not. To my mind, we should
refer to “Range Partitioned Tables with
Interval Partitioning Enabled”. However,
for the remainder of this article, I will use
the term “Interval Partitioned Table” freely
– as Oracle themselves do.
Creating an Interval
Partitioned Table
You can create an interval partitioned table
in two ways. You can use the CREATE
TABLE statement or you can use the
ALTER TABLE statement to change an
existing range partitioned table into an
interval partitioned table. You can also use
the ALTER TABLE statement to remove
the interval partitioning extension and to
revert an interval partitioned table to a
traditional range partitioned table. Interval
partitioning can be enabled on single-level
range partitioned tables or on range-range,
range-hash, or range-list compositepartitioned tables.
Let us take an example. (See Example 1.)
This composite-partitioned table is created
using the SALES tables in the SH example
schema. The table is created with one
partition (there must be at least one initial
partition specified) and this partition has
16 subpartitions. These 16 subpartitions
are stored in tablespaces TBS4, TBS5, and
TBS6 using a round-robin algorithm.
The partition P2000 contains any rows
with a TIME_ID prior to this millennium.
All this is exactly the same as a standard
range-hash partitioned table. However, we
have not yet discussed the impact of the
line in bold. It is the addition of this line in
the syntax that changes the
SALES_INTERVAL table into an interval
partitioned table. Without this line the
CREATE statement would fail, as there are
rows in the original SALES tables with
TIME_IDs in the years 2000 and 2001.
Example 1: Creating an Interval Partitioned Table
CREATE TABLE SALES_INTERVAL
PARTITION BY RANGE (TIME_ID)
INTERVAL (NUMTOYMINTERVAL(6,'MONTH')) STORE IN (TBS1,TBS2,TBS3)
SUBPARTITION BY HASH (CUST_ID,PROD_ID)
SUBPARTITIONS 16 STORE IN (TBS4,TBS5,TBS6)
(
PARTITION P2000 VALUES LESS THAN (TO_DATE('1-1-2000','DD-MM-YYYY'))
)
ENABLE ROW MOVEMENT
AS SELECT * FROM SH.SALES;
33
INTERVAL PARTITIONING IN ORACLE DATABASE 11G RELEASE 1
Because of this line, four new partitions
are created for the first and second halves
of 2000 and 2001. Each of these four
partitions has 16 subpartitions. The four
partitions will be automatically named
something like SYS_P9999. The digits
will change to make the name unique. The
subpartitions will be automatically named
as well. As you might expect, they are
named something like SYS_SUBP9999
with a unique suffix that is typically four
digits.
These interval partitions are actually different beasts from the standard range partitions and we will go through the differences shortly. One difference that pops up
straight away is the tablespaces into which
the partitions or subpartitions are stored.
There is an entirely separate STORE IN
clause for the interval partitions. One
curiosity is that, in a composite partitioned
table like ours, the subpartitions are not
allocated to the tablespaces in a roundrobin fashion. Indeed, all the subpartitions
for a particular partition are all allocated to
the same tablespace! Subpartitions from
different partitions are allocated to different
tablespaces but even this is not strictly
round robin; if you leave a gap in your
intervals, as I will explain shortly, then you
will skip a tablespace. All this looks unlikely
to be the intention and may well change, so
I won’t dwell on it here.
Restrictions
There are one or two things that you cannot do with an interval partitioned table:
• You can only specify one partitioning key
column, and it must be of NUMBER or
DATE type.
• Interval partitioning is not supported for
index-organised tables.
• You cannot create a domain index on an
interval-partitioned table.
• A table partitioned by reference cannot
refer to an interval partitioned table.
Can you live with that? Ok read on.
Example 2: Gaps in Interval Partitioned Tables
insert into sales_interval
(prod_id,cust_id,time_id,channel_id,promo_id,quantity_sold,amount_sold)
values (1,1,to_date('1-3-2008','DD-MM-YYYY'),1,1,1,1) ;
commit ;
select partition_name, high_value,
partition_position from
user_tab_partitions where table_name='SALES_INTERVAL'
order by partition_position;
previous range, if any. In the case of
interval partitions, it is calculated by
subtracting the interval size from the upper
bound. What this means is that there could
be gaps. Consider what happens if we add
a row to the table created in Example 1, see
Example 2.
The above example inserts a single row into
the table for March 1st 2008. A new
partition will be created with a
HIGH_VALUE of July 1st 2008.
The lower bound is not shown but is of
course January 1st 2008. What about the
years 2002-2007? Partitions will not be
created for these dates until and if rows are
inserted that require them.
If we were to create a range partition using
the ALTER TABLE statement and
specified a HIGH_VALUE of July 1st
2008, this partition would cover the entire
range of dates from January 1st 2002 to July
1st 2008. Unfortunately, you cannot tell the
difference between a standard range partition and an interval partition by looking at
the {USER|ALL|DBA}_TAB_PARTITIONS views or, indeed, any documented
view that I know of. You can, however, look
at the underlying TABPART$ or TABCOMPART$ data dictionary tables to distinguish
these two types of partitions. We will discuss
this later but first we have to introduce a
crucial concept. The Transition Point.
The Key Concept:
The Transition Point
We now know that an interval partitioned
table must have one or more standard
range partitions and zero or more interval
partitions. It turns out that, if there is a
mixture of range and interval partitions in
a table, (and there usually will be) then all
the range partitions must precede the first
interval partition. The largest
HIGH_VALUE of the range partitions is
known as the transition point. A picture
speaks a thousand words, see Figure 1.
We can see that the range partitions
together cover all possible values of the
partitioning key up to the transition point.
After that, there can be gaps but these gaps
must be exact multiples of the interval size
so that interval partitions can be created later
if needed. That leaves us with the question
of determining what the transition point is.
Well, I worked out that you can do this with
the following query, see Example 3.
This example is for composite partitioned
tables only. Use the SYS.tabpartv$ instead
of SYS.tabcompartv$ for single-level
interval partitioned tables. The transition
point will be the HIGH_VALUE of the
last range partitioned displayed. The output
of this query in our example is as follows,
see Example 4.
Figure 1: The Transition Point
Range Partitions Versus
Interval Partitions
There are two key differences between
these two types of partitions. All interval
partitions in a table must cover the same
sized interval – in example 1 this is six
months but it could be anything. Range
partitions, on the other hand, can vary in
size; you can have one partition that is a
day long another that is a month long and
another that is unlimited as P2000 is in
Example 1. The other difference between
interval and range partitions is how the
lower bound of the range is calculated.
In the case of a range partition, it is
determined by the upper bound of the
34
A UK Oracle User Group publication
set sqlbl on
set echo on
SET LINES 100
set pages 100
column high_value format a20
set wrap off
We can see that one of the gaps has been
filled in and that the PARTITION_POSITION of the 2008 partition has been
shuffled up to accommodate it.
SELECT partition_name, high_value,
CASE BITAND (flags, 32768)
WHEN 32768
THEN 'INTERVAL'
ELSE 'RANGE'
END TYPE,
partition_position
FROM user_tab_partitions JOIN user_objects
ON subobject_name = partition_name
AND object_name = table_name
AND object_type = 'TABLE PARTITION'
JOIN SYS.tabcompartv$ ON obj# = object_id
WHERE table_name = 'SALES_INTERVAL'
ORDER BY partition_position;
Partition Maintenance
Operations and Partition
Extended Naming
A complete description of what
maintenance operations are allowed and
which are not is detailed in chapter 3 of the
VLDB and Partitioning Guide and there is
little point in me repeating that here. What
may be of benefit is a little explanation of
what happens to the Transition Point when
we perform some of the operations. Let us
see what happens if we merge the third and
fourth partitions, see Example 6.
Example 4: Range and Interval Partitions – Results
PARTITION_NAME
---------------------------P2000
SYS_P1725
SYS_P1742
SYS_P1759
SYS_P1776
SYS_P1793
HIGH_VALUE
-------------------------------TO_DATE(' 2000-01-01
TO_DATE(' 2000-07-01
TO_DATE(' 2001-01-01
TO_DATE(' 2001-07-01
TO_DATE(' 2002-01-01
TO_DATE(' 2008-07-01
TYPE
--------------RANGE
INTERVAL
INTERVAL
INTERVAL
INTERVAL
INTERVAL
TECHNICAL
This shows that there is only one range
partition and that the transition point is the
start of the millennium. What happens if
we insert a row with a TIME_ID in March
2005? We’ll now we get the following, see
Example 5.
Example 3: Identifying Range and Interval Partitions – Query
PARTITION_POSITION
---------------------------------1
2
3
4
5
6
This merge operation demonstrates
another new 11g feature: Partition
Extended Naming. Rather than using these
horrible system generated names we can
simply specify the value of the partitioning
column in a theoretical row. What this
construct says is this: Identify the partition
that a row with a TIME_ID of March 3rd
would go into and merge it with the
partition that a row with a TIME_ID of
September 3rd would go into.
Example 5: Range and Interval Partitions – Results after row inserted from 2005
PARTITION_NAME
---------------------------P2000
SYS_P1725
SYS_P1742
SYS_P1759
SYS_P1776
SYS_P1814
SYS_P1793
HIGH_VALUE
-------------------------------TO_DATE(' 2000-01-01
TO_DATE(' 2000-07-01
TO_DATE(' 2001-01-01
TO_DATE(' 2001-07-01
TO_DATE(' 2002-01-01
TO_DATE(' 2005-07-01
TO_DATE(' 2008-07-01
TYPE
--------------RANGE
INTERVAL
INTERVAL
INTERVAL
INTERVAL
INTERVAL
INTERVAL
PARTITION_POSITION
---------------------------------1
2
3
4
5
6
7
Example 6: Merge Operation on Interval Partitions
ALTER TABLE SALES_INTERVAL MERGE PARTITIONS FOR(TO_DATE('3-3-2000','DD-MM-YYYY')),FOR(TO_DATE('3-9-2000','DD-MM-YYYY'))
INTO PARTITION PMERGED;
Example 7: Results After Merge Operation
PARTITION_NAME
---------------------------P2000
SYS_P1725
PMERGED
SYS_P1776
SYS_P1814
SYS_P1793
HIGH_VALUE
-------------------------------TO_DATE(' 2000-01-01
TO_DATE(' 2000-07-01
TO_DATE(' 2001-07-01
TO_DATE(' 2002-01-01
TO_DATE(' 2005-07-01
TO_DATE(' 2008-07-01
OracleScene Issue 36 Winter 2008
TYPE
--------------RANGE
RANGE
RANGE
INTERVAL
INTERVAL
INTERVAL
PARTITION_POSITION
---------------------------------1
2
3
4
5
6
35
INTERVAL PARTITIONING IN ORACLE DATABASE 11G RELEASE 1
The result of the merge operation is a new
partition that covers a 12 month period
including the second half of 2000 and the
first half of 2001. Since this is not the
specified size of the interval for the table, it
is not surprising that the new partition is
setup as a range partition. However,
because this implies a movement of the
Transition Point we can see that
SYS_P1725 has been converted to a
range partition as well.
Let’s try something else:
Example 8: Altering the Tablespace for New Interval Partitions
ALTER TABLE sales_interval SET STORE IN (tbs1,tbs2) ;
The above command prevents any new
interval partitions being created in
tablespace TBS3. It has no impact on
the Transition Point. N.B. There is a
documentation error in the SQL
reference manual here. The keyword
SET must NOT be repeated.
Example 9: Altering the Interval Size
ALTER TABLE sales_interval SET INTERVAL (NUMTOYMINTERVAL(3,'MONTH')) ;
A Summary of the Pros and
Cons of Interval Partitioning
This is the command that changes the
interval size for an interval partitioned
table. It can also be used to enable interval
partitioning for a standard range
partitioned table. Let us see what impact
this has on the Transition Point, see
Example 10.
Example 10: Results After Changing the Interval Size
PARTITION_NAME
---------------------------P2000
SYS_P1725
PMERGED
SYS_P1776
SYS_P1814
SYS_P1793
HIGH_VALUE
-------------------------------TO_DATE(' 2000-01-01
TO_DATE(' 2000-07-01
TO_DATE(' 2001-07-01
TO_DATE(' 2002-01-01
TO_DATE(' 2005-07-01
TO_DATE(' 2008-07-01
TYPE
--------------RANGE
RANGE
RANGE
RANGE
RANGE
RANGE
PARTITION_POSITION
---------------------------------1
2
3
4
5
6
Interval partitioning automates the process
of partition creation that otherwise would
have to be done manually or scripted.
It also allows, for the first time, gaps
between partitions. These don’t sound
like bad things but it does mean that you
could get a bunch of partitions that you
don’t want if bad data is supplied. You may
also still need to write scripts to drop
obsolete partitions.
About the Author
Example 11: Disabling Interval Partitioning
Tony Hasler is an
independent software consultant
specialising in
helping companies
improve Oracle
related services.
During his thirty
years of experience Tony has led operating systems
development teams, represented
the British Standards Institute
internationally, and filed a patent
relating to optimisations of distributed
transactions.
ALTER TABLE sales_interval SET INTERVAL () ;
He can be reached at
tony@aberdour.demon.co.uk
The consequence is that all partitions have
been changed to range partitions. In other
words, if a row was inserted with a
TIME_ID in 2007 it would placed in
SYS_P1793.
My final example is the command to
disable Interval Partitioning:
36
Once disabled, any attempt to insert a row
with a TIME_ID later than or equal to July
1st 2008 will result in an error. Interval
partitioning can always be re-enabled later.
A UK Oracle User Group publication
Over-indexing
There’s no guarantee, though, that you’ll get the answer quickly
unless you’ve given the database some help by turning your
logical model into a sensible physical implementation. Part of the
physical implementation will be the choice of indexes – and this
article reviews one of the commonest indexing issues that I see in
OLTP systems.
row you insert – and you may have to write the updated block
out very soon afterwards to make space for the next random
read. If the table is large and you have a couple of dozen indexes,
this “in principle” threat very soon becomes a real one.
TOP TIP
ne of the strengths of a relational database is that you
should be able to throw any reasonable query (and
even some unreasonable queries) at it and it will be able to
return the right answer without being told how to navigate
through the data.
O
By Jonathan Lewis, JL Computer Consultancy
There is a very important difference between (heap) tables and
their indexes – a row can go into a table wherever the next empty
space happens to be; a row has to go into an index in exactly the
right place, and finding that place can be expensive. Things get
worse if you are doing updates – you can update a row in the
table “in situ”, but if you change the value of an indexed column,
you have to find an index entry for the old value, delete it, and
then insert an index entry for the new value in the right place.
Costs and Benefits
Why do we create indexes? There are three main reasons as far
as Oracle is concerned. We need some indexes to help Oracle
enforce uniqueness; we need some indexes for performance
reasons to supply a high-precision access path to important data;
and we may need some indexes to help Oracle enforce referential
integrity constraints.
Theoretically, of course, we don’t need any indexes to ensure data
correctness, so you could say that the only reason for having
indexes is to improve performance. For example, you could
enforce primary key constraints simply by locking tables on every
insert, update or delete and then doing a tablescan to make sure
that there is no conflicting data – but having an index “for” the
primary key allows you to check just one block in the index
without locking the table, so you get better performance and better concurrency. (In passing, an index that covers a primary key
or unique constraint need not be a unique index, and the index
definition need not be an exact match for the constraint –
provided it starts with the relevant columns.)
“...having an index “for” the
primary key allows you to check
just one block in the index
without locking the table, so
you get better performance and
better concurrency.”
So don’t create indexes unless they really pay for their existence
when you come to query the data – and when you do create an
index make sure you maximise the payback.
The Commonest Error
There are a number of subtle ways in which you can create too
many indexes, but there is one error that is easy to spot – the
foreign key index.
When you create a referential integrity constraint (foreign key),
you do not need to create an index to support it and (unlike the
unique constraint and primary key constraint) Oracle will not
create such an index automatically. However, if you are going to
update the primary key or unique key at the “parent” end of the
referential integrity constraint, Oracle will lock the “child” table to
check for committed and uncommitted child rows if a suitable
index does not exist. So many people (and some application
generators) automatically create a matching index for every
foreign key they create.
Rule 1: don’t create “foreign key indexes” unless they are
really necessary, or unless they are sufficiently useful that you
would have created them any way even if there hadn’t been a
referential integrity constraint to protect.
If you do have a foreign key constraint that needs an index,
though, remember that the index does not have to be an exact
match for the constraint – the critical feature is that it should
start with the same columns (not necessarily in the same order)
as the constraint definition. This means that you can always ‘add
value’ to a “foreign key index” that might otherwise be just a
technical overhead.
Rule 2: consider adding columns to foreign key indexes to make
them useful to high precision queries.
So indexes can be a massive aid to performance and concurrency
– but indexes have a price – you have to maintain them, usually
in real-time, and that can cause problems. Roughly every two
weeks, someone writes into the Oracle Forums with a question
like: “I have a batch process that inserts 1million rows of data
into a table every night. But it’s very slow and I see lots of waits
for ‘db file sequential read’ while it’s going on. Why is this
happening?”
Moreover, when you think about the parent/child relationship,
remember that you often see one parent row with several child
rows – think orders/order_lines, or currency_codes/payments.
In cases like this, there may be an opportunity for saving a lot of
space (and reducing the impact on the buffer cache) by
compressing the index on the foreign key column(s).
Case Study
If you insert 1M rows into a table, you might have to create and
(eventually) write something in the region of 25,000 table blocks
(assuming a row size of about 200 bytes – 40 rows per block).
If you have one index on that table then, in principle, you might
have to do a random read for an index leaf block for every single
OracleScene Issue 35 Autumn 2008
So here’s a list of indexes (with a little camouflage) from a system
I was looking at recently. It’s typical of the over-indexing
problems that I see fairly frequently. I got this list by running a
query similar to Figure 1.
37
Figure 1
select
TOP TIP
index_name, column_name
from
user_ind_columns
where
table_name = 'XXXXX'
order by
index_name, column_position
;
You could enhance this by querying dba_ind_columns, of course,
then add all sorts of extras by joining to dba_tab_columns,
dba_indexes, and dba_ind_expressions to pick up details about
non-null columns, column types, uniqueness, index types, and
functions involved in function-based indexes. In the case of my
example, I used a slightly more sophisticated query to show you
the expression used in a function-based index – and here’s the
list of indexes I found on one table, see Figure 2.
Figure 2
ap_fun_fk_i ( fun_id )
ap_grp_fk_i ( grp_id )
ap_grp_fun_id_i( grp_id,fun_id )
ap_org_ap_i ( org_id,ap_id )
ap_org_fk_i ( org_id )
ap_per_ap_i ( per_id,ap_id )
ap_per_fk_i ( per_id )
ap_pk ( ap_id )
ap_ud_i ( trunc(update_date) )
PK in a name indicates the primary (meaningless) key, and FK
indicates foreign keys. You can see immediately that we seem to
have several redundant indexes as far as protecting foreign keys
is concerned.
AP_GRP_FK_I is made redundant by AP_GRP_FUN_ID_I,
AP_ORG_FK_I is made redundant by AP_ORG_AP_I,
AP_PER_FK_I is made redundant by AP_PER_AP_I.
On top of this, we might decide that since there are only a few
organisations (org_id), we could benefit by compressing the index
on (org_id, ap_id) on its first column. We might also compress
the index on functions (fun_id) as well – although we might go
one step further and decide that we will never delete functions or
update the key values, and drop the index altogether.
Following the thought about compression, we could also consider
compressing the index on (trunc(update_date)) – a fairly large
amount of data gets updated each day, so the value is quite
repetitive, similarly (grp_id, fun_id) is also fairly repetitive, so we
might compress on both columns. This leaves us with Figure 3.
Figure 3
ap_grp_fun_id_i ( grp_id,fun_id ) compress 2
ap_org_ap_i ( org_id,ap_id )
compress 1
ap_per_ap_i ( per_id,ap_id )
ap_pk ( ap_id )
ap_ud_i ( trunc(update_date) )
compress 1
38
The reduction in the number of indexes is likely to reduce the
undo and redo by about 40% as we insert (single row) data into
this table, as well as reducing the possible I/O demand by the
same sort of percentage. At the same time, the effect of the
compression could (in this case) eliminate a further 10% to 15%
of I/O related to this table because of the reduction in size of
the indexes.
Further considerations
The only remaining issue to consider is whether there is anything
about the nature of our processing that suggests the need for
housekeeping on these indexes – and the index on
trunc(update_date) is an ideal candidate for consideration.
As we update data, we are going to delete entries from blocks in
the left hand end of the index and insert them at the right hand
end of the index. Depending on the rate and pattern of updates it
is possible that a large number of blocks at the left hand end of
the index will become close to empty – this could have a
significant impact on the effectiveness of the buffer cache and
might encourage us to use the coalesce command on the index
every few days.
Having thought about that, you might then wonder why we have
an index on trunc(update_date) at all. A query that tries to find
all rows updated on a certain date, or range of dates, may have
to jump around all over the table to acquire a lot of data. Who
wants to do this, and how often? It’s possible that the index
exists for a particular report that runs just once per day – perhaps
there is an argument for dropping this index as well.
“A query that tries to find all rows
updated on a certain date, or
range of dates, may have to jump
around all over the table to
acquire a lot of data. Who wants
to do this, and how often?”
Conclusion
It’s very easy to create more indexes than you really need, and
indexes can be very expensive to maintain. Sometimes you can
spot “obviously” redundant indexes simply by inspecting index
names and column names. A few reasonable guesses may allow
you to drop some indexes and make others more efficient with a
minimum of risk and effort.
Jonathan Lewis is a freelance consultant whose
experience with Oracle goes back just over 20 years to
version 5.1a (though he does try to forget that when
dealing with modern systems). He specialises in
physical database design, the strategic use of the Oracle
database engine and solving performance issues.
Jonathan is the author of ‘Cost Based Oracle –
Fundamentals’ published by Apress, and ‘Practical
Oracle 8i – Designing Efficient Databases’ published by
Addison-Wesley, and is one of the best-known speakers
on the UK Oracle circuit, as well as being very popular
on the international scene.
Further details of his published papers, presentations, tutorials and
seminars can be found at http://www.jlcomp.demon.co.uk and his
blog is at http://jonathanlewis.wordpress.com
A UK Oracle User Group publication
Transformation in Action – The Oracle
Customer Services Journey
Oracle has reinforced its commitment to increasing business
value and cutting cost of ownership by making its
comprehensive support, training, and educational solutions
available to customers from a single new entity – Oracle
Customer Services. This restructuring is strengthened by
innovations in the delivery and availability of Oracle’s
offerings that empower customers with greater choice over
how they access support and enable them to tailor it to their
own needs and preferences. At the same time, a renewed
focus on customer advocacy, that has long been central to
the Oracle community, is strengthening Oracle’s reputation
as a trusted business partner for both medium and largersized businesses in all industries.
Pioneering Support Leadership
World-class coverage with more than 7,500 dedicated
customer service staff in 18 global hubs and support in
27 languages has long since made Oracle support unrivalled
among tier one software vendors. More recently, the
company’s commitment to lifetime support for its entire
solutions suite eliminates forced upgrades and maximises
solution value for customers. Unlike some of its competitors,
Oracle includes enhancements and upgrades at no extra
charge and extends support to independent solution vendors
and third-party systems.
“At Oracle we are delighted that our longstanding commitment to customer success
has delivered such outstanding results, but
our work continues.”
Jean Reiczyk, senior vice president
EMEA Customer Services
Towards Embedded Supportability
As IT support matures from product-based to solution-based,
Oracle has migrated from reactive trouble-ticket based
support to a proactive customer-driven service model.
Automatic notification of new patches allows customers to
download, install and apply updated functionality electively
to minimise the risk of system outages or performance
degradation. The advent of Oracle Database 11g heralds a
new era of embedded supportability with self-healing
capabilities that enable advanced, automated fault detection,
prevention, diagnosis and resolution. Time-consuming,
manual administrative tasks are eliminated, allowing
technical teams to work on enhancing IT’s contribution to
business goals instead of simply striving to meet service level
agreements to users.
New for 2009 – Personalised Prevention
for all Oracle Customers
By Debbie Wynne-Owen, Oracle
Oracle’s engineers as part of Oracle’s drive for continuous
performance innovation, the Dashboard will be available free
of charge to all Oracle customers as a simple download. It is
set to revolutionise support by enabling users to personalise
system configurations, service requests and IT projects to
their specific needs and manage their systems via an intuitive interface. Initial trials have indicated that some 56% of
day-to-day user problems can be prevented through proper
use of the Software Configuration Manager Dashboard.
ORACLE NEWS
Oracle Restructures Support for
Customer Success
“Oracle welcomes suggestions from all
customers as to how we can improve
service still further.”
Jean Reiczyk, senior vice president
EMEA Customer Services
Customer Advocacy –
Value Through Partnership
Oracle works with key customers to leverage the value of
their software assets to deliver their business vision via the
Customer Success Index programme. A dedicated customer
services manager uses Oracle’s proven processes and toolset
to explore problem areas, deliver findings and make
recommendations. A collaborative action plan is drawn up to
maximise the customer’s existing IT investment and propose
new Oracle solutions where needed to generate improvements in the most cost-effective way. Customer feedback
shows that the programme, which is free of charge to
customers, helps organisations to identify weaknesses, highlight priorities, incorporate best practice into processes and
build a stronger relationship with Oracle.
In addition to one-on-one reviews, Oracle promotes
collaboration between all customers in the UK through the
Oracle User Group (OUG) www.ukoug.org that serves
customers of the extended Oracle community, including
PeopleSoft, JD Edwards, BEA, Siebel, Stellent and Hyperion.
The OUG sponsors conferences, forums, special interest
groups, workshops, Webseminars, and podcasts featuring
expert speakers from all industry groups.
Oracle – the Thought Leader in Customer Support Innovation
Customer advocacy continues to be central to Oracle’s focus
on increasing customer value and loyalty. Recent surveys
reveal that customer satisfaction with the handling of service
requests, problem resolution times and the knowledge of
Oracle’s support analysts is rising steadily each year.
“At Oracle we are delighted that our long-standing commitment to customer success has delivered such outstanding
results, but our work continues,” says Jean Reiczyk, senior
vice president EMEA Customer Services. “We encourage
customers to take full advantage of the Software
Configuration Manager Dashboard to optimise system
performance, improve service levels to users and cut IT
support costs. Oracle welcomes suggestions from all
customers as to how we can improve service still further.”
Oracle’s Software Configuration Manager Dashboard gives an
at-a-glance graphical view of system health and patches
based on each customer’s environment. Developed by
OracleScene Issue 36 Winter 2008
39
UK Oracle User Group – A Year in Review
UKOUG NEWS
By Simon Corbett, Managing Director, Jargon Public Relations
2008 has been an historic year for UK Oracle User
Group (UKOUG) as it marked the organisation’s 25th
anniversary. UKOUG has celebrated this anniversary
with a determination to continue to offer its members
the highest quality services, including events,
Conferences and Special Interest Groups.
five days and running new streams such as the Executive
Summit, UKOUG shows its pedigree as a driving force within
the Oracle community.”
Simon Corbett, managing director of Jargon Public
Relations, looks back at UKOUG throughout the past
12 months and reflects on the organisation’s 25th
anniversary as it prepares for its biggest user
Conference to date.
Development by the members –
for the members
“The past 25 years have seen the industry
change more than anyone could ever
have imagined.”
Ronan Miles, chairman of UKOUG
25 years young & going strong
UKOUG occupies a strong position within the international
Oracle eco-system and is in a unique position as a User
Group due to the way it includes all Oracle products and
services and associated communities. Operating as a not-forprofit organisation and with the sole remit to help existing
Oracle customers, you could be forgiven for thinking that
UKOUG operates on the periphery of the industry. In fact,
UKOUG has been at the centre of some of the most
significant industry changes.
“The past 25 years have seen the industry change more than
anyone could ever have imagined” comments Ronan Miles,
chairman of UKOUG. And the past few years have certainly
been no exception. Prior to 2004, Oracle had focused on
developing its product organically, but the purchase of
PeopleSoft and JD Edwards marked a change to development by acquisition and integration. Looking back at the
events of 2004, Miles comments, “The purchase of JD
Edwards by PeopleSoft at that time was huge news for the
industry, but when Oracle then bought PeopleSoft we knew
the repercussions would permanently change the global
market” recalls Miles. “Each organisation had its own User
Group and its own individual sub-groups focused on specific
technology areas.
Looking back it has been a significant challenge, but every
sub-group and every user was absorbed into UKOUG,
separate communities were set-up for each company and
unique Special Interest Groups were started to accommodate
each new community.”
Testament to this is the sheer scale and volume of events
that have taken pace during the past year, a total of 32
Special Interest Group meetings and over 120 events. By the
time the UKOUG 2008 Conference & Exhibition finishes,
separate JD Edwards and PeopleSoft Conferences will also
have concluded, attracting record numbers of users.
“In a time of budget cuts and corporate downsizing, UKOUG
has seen a record number of new corporate members join in
2008” comments Miles. With over 1,800 corporate
members to satisfy, UKOUG has continued to build its
membership services and by running tailored events and
special interest groups, extending the annual Conference to
40
“As a not-for-profit, UKOUG must not only run as a prudent
business in order to support its members into future years,
but must also measure its success in terms of customer
satisfaction and engagement” comments Miles.
“One of the highlights each year is the user group annual
survey” comments Miles, who has personally overseen the
annual survey and feedback to Oracle since it began in
2001. “Historically the annual survey has been a very
powerful tool for change. In 2005, Oracle scheduled significant changes to its support desk as a direct consequence of
the survey. The following year’s survey discussed the JD
Edwards honeymoon, the results of which caused Oracle to
heavily invest in the JD Edwards community.”
JD Edwards and PeopleSoft started a trend that has
continued to the present day as the community of Siebel,
BEA and Stellent can testify. The continuation of the UKOUG
policy of inclusion with these large users groups was hailed
by Oracle as ‘a model for other user group’s to follow’ when
in 2005 Oracle HQ expressed their thanks to UKOUG for the
value the organisation brings internationally.
Development within UKOUG is ongoing and the UKOUG
2008 Conference & Exhibition demonstrates this. This year’s
event has been extended to five days offering over 20 unique
streams tailored to the diverse needs of the community. The
launch of the Executive Summit has also attracted significant
interest as Miles comments.
“We pride ourselves on listening to our members, and C-level
executives were telling us they need to meet their peers face
to face, to network, and to learn from a management rather
than technical perspective. We listened and responded and
there has been a lot of interest especially as the entire
agenda has been set by the C-level delegates themselves.”
“...we must continue to ensure UKOUG is
at the forefront of the industry, shaping
the development of the wider eco-system
to ensure our members continue to lead
the industry.”
Ronan Miles, chairman of UKOUG
The Year Ahead
After a record-breaking anniversary year surely 2009 might
be quieter? “There’s no chance of that” jokes Miles. “In some
respects the work is only just beginning. As ICT continues to
be the major driver of business value, and Oracle continues
to become one of the most powerful forces pushing UK plc,
we must continue to ensure UKOUG is at the forefront of the
industry, shaping the development of the wider eco-system
to ensure our members continue to lead the industry.”
A UK Oracle User Group publication
Blog by Niall Litchfield, Maxima Managed Services
A good day today. I was privileged enough to be at the
paper selection day for the UKOUG 2008 Conference in
December. For those who don’t know what happens, and
perhaps suspect some sort of elite giving themselves
presentation slots, here is roughly how it works.
Firstly a reasonably large group of reviewers from around the
world, though naturally UK biased, score your abstract on a
scale from 1 (very poor) to 6 (excellent). They also have an
opportunity to comment. These scores are then collated and
a small team review the scores and allocate presentations to
available slots. The purpose of the 2nd review is twofold.
Firstly it allows the team to review the agenda for balance of
both topics and target audience – this year for example you
will be especially well-served if you are a relatively new DBA
– and secondly it allows for the moderation of some of the
scores, where, for example, only a very few people have
scored a particular abstract. Finally, because some presenters get consistently high scores (Jonathan Lewis being the
obvious prime example) then there is the opportunity to
ensure that other, maybe lesser known presenters get a lookin as well.
So what did this mean this year? Well, we had 212
submissions for the Server Technology arena (Apps DBA submissions are separate). We needed to fill 64 slots. So that
means we needed to eliminate 7 out of 10 submissions. The
average score for this stream was 4.5 (that’s halfway
between good and very good) and on average over 18 reviewOracleScene Issue 36 Winter 2008
ers would have scored each submission. To get into the Top
Quartile (more or less to be guaranteed a place) then you
needed to score 4.93 (Very Good) on average. To restate – to
stand a good chance of getting in, your abstract needed to
show a group of nearly 20 Server Technology specialists that
it was either very good or excellent. The bar to present at
UKOUG 2008 is extremely high. Those who will be receiving
congratulations communications should feel justly proud.
http://www.orawin.info/services/node/83
UKOUG NEWS
Paper selection day for
UKOUG 2008
UKOUG Director
becomes Oracle ACE
Director
Back in spring this year, we ran a news item announcing
that Debra Lilley, Deputy Chair of UKOUG, had been
awarded Oracle ACE status.
Since then, Oracle has extended its Oracle ACE Program to
cover Applications as well as Technology and Debra was one
of four inaugural Applications ACE Directors to be appointed
in August. Our congratulations go to Debra who was selected
for her significant contribution to, and activity in, the Oracle
Applications community.
The Oracle ACE Program recognises and rewards members
of the Oracle Technology and Applications Communities for
their contributions to these communities. More information
about the Program can be found at:
http://www.oracle.com/technology/community/oracle_ace
41
EVENT NEWS
JD Edwards Update
PeopleSoft Update
This has been an exciting year for the JD Edwards
community within UKOUG since the acquisition by
Oracle nearly four years ago.
This has been a very positive year for PeopleSoft. We
have seen the PeopleSoft community come together
and move forward to develop the community further.
The beginning of 2008 saw a meeting between Oracle, JD
Edwards Partners and UKOUG JD Edwards Committee, who
discussed the situation within the community and how we
can work together to build a thriving User Group community
once again.
Back at the UKOUG Conference 2007, UKOUG received a lot
of feedback stating that PeopleSoft should have a Conference
of their own. UKOUG took this feedback and introduced
UKOUG PeopleSoft 2008 Conference & Exhibition.
The main result of that meeting was the decision for an
independent UKOUG JD Edwards Conference. To read the
review from JD Edwards Conference 2008, 4th-5th
November 2008, Ascot Racecourse, go to:
Please check the link below after UKOUG 2008 Conference &
Exhibition to read the review from the PeopleSoft Conference,
4th – 5th December 2008, ICC:
www.oug.org/readpeoplesoft
www.oug.org/readjdedwards
At this link you will also find articles from Oracle.
UKOUG Partner of the Year Awards 2008/2009
Ceremony Dinner
left: Debra Lilley and Tracey Bleakley,
UKOUG Board of Directors
This year saw the launch of the UKOUG Partner of the
Year Awards, the first set of awards voted for by Oracle
users to recognise Partners within the Oracle community.
UKOUG members were given the opportunity to vote for their
preferred Partners from award categories. The winners were
announced at the prestigious Awards Ceremony Dinner held
on 16th October 2008 at Claridge’s, London.
The evening commenced with pre-dinner drinks at 7pm
followed by an exquisite three-course meal after which the
winners were announced by Debra Lilley and Tracey
Bleakley, two members of the UKOUG Board of Directors.
left: ex-Home
Secretary, David
Blunkett MP
Guests cheered in support of the winning Partner organisations which included the likes of IBM, Fujitsu and Edenbrook.
An entertaining and humorous after dinner speech by exHome Secretary David Blunkett MP, left guests amused and
lead quite nicely to the after dinner socialising and networking.
below: Ronan Miles,
Chairman of
UKOUG
below:
UKOUG staff
With the majority of guests ushered out by
midnight the evening was a great success.
To view a full list of winners and photos from
the event please go to: www.oug.org/results
42
A UK Oracle User Group publication
UKOUG Applications Partner of the Year is:
1st
Concentric Solutions
2nd
Application Lynx
3rd
Beoley Mill Software
UKOUG Middleware Partner of the Year is:
1st
Edenbrook
2nd
Fujitsu Services
3rd
Atos Origin
UKOUG Business Intelligence Partner of the Year is:
1st
Rittman Mead Consulting
2nd
Edenbrook
Joint 3rd Accenture
Joint 3rd Capgemini
UKOUG PeopleSoft Partner of the Year is:
1st
Documation
2nd
Quest Software
3rd
2e2
UKOUG Consulting Partner of the Year is:
1st
Business & Decision
2nd
Beoley Mill Software
3rd
Concentric Solutions
UKOUG Project Management/Project Delivery Partner
of the Year is:
1st
inOApps
2nd
Mokum Change Management
3rd
Oracle Consulting
UKOUG Cost-efficient Partner of the Year is:
1st
IBM
2nd
Edenbrook
3rd
Global Software
UKOUG Public Sector Partner of the Year is:
1st
Fujitsu Services
2nd
Capgemini
3rd
Patech Solutions
UKOUG Customer Service Partner of the Year is:
1st
IBM
2nd
Beoley Mill Software
3rd
Edenbrook
UKOUG Shared Services Partner of the Year is:
1st
Oracle Consulting
2nd
Fujitsu Services
3rd
Edenbrook
UKOUG Database Partner of the Year is:
1st
JoraPh Consulting
2nd
Capgemini
3rd
Quest Software
UKOUG Siebel Partner of the Year is:
1st
Business & Decision
2nd
Cognizant
3rd
Atos Origin
UKOUG Hyperion Partner of the Year is:
1st
ReportSource
2nd
Paragon
Analitica
3rd
UKOUG Small Business Partner of the Year is:
1st
IBM
2nd
Application Lynx
inOApps
3rd
UKOUG Innovative Partner of the Year is:
1st
Patech Solutions
2nd
Edenbrook
Joint 3rd Application Lynx
Joint 3rd 2e2
UKOUG Training Partner of the Year is:
1st
Business & Decision
2nd
Projected Consulting
3rd
inOApps
UKOUG JD Edwards Partner of the Year is:
1st
Beoley Mill Software
2nd
DWS
3rd
Q Software
EVENT NEWS
UKOUG Partner of the Year Awards
2008/2009 winners
UKOUG Technology Partner of the Year is:
1st
Griffiths Waite
2nd
Documation
3rd
JoraPh Consulting
UKOUG Managed Services/Support Excellence Partner
of the Year is:
Beoley Mill Software
1st
Mokum Change Management
2nd
3rd
Capgemini
OracleScene Issue 36 Winter 2008
43
UKOUG NEWS
Debra’s diary
I
am writing this entry from my
hotel in San Francisco where
I spent a fantastic weekend after
Oracle Open World. The sun is
streaming in through the window
but not quite as radiant as my
nose, which got burnt whilst
cycling over the Golden Gate Bridge on Saturday – I was not
aware you can get sunburnt through the Fog!
I hope you have been following my blog, but if not and you
have waited patiently since the last episode here is what I have
been up to.
In the last magazine
I promised to give you
an update on ODTUG.
This took place in New
Orleans and is the user
group in the US for
developers. The conference started with a
community day where we painted a school that had previously
been condemned but reopened after Katrina, as it was still
standing. Visiting New Orleans was quite an eye opener – the
tourist part was everything I expected and more but visiting the
wider area showed me how much devastation there was and
how little has been done to help the ordinary people.
The conference was great. I like to say I am not technical but
my area of expertise is Business Intelligence against E Business
Suite and it is getting very technical. There was an entire stream
dedicated to Essbase and was to be addressed by John Kopcke
but as there were 300 delegates in the UKOUG event the
same week he decided to come over to the UK. Unfortunately
airport problems in New York meant he was unable to attend
either, but both events had great stand-ins.
Those from UKOUG
who attended ODTUG
were very impressed by
the hospitality and would
like to thank their entire
board; in this photo you
can see four of them.
In the back left Bambi
Price from Australia, and
in the front the three
wise monkeys, Mike Riley (VP), John Jeannette (Their
President) and John King, a frequent speaker at our own
UKOUG. Why doesn’t our board have such exciting shirts?
I also got to meet Mark Armstrong-Smith, author of the
Discoverer Handbook.
Mike Riley, the ODTUG VP, is a very special person to me.
As I said in the first sentence, Oracle Open World has just
finished and Mike and I always intended to catch up during the
event. As OOW is you and 43,000 of your closest friends it is
not always possible to have quality time together, but Mike and
I spent 92 minutes in a lift – sorry elevator – on the first
evening. Were our respective colleagues worried – no, they sat
in the bar whilst we blogged about our situation from the
elevator. I also posted a message on Oracle Mix, which was
heavily pushed during Oracle Open World, and someone from
Oracle phoned the hotel to let them know. To be fair, the hotel
already knew but it was a great story and one Oracle maximised
– check out the full story on YouTube.
44
Other ‘off piste’ events were a select invite to brunch with
Michael Phelps, and a fantastic concert with Seal, Elvis Costello
and UB40 (where I am sad to say I knew every word) set in a
fairground under the Bay Bridge. All user group leaders also
had another day of meetings once OOW had finished.
What were the main messages from OOW? Well, lots, but in
some ways I was disappointed. The main theme was Complete,
Open and Integrated so no change since my last diary entry, but
subtly they added Infrastructure to the Applications,
Middleware and Database categories. Within Infrastructure
they had VM and Linux – a little light perhaps until the big
announcement that they were going into the hardware business
with HP. It was an odd keynote from Larry, he was obviously
very excited by it but I, like at least half the audience, would
have liked him to mention a few other things. Fusion Apps
perhaps? It was the biggest exodus part way through a Larry
speak I have ever seen – were they disappointed Apps people or
other hardware vendors?
Since Oracle first launched Project Fusion I have campaigned
on your behalf to ensure that Oracle listen to users and I have
accepted two awards related to this recently. Last year at OOW
the first Oracle ACEs were announced for Applications and in
August they awarded just four of us the title of ACE Directors.
This is recognition not only by Oracle but by your peers for
your knowledge and community impact. I was then awarded
‘User Group Evangelist of the Year’ by Oracle Magazine which
you may have seen in their current edition. I was also asked to
be part of the Inner Circle that met prior to Open World and
had a preview of the first Fusion Applications Suite. I had seen
some modules a few weeks earlier when taking part in a
promotional video for OOW, but I have to say it is really
exciting. The user experience is phenomenal and the technology
integration seamless, I would love to tell you more but as
I write this it is still under non disclosure.
I presented three times – an update on the IOUC, Expanding
EBS with Hyperion and a joint presentation with Oracle on
Fusion Readiness where I launched the online tool. Other
UKOUG speakers included Graham Smith from the PeopleSoft
Technical SIG; Carl Dudley, a fellow Board member and Mark
Rittman, our BIRT SIG chair and fellow Oracle ACE Director.
The other big message at OOW was about Beehive, the replacement for Oracle’s Collaboration Suite. This is also exciting and
looks great, and we will have content relating to this in our
conference in December, so come along and see for yourself.
But being a director is not just about attending conferences and
putting on our own. The credit crunch affects us, as it does any
small business. For a few years it has been harder to get
sponsorship for our events and with many acquisitions in IT
(it is not just Oracle shopping) there are less sponsors available.
Extending the conference to fit in all the content also costs and
we are working very hard to meet our budgets. We will have to
make changes in the future, but the board is made up of
members that represent you all and we continue to strive to
‘Serve the Oracle Community’ in the most cost effective way.
I would like on behalf of the board and staff of UKOUG to
wish you all a very Happy Christmas and successful 2009.
Debra Lilley is a Principal Business Consultant with Fujitsu Services.
She is both an Oracle Certified Professional (Applications) and Oracle
Master (IT Professional). Debra has been a UKOUG director since
2004 and is currently Deputy Chairman. She is also responsible for
the Product Development Committees at both EMEA and
International Oracle User Community.
A UK Oracle User Group publication
Blog spot
Content supplied by:
Look for Oracle PIM Data Hub R12.1 Release
By Bob Barnett
Are you considering going live with PIM? Are you
going to R12?
Based on some research I have been doing with
Oracle, I would seriously consider going to the R12.1
release of PIM if I were implementing R12 E-Business
Suite. Many thanks to Mike Ger from Oracle for
assisting me with my research.
The hard part about going to R12.1 release is that it is
NOT Released yet. If you would like to prove out 12.1
then you will have to go through Oracle to obtain
permission to see this version of the software.
It is now in prerelease mode – Oracle names this
version 12.C.
I like what they have done in this version simply
by the addition functionality added to defining
“User-Defined Attributes”. Prior to this version of the
software, we could only define attribute groups at
the item or item/revision level.
1) 12.C allows users to define attribute groups at
the item and item/org level as can be done with
the “operational” attributes in the legacy
mtl_system_items table. A lot of users wanted
attribute groups specific to child organizations.
We worked around this in 11.5.10 by adding the
organization code to the attribute group for many
row attribute groups or called the attribute group
itself by the organization name to distinguish it
from other organziations.
2) Customer and Supplier specific attribute groups:
We can now add attribute groups to items that are
specific to customers or suppliers.
3) Style attribute groups: Item specific attribute
groups that are specific to a style item with many
common SKUs. This is primarily used in the retail
industry but it could really help other people
(configurator users) to have attribute groups
specific to models and ATO items if completely
integrated. Imagine a style item is “Model A
Cowboy Jeans” and a sku is a combination of that
jean in size and color. The SKU would be item
number “Model A Cowboy Jeans3834BLUE”. I can
now define an attribute group specific to that
“Model A Cowboy Jeans” item and it’s SKUs.
Bob Barnett is an Oracle Applications Expert
with over ten years of experience implementing
Oracle Distribution and Oracle Manufacturing
modules from a functional perspective.
He is also a Global Editor for the Oracle Product
Lifecycle Management Track.
46
In the months to come, I hope to be doing a lot of
”hands on” research on this prerelease version so that
I can offer the readers of this blog some insight on different approaches to this new ”style” of attribute
group definition offered by Oracle.
Oracle MDM is a suite of products that allow the user
to synchronize all their customers, suppliers and
product data bases from multiple systems into
one source of truth. Since Oracle bought Agile,
Oracle PLM is now referenced as PIM Data Hub
and information about it can be found at the
following link: http://www.oracle.com/master-datamanagement/pim_data_hub.html
Do yourself a favor and read up on this because if
you are planning to roll out Oracle E-Business suite in
stages but want to keep everything synchronized
across multiple legacy systems, then this is the way to
continue sharing common customers, suppliers and
product information.
There are architectural advantages to considering
12.1 as your PIM Data Hub version on which to go live.
Please consult your Oracle sales team as well as the
fine technical architects that Oracle Contractors have
at their disposal (sales pitch…sorry).
Another benefit to this version of the software is that
you can get some new functionality on the “New Item
Request” Change mgt type such as:
A) Multiple items on same NIR.
B) NIR types can be inherited by child item catalog
categories.
Since I haven’t physically touched this “prereleased”
version of the software, it is obvious that I cannot
guarantee the functionality but I will verify and
confirm it in the months to come.
Bottom line: For this blog, my purpose is to pursuade
you into considering going live with PIM Data Hub
R12.1 if you are either planning or implementing an
R12 PIM currently. There is no “official” release date
but I have been assured “unofficially” that this version
will be released by end of first quarter next year.
Prereleased software can be accessed from Oracle
on a situational basis. An important point: you must
be willing and committed to spend the time communicating to Oracle when working with pre-released
software. It can be buggy and you, “the user”, are the
primary way to resolve bugs in any software from
any software provider.
See you in December in Birmingham, England for
UKOUG. I will be speaking on Thursday afternoon
and will be physically at the Oracle Contractors
booth on the other days. Come by and let me know
what you think!
From the UK Oracle User Group
Download PDF