Vous êtes sur la page 1sur 26

<Insert Picture Here>

Solaris pour la base de donns Oracle


Alain Chreau
Oracle Solution Center
<Insert Picture Here>
Agenda

Compilateurs

Mmoire pour la SGA

Paralllisme

RAC

Flash Cache
Compilateurs

La compilation d'un code et le choix des options de


compilations sont importants sur l'efficacit du
programme gnr

L'influence du compilateur est galement importante


Le compilateur C est galement optimis pour
amliorer l'efficacit du code gnr pour la !ase de
donnes Oracle

La distri!ution Oracle est uni"ue pour Solaris Sparc


et pour Solaris x#$ et n'utilise pas les optimisations
dpendante du t%pe de CP&
Allocations mmoire pour la SGA

'SM ( 'ntimate Shared Memor%


Partage de la ta!le d'indirection entre adresse mmoire du
processus et mmoire ph%si"ue du ser)er *Shared MM&+
Segment de mmoire !lo"u en mmoire ph%si"ue
Simplifie la gestion *pagination, li!ration+
-ou.ours disponi!le immdiatement
Gestion de pages de diffrentes taille et construit la SGA
a)ec les plus grandes pages mmoires disponi!les

Param/tres s%st/mes pour les 'PC

Simplification a)ec Solaris 01 et pro.ets pour )iter les re!oots

2aleurs par dfaut sou)ent suffisante


Allocations mmoire pour la SGA
Large
Virtual Memor
can be s!apped
Large mmoire centrale et cac"es

Le #$ !its permet aux processus d'adresser une SGA


de plus de $G3

Les )olumes des !ases de donnes croissent


normment

Les ser)eurs ont des tailles mmoires de plus en plus


importantes *$-3 4 M5111+
6e tr/s grande SGA sont possi!les
Flux de donnes mmoire 7 CP& dimensionns

Mmoire est utilise en cache files%stem


8)ite des lectures dis"ues *lecture anticipe, cache+
'nformation cache diffrente
Stratgies de gestion de cache diffrentes
<Insert Picture Here>
Agenda

Compilateurs

Mmoire pour la SGA

Paralllisme

RAC

Flash Cache
Paralllisme

CP& multi4c9urs multi threads

:om!re d'unit de calcul dans un ser)eur explose

&n CP& de ser)eur en ;100 ( < = 0;< threads


Ser)eurs de < = >0; threads *M5111 7 -?4$+

Solaris con@u pour les ser)eurs multi CP&

Solaris exploite la puissance des threads


Paralllisme applicatif ncessaire pour exploiter cette puissance
&n thread de processus s'excute sur un thread de CP&

Conce)oir parall/le
Paralllisme

Applications utilisent le paralllisme du ser)eur


Multi4processus indpendants A Multi sessions
Processus Multi4threads ( Ba)a
Mixte des approches ( Apache
Multi4processus et s%nchronisation ( Oracle parallel "uer%

Ser)eurs dsormais :on &niform Memor% Access ( :&MA


Croissances des ser)eurs et des flux imposent des sCitchs

Solaris optimise la localisation d'excution du thread de


processus sur les threads de CP&
Optimisation par rapport = la derni/re excution *registres+
Optimisation par rapport = la localisation de la mmoire utilise
Optimisation carte 'O, interrupt, process
Ser#eur parall$le %uilibr

Parall/le CP& 7 Mmoire 7 'O


Flux mmoire, 'O dirigs par le nom!re de CP&
'O rparties en
multi4!us
Rseaux 01G!
8thernet
Ser#eur parall$le %uilibr

Paralllisme CP&
-hread process 7 -hread de CP&
Paralllisme et lments s%uentiels

Les 'DO sont utilisent des canaux s"uentiels


&n port fi!re opti"ue met s"uentiellement
8thernet est s"uentiel par canal

Les lments s"uentiels impli"uent la s%nchronisation


des threads sur des portions de codes

8)olutions de Solaris
Multiplication, nommage et multiples t%pes de )errous *locEs+
Mutex *attente passi)e+, Read4Crite locEs, Memor% page locEs
A.ustement des portions criti"ues
Smaphores utilisent les mutex
'nterface des mutex ou)ertes aux applications
utilise par les latchs dans la !ase de donnes Oracle
Paralllisme dans la base Oracle

Parallel ser)er
Re"uFte lourde, fr"uent en dcisionnel
6e multiple processus pour raliser une tGche complexe
Huer% sla)es I ; x nom!re de threads de CP& du ser)eur
01gR; ( Paralllisme dfini au ni)eau des ta!les
00gR; ( Le mode Automati"ue fonctionne mieux
-aille de message par dfaut est trop petite, utiliser 0#E (
parallelJexecutionJmessageJsiKe I 0#?<$
Calcul des statisti"ues des ta!les et index
01gR; SHLL 63MSJS-A-SGA-M8RJSCM8MAJS-A-S
*ON::AM8IL'scott',8S-'MA-8JP8RC8:-ILO;,68GR88IL&'+P

00gR; ( paralllisme par dfaut est correct


Cration, Re!uild d'index

Create index a!cJidx on a!c*c0+ parallel (P


Paralllisme dans la base Oracle

6atapump *expdp et impdp+


expdp s%stemDmanager director%Im%Jdir fullIn schemasIgc!c
dumpfileIexpQudmp logfileIexpdplog parallelI)*

RMA: utiliser en mode multiple canaux

63 Criters, par dfaut dmarre un d! Criter par ensem!le


de mmoire et processeurs *:uma+
Sur certains !ases tr/s acti)es, il arri)e "ue l'on doi)ent
augmenter le nom!re de 63 Criters

Acti)er le :uma par le param/tre *spfile initora+


Support !ien "ue ce soit un param/tre cach
6epuis la 00;10( Jena!leJ:&MAJsupportI-R&8
A)ant( Jena!leJ:&MAJoptimiKationI-R&8
La SGA est alors dcoupe en fragment 'SM cohrent a)ec le
nom!re d'lments :uma
Paralllisme + Multi ,ase - Ser#eur partag

Con@u pour des machines a%ant des partitions :uma de


mFme taille
Construire les domaines de ser)eurs M a)ec "ue des lmentss
de mFme taille, sinon dsacti)er les optimisations :uma

-out est con@u pour une seule !ase tr/s importante sur
un gros ser)eur
Lors de consolidation de nom!reuses !ases sur un seul ser)eur,
penser = limiter le paralllisme de cha"ue !ase, ou = utiliser
des pools
cpuJcount est initialis au nom!re de threads du ser)eur, du pool
d'excution, le !aisser en cas de consolidation
pour les ser)eurs -, on utilise sou)ent cpuJcount I ; x n! cores
<Insert Picture Here>
Agenda

Compilateurs

Mmoire pour la SGA

Paralllisme

RAC

Flash Cache
.AC - Paralllisme multi/ser#eurs

RAC est un paralllisme multi4ser)eurs


S%nchronisation entre les instances
6LM *premi/res )ersions de RAC+ implmentes par un tra)ail
con.oint des ingnieries Sun et Oracle
Remote shared memor% ( con@u initialement sur Sun Fire LinE

Complmentarit SunCluster 7 RAC


'ntgration SunCluster 7 RAC, primiti)es s%st/me permettant la
communication des instances = tra)ers SunCluster et une
forte intgration entre CRS et SunCluster
Adaptation du files%stem HFS dans SunCluster pour RAC
Agent SunCluster pour RAC
'nterconnect des noeuds du cluster en "uili!rage de charge sur
tous les liens *clpri)net+ et ou)ert aux applications dont RAC
.AC - Paralllisme multi/ser#eurs

RAC utilise tr/s fortement l'inter4connect du cluster


Amlioration de l'inter4connect a)ec gestion de priorit pour les
messages de contrRle interne des clusters *SunCluster comme
Oracle CRS+
Amlioration &6P

Bum!o frames sur l'inter4connect


augmenter le d!it et transporter un !locE Oracle sans dcoupe au
ni)eau 8thernet
-r/s utile sur les liens 01 G! 8thernet
Penser = augmenter le nom!re de processus LMS

'ntgration de l''nfini 3and d'origine MPC


'Po'3 prise en compte du protocole 'P sur les interfaces infini !and
&tilis dans les machines 8xadata
.AC - Gestion des 0is%ues

6is"ues partags par toutes les instances


Cache files%stem impossi!le, Force directio O!ligatoire, le
files%stem utilisa!le en attachement direct est HFS
RaC de)ices ( :e sera plus support
ASM est la solution prconise en RAC

Files%stem partag par rseau 7 'petites' instances


:FS forte amliorations de performances,
d:FS et modifications des options de montages pour
amliorer les flux de la !ase de donnes
Options de montage minimales imposes par Oracle
:FS sur SFS dans les storage appliance *ST111+
<Insert Picture Here>
Agenda

Compilateurs

Mmoire pour la SGA

Paralllisme

RAC

Flash Cache
Carte Mmoire 1las" 1'*

Capacit 5# G3 en $ domaines

Optimis en criture pour usage en


cache, 3ase de donnes ou SFS

011 111 'OPS 7 $U, lecture alatoire

<T 111 'OPS 4 $U, criture alatoire

0,0 G3Ds de d!it max

Ser)ice time V 1,> ms

Performance sensi!les =
l'alignement de 'O

6is"ue classi"ue (
?11 'OPS alatoire
Ser)ice time V T ms
2sage de mmoire 1las"

StocEage
2olume sta!le tr/s sollicit
-emporaire de !atch 7 8-L

Cache SFS ST111


6%nami"ue
Granularit au files%stem *Secondar% cache+

Oracle 6ata!ase Smart Flash Cache


*00gR;+
6%nami"ue
Granularit au segment *-a!le, 'ndex+
Demand Supply
IOPS
MB/Sec
milliseconds
C
A
C
M
8
Mmoire 1las" tr$s e33icace
sur application en attente IO

Chauffe du cache

6ures di)iss par >P sur ce cas


Solaris - ,ase Oracle + Le bon couple

Solaris est d.= optimis pour la !ase de donnes Oracle

Les ingnieries Oracle !ase de donnes, Solaris et


matrielle continuent = tra)ailler ensem!le
O!.ectifs (

Faire !nficier des inno)ations, Wout4of4the4


!oxY

2ous permettre de tirer le maximum de )os


!ases de donnes Oracle sur Oracle

&ne inno)ation continue regardeK les annonces


dZOracle Open Norld

Huel"ues mots cls ( -$, Solaris 00 [ SG36 Oracle