Oracle Database 10g on Windows: Architecture for Performance

Download Report

Transcript Oracle Database 10g on Windows: Architecture for Performance

Session id: 40171
Oracle Database 10g
on Windows:
Architecture for Performance
David Colello
Consulting Member of
Technical Staff
Oracle Corporation
Steve Fluge
Senior Technical
Consultant
Intel Corporation
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Database Architecture Agenda
 Oracle Database 10g on Windows
architecture
 64-bit development landscape
 Migration & compatibility
(32-bit to 64-bit)
 Future directions & conclusion
 Customer case study: Intel
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Thread Model
 Unlike UNIX ports of Oracle Database 10g,
Oracle Database 10g on Windows is
implemented as a single operating system
process.
 Typical “processes” such as PMON and
LGWR have been converted to native
Windows threads running in the single large
Oracle process.
 One process exists per instance on a
Windows machine.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Thread Model
Oracle process
SGA
3GB
or
8TB
total
Background and foreground threads
Code
SGA contains
db buffers,
log buffers
shared pool,
other memory
allocations
Each thread
consists of
PGA, stack,
other memory
allocations
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Thread Model
 Internally, relatively few code changes are
required to implement the thread model. The
SGA and PGAs are allocated differently and
threads are used instead of processes, but
very little else needs to change.
 As a result, it’s easy to maintain and port the
database while at the same time preserving
it’s inherent stability, features, and
performance.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Thread Model
 Thread model benefits:
–
–
–
–
–
Faster context switches
Decreased memory usage
Quicker connection times
Perceived as a more “native” implementation
since it uses threads versus processes
No changes required for client applications
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: File I/O
 Full support for 64-bit file I/O enables very
large files to be used by Oracle Database 10g
on Windows
–
–
There are no 2GB or 4GB limitations on
database file sizes.
The maximum size for an entire database on
Windows is 4 petabytes (64K files x 16K
bytes/block x 4M blocks/file).
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: File I/O
 Async file I/O is built into Windows and Oracle
Database 10g supports async I/O to all types
of files, assuming that the portable code
layers utilize async I/O.
 No limits on the number of files in a single
database except those already imposed by
Oracle portable code (around 64K files).
 Raw files are fully supported. They are better
performing than file system files, but are
harder to manage.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Tuning
 Both CPU affinities and thread priorities can
be set and manipulated via registry
parameters on a thread-by-thread basis.
 With the introduction of Windows-based
NUMA platforms, Oracle Database 10g has
been enhanced to recognize NUMA systems
and adjust memory and scheduling operations
accordingly.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Tuning
 Single production instances of Oracle on 32bit Windows support more than 2000
concurrent connections. On 64-bit Windows,
the number of connections can rise until the
operating system runs out of resources.
 With the use of technologies such as
multiplexing, connection pooling, and RAC,
the number of users supported by a single
physical database grows much higher.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Tuning
 New for Oracle Database 10g:
– Fiber model support
 An extension of the thread support already in
place since Oracle7. Users may now run the
database in fiber mode, which employs Oraclescheduled fibers instead of O/S scheduled
threads.
 For CPU intensive apps, this will provide a
performance boost and reduce CPU utilization.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Architecture: Tuning
 New for Oracle Database 10g:
– Large Page support
 Using new APIs in Windows Server 2003, Oracle
can now allocate database buffers in fewer larger
memory pages. This reduces the amount of CPU
overhead required to access large amounts of
RAM.
 For instances with large memory requirements,
large page support on both 32 and 64-bit Windows
can improve performance.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Database Architecture Agenda
 Oracle Database 10g on Windows
architecture
 64-bit development landscape
 Migration & compatibility
(32-bit to 64-bit)
 Future directions & conclusion
 Customer case study: Intel
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
64-bit development details
 Working with Intel
–
Company Relations
 Mutual alliances teams
 Regular Executive Meetings
–
Development Cooperation




Intel engineering team on-site at Oracle
Optimizing support on IA specifics
Early access to new Processors/Systems
Early access to Intel’s SW tools
(Compilers & Tuning Tools)
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
64-bit development details
 Working with Microsoft
–
–
–
Oracle is a beta site for Microsoft O/S releases
Frequent communication occurs at many levels
from executives to relationship teams to
developers.
Conference calls, briefings, etc. occur as needed
between appropriate groups
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
64-bit development details
 64-bit database architecture based on 32-bit
database
–
–
Allows database to be built upon a stable, proven
base with few architecture changes
On Windows, thread architecture is retained
 Oracle not bound by specific memory amount
or number of processors
–
Will support as much as the OS can support
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
64-bit development details
 Easy to port code base to 64-bit (change a
few #defines and recompile)
 Simultaneous porting to three different 64-bit
Itanium platforms == knowledge sharing
 Most time is spent testing and on performance
work
 All products in RDBMS bundle have been
moved to native 64-bit
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
64-bit development details
 Data access methods supported natively on
64-bit (initially):
–
–
–
–
–
OLE DB
ODBC
Oracle Call Interface (OCI)
JDBC
SQLJ
 When 64-bit .NET Framework and interfaces
are released, then ODBC.NET, OLE DB.NET,
and ODP.NET will be supported
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Itanium benefits for Oracle
 Larger cache size
–
–
–
–
–
Itanium L3 cache (on-die) is 3 MB
Madison L3 cache up to 6 MB
Less cache latency (fewer clock cycles needed)
Oracle benefits greatly with larger caches closer
to the processor
Allows for “bigger” systems
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Itanium benefits for Oracle
 Better Parallelism
–
–
–
Better Instruction level parallelism
More registers (328, 128 GP, 128 FP)
Improved Scalability of System Bus allowing for
bigger systems
 Improved Micro Architecture
–
Predication removes delays caused by
mispredicted branches
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Itanium benefits for Oracle
 Large memory addressability
–
–
–
–
No 4 GB linear memory limitation for SGA
Up to 8 TB of memory supported
Page size can be up to 4GB
Capacity, concurrent users, and performance of
Oracle database increases dramatically with
more memory
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Oracle 64-bit Performance
Enhancements
 Intel Electron compiler
–
Provides profile-guided optimization (PGO)




–
Better scheduling
More parallelism through larger instruction groups
Lower number of branch mispredictions
Better use of instruction paging and cache
memory
Expect 15%-25% performance improvement from
PGO
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Oracle10g Support on 64-bit
 Itanium is supported by
–
–
64-bit Oracle DB server
64-bit Oracle DB client
 Itanium is not supported by
–
–
32-bit Oracle Database server
32-bit Oracle Database client
 Machines with 32-bit clients are interoperable
with 64-bit Oracle on Itanium
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Database Architecture Agenda
 Oracle Database 10g on Windows
architecture
 64-bit development landscape
 Migration & compatibility
(32-bit to 64-bit)
 Future directions & conclusion
 Customer case study: Intel
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Migration
 Upgrade process (32-bit to 64-bit)
–
32-bit data files are compatible with 64-bit DB
 No need to recreate the database
 A full export and import is not required
 Database Upgrade Assistant provide to
automate process
 For end-user applications, migrating to Oracle
on Itanium is transparent
–
No changes required to 32-bit client applications
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Compatibility
 Independent software vendors (ISVs) porting
to 64-bit Oracle
–
–
No Oracle-specific code changes required when
moving from 32-bit
Just make 64-bit application-specific changes
and recompile
 Client programs completely unaffected by new
back-end. No changes, re-compiles or relinks needed.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Agenda
 Oracle Database 10g on Windows
architecture
 64-bit development landscape
 Migration & compatibility
(32-bit to 64-bit)
 Future directions & conclusion
 Customer case study: Intel
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Future directions
 Further Windows exploitation where it makes
sense
 Architectural changes always being explored
for capacity/performance improvements.
Some examples are fibers, completion ports,
and NUMA-awareness.
 64-bit scale-up as hardware permits
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Useful links
 Oracle on Windows home page
–
http://www.oracle.com/windows
 Oracle Technology Network’s Windows
Development Center
–
http://otn.oracle.com/windows
 Oracle Data Provider for .NET
–
http://otn.oracle.com/tech/windows/odpnet
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Conclusion
 Oracle is committed to Windows
 64-bit Windows Server 2003 on Itanium
enables excellent performance and scalability
for Oracle Database 10g
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
A N N O U N C E M E N T
World Record TPC-C Benchmark
Using an NEC Express5800/1320Xd with 32 Intel
Itanium2 processors on 64-bit Windows 2003, Oracle
Database 10g achieved 521,440.53 tpmC with a priceperformance ratio of $11.77/tpmC.
As of September 5, 2003: NEC Express 5800/1320Xd, 521,440.53 tpmC, $11.77 tpmC,
available February 15, 2004. Source: Transaction Processing Council (TPC),
http://www.tpc.org
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Database Architecture Agenda
 Oracle Database 10g on Windows
architecture
 64-bit development landscape
 Migration & compatibility
(32-bit to 64-bit)
 Future directions & conclusion
 Customer case study: Intel
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Customer case study: Intel
Agenda





Background
Configuration
Test strategy
Key indicators and results
Conclusion
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Background
 Business needs driving migration to Oracle9i
and Windows Server 2003 on IA64
–
Affordable Scalability
 High performance computing at right price
–
Prepares for next generation Grid Computing
 Can be part of a cluster of Itanium2 servers to
consolidate databases
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Background: Application
 Call Center application
–
24x7 availability requirement
 Call centers located worldwide in follow the sun
model
 High availability demand (5 9’s)
–
Scalability/Performance
 Customer base growing 30% annually
 Need to handle high volume surge traffic
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Background: Application
 Call Center application (cont.)
–
Current usage
 Nominal load is 400 concurrent users.
 Peak loads can reach 500+ concurrent users.
 Ancillary operations such as email, fax and batch
data load processing take up to 20% of CPU
processing.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Customer case study: Intel
Agenda
 Configuration
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Configuration:
32-bit Architecture
 Hardware
–
Single database server with an application server
 4 PIII Zeon processors
 4GB RAM
 200GB SAN volume
 Operating System
–
Windows 2000
 Database
–
Oracle9i Release 2 (32-bit)
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Configuration: 32-bit Database
 SGA size and general configuration
–
–
–
–
Total size = 1G (approximately)
db_cache_size = 600M
shared_pool = 400M
log_buffer = 1M
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Configuration: Application
 Application characteristics
–
–
–
–
–
5k stored procedures
Thick client
Connection pooling managed by application
server
E-mail text messages stored as BLOBs
Total memory footprint including PGA is 1.5GB at
400 connections
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Configuration:
64-bit Architecture
 Server hardware
–
–
16GB memory
4x800 MHz Itanium2 processors
 Operating System and software
–
–
–
Windows Server 2003
64-bit PowerPath Emulex drivers using HBA
connectivity to SAN
64-bit file format set in the O/S
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Configuration: 64-bit Database
 Oracle9i configuration
–
–
–
–
–
Larger SGA (2G)
shared_pool = 400M
buffer_cache = 1200M
log_buffer = 2M
pga_aggregate_target = 1G
 Objects cached in SGA
–
–
2x4M record tables
Pinned several large PL/SQL packages
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Customer case study: Intel
Agenda
 Test strategy
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Test Strategy
 The strategy for the comparison between a 32-bit
XEON® Oracle9i system and a 64-bit Itanium2®
Oracle9i system was to generate an identical load on
each system and compare both resource usage and
performance under that load.
 Performance Monitor was used for resource usage
capture.
 Application Characterization Tool – Application Expert
by Compuware was used for capturing performance.
 Visual Test Scripts were used to generate the user
load against a thick client, connecting through an
application server, which then connected to the 32-bit
or 64-bit database backend, depending on the test.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Customer case study: Intel
Agenda
 Key indicators and results
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Results: 32-bit XEON Load
@ 600 Users
CPU Avg. load
45%
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Results: 64-bit Itanium2 Load
@ 600 Users
CPU Avg. load
20%
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Results:
Response Time with 600 Users
 32-bit XEON®
–
Average response time under load: 2.27 seconds
 64-bit Itanium2®
–
–
Average response time under load: 1.16 seconds
Note: Large queries that would not resolve under
the 32-bit environment would resolve while
utilizing the 64-bit Itanium2® system with
Oracle9i.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Sample of indicators recorded
 System performance
–
Change in load distribution between the
database server and the application server
 Application performance
–
–
–
Case creation
Simple search function
Complex search function
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Key indicators
 System Performance
–
–
–
Change in load distribution between the
database server and the application server
CPU load in database server changed from 45%
to 20%, while application server CPU load
increased from 30% to 100%
Network traffic monitoring indicated bottleneck at
the application server, as requests to the
database were handled at a higher rate than the
app server could generate
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Key indicators
 Application performance
 Login/logout
–
–
Account lookup and profile access, followed by
fetch of objects viewable in the application
database
64-bit averages 20% faster
 Case creation
–
–
Involves search for duplicate cases in several 1M
record tables
64-bit averages 25% faster
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Key indicators
 Search operations
–
Simple search
 Individual record lookup based on case number
involves 2 table join
 64-bit averages 40% faster
–
Heavy search
 Search of multiple instances of case information
related to single customer profile. Multi-table join
of 4M to 8M record tables
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Key indicators
 Search operations: Special Search case test
–
Disabled search
 Version of heavy search with single criteria on
common customer name, company name,
geographic location, resulting in outer joins
 Not enabled in 32-bit version due to impact on
system under normal load conditions
 64-bit version returns result sets in less than 2
minutes on average
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Customer case study: Intel
Agenda
 Comparative analysis
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Conclusion
 System characteristics improvements
–
Scalability - Itanium2 server can drive multiple
application servers
 Application server became the bottleneck in the
64-bit architecture, which can be remedied by
adding more 32-bit servers.
 Application characteristic improvements
–
–
–
Faster response times on all key indicators
Ability to more efficiently handle heavy queries
Disabled query operations possible
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
Reminder –
please complete the
OracleWorld online session
survey
Thank you.
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.
QUESTIONS
ANSWERS
Text and slide content Copyright © 2003 Intel Corporation.
Slide background Copyright © 2003 Oracle Corporation..
*Other names and brands may be claimed as the property of others.