EXADATA: deployment story

Report
Сергей Щукин
[email protected]
EXADATA: deployment story
Сергей Щукин
[email protected]
Agenda
1.
Introduction
2.
Our Exadata
3.
First Issues
4.
Preparation for the Migration
5.
Migration
6.
Performance Comparison
7.
Issues Afterwards
Сергей Щукин
[email protected]
Introduction
Early history
•
Started as a storage subsystem – former name SAGE
•
Originally designed for very large databases
•
Fast data access: symbiosis of HW and SW
•
Increase the channel or decrease the data flow?
Сергей Щукин
[email protected]
Introduction
Main Exadata’s secret
Data Processing on Storage layer
1.
2.
Less data is transferred over the Network
Less resources used on DB servers
Сергей Щукин
[email protected]
Introduction
Versions’s history
•
V1
•
•
•
•
•
V2
•
•
•
•
•
Released in 2008
HP h/w + Oracle s/w (Database Machine)
No Flash Cache
Data Warehouse oriented
Announced at OOW 2009
Partnership between Sun and Oracle
Added 384GB of SSD + s/w changes
More than Data Warehouse
X2-2
•
•
•
Announced at OOW 2010
Same as V2 except CPU (2x6 Cores, V2 used 4 Cores)
X2-8 used per Unit: 8 CPU x 8Cores + 1TB memory,
OLTP or mixed workload oriented
Сергей Щукин
[email protected]
Introduction
Existing configurations
V1
V2
Storage
DB
Server
8xProLiant DL
360 G5
14xProLiant
DL180 G5
Sun ?
Sun ?
8xSun x4170
M2
14x Sun
x4270 M2
2xSun
x4800
14x Sun
x4270 M2
CPU
2x 4Core
Xeon E5430
2,66 GHz
2x 4Core
Xeon E5430
4Core
?
2x 6Core
Xeon X5670
2,93 GHz
2x 6Core
Xeon L5640
8x 8Core
Xeon
X7560
2.26Ghz
2x 6Core
Xeon L5640
RAM
32GB
8GB
96GB
24GB
1tb
24GB
Info
12xSAS
450GB
Added
384GB SSD
Flash
Cache
DB
Storage
X2-8
DB
Disks
Storage
X2-2
DB
Storage
12xSAS
600GB
12xSAS
600GB
512MB
Controller
cache+
384GB SSD
512MB
Controller
cache+
384GB SSD
Сергей Щукин
[email protected]
Introduction
Existing configurations
3-D model links
http://oracle.com.edgesuite.net/producttours/3d/exadata22/index.html
http://oracle.com.edgesuite.net/producttours/3d/exadata28/index.html
Physical parameters
Connectivity
Сергей Щукин
[email protected]
Introduction
Existing configurations
DB server: Sun Fire X4170 M2
Сергей Щукин
[email protected]
Introduction:
Existing configurations
Storage server: Sun Fire X4270 M2
Сергей Щукин
[email protected]
Introduction
Exadata’s features
•
Offloading
•
Smart Scan
•
Column projection
•
Predicate filtering
•
Storage Indexes
•
Hybrid Columnar Compression (decompression)
•
Encryption/Decription
•
Datafile initialization
•
RMAN (db block change tracking) offload
•
Smart Flash Cache
•
Parallel Operations
•
Resource management
Сергей Щукин
[email protected]
Our Exadata
System’s description
•
Order processing system, Forex market
•
OLTP database + Reporting database
•
DB version: 10gR2 EE RAC, OS: OEL 5.5 x86_64
•
Tpm - 1000
•
DB Size – OLTP(1TB, logs per day: up to 70GB), Reporting (2TB)
•
Users online (up to 10 000) + orders issued 1000 per minute
•
Streams environment
Сергей Щукин
[email protected]
Our Exadata
Shipment details
Date
Event
Days passed
21-APR-2011
Purchase of Exadata is approved by Client
27-MAY-2011
Exadata arrived with problem power supply
36 days
07-JUL-2011
Power supply was changed
11 days
19-JUL-2011
Primary setup was completed
12 days
20-JUL-2011
Testing was started
1 day
Сергей Щукин
[email protected]
Our Exadata
Primary setup
•
•
•
•
•
We got pre-deploy
network setup
document from Oracle
System engineers
prepared network
according the
document (address
space, dns, etc)
Particular ports were
dedicated on switches
for Exadata
Exadata arrived and
was plugged in
Checks
Сергей Щукин
[email protected]
Our Exadata
What we got
•
Software versions
•
•
11.2.0.2 BP8 DB servers
11.2.2.3.2 Cells
•
ASM layout
•
•
•
Local disks (LVM)
Precreated database with DBFS
OFA
Сергей Щукин
[email protected]
Our Exadata
What we got
•
ASM layout
Сергей Щукин
[email protected]
First issues
No place for copying backup
•
DBFS
•
Local LVM
•
NFS
•
Attach external storage
Сергей Щукин
[email protected]
First issues
Slow NFS
1.
Was: 1 MB/sec
2.
Fixed after putting Exadata and Storage server into the same vlan
Сергей Щукин
[email protected]
First issues
Restrictions in customization
Any changes in SW and HW(except switches) are prohibited
Сергей Щукин
[email protected]
Preparation for the Migration
Real Application Testing (RAT)
Description
•
•
•
•
•
Capture & Replay
EE option
Playback from 11.1.0.6
9i & 10g Capture only.
Patch is required
Cost:11500 $ per processor
+ 2530 support
Restrictions
•
Streams are skipped
•
Direct path load of data from
external files
Flashback queries
Distributed transactions
Non SQL-based object access
•
•
•
Сергей Щукин
[email protected]
Preparation for the Migration
Real Application Testing (RAT)
Streams workload is not captured
Сергей Щукин
[email protected]
Source DB Destination DB What patch you need to apply? Download Information
Upgrade
Upgrade to any
from release release
Comments
9.2.0.8.0
>=11.1.0.7.0
9.2.0.8.0 + one-off patch 9373986 One-off patch can be downloaded
+ one-off patch
or requested from MOS
8712466 on top of 11.1.0.7.0
8712466 is a merge patch on top of
11.1.0.7.0
9.2.0.8.0
>=11.2.0.2.0
9.2.0.8.0 + one-off patch 9373986 One-off patch can be downloaded
and 11.2.0.2.0 + patch 11870615 from MOS
One-off patch can be downloaded
from MOS
10.2.0.4.0
>=11.1.0.7.0
10.2.0.4.0 patchset+ one-off
patch 10239989 + one-off patch
8712466 on top of 11.1.0.7.0
Functionality already exists in
Patchset, download from Metalink
10.2.0.4.0
>=11.2.0.2.0
10.2.0.4.0 Patchset + one-off
Patchset can be downloaded from
patch 10239989
MOS
and 11.2.0.2.0 + patch 11870615
10.2.0.5.0
>=11.2.0.2.0
11.1.0.7.0
>=11.2.0.2.0
10.2.0.5.0 Patchset + one-off
patch 9373986 and
11.2.0.2.0 + one-off patch
11870615
11.1.0.7.0 + one-off patch
8712466 + 9373986
and 11.2.0.2.0 + one-off patch
11870615
MOS 560977.1
Patchset can be downloaded from
MOS
Functionality already exists in
Patchset, download from MOS
One-off patch can be downloaded or One-off patch can be downloaded or
requested from MOS
requested from MOS
One-off patch can be downloaded or One-off patch can be downloaded or
requested from MOS
requested from MOS
Сергей Щукин
[email protected]
Preparation for the Migration
Capture (10.2.0.4.4 -> 11.2.0.2)
•
Get one-off patch 10239989 compatible with 10.2.0.4.4. Apply it
•
Activate capture feature on a source system (wrrenbl.sql)
•
Create filter (every time):
exec DBMS_WORKLOAD_CAPTURE.ADD_FILTER ( fname =>
'filter_name', fattribute => 'USER', fvalue => user)
•
Start Capture:
exec DBMS_WORKLOAD_CAPTURE.START_CAPTURE (name =>
'test_capture', dir => 'rat', duration => 1200, capture_sts
=> TRUE, sts_cap_interval => 300)
•
Export AWR:
exec dbms_workload_capture.export_awr (capture_id => )
•
Useful views: DBA_WORKLOAD_CAPTURES DBA_WORKLOAD_FILTERS
Сергей Щукин
[email protected]
Preparation for the Migration
Replay
•
Copy files, Process them once
exec DBMS_WORKLOAD_REPLAY.PROCESS_CAPTURE(capture_dir=>
'RAT')
•
•
Restore consistent db copy, reset time
Initialize Replay
exec DBMS_WORKLOAD_REPLAY.initialize_replay (replay_name =>
'test_replay', replay_dir => 'RAT');
exec DBMS_WORKLOAD_REPLAY.REMAP_CONNECTION(!!!)
exec DBMS_WORKLOAD_REPLAY.prepare_replay (synchronization
=> TRUE);
•
Calibrate WRC clients
wrc mode=calibrate replaydir=/opt/oracle11g/rat
•
Connect WRC clients
wrc system/... mode=replay replaydir=/opt/oracle11g/rat
•
Start Replay
exec DBMS_WORKLOAD_REPLAY.start_replay;
•
Analyze diffs in reports
dbms_workload_capture.IMPORT_AWR
dbms_workload_repository.awr_diff_report_text
Сергей Щукин
[email protected]
Preparation for the Migration
Bug in Playback
•
Worked fine for Reporting DB (3 hours)
•
•
•
•
•
•
Better DB Time (lower: 855.3 vs 138.7)
Better CPU (faster, less cpu time: 11000sec vs 3600sec)
Better IO reads (sinlge block read 13ms vs 0.6ms, 6,5ms vs 1ms)
Worse IO write, especially db file parallel write (4,5ms vs 20ms)
Better interconnect
For Trading DB gave ora-00600 after 1 hour of working
ORA-00600: internal error code, arguments: [1433], [60], [],
[], [], [], [], [], [], [], [], [] CKPT (ospid: 4327):
terminating the instance due to error 469
System state dump requested by (instance=1, osid=4327
(CKPT)), summary=[abnormal instance termination].
•
Oracle made a patch after 2,5 months
Сергей Щукин
[email protected]
Migration
Official methods
•
Physical
•
Pros
•
Simple
•
Less downtime
•
Cons
•
Data structure can’t be changed (extent’s size, partitioning, HCC)
•
Unnecessary data migrates as well
•
Logical
•
Pros
•
One can change data structure
•
Old data can be skipped
•
More flexible in terms of changing the platform
•
Cons
•
More complicated
•
Involve more downtime
Сергей Щукин
[email protected]
Migration
Official methods
Physical
http://www.oracle.com/technetwork/database/features/
availability/xmigration-11-133466.pdf
Сергей Щукин
[email protected]
Migration
Official methods
Logical
Сергей Щукин
[email protected]
Migration
Our method (10gR2 -> 11gR2)
•
Backup & Restore database
•
Manual applying of the archivelogs
•
Open in new DB with RESETLOGS and UPGRADE
Сергей Щукин
[email protected]
Migration
Difficulties
•
•
•
•
Streams
Test runs with rollback
10gR2 standby in Amazon
Need to run utlu112i.sql on the Prod DB with the following rollback
Сергей Щукин
[email protected]
Migration
Changes made by utlu112i.sql
Unsupported
Unsupported
set transaction read write;
Unsupported
Unsupported
commit;
Unsupported
ALTER TABLE registry$database ADD (tz_version NUMBER);
set transaction read write;
Unsupported
commit;
update "SYS"."OBJ$" set "OBJ#" = '898', "DATAOBJ#" = '898', "TYPE#"
"FLAGS" = '0', "OID$" = NULL, "SPARE1" = '6', "SPARE2" = '2' where "
set transaction read write;
ALTER PUBLIC SYNONYM DBA_REGISTRY_DATABASE COMPILE;
update "SYS"."SYN$" set "NODE" = NULL, "OWNER" = 'SYS', "NAME" = 'DB
delete from "SYS"."DEPENDENCY$" where "D_OBJ#" = '7533' and "D_TIMES
update "SYS"."OBJ$" set "OBJ#" = '7533', "DATAOBJ#" = NULL, "TYPE#"
and "CTIME" = TO_DATE('09-AUG-11', 'DD-MON-RR') and "MTIME" = TO_DAT
insert into "SYS"."DEPENDENCY$"("D_OBJ#","D_TIMESTAMP","ORDER#","P_O
commit;
Сергей Щукин
[email protected]
Migration
Step-by-step for Rep database
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Backup both databases (Trad & Rep) 
Restore Rep copy on Exadata (over NFS). Keep it synchronized
Stop applications
Disable synchronization with Standby
Build Streams catalog (to be able to rewind changes applied on new REP copy)
Create guaranteed restore point on Rep database
Execute utlu112i.sql on Rep db
Apply all logs from Rep db to Exadata’s copy
Open with RESETLOGS and UPGRADE Rep copy on Exadata. Run upgrade scripts
Direct Streams to the new Rep copy on Exadata
Direct application to the new Rep db
Rollback
1.
2.
Flashback Rep db to the guaranteed restore point
Rewind Streams on Trading db and re-apply changes on Reporting db
Go Live
1.
Upgrade Standby to the 11gR2. Synchronize it
Сергей Щукин
[email protected]
Performance comparison
AWR diffs (RAT)
Сергей Щукин
[email protected]
Performance comparison
AWR diffs (RAT)
•
CPU Time: 11000sec vs 3600sec
•
Sinlge block read 13ms vs 0.6ms
•
Multiblock read 6,5ms vs 1ms
•
DB file parallel write 4,5ms vs 20ms - WORSE
•
Log file sync 33ms vs 17ms
•
CF parallel read 15ms vs 4ms
•
CF sequential read 7.4ms vs 1.5ms
Сергей Щукин
[email protected]
Performance comparison
Improved/degraded events
1 week comparison
Сергей Щукин
[email protected]
Performance comparison
Our own observations
1.
DB time/CPU time slightly better
2.
Amount of User IO increased (buffer cache 115GB->15G), but avg time
decreased
3.
Half SQL performs better, another half performs worse
4.
Hard to analyze
1.
DB Caches decreased
2.
HW changed
3.
SW changed (plans)
4.
Exadata features hard to use (Smart Scan requires full scans)
5.
Not all the databases were migrated
Сергей Щукин
[email protected]
Performance comparison
Redo writes to SSD
Exadata Smart Flash Log
•
Version 11.2.2.4 at the cell level
•
Version 11.2.0.3 at the DB level
(when it comes out) or 11.2.0.2 BP11
•
Enabled by default
Сергей Щукин
[email protected]
Performance comparison
HCC for historical DB
•
Good for Historical data, that doesn’t change
•
Requires direct inserts
•
Doesn’t require additional license on Exadata
•
Decompression on Storage server (Offloading)
•
Our example gave 8.7 times compression (compress for archive high)
•
Can be estimated by DBMS_COMPRESSION.GET_COMPRESSION_RATIO
Сергей Щукин
[email protected]
Issues afterwards
Data corruption on Standby
Tue Nov 01 16:33:41 2011
Errors in file
/opt/orabase/diag/rdbms/reports/nlrcs/trace/nlrcs_mrp0_31928.trc
(incident=44233):
ORA-00600: internal error code, arguments: [3020], [8], [1938230],
[35492662], [], [], [], [], [], [], [], []
ORA-10567: Redo is inconsistent with data block (file# 8, block# 1938230,
file offset is 3644022784 bytes)
ORA-10564: tablespace DATA_TS
ORA-01110: data file 8: '+DATA/reports/datafile/data_ts.270.740684989'
ORA-10561: block type 'TRANSACTION MANAGED DATA BLOCK', data object# 113755
•
SR with Severity 1 status!
•
No root causes within 3 months!!
Сергей Щукин
[email protected]
Issues afterwards
Bug in statistic’s gathering
•
•
Bug 12865902 NOWAIT lock requests could hang (like Parallel Queries may hang "enq:
TS - contention") in RAC
Fixed in 11.2.0.2 BP13
Сергей Щукин
[email protected]
Q/A

similar documents