Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026

đŸŸ„ Oracle Exadata – Architecture, Performance & Exploitation

ThĂ©matique complĂšte “terrain” : panorama → architecture → Smart Scan → RAC/ASM → perf → monitoring → HA → sĂ©curitĂ© → patching → run quotidien. Objectif : une base IDEO-Lab lisible, actionnable, et rĂ©utilisable en prod.

0

Introduction & Philosophie

Pourquoi Exadata existe, mythes, ROI rĂ©el (Smart Scan / IORM / Flash / rĂ©seau), et quand ne pas l’utiliser.

VisionROIGo/No-Go
Page
1

Panorama Exadata

Database Machine, modĂšles (on-prem / ExaCS / C@C), gĂ©nĂ©rations, racks (Full → Eighth), HC vs EF.

ModÚlesGénérationsSizing
Page
1.2

Audit Infrastructure

Audit Infrastructure & Configuration Physique.

ModÚlesGénérationsSizing
Page
2

Architecture Globale

Compute nodes, Storage Cells, fabric RoCE/IB, flux SQL→Cells→DB, principes scale-out.

ComputeCellsFabric
Page
3

Réseau (RoCE / InfiniBand)

RDMA, latence, bande passante, interconnect RAC, erreurs qui dĂ©truisent l’offload.

RDMALatencyInterconnect
Page
4

RAC & Services

Pourquoi Exadata = RAC “by design”, services, Ă©quilibrage, Cache Fusion, anti-skew.

RACServicesCache Fusion
Page
5

Smart Scan & Offload

Le cƓur Exadata : offload, bloom filters, Ă©ligibilitĂ© SQL, piĂšges, KPI “efficacitĂ©â€.

Smart ScanOffloadKPI
Page
6

Storage Software, ASM & GI

Cell Server, ASM diskgroups, redundancy, Grid Infrastructure, iDB, gouvernance du stockage.

CellOSASMGI
Page
7

Flash / Cache / Hiérarchie

Smart Flash Cache, Flash Log, PMEM (selon génération), patterns OLTP vs DW.

FlashPMEMLatency
Page
8

Performance & Tuning

SQL éligible, partitionnement, index vs full scan, parallélisme, stats & optimizer Exadata-aware.

SQLPQStats
Page
9

Monitoring & Observabilité

OEM, AWR/ASH, Cell metrics, offload %, interconnect, latences, dashboards “prod”.

AWROEMCells
Page
10

HA, DR & Backup

RAC, Data Guard, RMAN, tests de restauration, RPO/RTO, patterns “critique”.

Data GuardRMANRTO/RPO
Page
11

Sécurité

TDE, accÚs Cell/DB, séparation des rÎles, patch sécurité, bastion, audit & traçabilité.

TDERBACAudit
Page
12

Patching & Maintenance

Rolling patch, exachk, patch bundles, drift, fenĂȘtre de maintenance, validations post-patch.

exachkRollingDrift
Page
13

Exploitation quotidienne (RUN)

Checks quotidiens, incidents types, runbooks, outillage (cellcli/dcli/oem), capacity planning.

RunbookIncidentsCapacity
Page
0) Introduction – Philosophie Exadata
Exadata = “Function Shipping”

Exadata n’est pas “un SAN rapide”. C’est un systĂšme conçu pour exĂ©cuter une partie du travail SQL au plus prĂšs des donnĂ©es : filtres, projections, certaines jointures/agrĂ©gations, compression, cache
 afin de rĂ©duire drastiquement l’I/O et le trafic rĂ©seau.

Slogan terrain :
                            - Architecture classique : on "transporte" des blocs, puis on filtre cÎté DB.
                            - Exadata : on filtre au storage, puis on remonte le résultat utile.
Exadata Hero (placeholder)
Image : à remplacer par ton visuel Exadata (rack / schéma high-level). Chemin proposé : /static/img/oracle/exadata/exadata_hero.png
Diagramme (modĂšle mental)
flowchart LR A[Client / App] -->|SQL| B[Compute Nodes
Oracle DB + RAC] B -->|iDB + RDMA| C[Storage Cells
Exadata Storage Software] C -->|Résultats filtrés
+ colonnes projetées| B B -->|Rows| A classDef b fill:#dbeafe,stroke:#1e3a8a,color:#111; classDef c fill:#fee2e2,stroke:#7f1d1d,color:#111; class B b; class C c;

(Mermaid) Si ta base n’embarque pas Mermaid, garde ce bloc : il sert de placeholder propre.

Mythes fréquents
MytheRéalité terrainAction
“Exadata = plus besoin de tuning”Non. Exadata amplifie les bons patterns, mais les anti-patterns restent pĂ©nalisants.Revoir SQL, stats, partitions, parallĂ©lisme, modĂšle.
“Tout passe en Smart Scan”Non. Certaines requĂȘtes ne sont pas Ă©ligibles (row-by-row, fonctions, conversions, etc.).Mesurer l’offload rĂ©el + corriger les bloqueurs.
“Exadata = stockage”Non. Sans rĂ©seau RDMA sain + cells bien configurĂ©es, tu perds le ROI.Monitorer interconnect + cells + erreurs rĂ©seau.
Sweet spots
  • DW / scans massifs : Smart Scan + HCC = ROI Ă©norme.
  • Consolidation : isolation via IORM/QoS, densitĂ©.
  • OLTP critique : faible latence + flash/log.
  • Workload mixte : batch sans tuer la prod (si IORM bien posĂ©).
Anti-patterns
  • Micro-DB isolĂ©e (50–100 Go) sur Exadata “juste pour le prestige”.
  • Appli 100% row lookup (petits selects unitaires) sans scans utiles.
  • Organisation incapable de patcher/tester/restaurer (risque majeur).
  • Pas d’exploitation des features (0 offload, IORM absent).
RĂšgle simple :
                            Si Smart Scan + IORM + Flash n'apportent rien → Exadata est sous-utilisĂ©e (ROI perdu).
Checklist “10 minutes” (avant de parler tuning)
BlocQuestionSignal rouge
OffloadLe % Smart Scan est-il significatif sur les requĂȘtes “DW-like” ?0% ou “offload inefficace”.
RACLes services rĂ©partissent-ils la charge ?Un nƓud chaud, l’autre froid.
RéseauRDMA / interconnect sans erreurs ?Drops, retransmits, latence anormale.
Patchingexachk OK, patch level cohérent ?Drift, retard de patch important.
RestoreRestore testĂ© (RPO/RTO rĂ©el) ?“Jamais testĂ©â€.
1) Panorama : L'Écosystùme Exadata
Qu'est-ce qu'une "Database Machine" ?

Ce n'est pas "du hardware certifié". C'est une stack logicielle et matérielle co-ingéniée.

  • 1. Database Awareness Le stockage (Cells) "comprend" le SQL Oracle.
  • 2. Scale-Out Architecture Ajout de puissance (Compute) ou de capacitĂ© (Cell) Ă  chaud.
  • 3. Unification MĂȘme machine pour OLTP (Latence flash) et DWH (Throughput).
Évolution Majeure (The RoCE Turning Point)
GénérationInnovation CléImpact
V2 -> X8InfiniBand (40Gb)L'Úre classique. Performant mais réseau propriétaire.
X8M / X9MRoCE v2 + PMEMAbandon InfiniBand. Latence < 19”s. AccÚs mémoire direct.
X10MAMD EPYC + DDR5DensitĂ© cƓurs explosive (190 cores/server). Fin du PMEM (RAM DDR5 suffit).
La Stack Intégrée
graph BT subgraph "Database Server" A[Oracle DB Instance] B[ASM Instance] end subgraph "Network" C{RoCE / RDMA} end subgraph "Storage Server" D[Cell Services - Offload] E[Flash Cache / NVMe] F[Disques Durs - HC] end A -->|iDB Protocol| C C --> D D --> E E --> F style C fill:#b3e5fc,stroke:#333 style D fill:#ffccbc,stroke:#333

Le protocole iDB transporte les intentions SQL, pas juste des blocs.

MĂȘme hardware, modĂšles financiers diffĂ©rents. Que ce soit chez vous ou dans le cloud, c'est le mĂȘme code Exadata.
ModÚleLocationGestion InfraGestion DBCas d'usage idéal
On-PremisesDatacenter ClientClientClientSouveraineté totale, isolation physique stricte, CapEx.
Cloud@Customer (ExaC@C)Datacenter ClientOracleClient"Cloud derriĂšre mon firewall". Latence locale + ModĂšle OpEx (Pay-per-use).
Exadata Cloud Service (ExaCS)OCI Public RegionOracleClientProjets agiles, besoins élastiques, Disaster Recovery dans le cloud.
Autonomous (ADB-D)OCI ou C@COracleAuto + OracleServerless, patching zéro downtime, Dev/Test rapide.
⚠ Point de vigilance C@C / OCI : Dans les modĂšles Cloud, vous n'avez pas d'accĂšs root sur les Storage Cells ni sur les switchs. L'audit infrastructure (vu en Modal 2) est limitĂ© aux APIs fournies par Oracle.
HC vs EF : Le grand dilemme

Le choix se fait Ă  l'achat du rack et conditionne la performance pour 5 ans.

HC (High Capacity)
  • Disques : 12x 18TB HDD + 4x NVMe Flash (Cache).
  • Ratio : Enorme stockage froid, Cache chaud limitĂ©.
  • Usage : DWH massif, Archivage, Consolidation gĂ©nĂ©raliste.
  • Smart Scan : Vital ici pour Ă©viter de lire les HDD.
EF (Extreme Flash)
  • Disques : 100% NVMe Flash. Aucun HDD mĂ©canique.
  • Ratio : IOPS dĂ©mentiels, Latence < 1ms garantie.
  • Usage : OLTP critique, Trading, Applications temps rĂ©el.
  • Smart Scan : Ultra rapide (dĂ©bit de la flash).
Sizing & Elasticité
TailleCompute NodesStorage CellsNote
Base System23Le minimum vital pour la redondance (High Redundancy ASM = 3 copies).
Quarter Rack23Souvent le point de départ historique.
Elastic Expansion+1+1Depuis X8M, on ajoute les serveurs à l'unité. Plus de "Half Rack" figé.
Capacity on Demand (CoD) :
Sur les Compute Nodes, vous pouvez activer moins de cƓurs CPU que le physique (ex: activer 10 cƓurs sur 64) pour limiter le coĂ»t des licences Oracle Database.
2) Architecture Globale : Le "Split-Brain" Intelligent
Séparation des Pouvoirs

Exadata sépare le SQL (Cerveau) du Stockage (Muscle).

CoucheComposants & OSResponsabilités Clés
Compute Nodes
(Database Servers)
Oracle Linux (UEK)
Grid Infra + RDBMS
- Gestion des sessions & Transactions (ACID)
- Parsing SQL & Optimiseur
- N'a PAS de disques de données locaux
Storage Cells
(Exadata Servers)
CellOS (Optimized)
CellSRV Process
- Servir les blocs (I/O classique)
- Exécuter le SQL (Smart Scan)
- Gérer le Flash Cache & IORM
Unified FabricSwitchs RoCE (Ethernet) ou InfiniBand- Zero-Loss Network
- Bande passante massive (100Gb/s par port)
Topologie Physique
Architecture "Spine-Leaf" interne
[DB NODE 1]══╩══[DB NODE 2]
     ║      ║ (RoCE 100Gb)
╔════╩══════╩════╗
║  SWITCH FABRIC ║
╚════╩══╩══╩══╩══╝
     ║  ║  ║  ║
  [CELL][CELL][CELL]...
Note : Les Compute Nodes ne sont jamais connectés directement aux disques. Tout passe par le réseau.
Le Changement de Paradigme : Function Shipping
Protocole iDB

Architecture classique : "Donne-moi le bloc".
Exadata : "Exécute ce prédicat".

Scénario : SELECT * FROM sales WHERE amount > 1000
  1. DB Server : Parse la requĂȘte.
  2. Envoi (iDB) : Envoie le prédicat (> 1000) aux Cells.
  3. Cell Server : Scanne et filtre localement.
  4. Retour : Renvoie uniquement les lignes utiles.

DB Node
Oracle Kernel
"Je veux les ventes > 1000€"
iDB Request (SQL)
Result Set (Lignes)

Cell Node
Smart Scan
Filtre appliqué ici !
(Offload)
Le flux ne transporte pas de blocs inutiles.
Le Secret de la Latence : RDMA
ConceptDescription Technique
Kernel BypassLes données ne passent pas par le noyau OS. L'appli parle direct à la carte réseau.
Zero-CopyCopie directe MĂ©moire Cell ➝ MĂ©moire DB. Pas de buffers OS.
Protocoles- InfiniBand (IB) : Legacy (Jusqu'Ă  X8).
- RoCE v2 : Ethernet standard + RDMA.

Latence I/O (Read)
< 19 ”s
(Vs 500”s sur SAN classique)
ASM : L'Virtualisation du Stockage
Redondance ASM
  • High Redundancy 3 Copies
  • Normal Redundancy 2 Copies

ASM Ă©crit les blocs sur diffĂ©rentes Cells pour garantir la survie des donnĂ©es mĂȘme si un serveur entier brĂ»le.

Hiérarchie Logique
[HDD Physique / NVMe] (Hardware)
  ↳ Cell Disk (LUN Logique CellOS)
    ↳ Grid Disk (Partition prĂ©sentĂ©e)
      ↳ ASM DiskGroup (DATA, RECO)

Le dĂ©coupage logique permet d'isoler les I/O (IORM) entre diffĂ©rentes bases sur le mĂȘme disque.

3) Le SystÚme Nerveux : Réseau & RDMA
Pourquoi le TCP/IP classique tue la performance ?

Sur un réseau 100Gb classique, le CPU passerait 50% de son temps à traiter les interruptions réseau (IRQ) et copier des buffers mémoire.

La solution RDMA (Remote Direct Memory Access) :
Permet à la carte réseau (HCA) d'écrire directement dans la RAM du serveur distant sans réveiller le CPU distant.
CaractéristiqueTCP/IP (Standard)RDMA (Exadata)
Chemin CPULourd (Kernel space -> User space copy)Kernel Bypass (Zero-Copy)
Latence~200”s - 500”s< 20”s (Comme un accÚs mémoire local)
Usage CPUÉlevĂ© (Traitement paquets)Quasi Nul (OffloadĂ© sur la carte)
La Pile Protocolaire
Standard TCP
Application
Sockets
TCP / IP Driver
NIC Driver
Hardware
RDMA (Exadata)
Application
BYPASS OS!
Hardware (HCA)
L'Évolution : De l'InfiniBand au RoCE
Current Standard: 100Gb RoCE
InfiniBand (Legacy) (V2 -> X8)
  • Techno : RĂ©seau propriĂ©taire Lossless.
  • DĂ©bit : QDR (40Gb) -> EDR (100Gb).
  • Topologie : Subnet Manager requis.
  • InconvĂ©nient : CĂąbles et switchs spĂ©cifiques, difficile Ă  intĂ©grer au rĂ©seau d'entreprise.
RoCE v2 (Modern) (X8M -> X10M)
  • Techno : RDMA over Converged Ethernet (UDP).
  • DĂ©bit : 100Gb -> 200Gb+.
  • Standard : Utilise des switchs Ethernet et cĂąblage standard.
  • Secret : Utilise PFC (Priority Flow Control) pour garantir "Zero Packet Loss" sur Ethernet.
PFC (Priority Flow Control) est critique : Si vous connectez un Exadata RoCE à votre réseau core, les switchs en amont DOIVENT supporter et configurer PFC correctement (CoS bits). Sinon, perte de paquets = effondrement des perfs.
Architecture Physique & Redondance
CĂąblage Interne Rack (Spine/Leaf)
[LEAF SWITCH 1] <===ISL===> [LEAF SWITCH 2]
     |    |                    |    |
     |    +--------------------+    |
     |                              |
[DB NODE (Active/Active Bonding)]
   Port 1 (re0) --------> Switch 1
   Port 2 (re1) --------> Switch 2

Active-Active : Les 2 ports 100Gb sont utilisés simultanément (200Gb total).

Réseaux Séparés (Isolation)
  • Client Network Ethernet 10/25Gb
  • Private Network (RoCE/IB) Interconnect + Storage
  • Management (ILOM) 1Gb Ethernet

Le trafic d'application (Client) ne touche jamais le réseau de stockage (Private).

Quand le réseau tousse, la base s'étouffe
SymptÎme OracleCause Réseau PossibleOutil / Commande
Wait: gc cr block 2-way (Cluster)Latence Interconnect élevée, perte paquets.oswatcher (netstat), traceroute
Smart Scan lent ou désactivéLien RoCE "Flapping" ou congestionné.cellcli -e list metriccurrent attributes name, metricvalue where name like '.*I_MB_S.*'
Crash Node (Eviction)Heartbeat réseau manqué > 30s./var/log/messages, CSSD log.
Check InstantanĂ© : # dcli -g cell_group "netstat -s | grep 'packet receive errors'" Ce chiffre doit ĂȘtre Ă  0 ou stable. S'il augmente chaque seconde, appelez le support rĂ©seau.
4) RAC Exadata : Cache Fusion sous Stéroïdes
Philosophie "Shared Everything"

Contrairement aux clusters "Sharding" (oĂč chaque nƓud possĂšde ses donnĂ©es), dans RAC, tous les nƓuds voient toutes les donnĂ©es simultanĂ©ment.

Le challenge : Si le NƓud 1 modifie la ligne "Client A" et que le NƓud 2 veut la lire, il faut se synchroniser Ă  la microseconde prĂšs pour Ă©viter la corruption. C'est le rĂŽle du GCS (Global Cache Service).
  • Grid Infrastructure (GI) Le fondement GĂšre le Clusterware + ASM. DĂ©marre avant la DB.
  • Voting Disks StockĂ©s sur les Cells Les disques "tĂ©moins" qui dĂ©cident qui survit en cas de coupure rĂ©seau.
  • Interconnect RoCE / IB Le canal privĂ© vital pour le "Heartbeat" et les Ă©changes de blocs.
La "Cuisine" RAC

Imaginez une cuisine avec 4 chefs (NƓuds) travaillant sur le mĂȘme plan de travail.

Classique : Le chef A crie au chef B de lui passer le sel.
Exadata : Le chef A tend le bras et prend le sel dans la main du chef B sans mĂȘme lui parler (RDMA).

Cache Fusion : Transférer la RAM, pas le Disque
Latence critique
Instance 1
Dirty Block X
PossĂšde le bloc (Lock Exclusive)
RDMA Transfer
Instance 2
Reçoit Bloc X
Demande le bloc (Select)
Les Wait Events Ă  surveiller (AWR)
Wait EventSignificationAction
gc cr block 2-wayLecture saine via Cache Fusion.Normal si < 1ms.
gc current block busyContention. NƓud 1 tient le verrou, NƓud 2 attend.Tuner l'appli (Hot blocks).
gc lost blocksDANGER. Perte paquets réseau.Vérifier Switchs / Cùbles.
L'impact applicatif : Si votre application fait des UPDATE sur la mĂȘme table depuis tous les nƓuds en mĂȘme temps, Cache Fusion va saturer.
Solution : Partitionner les workloads par Service.
Services : Ne JAMAIS utiliser le service par défaut

Le service par défaut (db_unique_name) ne permet ni HA, ni contrÎle, ni statistiques précises.

Création d'un Service "Gold" (srvctl)
srvctl add service -db PROD \
  -service GOLD_APP \
  -preferred INST1,INST2 \
  -available INST3,INST4 \
  -clbgoal LONG -rlbgoal SERVICE_TIME \
  -failovertype AUTO -commit_outcome TRUE
Concepts Clés
  • Preferred vs Available :
    DĂ©finit sur quels nƓuds le service tourne en temps normal vs en cas de panne.
  • Application Continuity (AC) :
    Rejoue les transactions in-flight en cas de crash d'un nƓud. L'utilisateur ne voit pas l'erreur.
Répartition de charge
Client-Side LB : Le TNSNAMES choisit une IP au hasard.
Server-Side LB : Le Listener redirige vers l'instance la moins chargée (LBA).
Node Eviction (Le crash du nƓud)

Pour protĂ©ger l'intĂ©gritĂ© des donnĂ©es, si un nƓud ne rĂ©pond plus ("Split-Brain"), le cluster doit le tuer (Reboot immĂ©diat).

Le JugeMécanisme
Network HeartbeatChaque seconde, les nƓuds se disent "Je suis vivant" via l'interconnect. Si silence > 30s (misscount) -> Eviction.
Disk HeartbeatChaque nƓud Ă©crit sur le Voting Disk (sur les Cells). Si un nƓud ne peut plus Ă©crire -> Il se suicide.
OĂč chercher la cause ?
  • alert.log (Database) : "IPC Send timeout"
  • /var/log/messages (OS) : ProblĂšmes rĂ©seau ou kernel panic.
  • cssd.log (Grid) : Le journal dĂ©taillĂ© du Clusterware qui explique qui a tuĂ© qui.
5) Smart Scan : Le "Secret Sauce" Exadata
La Condition Sine Qua Non : Direct Path Read
RÚgle d'or : Le Smart Scan ne fonctionne JAMAIS si les données passent par le Buffer Cache (SGA). Il nécessite une lecture asynchrone directe du disque vers la mémoire privée du processus (PGA).

Le processus :

  1. L'optimiseur choisit un Full Table Scan (ou Fast Full Index Scan).
  2. Oracle décide de bypasser le cache (car table trop grosse).
  3. Il envoie un paquet iDB contenant le SQL (Prédicats + Colonnes).
  4. La Cellule lit, filtre, et renvoie un Result Set compacté.

Fonction OffloadéeGain
Predicate FilteringSeules les lignes WHERE zone='EU' remontent.
Column ProjectionSeules les colonnes SELECT id, nom remontent (pas les 200 autres).
Encryption DecryptLe déchiffrement TDE se fait sur le CPU de la Cell (gratuit pour la DB).
Comparatif Flux I/O
Standard SAN
DB Server CPU
Trash Data
Good Data
100% Data Transfer
Storage
Exadata Smart Scan
DB Server CPU
Good Data Only
~5% Data Transfer
Exadata Cell (Filter Here)
Les Accélérateurs Invisibles
1. Storage Indexes (SI)

Une structure en mémoire sur la Cellule (pas sur disque !) qui maintient les valeurs Min/Max pour chaque 1MB de données.

  • But : I/O Avoidance. Si je cherche ID=50 et que le SI dit "Bloc A : Min 100, Max 200", on ne lit mĂȘme pas le bloc.
  • Maintenance : Automatique et transparente.
  • Note : Redoutable sur les colonnes de dates ou sĂ©quences.
2. Bloom Filters

Transforme une Jointure (Join) en Filtre (Scan).

Hash Join : T1 (Petit) JOIN T2 (Gros)
1. DB crée un vecteur binaire (Bloom) des clés de T1.
2. DB envoie ce vecteur aux Cells.
3. Cells scannent T2 et éliminent tout ce qui ne matche pas le vecteur.
Résultat : On ne remonte pas les lignes de T2 qui ne se joindront pas.
Autres formats supportés : JSON, XML, LOBs (SecureFiles) bénéficient aussi de l'offloading (parsing JSON fait sur la Cell !).
Prouver l'efficacité (ou l'inefficacité)
NiveauIndicateur CléInterprétation
Session (V$)cell smart table scanWait event qui confirme l'activité Smart Scan.
SQL MonitorCol IO_INTERCONNECT_BYTES vs IO_CELL_OFFLOAD_ELIGIBLE_BYTESLe ratio entre les deux donne le % d'économie.
Global (AWR)"Cell Efficiency Ratio"Si > 10, c'est excellent (10x moins de trafic).
Le Calcul de l'Efficacité
95%
Gain Typique DWH
Formule :
(Eligible_Bytes - Return_Bytes) / Eligible_Bytes * 100

Exemple : J'ai scanné 1TB sur disque (Eligible), j'ai renvoyé 50GB au réseau (Return).
Gain = (1000 - 50) / 1000 = 95% Offload.
6) Storage Software, ASM & Gouvernance
Anatomie d'une Cellule

Ce n'est pas un simple "Linux". C'est un OS durci avec 3 processus clés qui gÚrent l'intelligence.

ProcessusRĂŽle Critique
CELLSRVLe Cerveau. Multithreaded server.
- Traite les requĂȘtes iDB (Smart Scan).
- GÚre IORM (Priorité I/O).
- GĂšre le Flash Cache.
MSManagement Server (Java).
- Interface de gestion (CellCLI).
- Envoie les alertes (SNMP/SMTP) en cas de panne disque.
RSRestart Server.
- "Watchdog" qui surveille CELLSRV et MS.
- Les redémarre s'ils plantent (Haute Dispo locale).
Architecture Logicielle
Network (RoCE/IB)
CELLSRV
(I/O & SQL)
MS (Admin)
RS (Watchdog)
OS Kernel (Linux) + Drivers
Hardware (Flash / HDD)
De l'Hardware à la Database : La Poupée Russe
Redundancy: HIGH (3x) / NORMAL (2x)
Concept Grid Disk : Exadata découpe physiquement les disques. Les premiers secteurs (les plus rapides sur HDD) sont souvent réservés au groupe DATA, le reste pour RECO.
  • DATA (DG) : Contient les datafiles, redo logs actifs, OCR, Voting Disk.
  • RECO (DG) : Contient la Flashback Area, Archived Logs, Backups.
  • SPARSE (Optionnel) : Pour les clones Exadata Snapshots.
Flux d'Abstraction
ASM DISKGROUP (Logical)
Visible par la DB (ex: +DATA)
Grid Disk 1
Grid Disk 2
Grid Disk N...
Cell Disk (LUN)
Cell Disk (LUN)
Cell Disk (LUN)
HARDWARE (Physical)
NVMe Flash / HDD 18TB
IORM : Le Policier du Stockage

Sans IORM, une base de développement qui lance un gros rapport peut saturer les disques et tuer la Prod. IORM gÚre la QoS au niveau du stockage.

Les 2 Modes
  1. Inter-Database : Répartition entre plusieurs bases (ex: PROD=70%, DEV=30%).
  2. Intra-Database : Répartition interne (ex: Utilisateur batch vs Utilisateur interactif) via DBRM.
Visualisation Allocation I/O
PROD (60%)
UAT (30%)
DEV (10%)

Si PROD n'utilise pas ses 60%, UAT et DEV peuvent récupérer le "mou". DÚs que PROD en a besoin, IORM throttle les autres immédiatement.

Objectif "Low Latency" : Par défaut, Exadata privilégie la latence (OLTP). Pour les bases purement Batch, on peut changer l'objectif en "Auto" ou "Balanced".
L'Arsenal de l'Admin : CellCLI & DCLI
ActionCommande (Exemple)Scope
Vérifier disques physiqueslist physicaldisk attributes name,statusHardware
Vérifier Flash Cachelist flashcache detailPerformance
Créer Grid Diskscreate griddisk all harddisk prefix=DATA, size=500GConfiguration
Configurer IORMalter iormplan objective=autoGouvernance
Exécuter sur TOUT le rackdcli -g cell_group "cellcli -e list celldisk"Distribué
# Exemple : Voir l'économie Smart Scan
CellCLI> list metriccurrent attributes name, metricvalue
         where name like '.*IO_SAVED_W.*'
7) La Hiérarchie Mémoire : Flash, Log & PMEM
Le Principe du Tiering

Exadata déplace automatiquement les données chaudes vers les médias les plus rapides. C'est transparent pour l'application.

"Heat Map" Interne : Le logiciel CellSRV analyse les fréquences d'accÚs. Un bloc lu fréquemment est promu en Flash Cache. Un bloc froid reste sur HDD (ModÚle High Capacity).
RAM (Compute)
< 1 ”s
PMEM (Data Accelerator)
< 19 ”s (RDMA)
NVMe Flash Cache
~100 ”s
HDD (High Capacity)
~8 ms (Mécanique)
Smart Flash Cache : Bien plus qu'un cache disque
Mode: WriteBack (Recommandé)
WriteThrough vs WriteBack
  • WriteThrough (Mode Safe) : On Ă©crit sur HDD, puis on copie en Flash pour les lectures futures. Les Ă©critures sont lentes (vitesse HDD).
  • WriteBack (Mode Turbo) : On Ă©crit directement en Flash. La donnĂ©e est considĂ©rĂ©e comme "sauvegardĂ©e". Elle est descendue sur HDD plus tard (Lazy write).
    Boost massif des IOPS en écriture !
Columnar Flash Cache

Pour les données compressées HCC, Exadata reformate automatiquement les données en pur format colonnaire lorsqu'elles entrent dans le Flash Cache.
Résultat : Les Scans analytiques en Flash sont fulgurants.

Commande Check : cellcli -e list flashcache detail
Vérifiez la ligne effectiveCacheSize vs size. Si la différence est grande, vous avez des secteurs défectueux ou réservés.
Smart Flash Log : Sauver le COMMIT

Le goulot d'étranglement n°1 des bases OLTP est le log file sync (attente de l'écriture du Redo Log sur disque pour valider le Commit).

La Course à l'Écriture (Race Condition)
LGWR (DB) Envoie le Redo Block
Flash Log (Gagnant !)
HDD Disk (Trop lent)
Le premier qui finit envoie l'ACK. Exadata annule l'autre I/O.
Gain : Élimine les pics de latence (Outliers). Si le disque mĂ©canique est occupĂ©, le Flash prend le relais instantanĂ©ment.
  • Taille : Petit (512MB par Cell). C'est un buffer circulaire temporaire.
  • Hardware : Utilise une zone rĂ©servĂ©e haute endurance de la carte Flash.
Persistent Memory (PMEM) : Le chaĂźnon manquant
Specifique X8M / X9M

Sur les générations X8M et X9M, Oracle a ajouté Intel Optane DC PMEM (1.5TB par Cell). Ce n'est pas de la RAM (elle garde les données OFF) mais c'est aussi rapide.

Fonctionnalité PMEMRÎle
PMEM Cache (Data Accelerator)Cache de lecture ultra-rapide. RDMA lit directement ici sans toucher au CPU de la Cell.
PMEM Log (Commit Accelerator)Écriture des Redo Logs 8x plus rapide que la Flash.
Note X10M (2023+)

Sur la Génération X10M, PMEM a été supprimé.
Pourquoi ? Les nouveaux CPU AMD EPYC + RAM DDR5 + RoCE optimisé sont devenus si rapides que le PMEM n'apportait plus de gain significatif.
Exadata Smart Exadata RDMA Memory (XRM) utilise désormais la RAM standard pour ces fonctions.

8) Tuning : Oubliez vos vieux réflexes !
Le "Tipping Point" a changé

Sur une base classique, si vous lisez > 5% d'une table, l'index devient plus lent que le Full Scan. Sur Exadata, grĂące au Smart Scan, ce seuil est beaucoup plus bas (parfois 0.1% !).

Ménage des Index : Sur Exadata, on supprime souvent 50% des index (surtout les index composites ou peu sélectifs). Ils ralentissent les DML et ne battent pas le Smart Scan.
ScénarioStratégie GagnantePourquoi ?
Single Row Lookup
WHERE ID = 123
INDEX (Unique)Smart Scan ne battra jamais l'accĂšs direct RowID pour 1 ligne.
Reporting / Analytics
WHERE DATE > '2023...'
FULL SCAN (Smart)Le débit (GB/s) écrase la latence des "Random Reads" d'index.
Low Cardinality
WHERE STATUS = 'CLOSED'
FULL SCAN (Smart)Les Storage Indexes filtrent ça gratuitement.
Graphique de Coût (Conceptual)
Coût Index
Coût Smart Scan
Exadata Point
Volume de données sélectionné (%)
Parallel Query : La puissance brute
Auto DOP
Le Risque

Si vous laissez PARALLEL_DEGREE_POLICY = MANUAL et que les dĂ©veloppeurs mettent des hints /*+ PARALLEL(64) */, 3 requĂȘtes suffisent Ă  mettre le serveur Ă  genoux (CPU Starvation).

Best Practices Exadata
  • Activer Auto DOP : PARALLEL_DEGREE_POLICY = AUTO. Laisse Oracle calculer le degrĂ© idĂ©al selon la taille de la table.
  • Parallel Statement Queuing : Si le serveur est chargĂ©, la requĂȘte attend son tour (FIFO) au lieu de tuer le CPU.
Flux Parallel Query + Direct Path
PX Coord
Slave 1
Slave 2
Slave 3
Direct Path Read (Cells)

Chaque Slave Process (PX) ouvre sa propre connexion directe aux Cells. Le débit est multiplié par le nombre de Slaves.

Informer l'Optimiseur (CBO)

Si l'optimiseur croit qu'il tourne sur des disques lents, il choisira toujours des index. Il faut lui dire "Je suis sur Exadata".

ActionCommande / ParamĂštreEffet
System Statsdbms_stats.gather_system_stats('EXADATA')Calibre la vitesse I/O (MBRC) et CPU. Indispensable post-installation.
Optimizer Index CostOPTIMIZER_INDEX_COST_ADJSur Exadata, on le laisse souvent par défaut (100) ou on l'augmente pour favoriser les Scans.
Real-Time Stats(Auto en 19c)Évite les mauvais plans sur les tables qui changent brutalement de volume (Bulk Insert).
Astuce : Utilisez DBMS_STATS.GATHER_TABLE_STATS avec METHOD_OPT=>'FOR ALL COLUMNS SIZE 1' (pas d'histogrammes) par dĂ©faut, et ajoutez des histogrammes uniquement lĂ  oĂč c'est prouvĂ© nĂ©cessaire (Skewed data). Les histogrammes coĂ»tent cher au parsing.
Zone Maps & Partitionnement

L'Exadata adore les données physiquement triées.

Clustering Factor

Si vous chargez vos données triées par date (ou par ID), les Storage Indexes deviennent ultra-efficaces (Min/Max disjoints).
Commande : ALTER TABLE ... ADD CLUSTERING BY LINEAR ORDER (col)... (Attribute Clustering).

Partition Pruning

Le Partitionnement reste vital. Exadata scannera une partition de 10GB en < 1s.
Ne partitionnez pas trop fin (évitez les millions de partitions de 1MB). Visez des partitions de quelques GB.

9) Monitoring : Piloter la BĂȘte
Les 3 Piliers de l'Observabilité Exadata

Ne regardez pas que le CPU DB. Regardez si le stockage travaille pour vous.

DomaineMétrique CléSeuil d'Alerte
1. OffloadCell Efficiency Ratio< 2x (Sur Data Warehouse). Signifie que vous rapatriez trop de données brutes.
2. Latence I/OCell Flash Cache Read Latency> 1ms (En moyenne). Indique saturation ou usure Flash.
3. Santé HwPredictive Failure (Disques)DÚs apparition. Remplacement immédiat requis.
La Métrique "North Star"
95%
I/O Offloaded

Objectif : > 80% pour DWH/Analytics

Lire un AWR "Exadata Style"
Section: Exadata Statistics
Top 3 Sections à vérifier
  1. Exadata Smart Scan Efficiency :
    Regardez "Flash Cache Hit %" (Doit ĂȘtre proche de 100% pour OLTP).
  2. Top IO Reasons :
    Est-ce du Smart Scan ou du Single Block Read (Index) ?
  3. Exadata Flash Log :
    Vérifiez "Writes prevented from going to disk". Si bas, le Flash Log ne sert à rien.
SQL Monitor (Active Report)

C'est l'outil ultime pour debugger une requĂȘte lente.

  • Cherchez la barre bleue "Cell Offload".
  • Si la barre est 100% verte (CPU DB), le Smart Scan n'a pas fonctionnĂ© !
10%
90% Saved
Mode Hacker : CellCLI en temps réel

Quand OEM est trop lent ou moyenné, allez à la source sur les Storage Cells.

root@cel01 ~ # cellcli
# 1. Voir la charge I/O actuelle (IOPS/MBPS)
CellCLI> list metriccurrent attributes name, metricvalue
         where name like 'I_.*_S'

# 2. Voir si le Flash Cache sature
CellCLI> list metriccurrent attributes name, metricvalue
         where name like 'FC_BY_USED'

# 3. Voir les erreurs Hardware
CellCLI> list alerthistory where severity='critical'
Astuce DCLI : Utilisez dcli -g cell_group "..." pour interroger les 14 cellules d'un coup et grepper le résultat. Indispensable pour voir si UNE cellule est plus lente que les autres (Skew).
Ce que votre Chef veut voir (OEM Dashboard)
Zone 1 : Santé Physique

Cells Up
14/14

Disks
OK

Temp
24°C
Zone 2 : Performance ROI
25 GB/s
Débit Scan
92%
Flash Hit
0.5ms
Latence
Le rapport mensuel (Capacity Planning)
  • Projection remplissage ASM (DATA) Quand acheter une extension ?
  • Top Databases par I/O Qui consomme la machine ? (Facturation interne)
10) HA, DR & Backup : La Forteresse MAA
Survivre Ă  la panne d'un composant

Exadata est conçu pour qu'aucun composant unique (SPOF) ne puisse arrĂȘter le service. Tout est redondant.

PanneMécanisme de SurvieImpact Utilisateur
Perte 1 Compute NodeRAC (Cache Fusion)
Les connexions basculent (TAF/FAN) sur les nƓuds survivants.
Micro-gel (sec) pour le replay des transactions (Application Continuity).
Perte 1 Storage CellASM Redundancy
ASM redirige les lectures vers les miroirs sur les autres Cells.
Transparent (légÚre baisse perf I/O le temps du rebalance).
Perte 1 Switch RoCEActive-Active Bonding
Le trafic passe instantanément sur le 2Úme switch.
Aucun (Zéro interruption).
Le Concept "Instant Failure Detection"
Différence Clé :
Sur un SAN classique, le serveur attend le timeout TCP (souvent 30s-60s) pour déclarer le disque mort.
Sur Exadata, la Cellule mourante envoie un message "Je meurs !" (si possible) ou le switch notifie la coupure en < 1s.
Cell 1 OK
Cell 2 DEAD
Cell 3 OK
ASM Rebalance démarre immédiatement
Data Guard : L'Assurance Vie
Active Data Guard (ADG) recommandé
Modes de Protection
  • Max Protection (SYNC)
    ZĂ©ro perte de donnĂ©es (RPO=0). Si la Standby tombe, la Prod s'arrĂȘte.
    Risqué si réseau instable.
  • Max Availability (SYNC)
    RPO=0 tant que possible. Si Standby tombe, la Prod continue (devient Async).
  • Max Performance (ASYNC)
    Standard du marché. RPO ~quelques secondes. Aucun impact perf Prod.
Architecture Active Data Guard

PRIMARY
Read/Write
Redo Stream

STANDBY
Read Only

Pourquoi "Active" ?
La Standby est ouverte en lecture pendant qu'elle applique les logs. Idéal pour décharger les rapports lourds (Offload) de la Prod.

Backup : RMAN sur Stéroïdes
TechnologieAvantage Exadata
Incremental BackupBlock Change Tracking (BCT) :
Le fichier BCT est stocké sur Flash. RMAN ne lit QUE les blocs modifiés. Backup incrémental ultra-rapide.
ValidationHARD (Hardware Assisted Resilient Data) :
La Cellule vérifie le checksum des blocs avant de les écrire sur disque. Corruption logique impossible.
ZDLRA (Recovery Appliance)"Le Backup infini". On envoie juste le Redo en temps réel. RPO sub-seconde. Restauration virtuelle Full instantanée.
Le test qui sauve : RMAN> RESTORE DATABASE VALIDATE; Avoir un backup c'est bien. Savoir qu'il est lisible, c'est mieux. Cette commande lit tout le backup sans rien Ă©crire. À planifier mensuellement.
Quelle médaille pour votre architecture ?

Oracle classifie la résilience selon 4 niveaux MAA (Maximum Availability Architecture).

  • BRONZE Single Instance / RAC One Node
    Dev/Test. Redémarrage requis en cas de crash.
  • SILVER RAC + Application Continuity
    Standard Prod. TolĂ©rance panne nƓud. RPO=0 localement. Pas de DR.
  • GOLD Silver + Data Guard (Async)
    Protection contre désastre site (Incendie/Inondation). RPO > 0.
  • PLATINUM Gold + GoldenGate / Active DG Sync
    ZĂ©ro downtime, ZĂ©ro perte de donnĂ©es, maintenance rolling sans arrĂȘt. Le Graal bancaire.
11) Sécurité : La Forteresse Numérique
Architecture Sécurisée par Défaut

Exadata applique le principe de moindre privilÚge à chaque couche matérielle et logicielle.

CoucheMesure de Sécurité Clé
Réseau PhysiqueIsolation RoCE/IB :
Le réseau de stockage est 100% privé. Aucune adresse IP routable depuis l'extérieur. Impossible d'attaquer les disques directement.
OS (Linux)Minimal Image :
Oracle Linux est livré durci (services inutiles désactivés). AccÚs SSH restreint.
Stockage (Cells)ASM Scoped Security :
Seuls les serveurs DB authentifiés (via clés InfiniBand/RoCE) peuvent monter les disques ASM.
L'Oignon de Sécurité
Database (Users/Roles)
OS (Users/Groups)
Network (Isolation)
AIL (Authorized IP List) : Sur Exadata Cloud@Customer, vous devez déclarer explicitement les IPs autorisées à se connecter via la console OCI. Tout le reste est bloqué.
TDE (Transparent Data Encryption) : "Gratuit" sur Exadata
Hardware Accelerated

Sur un serveur standard, chiffrer la base consomme 10-20% de CPU pour déchiffrer chaque bloc lu.
Sur Exadata, ce travail est déporté (Offloadé) sur les Storage Cells.

Le Flux Sécurisé
  1. Donnée stockée chiffrée sur disque (AES-256).
  2. Smart Scan lit le bloc chiffré.
  3. Cell CPU déchiffre le bloc en mémoire.
  4. Cell CPU applique le filtre SQL (Where clause).
  5. Seules les lignes résultantes (en clair ou chiffrées selon le besoin) remontent.
Comparatif Impact CPU DB
Standard
CPU Surchargé
Exadata
CPU DB Libre

Le déchiffrement est géré par les instructions AES-NI des processeurs Cell.

Séparation des Devoirs (Separation of Duties)
RÎleUtilisateur OSPérimÚtre
Compute Adminroot (Sur Compute)Patching OS, Réseau client, Sysctl.
Database Adminoracle / gridCréation DB, Tuning, Backup, Data Guard.
Cell Admincelladmin / root (Cell)Gestion disques physiques, IORM, Flash Cache.
Cloud vs On-Prem :
En mode Cloud@Customer ou OCI, vous n'avez PAS d'accĂšs root aux Storage Cells, ni aux Switchs. La gestion est assurĂ©e par Oracle (Ops Automation). Vous ĂȘtes Admin de la DB, pas du Hardware.
Prouver la conformité
  • ExaChk Security Profile :
    L'outil ExaChk contient un profil STIG / CIS. Lancez-le pour voir les écarts de sécurité.
    ./exachk -profile security
  • Unified Auditing :
    Activé par défaut en 19c+. Capture les logins, les DDL et les accÚs sensibles.
  • Audit Vault (AVDF) :
    Recommandé pour centraliser les logs d'audit hors de l'Exadata (inviolabilité des preuves).
Patching Trimestriel

Oracle publie les QFSD (Quarterly Full Stack Download) chaque trimestre. Inclut : Firmware, OS, Grid, DB.
Retard > 6 mois = Risque critique.

12) Patching & Maintenance : L'Art du "Zero Downtime"
QFSD : Quarterly Full Stack Download
Une seule source de vérité

Sur Exadata, on ne patche pas "un bout". On applique une image trimestrielle validée par Oracle qui contient tout.

ComposantImpact PatchingFréquence
Storage CellsReboot Cellule (Transparent si Redundancy OK).Trimestriel
Switchs (IB/RoCE)Reboot Switch (Transparent via Bonding).Trimestriel (souvent sauté si pas de CVE).
Compute Nodes (DomU)Reboot Serveur (Transparent via RAC).Mensuel/Trimestriel (OS + GI + DB).
Firmware DisquesInclus dans le patch Cell.Automatique au reboot Cell.
Le Cycle de Vie Idéal
1. Download QFSD (M-1)
2. Test sur Dev/Uat (M)
3. Prod : Cells & Switchs
4. Prod : Compute (DB)

Toujours commencer par le Stockage/Réseau avant la Base.

Rolling Patching : La danse des nƓuds

L'objectif : L'application ne doit jamais voir une coupure de service, juste une baisse de capacité temporaire.

Node 1
PATCHING...
Services déplacés

Service Relocation
Node 2
ACTIVE
100% Traffic
Le Danger "Non-Rolling" :
Si vous patchez l'ASM/Grid en mode "Non-Rolling" (option par dĂ©faut de certains outils si mal configurĂ©s), TOUT LE CLUSTER S'ARRÊTE. VĂ©rifiez toujours vos fichiers de rĂ©ponse (patchmgr -rolling).
L'outil Roi : patchmgr
Command Line Interface
root@adm01 ~ #
# 1. Pré-check des cellules (Ne touche à rien)
./patchmgr -cells cells_group -patch_check_prereq -rolling

# 2. Patching réel (Une par une)
./patchmgr -cells cells_group -patch -rolling

# 3. Rollback en cas de désastre
./patchmgr -cells cells_group -rollback -rolling
DCLI (Distributed CLI)
L'ami fidÚle pour vérifier les versions partout.
dcli -g all_group "imageinfo"
OEDA (Deployment Assistant)
Utilisé pour générer les fichiers de config XML initiaux, mais aussi pour les upgrades majeurs.
Exachk : Le "Go / No-Go"

Ne lancez jamais un patch sans un rapport Exachk vert (score > 90/100).

  • Hardware Audit : VĂ©rifie batteries RAID, ventilateurs, disques dĂ©gradĂ©s.
  • Soft Config : VĂ©rifie paramĂštres kernel, limites utilisateurs, best practices.
  • Firmware Drift : Compare vos versions actuelles avec la matrice de compatibilitĂ© Oracle.
AHF (Auto Health Framework)
Score Santé
98/100

Si < 100, lisez les "FAIL" et "WARNING". Un warning ignoré aujourd'hui est un crash patch demain.

La Validation Post-Patch :
1. imageinfo : Version OK ? Status 'success' ?
2. crsctl stat res -t : Toutes les ressources DB et Grid sont ONLINE ?
3. cellcli ... list flashcache : Le cache est-il remonté ?
13) Exploitation (RUN) : Garder la BĂȘte en Cage
Le "Café-Check" du DBA Exadata

Avant de regarder les bases, regardez la machine. Si l'Exadata va mal, toutes les bases iront mal.

ComposantCheck RapideCible
Hardware Globaldcli ... cellcli -e list cell attributes metricStateTous Ă  0 (Pas d'alerte).
ASM BalanceVérifier le déséquilibre (Imbalance) entre disques.< 5%. Si >, un Rebalance est en cours ou bloqué.
Performance FlashVérifier les "Flash Cache Evictions" (Keep vs Default).Pas d'éviction massive sur le pool Keep.
BackupsRapport ZDLRA ou RMAN.100% Success (Exadata pardonne mal le retard de backup des archivelogs).
La Commande "Météo"
# Vérifier toutes les alertes ouvertes
dcli -g all_group -l root "cellcli -e list alerthistory where severity='critical' and metricState='warning'"
Objectif :
Le rĂ©sultat doit ĂȘtre VIDE. Une alerte hardware sur Exadata ne s'ignore pas.
Guide de Survie : Top 3 Incidents
Troubleshooting

Cause probable : Disque dur mécanique sollicité (Smart Scan désactivé ou Flash Cache saturé).
Action : 1. VĂ©rifier si une requĂȘte fait du "Cell Single Block Physical Read" massif.
2. Vérifier si le Flash Cache est en mode "Write Through" (dégradé).
3. Tuer la session coupable ou activer IORM.

Symptîme : Un nƓud reboot tout seul.
Cause probable : LMS (Lock Manager) n'a pas répondu assez vite (CPU Starvation) ou perte Interconnect.
Check : Logs oswatcher (netstat/top) au moment du crash. Chercher "Packet Loss" sur les switchs.
La trousse Ă  outils du Chef (DCLI)

DCLI (Distributed CLI) est votre meilleur ami pour gérer 14 serveurs comme un seul.

Syntaxe Vitale
dcli -g [GROUP_FILE] -l [USER] "[COMMAND]"
  • -g cell_group : Cible toutes les Storage Cells.
  • -g dbs_group : Cible tous les Compute Nodes.
  • -k : Échange les clĂ©s SSH (Premier setup).
Exemples One-Liner Check Date/Heure partout
dcli -g all_group "date"
Chercher un fichier log
dcli -g dbs_group "ls -l /var/log/messages"
Restart Services (A utiliser avec prudence !)
dcli -g cell_group "cellcli -e alter cell restart services all"
Ne jamais ĂȘtre pris au dĂ©pourvu
RĂšgle des 80% (ASM)
Used (70%)
Buffer (15%)
Free (15%)

Pourquoi ? Si un disque lĂąche, ASM doit copier les donnĂ©es sur l'espace libre (Rebalance). Si vous ĂȘtes Ă  95%, le Rebalance Ă©choue et vous perdez la redondance.

Le KPI "Flash Cache Wear"

Les cartes Flash s'usent en écrivant. Surveillez l'attribut enduranceLevel.
Si < 10%, planifiez le remplacement matériel préventif avec Oracle Support.

Tendance : Ne regardez pas juste le snapshot actuel. Regardez le delta mensuel.
"À +500GB/mois, le Diskgroup DATA sera plein dans 4 mois." -> C'est ça, la valeur ajoutĂ©e du RUN.
1.2) Audit Infrastructure & Santé
Check-up Vital (Avant tout Tuning)

Une Exadata malade physiquement ne performera jamais, quel que soit le tuning SQL.

L'impératif Exachk (AHF) :
Ne touchez à rien tant que le score Exachk est < 90/100. Il vérifie 1000+ points (Firmware disques, cohérence versions, paramÚtres kernel cachés).
CibleCommande AuditSignal d'Alarme
Versions Imageimageinfo (via dcli)Écart de version entre les nƓuds (Drift).
Hardwareilomconf / ipmitoolDIMM défectueuse, PSU en échec, Temp > seuil.
PatchingexadbcpatchmultiPatch QFSD vieux de > 6 mois (Risque sécurité + bugs).
Séquence de Patching (Ordre Vital)
1. Check Hardware (Pre-flight)
2. Update Cells (Storage)
3. Update Switches (Network)
4. Update Compute (DB Nodes)

Jamais la DB avant le Storage !

Audit CellCLI : Le CƓur du RĂ©acteur
Critique
1. État Physique Disques
dcli -g cell_group "cellcli -e list physicaldisk attributes name,status,errCount where status!='normal'"
2. État Logique Flash
cellcli -e list flashcache detail
Le PiĂšge de l'Imbalance :
Si une Cellule est pleine à 90% et les autres à 40%, ASM écrit moins vite (latence).
Commande : list celldisk attributes name, freeSpace, size
Le SystĂšme Nerveux (RoCE/IB)

Si le réseau tousse (erreurs physiques), le Smart Scan se désactive.

ProblĂšmeSymptĂŽme TechniqueImpact Utilisateur
Lien FlappingLogs switch : LinkUp / LinkDown répétitifs.Latences erratiques, Node Eviction (Crash).
CongestionCompteurs SymbolErrors ou VL15Dropped élevés.Effondrement du débit Smart Scan.
Mauvais RoutingTopologie incorrecte (vérifier via ibnetdiscover ou équivalent RoCE).Bande passante divisée par 2.
La Commande SecrĂšte : # imageinfo -netCheck
Lance une validation interne complÚte de la topologie réseau, des versions firmware switchs et des cùbles, le tout en une ligne.
Optimisation OS (Oracle Linux)
  • HugePages OBLIGATOIRE
  • Swap Usage Proche de 0
  • NTP / Chrony Synchro critique pour RAC
  • Hyper-Threading ON (Par dĂ©faut)

RĂšgle d'Or :
Sur Exadata, on ne modifie JAMAIS sysctl.conf Ă  la main.
On utilise OEDA ou les scripts de validation Oracle.