Résumé de l'étude de ces éléments concernant la conception de bases de données

Lien vidéo:
ces choses sur la conception de bases de données

Q: Qu'est-ce que la conception de base de données?
En fonction des besoins spécifiques du système métier, combiné au SGBD (système de gestion de base de données) que nous avons choisi, nous construisons un modèle de stockage de données optimal pour ce système métier. Et le processus d'établissement de la structure de la table dans la base de données et la relation entre la table et la table. Il peut stocker efficacement les données dans le système d'application et accéder efficacement aux données stockées

Q: Quels sont les bons et les mauvais paramètres de conception de base de données?
Excellent:
1. Réduisez la redondance des données
2. Évitez la maintenance anormale des données
3. Économisez de l'espace de stockage
4. Accès efficace

Mauvais:
1. Il y a une grande quantité de redondance des données
2. Il y a une insertion, une mise à jour et une suppression anormales des données
3. Une grande quantité d'espace de stockage est gaspillée
4. L'accès aux données est inefficace

Q: Quelles sont les quatre étapes de la conception d'une base de données?
1. Analyse de la demande
2. Analyse logique
3. Conception physique
4. Optimisation de la maintenance

Q: Quelle est l'analyse des exigences de la base de données?
1. Quelles sont les données
2. Quels sont les attributs et les caractéristiques de stockage des
données 3. Quelles sont les caractéristiques des données et des attributs
4. Le cycle de vie des données

Q: Que fait la conception logique de la base de données?
1. Transformez la demande en un modèle logique de la base de données
2. Affichez le modèle logique sous la forme d'un diagramme ER
3. Cela n'a rien à voir avec le système de SGBD spécifique sélectionné

Q: Quelles sont les considérations relatives à la conception physique de la base de données?
1. Sélectionnez le système de gestion de base de données approprié
2. Définissez les conventions de dénomination des bases de données, des tables et des champs
3. Sélectionnez le type de champ approprié en fonction du système SGBD sélectionné
4. Conception dé-normalisée

Q: Que faire pour la maintenance et l'optimisation de la base de données?
1. Gérez le dictionnaire de données
2. Gérez l'index
3. Conservez la structure du tableau
4. Le cas échéant, divisez le tableau horizontalement ou verticalement

Q: Quelles caractéristiques des données doivent être clarifiées dans l'analyse des exigences de la base de données?
1. Entité et relation entre les entités (1 à 1, 1 à plusieurs, plusieurs à plusieurs)
2. Quels sont les attributs contenus dans l'entité?
3. Quels attributs ou combinaisons d'attributs peuvent identifier de manière unique une entité

Explication du terme:
relation: une relation correspond à une table communément appelée
tuple: une ligne de la table est un tuple
Attribut: une colonne de la table est un attribut; chaque attribut a un nom, appelé nom d'attribut
Code candidat: un certain groupe d'attributs de la table peut déterminer de manière unique un tuple.
Code maître: il existe plusieurs codes candidats pour une relation, et l'un d'entre eux est sélectionné comme code principal.
Domaine: la plage de valeurs de l'attribut.
Composant: un attribut dans le tuple valeur

Description de la légende ER:
Rectangle: indique le jeu d'entités et le nom du jeu d'entités est écrit dans le rectangle.
Diamant: indique le jeu de contacts.
Ellipse: indique l'attribut de l'entité.
Segment de ligne: connecte l'attribut au jeu d'entités ou connecte le jeu d'entités au jeu de contacts

Q: Quelle est l'exception d'insertion de l'opération de base de données?
Si une entité existe avec l'existence d'une autre entité, cette entité ne peut pas être représentée sans entité

Q: Quelle est l'exception de mise à jour de l'opération de base de données?
Si vous modifiez les attributs individuels d'une instance d'entité correspondant à la table, vous devez mettre à jour plusieurs lignes

Q: Quelle est l'exception de suppression de l'opération de base de données?
Si une ligne du tableau est supprimée pour refléter une instance d'entité, les informations d'une autre instance d'entité seront perdues en cas d'échec

Q: Quelle est la redondance des données de la base de données?
Les mêmes données existent à plusieurs endroits, ou une colonne du tableau peut être calculée à partir d'autres colonnes

Q: Quelle est la première forme normale (1NF) de la base de données?
Tous les champs d'une table de base de données sont des attributs uniques et ne peuvent pas être divisés. Cet attribut unique est composé de types de données de base, tels que des entiers, des nombres à virgule flottante, des chaînes, etc.
Autrement dit, la première forme normale exige que toutes les tables de la base de données soient des tables à deux dimensions

Q: Quelle est la deuxième forme normale (2NF) de la base de données?
Il n'y a pas de dépendance fonctionnelle partielle des champs non clés par rapport à un champ clé candidat dans la table de base de données.
La dépendance fonctionnelle partielle fait référence au fait qu'un certain mot-clé de la clé combinée détermine le non-mot clé,
c'est-à-dire la table de tous les champs clés uniques. Les deux sont conformes au deuxième paradigme
Exemples de non-conformité:

La relation entre le fournisseur et le produit étant plusieurs-à-plusieurs, seuls le nom du produit et le nom du fournisseur peuvent être utilisés pour identifier de manière unique un produit. Autrement dit, le nom du produit et le nom du fournisseur sont un ensemble de mots-clés combinés. Les dépendances fonctionnelles partielles suivantes existent dans le tableau ci-dessus:
(nom du produit) -> (prix, description, poids, période de validité du produit)
(nom du fournisseur) -> (téléphone du fournisseur)
Il y a des problèmes: insérer une exception, supprimer une exception, mettre à jour une exception,
Solution de redondance des données :

Q: Quelle est la troisième forme normale (3NF) de la base de données?
Défini sur la base de la deuxième forme normale, s'il n'y a pas de dépendance de fonction de transfert du champ non clé sur un champ clé candidat dans la table de données, il est conforme à la troisième forme normale
. Exemple de non-conformité:

Il existe la dépendance transitive suivante:
(nom du produit) - > (Classification) -> (Description de la classification)
C'est-à-dire qu'il existe une dépendance de fonction de transfert du champ non clé «Description de la classification» sur le champ de la clé «Nom du produit».
Il y a un problème:
(Classification, Description de la classification) sera effectuée pour chaque produit Enregistrements, il existe donc une redondance des données et des exceptions d'insertion, de mise à jour et de suppression de données.
Solution:

Q: Quel est le BC Paradigm (BCNF) de la base de données?
Sur la base du troisième paradigme, table de base de données, s'il n'y a pas de fonction de transfert de champ selon l'une quelconque des sections de mot-clé candidat BC est conforme au paradigme
qui est que, si une clé composite, la clé composite ne peut pas exister entre la dépendance fonctionnelle
n'est pas Exemple conforme: en

supposant qu'un contact fournisseur ne peut être employé que par un seul fournisseur et que chaque fournisseur peut fournir plusieurs produits, la relation de décision suivante existe:
(fournisseur, ID produit) -> (contact, quantité de produit)
(Personne de contact, ID produit) -> (fournisseur, quantité de produit)
a la relation suivante et ne répond donc pas aux exigences BCNF:
(fournisseur) -> (contact fournisseur)
(contact fournisseur) -> (fournisseur)
et la présence d'un fonctionnement anormal et d'une
solution de redondance d'entrée de données :

Q: Quels sont les moteurs de stockage couramment utilisés dans MySQL?

Q: Quels principes doivent être suivis pour la dénomination des objets?
1. Le principe de lisibilité: utiliser des majuscules et des minuscules pour formater les noms des objets de la bibliothèque pour une bonne lisibilité
2. Le principe de l'idéogramme: le nom d'un objet doit pouvoir décrire l'objet qu'il identifie. Autrement dit, le nom de la table peut refléter le contenu des données stockées dans la table; le nom de la procédure stockée peut refléter la fonction de la procédure stockée
3. Principe du nom long: utiliser le moins possible ou ne pas utiliser d'abréviations

Le principe de sélection du type de champ Le
type de données de la colonne affecte le coût de l'espace de stockage des données d'une part, et affecte également les performances de la requête de données d'autre part. Lorsque plusieurs types de données peuvent être sélectionnés pour une colonne, les types numériques doivent avoir la priorité, les types date ou binaire en second et les types de caractères en dernier. Pour les types de données du même niveau, les types de données qui prennent moins d'espace doivent être préférés

Principalement considéré sous les deux angles suivants:
1. Lors de la comparaison des opérations de données (conditions de requête, conditions de jointure et tri): les mêmes données, le traitement des caractères est souvent plus lent que le traitement des nombres
2. Dans la base de données, le traitement des données est basé sur les pages , Plus la longueur de la colonne est petite, meilleures sont les performances

Q: Comment choisir entre char et varchar?
1. Si la longueur des données à stocker dans la colonne est presque la même, vous devriez envisager d'utiliser char; sinon, vous devriez envisager d'utiliser varchar
2. Si la longueur maximale des données dans la colonne est inférieure à 50 octets, envisagez généralement d'utiliser char (bien sûr, si cette colonne Rarement utilisé, pour économiser de l'espace et réduire les E / S, vous pouvez toujours choisir d'utiliser varchar)
3. En général, il n'est pas conseillé de définir un type char supérieur à 50 octets.
Notez que l'octet de UTF-8 est 8 octets

Q: Comment choisir décimal et flottant?
1. Decimal est utilisé pour stocker des données précises, tandis que float ne peut être utilisé que pour stocker des données inexactes. Par conséquent, des données précises ne peuvent choisir que le type décimal
2. Parce que la surcharge d'espace de stockage de float est généralement plus petite que décimale (seuls 4 octets sont nécessaires pour être précis à 7 décimales, et seulement 8 octets sont nécessaires pour être précis à 15 décimales), des données donc inexactes Type de flotteur préféré

Q: Comment stocker le type d'heure?
1. Les avantages et les inconvénients de l'utilisation de int pour stocker le champ d'heure.
Avantages: la longueur du champ est inférieure à datetime.
Inconvénients: peu pratique à utiliser, la conversion de fonction est nécessaire.
Restrictions: ne peut être stocké que dans 2038-1-19 11:14:07, soit 2 ^ 32 vaut 2147483648
2. La granularité temporelle qui doit être stockée
année mois jour heure minute seconde semaine

Q: Comment choisir la clé primaire?
1. Distinguer la clé primaire métier et la clé primaire de base de données: la clé primaire métier est utilisée pour identifier les données métier et pour associer des tables aux tables; la clé primaire de base de données est utilisée pour optimiser le stockage des données (Innodb génère une clé primaire implicite de 6 octets)
2. Selon la base de données Tapez, déterminez si la clé primaire doit croître séquentiellement: certaines bases de données sont logiquement stockées dans l'ordre de la
clé primaire . 3. Le type de champ de la clé primaire doit occuper le moins d'espace possible: pour les tables stockées à l'aide d'un index clusterisé, la clé primaire sera ajoutée après chaque index information

Q: Pourquoi évitez-vous d'utiliser des contraintes de clé étrangère?
1. Réduire l'efficacité de l'importation de données
2. Augmenter les coûts de maintenance
3. Bien qu'il ne soit pas recommandé d'utiliser des contraintes de clé étrangère, mais les colonnes associées doivent être indexées

Q: Pourquoi évitez-vous d'utiliser des déclencheurs?
1. Réduisez l'efficacité de l'importation de données
2. Des anomalies de données inattendues peuvent apparaître
3. Rendez la logique métier compliquée

Q: Concernant les champs réservés
1. Impossible de connaître avec précision le type de champ réservé
2. Impossible de guider avec précision le contenu stocké dans le
champ réservé 3. Le coût de maintenance du champ réservé à l'avenir est le même que le coût d'ajout d'un champ Les mêmes
4. Les champs réservés sont strictement interdits

Q: Qu'est-ce que la dénormalisation?
Pour ce qui est de la normalisation, la troisième forme normale de conception de base de données a été introduite ci-dessus. La dénormalisation consiste à enfreindre de manière appropriée les exigences de la troisième forme normale en matière de performances et d'efficacité de lecture, et à autoriser une petite quantité de données La redondance
, la dénormalisation est l'utilisation de l'espace pour le temps

Q: Pourquoi est-il dé-normalisé?
1. Réduisez le nombre d'associations dans le tableau
2. Augmentez l'efficacité de la lecture des données
3. La dénormalisation doit être modérée

Q: Comment gérer le dictionnaire de données
1. Utilisez des outils tiers pour gérer le dictionnaire de données.
2. Utilisez le champ mémo de la base de données elle-même pour gérer le dictionnaire de données. Prenons MySQL comme exemple

3. Exporter le dictionnaire de données

Q: Comment choisir la colonne appropriée pour créer un index?
1. Colonnes apparaissant dans la clause where, group by et order by clause
2. Les colonnes avec une sélectivité élevée doivent être placées devant l'
index 3. N'incluez pas de types de données trop longs dans l' index
Remarque:
1. L'index n'est pas terminé Autant que possible, trop d'index réduiront non seulement l'efficacité d'écriture, mais également l'efficacité de lecture
2. Maintenir régulièrement la fragmentation des index
3. N'utilisez pas de mots-clés d'index obligatoires dans les instructions SQL

Q: Comment maintenir la structure de la table?
1. Utilisez les outils en ligne pour modifier la structure du tableau
2. Gérez le dictionnaire de données en même temps
3. Contrôlez la largeur et la taille du tableau

Q: Opérations appropriées dans la base de données
1. Une opération par lots est préférable à une opération un par un
2. Il est interdit d'utiliser select * de telles requêtes
3. Contrôlez l'utilisation des fonctions définies par l'utilisateur
4. N'utilisez pas l'index de texte intégral dans la base de données

Q: Le principe de la division verticale de la table?
1. Les colonnes souvent interrogées sont rassemblées.
2. Les grands champs tels que le texte et l'objet blob sont divisés en tables supplémentaires

La largeur de la table de contrôle peut être fractionnée verticalement
. La taille de la table de contrôle peut être fractionnée horizontalement.

Q: Comment diviser le tableau horizontalement?
Utilisez la méthode de hachage de la clé primaire

Je suppose que tu aimes

Origine blog.csdn.net/u011703187/article/details/105202924
conseillé
Classement