Notions de base de structures logiques dans Oracle 12c

Toutes les structures logiques que vous verrez sont dans les fichiers de données de la base de données. Structures logiques d'Oracle 12c vous permettent d'organiser vos données en éléments gérables et, ainsi, logiques.

Sommaire

Examinons la relation de logique à des objets physiques. La flèche pointe dans la direction d'une relation un-à-plusieurs.

image0.jpg

Tablespaces Oracle 12c

Tablespaces sont le premier niveau de l'organisation logique de votre stockage physique.

Chaque base de données 12c devrait avoir les espaces de tables suivantes:

  • SYSTÈME: Stocke les objets de base de données de base qui sont utilisées pour l'exécution de la base de données elle-même.

  • SYSAUX: Pour les objets qui sont auxiliaire et pas spécifiquement liée aux caractéristiques de base de la base de données.

  • Annuler: Stocke la restauration ou défaire segments utilisés pour la récupération de la transaction.

  • TEMP: Pour le stockage temporaire.

Chaque espace est chargé d'organiser un ou plusieurs fichiers de données. Typiquement, chaque espace de table pourrait commencer attaché à un fichier de données, mais comme la base de données se développe et vos fichiers devient grande, vous pouvez décider d'ajouter du stockage sous la forme de plusieurs fichiers de données.

Alors, quelle est la prochaine étape pour l'obtention de votre base de données et en cours d'exécution? Vous créez des zones pour stocker vos données. Supposons que votre base de données va avoir des ventes, des ressources humaines, des données comptables et des données historiques. Vous pourriez avoir les espaces de tables suivantes:

  • Informations_Ventes

  • SALES_INDEX

  • HR_DATA

  • HR_INDEX

  • DONNÉES DE COMPTABILITÉ

  • ACCOUNTING_INDEX




  • HISTORY_DATA

  • HISTORY_INDEX

Segments dans Oracle 12c

Segments sont la structure de stockage suite logique de tables. Segments sont des objets dans la base de données qui nécessitent un stockage physique et comprennent ce qui suit:

  • Tableaux

  • Index

  • Vues matérialisées

  • Partitions

Ces exemples d'objets sont pas segments et ne stockent pas les données réelles:

  • Vues

  • Procédures

  • Synonymes

  • Séquences

La dernière liste d'objets ne vivent pas dans un espace de table avec des segments. Ils sont des morceaux de code qui vivent dans le tablespace SYSTEM.

Chaque fois que vous créez un segment, préciser ce tablespace vous voulez qu'il soit partie. Cela contribue à la performance.

Étendu dans Oracle 12c

Étendu sont comme les anneaux de croissance d'un arbre. Chaque fois un segment se développe, il acquiert une nouvelle mesure. Lorsque vous créez une table pour stocker des objets, il obtient sa première mesure. Comme vous insérez des données dans ce tableau, cette mesure se remplit. Lorsque la mesure se remplit, il saisit une autre mesure de l'espace de table.

Lorsque vous créez un espace de table, il est tout l'espace libre. Lorsque vous commencez à créer des objets, que l'espace libre est attribué, à des segments sous la forme d'extensions. Votre tablespace moyenne se compose d'extensions utilisées et l'espace libre.

Lorsque tout l'espace libre est rempli, ce fichier de données est hors de l'espace. Voilà où vos compétences DBA viennent et que vous décidez comment faire plus d'espace libre disponible pour les segments de continuer à étendre.

Etendu ne sont pas nécessairement contigus. Par exemple, lorsque vous créez une table des éléments et d'insérer les 1000 premiers éléments, il peut se développer et d'étendre à plusieurs reprises. Maintenant votre segment pourrait être composé de cinq degrés. Cependant, vous pouvez également créer une nouvelle table.

Comme chaque table est créée dans un espace de table, il commence au début du fichier de données. Après avoir créé votre deuxième table, votre première table peut avoir besoin de prolonger à nouveau. Sa prochaine mesure intervient après la deuxième mesure. En fin de compte, tous les objets qui partagent un espace de table auront leurs étendues entremêlées.

Ce ne sont pas une mauvaise chose. Dans les années passées, avant d'Oracle avait de meilleurs algorithmes pour le stockage, les DBA passé beaucoup de leur temps et d'efforts à essayer de fusionner ces étendues. Ça s'appelait fragmentation. Il est une chose du passé. Ne soyez pas aspiré! Juste le laisser être. Oracle 12c est entièrement capable de gérer de telles situations.

Il ya des situations où vous avez plusieurs fichiers de données dans un espace de table. Si un espace de table a plus d'un fichier de données, l'espace de table crée automatiquement les extensions dans un mode round-robin à travers tous les fichiers de données. Ceci est une autre caractéristique de performance Oracle.

Disons que vous avez une grande table qui supporte la plupart de votre demande. Il vit dans un espace de table composé de quatre fichiers de données. Comme le tableau étend, Oracle alloue les étendues à travers chaque fichier de données comme ceci:

1,2,3,4,1,2,3,4,1,2,3,4. . . et ainsi de suite

De cette façon, Oracle peut profiter de la diffusion de données à travers de nombreux dispositifs physiques lorsque les utilisateurs accèdent aux données. Il réduit la contention sur les segments qui ont beaucoup d'activité.

Blocs Oracle à Oracle 12c

Un Bloc Oracle est l'unité minimale que Oracle va lire ou écrire à un moment donné.

Oracle lit et écrit les plus d'un bloc à la fois, mais qui est à Oracle ces jours. Vous l'habitude d'avoir un contrôle plus direct de la façon dont Oracle a géré son lit et écrit des blocs, mais maintenant la fonctionnalité est accordée automatiquement. Vous pouvez régler manuellement dans une certaine mesure, mais la plupart des installations sont mieux laisser à Oracle.

Peu importe, les blocs sont l'unité logique finale de stockage. Les données de vos tables et index sont stockés dans des blocs. Les événements suivants se produisent lorsque vous insérez une nouvelle ligne dans une table:

  • Oracle estime le segment.

  • Oracle demande ce segment si il ya toute pièce.

  • Le segment renvoie un bloc qui est pas plein.

  • L'entrée de ligne ou index est ajouté à ce bloc.

Si aucun bloc sont gratuits pour les inserts, le segment attrape une autre mesure libre de l'espace de table. Par ailleurs, tout cela est fait par le processus du serveur auquel vous êtes attaché.

Oracle blocs ont également une contrepartie physique tout comme les fichiers de données font. Oracle blocs sont constitués de blocs de système d'exploitation. Il est mis en forme de la taille de l'unité de stockage minimum sur le dispositif.


» » » Notions de base de structures logiques dans Oracle 12c