Questionnaire1 Flashcards

1
Q
  1. Comment écrire les requêtes fréquemment utilisées pour optimiser leur analyse ? Donner un bon et un mauvais exemple.
A

Utilisation d’une valeur bind (requête paramétrée)

Bon exemple: SELECT * FROM clients WHERE id =: v;
Select * from TT where nom=:v;
Select * from TT where nom=:v;

Mauvais exemple : “SELECT * FROM clients WHERE id = “ + clid;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
  1. Soit un Database Buffer Cache de 5 blocs dont 1 est affecté au pool KEEP et 2 au pool RECYCLE. On note Kn un bloc à garder, Rn un bloc considéré comme temporaire, Dn un bloc normal. Que restera-t-il dans le Database Buffer Cache après entrée successive des blocs : k1 d2 d3 r4 d5 d6 d7 ?
A

k1, d7, d3, d6, d5

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  1. Quelle est l’abréviation utilisée pour un traitement transactionnel en base de données ? Quelle est sa signification ? Quelles sont ses caractéristiques ?
A

Traitement transactionnel → OLTP (On Line Transaction Processing)
On utilise des blocs de petites tailles et le temps de réponse doit être courtes.
Utiliser pour des requêtes à petites transactions (peu d’informations à traiter).
Un grand nombre d’accès.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  1. Un segment d’un tablespace peut-il contenir des tables et des index ? Est-il contenu dans un fichier de donnée ?
A

Non, un segment peut contenir des tables ou des index mais pas les deux.
Non, il peut être placé à travers différentes extensions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  1. De quoi une entrée redo du Redo Log Buffer est-elle composée ?
A

C’est un vecteur de modification atomique d’un bloc. On a l’ancienne et la nouvelle valeur qui a été modifiée et ceci pour chaque bloc modifié.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q
  1. La définition du schéma d’un utilisateur et les données saisies par ce même utilisateur dans les tables de ce schéma doivent-elle être stockées dans le même tablespace ?
A

Non, il y a une tablespace spécifique pour le paramétrage et pour les données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q
  1. A quoi sert le Result Cache de la SGA ? En quoi est-îl différent du Database Buffer Cache ?
A

Le Result Cache mémorise les résultats des script SQL sous une forme déjà prête à l’utilisation.
Annexe: le Database buffer cache sauvegarde des blocs physiques. Mais si le résultat est grand, le serveur doit encore récupérer les infos sur différents blocs alors qu’avec le Result Cache on a tout (on ne tient pas compte des blocs). Par contre, en terme de redondonce, c’est le Database Buffer Cache qui est plus stable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
  1. Quel est le rôle du fichier SPFILE et comment est-il modifié ?
A

Le SPFILE est un fichier binaire. Il contient des valeurs pour des paramètres d’instance.
Il est modifié à chaud (par des commandes sous Oracle et non pas à la main par un éditeur de texte).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q
  1. Quelle différence et relation entre un tablespace et un fichier de donnée ? Que gère principalement un DBA ? Quels sont les tablespaces obligatoirement présents dans une base ?
A

Le tablespace c’est l’unité de stockage d’Oracle.
Le tablespace s’étale sur un ou plusieurs fichiers de données qui sont des fichiers du système d’exploitation.
Les tablesspaces obligatoirement présent dans une base sont: les tablespaces SYSTEM (pour faire tourner l’instance) et SYSAUX (outils d’administration, maintenance).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. Comment une base de données et une instance sont-elles identifiées ?
A

Pour l’instance, le SID, système d’identification, c’est une variable d’environement (du système) sur laquelle tourne la base. ORACLE_SID
Si une seule instance, on n’a même pas besoin d’indiquer l’instance dans les la variables d’environnements. SID et ??? même nom
La base de donnée est identifiée par DB_NAME.DB_DOMAINE

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
  1. En quoi l’existence du fichier de contrôle est-elle critique et comment assurer son intégrité ?
A

Le fichier de contrôle contient les données nécessaires pour le lancement de la base. Il est conseillé d’avoir plusieurs copies en miroir sur différents support pour l’intégrité de la base. Peut être fait automatiquement si configuré.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q
  1. Quelle est l’unité d’échange entre les fichiers et la mémoire et par quel paramètre est-il fixé : DB_BLOCK_BUFFER, DB_CACHE_SIZE, DB_BLOCK_SIZE ou DB_BUFFER_CACHE ? Quelles sont ses valeurs possibles ?
A

C’est le DB_BLOCK_SIZE.

2, 4, 8, 16, 32 Ko

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
  1. A quoi sert la Shared Pool de la SGA?
A

Il sert à garder des information sur les requête et le dictionnaire.
Library Cache, garder en mémoire l’analyse des dernières requêtes (attention, ne contient pas les résultats). Garde le contrôle de syntaxe par exemple.
Dictionnaty Cache, contient la structure de la DB (utile pour l’analyse des scripts, contrôle de la structure des tables par exemple).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
  1. Soit un Database Buffer Cache de 4 blocs dans lequel entrent successivement les blocs 1 2 3 4 1 5 ? Quels sont les blocs restant dans le cache? Comment appelle-t-on l’algorithme qui gère ce cache ?
A
Séquence
1234
1234
1534 (le résultat finale)
Le nom de l’algorithme est Last Recently View
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
  1. Quels sont les composants de la base de données ?
A

Les fichiers de données
le(s) fichier(s) de contrôle
les journaux.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
  1. Dans un groupe de journalisation, lorsque tous les membres sont pleins et qu’une nouvelle mise à jour doit être enregistrée, que se passe-t-il ?
A

On passe au groupe suivant.
Si tous les groupes sont pleins, on fait de l’écrasement des journaux circulaire (on écrase le 1er groupe pour réécrire les données).
Quand on commence à écraser, on peut faire de l’archivage des journaux.

17
Q
  1. Que se passe-t-il lorsqu’un segment dans un tablespace est plein et qu’une nouvelle donnée doit y être ajoutée ?
A

Lorsque le segment est plein, on crée alors une nouvelle extension pour le segment. Si le fichier de données actuel est plein, alors on crée la nouvelle extension dans autre fichier de données.

18
Q
  1. Que signifient les suffixes « i » et « g » appliqués aux versions d’Oracle Database ?
A

“i” , à partir de la version 8, prise en compte d’internet principalement
“g”, à partir de la version 10, prise en compte de grid (cluster hétérogène, machine d’infrastructure différentes)
‘‘c” pour Cloud avec la version 12.

19
Q
  1. Peut-on transporter un tablespace avec des blocs de 2 ko dans une base pour laquelle la taille de bloc est de 4 ko ? Et L’inverse ?
A

Oui, dans les 2 cas. Il n’aura pas la taille de bloc par défaut.
Il est possible mais il va falloir définir un Pool pour faire des entrées-sorties avec les tablespaces de blocs à 2 ko.
Il faut définir un autre buffer DB_2k_CACHE_SIZE.

20
Q
  1. Quelle sont les limites de l’édition standard d’Oracle Database et dans quel cadre (exploitation, administration, développement) est-elle utilisée ?
A

On peut pas faire du clusters, il n’y a pas de cryptages, elle est limitée à 4 CPU (limite de montée en charge).
La licence standard est utilisé pour le développement principalement ou en exploitation limitée. Si déploiement, passer à la licence personnelle.

21
Q
  1. Une base oracle est accédée par de nombreuses applications écrites en Java et elles sont utilisées simultanément par de nombreux utilisateurs. Le cache par défaut de la JAVA_POOL_SIZE (24 Mo) de la SGA risque-t-il d’être insuffisant dans ce cas ? Pourquoi ?
A

Non, il ne faut pas l’augmenter (on peut même le mettre à 0). Puisque les applications JAVA n’utilisent pas ce Pool. Celui-ci est utilsé dans le code interne de la base et non par les applications.
(PIEGE!!!! MOUHAHAHAHAHAHAHAHA test/exam?)

22
Q
  1. Quelle différence entre un roll back et un roll forward ?
A

Le Roll Back permet de d’annuler des modifications d’une transaction qui n’a pas été validée (on utilise un vecteur avec les anciennces valeurs pour remettre les valeurs dans la base).

Le Roll Forward, ne s’exécute que suite à des problèmes techniques (après un redémarrage, les fichiers ne sont pas à jour. Il faut alors aller chercher dans les journaux. Les fichiers données ne sont pas forcément toujours à jour car ils sont lents d’accès comparé aux fichiers journaux.

23
Q
  1. Quels sont les 4 types de segment selon leur contenu ?
A

Peuvent contenir des tables, index (clés primaires), informations d’annulation de transaction (coordination avec des journaux), des segments de travail (tri).