1 qu'est-ce qu'un subd. Bases de données et subd. Composants d'un rapport

1C : Entreprise 8- un produit logiciel de la société 1C, conçu pour le développement rapide de solutions applicatives. La plate-forme technologique 1C:Enterprise n'est pas un produit logiciel destiné aux utilisateurs finaux, qui travaillent généralement avec l'une des nombreuses solutions d'application (configurations) qui utilisent une plate-forme technologique unique. La plate-forme et les solutions d'application développées sur cette base forment le système logiciel 1C:Enterprise, conçu pour automatiser divers types d'activités, notamment pour résoudre les problèmes d'automatisation de la comptabilité et de la gestion dans une entreprise (CIS).

Web- serveur-Apache2.2.10.

Apache est le serveur numéro un sur Internet. Plus de la moitié de tous les sites Internet fonctionnent sur Apache ou ses dérivés. Les avantages d'Apache sont son organisation modulaire, sa stabilité et sa rapidité. Avec le bon matériel et la bonne configuration, il peut supporter les charges les plus lourdes. La conséquence de l'architecture modulaire du serveur est la flexibilité, la facilité de changement et de configuration du serveur Web.

À l'aide du serveur Web Apache, vous pouvez gérer des centaines de sites avec des noms et des niveaux d'accès différents. Le coût monétaire et le temps requis pour ajouter chaque site sont minimes. Le serveur Web Apache, populaire en raison de sa transparence auprès des programmeurs et des administrateurs et notamment en raison de sa nature gratuite, est implémenté pour tous les systèmes d'exploitation plus ou moins courants. Ses paramètres sont les mêmes pour tous les systèmes d'exploitation, seuls les chemins où sont stockés les fichiers de configuration diffèrent. Un seul serveur peut avoir plusieurs instances d'Apache en cours d'exécution, écoutant sur différentes adresses et/ou ports. Une instance peut servir plusieurs sites. Le projet est si populaire qu'il ajoute constamment de nouvelles fonctionnalités.

Serveur antivirus – Avast Professional Edition 4.8. Caractéristiques du programme :

    Scanner antivirus résidentiel.

    Analysez votre ordinateur à la recherche de virus pendant que l'économiseur d'écran est affiché.

    Vérification de la présence de virus sur votre ordinateur au démarrage, avant que le système d'exploitation ne soit complètement chargé.

    Analyse heuristique.

    Blocage des scripts malveillants.

    Mise à jour automatique des bases de données antivirus, ainsi que du programme lui-même.

    Un pare-feu léger intégré au programme (IDS - Intrusion Detection System).

    Modularité de la protection des résidents : Écran Web ; Messages instantanés ; Pare-feu ; Écran standard ; Écran P2P ;

    E-mail, également des modules de vérification des bases de données de messagerie de Microsoft Outlook, Outlook Express et un plugin pour The Bat !.

    Scanner et plug-in SMTP/POP3/IMAP4 pour Outlook

    Suppression des logiciels espions de votre ordinateur.

    Possibilité de définir un mot de passe pour modifier les paramètres du programme.

    Interface multilingue.

    Scanner antivirus en ligne de commande.

    Maintenance de VRDB - Virus Recover Database - une base de données pour récupérer les fichiers infectés.

    Prise en charge des thèmes de conception (3 sont déjà inclus dans le package de base).

Le produit est certifié ICSA.Procuration- - serveur

Serveur proxy de systèmes supplémentaires (proxy ES)

Extra Systems Proxy Server quatrième génération est un serveur proxy gratuit pour Windows. La version proposée du serveur proxy est conçue pour fonctionner sur la plateforme Win32 : Windows 95, 98, ME, NT, 2000, 2003, XP. Toutefois, les plateformes serveur sont recommandées. Il est également recommandé que le serveur sur lequel ce programme s'exécute soit dédié (c'est-à-dire qu'il ne soit pas utilisé comme poste de travail). Le but de ce programme est de fournir un accès simultané à Internet depuis de nombreux ordinateurs du réseau local du client via un seul canal de communication avec le fournisseur à sa disposition. Le produit logiciel en question est déjà intégré au système d'exploitation et doit uniquement être lancé en tant que service. Ce programme peut être utilisé par toute personne ou organisation à toute fin légale, y compris à des fins commerciales, sans aucun paiement aux auteurs.- serveur Imprimer

- Serveur d'impression 2.4.

Le programme ne nécessite aucune installation ni paramètres supplémentaires. L'imprimante fonctionne en utilisant le protocole TCP IP. Grâce à ce programme, n'importe quelle imprimante locale peut être transformée en imprimante réseau. Pour ce faire, exécutez simplement le programme sur le serveur de fichiers auquel l'imprimante est connectée. Sur la machine en état de marche, vous devez accéder aux paramètres de l'imprimante et installer le support pour l'imprimante correspondante, en indiquant qu'il s'agit d'une imprimante réseau avec l'adresse IP du serveur de fichiers.- serveur Mail

- Courier Mail Server 1.56 est un serveur de messagerie gratuit (serveur de messagerie) pour Windows pour les réseaux de bureau et domestiques. Il vous aidera à organiser rapidement l'échange d'e-mails sur votre réseau local et sur Internet.

    Avantages du serveur de messagerie Courier :

    compacité

    facilité d'administration

    faible consommation de ressources système

    multithreading

    shell graphique pratique

    Interface et documentation en russe

    prise en charge d'un nombre illimité de boîtes aux lettres

Composition du serveur de messagerie Courier :

Serveur SMTP, serveur POP3, filtre IP, client SMTP, client POP3, planificateur, trieur de courrier, accès à distance.

SGBD de fichiers- l'un des systèmes de gestion de base de données pris en charge par la plateforme. Le fichier SGBD a été développé par 1C et fait partie de la plateforme.

Un SGBD fichier stocke toutes les données dans un seul fichier - une base de données de fichiers. Ce format de stockage de données a été développé par 1C spécifiquement pour les solutions applicatives 1C:Enterprise 8.

Lors de la création de la plateforme, un format efficace était nécessaire pour créer sur sa base une version allégée de 1C:Enterprise 8 pour un usage personnel et de petits groupes de travail. Le format devait répondre à certaines exigences, telles que l'efficacité, la prise en charge d'UNICODE et la possibilité de placer l'intégralité de la base d'informations dans un seul fichier. L'utilisation de cette option ne devrait pas obliger l'utilisateur à installer un logiciel supplémentaire ni à nécessiter d'actions administratives.

Il fallait par exemple pouvoir transférer facilement une base d'informations sur un ordinateur portable ou déployer rapidement un poste de travail distant dans un entrepôt. Dans le même temps, la solution applicative devait fonctionner sans aucune modification tant dans cette version que dans la version utilisant un serveur de base de données.

Sur la base des résultats de recherches sur des produits tiers et de leur analyse, il a été décidé de créer notre propre moteur de base de données prenant en charge son propre format de stockage.

Implémentation technique du travail avec une base de données de fichiers

Le SGBD fichier fait partie de la plate-forme. Par conséquent, lorsque le système fonctionne dans la version fichier, les clients lourds et légers effectuent indépendamment tous les travaux avec les données.

Chaque propriétaire de site Web sait que pour que le site Web fonctionne correctement, vous avez besoin non seulement de fichiers contenant le code de page, mais également de bases de données. Les systèmes de gestion de bases de données (SGBD) sont utilisés pour interagir avec les bases de données. Dans cet article, je souhaite parler des bases de données et des SGBD, des types qui existent et de la manière dont ils diffèrent les uns des autres.

Base de données

Une base de données est un ensemble spécifique de données qui, en règle générale, sont reliées par un trait ou une propriété unificatrice (ou plusieurs). Ces données sont organisées par exemple par ordre alphabétique. L’abondance de données différentes pouvant être placées dans une seule base de données entraîne de nombreuses variations dans ce qui peut être enregistré : données personnelles des utilisateurs, enregistrements, dates, commandes, etc. Par exemple, si vous possédez une boutique en ligne, la base de données de votre site Web peut contenir des listes de prix, un catalogue de biens ou de services, des rapports, des statistiques et des informations sur les clients.

Tout d’abord, c’est pratique car les informations peuvent être rapidement saisies dans une base de données et récupérées tout aussi rapidement si nécessaire. Si à l'aube du développement du développement Web, toutes les données nécessaires devaient être écrites dans le code de la page, ce n'est désormais plus nécessaire - les informations nécessaires peuvent être demandées à la base de données à l'aide de scripts. Des algorithmes spéciaux de stockage et de récupération d'informations utilisés dans les bases de données permettent de trouver les informations nécessaires littéralement en une fraction de seconde - et lorsque vous travaillez dans un espace virtuel, la vitesse de la ressource est plus importante que toute autre chose.

La relation entre les informations dans la base de données est également importante : la modification d'une ligne peut entraîner des modifications significatives dans d'autres lignes. Travailler avec des données de cette manière est beaucoup plus facile et plus rapide que si les modifications affectaient un seul endroit de la base de données.

Cependant, cela ne signifie pas que chaque site doit disposer d'une base de données - par exemple, si vous avez un site de cartes de visite et que vous ne publiez aucune nouvelle information sur le site, vous n'aurez tout simplement pas besoin d'une base de données. Le moyen le plus simple de créer un site Web simple est de créer un fichier .

Système de gestion de base de données

Comme son nom l'indique, un système de gestion de base de données (ou SGBD en abrégé) est un logiciel utilisé pour créer et utiliser des bases de données. La fonction principale d'un SGBD est la gestion des données (qui peuvent être soit en externe, soit en RAM). Le SGBD prend nécessairement en charge les langages de base de données et est également responsable de la copie et de la restauration des données après toute panne.

Quant à la classification des bases de données, diverses options sont possibles.
Par exemple, vous pouvez diviser les bases de données par modèles de données: hiérarchique (avoir une structure arborescente), réseau (de structure similaire à hiérarchique), relationnel (utilisé pour gérer des bases de données relationnelles), orienté objet (utilisé pour le modèle de données objet) et objet-relationnel (une sorte de fusion de relationnel et type de bases de données orientées objet).

Ou, si la division est basée sur où se trouve le SGBD ?, ils peuvent être divisés en locaux - l'ensemble du SGBD est situé sur un ordinateur, et distribués - des parties du système de gestion de base de données sont situées sur plusieurs ordinateurs.

Serveur de fichiers, client-serveur et embarqué - tels sont les noms que portent les SGBD si on les divise par moyen d'accéder aux bases de données. Les SGBD de serveurs de fichiers sont actuellement considérés comme obsolètes ; Fondamentalement, des systèmes client-serveur (SGBD situés sur le serveur avec la base de données elle-même) et des systèmes embarqués (qui ne nécessitent pas d'installation séparée) sont utilisés.

Les informations stockées dans les bases de données ne se limitent pas aux fichiers texte ou graphiques : les versions modernes des SGBD prennent également en charge les formats de fichiers audio et vidéo.

Dans cet article, je me concentrerai sur les SGBD utilisés pour stocker des informations provenant de diverses ressources Web.

Pourquoi ces SGBD sont-ils nécessaires ? En plus de leur fonction principale - stocker et systématiser une énorme quantité d'informations - ils permettent de traiter rapidement les demandes des clients et de fournir des informations fraîches et pertinentes.

Cela s'applique également aux modifications que vous apportez - au lieu de modifier les informations dans chaque fichier du site, vous pouvez les modifier dans la base de données, puis les informations correctes seront immédiatement affichées sur chaque page.

SGBD relationnel et langage SQL

Les SGBD relationnels et relationnels objet sont parmi les systèmes les plus courants. Ce sont des tableaux dans lesquels chaque colonne (appelée « champ ») est ordonnée et porte un nom unique spécifique. La séquence des lignes (elles sont appelées « enregistrements » ou « enregistrements ») est déterminée par l'ordre dans lequel les informations sont saisies dans le tableau. Dans ce cas, le traitement des colonnes et des lignes peut s'effectuer dans n'importe quel ordre. Les tables contenant des données sont interconnectées par des relations spéciales, grâce auxquelles vous pouvez travailler avec les données de différentes tables - par exemple, les combiner - à l'aide d'une seule requête.

Pour gérer les bases de données relationnelles, un langage de programmation spécial est utilisé : SQL. L'abréviation signifie « Langage de requête structuré », traduit en russe par « langage de requête structuré ».

Les commandes utilisées dans SQL sont divisées en celles qui manipulent les données, celles qui définissent les données et celles qui manipulent les données.

Le schéma pour travailler avec la base de données ressemble à ceci :


MySQL

MySQL est l'un des SGBD les plus populaires et les plus répandus, utilisé dans de nombreuses entreprises (par exemple Facebook, Wikipedia, Twitter, LinkedIn, Alibaba et autres). MySQL est un SGBD relationnel qui est un logiciel libre : il est distribué selon les termes de la licence publique GNU. Généralement, ce système de gestion de base de données est défini comme un bon système, rapide et flexible, recommandé pour une utilisation dans des projets de petite ou moyenne taille. MySQL présente de nombreux avantages différents. Par exemple, il prend en charge différents types de tables : à la fois les célèbres MyISAM et InnoDB, ainsi que les plus exotiques HEAP et MERGE ; de plus, le nombre de types pris en charge ne cesse de croître. MySQL exécute toutes les commandes rapidement - c'est peut-être maintenant le SGBD le plus rapide qui existe. Un nombre illimité d'utilisateurs peuvent travailler simultanément avec ce système de gestion de base de données et le nombre de lignes dans les tables peut être égal à 50 millions.

Étant donné que MySQL prend en charge moins de fonctionnalités que certains autres SGBD, il est beaucoup plus facile de travailler avec lui que, par exemple, avec PostgreSQL, qui sera discuté ci-dessous.

La première version de MySQL a été publiée en 1995, et depuis lors, plusieurs versions ultérieures ont été publiées, chacune apportant des changements importants.

Pour travailler avec MySQL, non seulement le texte, mais également le mode graphique sont utilisés. Ceci est possible grâce à l'application phpMyAdmin : vous n'avez même pas besoin de connaître les commandes SQL pour travailler dans l'application, et vous pouvez administrer votre base de données directement via votre navigateur.

De manière générale, on peut noter que MySQL est le choix de ceux qui ont besoin d'un SGBD pour un projet de petite ou moyenne taille, rapide et simple à utiliser et sans difficultés d'administration.


PostgreSQL

Ce système de gestion de base de données distribué librement appartient au type de SGBD objet-relationnel. Comme MySQL, PostgreSQL est basé sur le langage SQL, mais contrairement à MySQL, PostgreSQL prend en charge la norme SQL-2011. Ce SGBD n'a aucune restriction sur la taille maximale de la base de données, ni sur le nombre maximum d'enregistrements ou d'index dans la table.

Si nous parlons des avantages de PostgreSQL, il s'agit bien sûr de la fiabilité des transactions et des réplications, de la possibilité d'héritage et d'une extensibilité facile. PostgreSQL prend en charge diverses extensions et variantes de langages de programmation telles que PL/Perl, PL/Python et PL/Java. Il est également possible de charger des modules compatibles C.

Beaucoup de gens notent que, contrairement à MySQL, ce SGBD dispose d'une documentation bonne et détaillée qui fournit des réponses à presque toutes les questions.

Le fait qu'il s'agisse d'un SGBD plus grand que MySQL est également indiqué par le fait que PostgreSQL est périodiquement comparé à un système de gestion de données aussi puissant qu'Oracle.

Tout cela nous permet de parler de PostgreSQL comme de l'un des SGBD les plus avancés du moment.


SQLite

À l'heure actuelle, il s'agit de l'un des SGBD les plus compacts ; il est également intégré et relationnel. SQLite vous permet de stocker toutes les données dans un seul fichier et, en raison de sa petite taille, se distingue par des performances enviables. SQLite diffère considérablement de MySQL et PostgreSQL par sa structure : le moteur et l'interface de ce SGBD sont dans la même bibliothèque - et c'est ce qui permet d'exécuter toutes les requêtes très rapidement. D'autres SGBD (MySQL, PostgreSQL, Oracle, etc.) utilisent le paradigme client-serveur, lorsque l'interaction se produit via un protocole réseau.

Les inconvénients incluent l'absence de système utilisateur et la possibilité d'augmenter la productivité.

SQLite peut être recommandé pour une utilisation dans des projets où vous devez pouvoir migrer rapidement une application et où l'évolutivité n'est pas nécessaire.


Oracle

Ce SGBD est de type objet-relationnel. Le nom vient du nom de la société qui a développé ce système, Oracle. Outre SQL, le SGBD utilise une extension procédurale appelée PL/SQL, ainsi que le langage Java.

Oracle est un système stable depuis des décennies. Il est donc choisi par les grandes entreprises pour lesquelles la fiabilité de la récupération après une panne, une procédure de sauvegarde rationalisée, la capacité d'évolutivité et d'autres fonctionnalités précieuses sont importantes. De plus, ce SGBD offre une excellente sécurité et une protection efficace des données.

Contrairement aux autres SGBD, le coût d'achat et d'utilisation d'Oracle est assez élevé, ce qui constitue souvent un obstacle important à son utilisation dans les petites entreprises. C'est probablement aussi la raison pour laquelle Oracle n'occupe que la 6ème place dans le classement 2016 des SGBD en Russie.



MongoDB

Ce SGBD est différent en ce qu'il est conçu pour stocker des structures de données hiérarchiques, et c'est pourquoi il est appelé orienté document (il s'agit d'un stockage de documents sans utiliser de tables ni de schémas). MongoDB est open source.

À l'aide d'un identifiant, vous pouvez effectuer des opérations rapides sur un objet ; Ce SGBD fonctionne également bien dans les interactions complexes. Tout d'abord, nous parlons de performances - dans certains cas, une application écrite en MongoDB s'exécutera plus rapidement que la même application utilisant SQL, car MongoDB appartient à la classe SGBD NoSQL et utilise à la place de SQL un langage de requête d'objet, beaucoup plus léger que SQL.

Cependant, ce langage a aussi ses limites et MongoDB doit donc être utilisé dans les cas où des sélections complexes et non triviales ne sont pas nécessaires.

Au lieu d'une conclusion

Le choix d'un SGBD est un point important lors de la création de votre ressource. Partez de vos tâches et capacités, essayez d’expérimenter pour trouver exactement l’option qui sera la plus adaptée.

Pour utiliser avec succès ce logiciel, il est nécessaire de sélectionner correctement le mode de fonctionnement approprié. La connaissance de la compatibilité 1C avec différentes bases de données sera également utile dans la pratique. Les éléments de cet article vous aideront à configurer plus précisément le fonctionnement des applications en tenant compte des exigences d'une entreprise spécifique.

Modes de fonctionnement et applications client

Dans la version la plus simple de la configuration du système, il est recommandé d'utiliser un fichier spécial : « 1Cv8.1CD ». Il stocke les nouvelles informations utilisateur, enregistre les modifications dans les registres et les paramètres individuels effectués. Cette méthode est facile à utiliser. Sa fonctionnalité est disponible sans frais supplémentaires. Le seul inconvénient majeur est le nombre limité d’utilisateurs, pas plus de 10.

Important! Un ordinateur séparé est alloué pour stocker le fichier « 1Cv8.1CD » lui-même. Il sera ensuite accessible à tous les utilisateurs du réseau local, qui pourront travailler avec l'espace disque. Dans ce cas, le mode client-serveur est simulé.

Nous fournissons des informations qui permettront d'évaluer plus précisément l'adéquation de ce choix à la résolution de certains problèmes :

  • La structure du fichier mentionné ci-dessus est tabulaire. La taille de chaque bloc individuel est limitée à 4 Go ;
  • Si des versions « plus jeunes » de 1C sont utilisées, inférieures à 8.3, alors l'exécution correcte de certaines tâches en mode automatique sera impossible. La limitation réside dans la nécessité de connecter des utilisateurs individuels ;
  • Dans cette option, vous ne pouvez pas valider plusieurs documents simultanément ;
  • Il n'offre pas un niveau de sécurité élevé. S'il le souhaite, n'importe quel utilisateur peut faire une copie du fichier principal dans lequel la base de données de l'entreprise est stockée.

Pour les projets de plus grande envergure, une organisation à part entière du travail en mode « client-serveur » est mieux adaptée. Listons ses fonctionnalités :

  • Cette option est conçue pour le fonctionnement simultané d'un grand nombre d'utilisateurs. Pour obtenir des performances suffisantes, différents systèmes de gestion de bases de données et serveurs regroupés en clusters sont utilisés ;
  • Ses paramètres de vitesse sont meilleurs par rapport à la version « fichier », qui permet de traiter plus rapidement de grandes quantités de données ;
  • Dans ce cas, il est plus facile d'installer et d'exploiter une sécurité moderne de l'information ;
  • Pour augmenter la puissance de calcul, il suffit d'ajouter le nombre requis de serveurs à un cluster spécifique.

En mode « client-serveur », une architecture standard à trois niveaux est utilisée. Celui du bas concerne les programmes utilisateur. À partir d'eux, des requêtes sont adressées aux serveurs du cluster. Si nécessaire, la mise en cache des données est activée. L'algorithme de traitement des demandes offre la possibilité de réponses immédiates. Pour obtenir des informations, sous le contrôle du gestionnaire de processus, le serveur forme une requête au SGBD. Les données parviennent au client via la chaîne inverse.

Conseil! Si des charges de pointe sont attendues, il est recommandé d'installer le nombre requis de serveurs opérationnels supplémentaires. Les demandes des utilisateurs leur seront automatiquement redirigées.

Pour passer de la version fichier à un mode « client-serveur » plus productif, il suffit de charger les anciennes données dans une archive spéciale. Ils sont ensuite stockés sur le serveur. Dans la section « Configuration » du programme 1C, vous pouvez voir quel mode est activé.

Applications clientes


1C permet de travailler avec plusieurs types de logiciels. Notons les caractéristiques de ces trois clients :

  • Thin – la réception/transmission des données s'effectue selon son propre protocole. Si https est utilisé, le serveur doit être configuré en conséquence.
  • Thick n'est utilisé que si les lignes de communication ont des performances suffisantes. Il est utilisé pour effectuer des opérations de débogage et de calcul et accéder à la base de données.
  • Le Web utilise des programmes qui s'exécutent dans un navigateur.

Important! L'application ne permet pas au développeur de résoudre des problèmes pratiques.

Si le mode « fichier » est utilisé, alors les données de 1Cv8.1CD sont accessibles directement, mais le Web n'est accessible que via le serveur. Lorsque vous travaillez avec un client léger, l'utilisation des deux chemins est acceptable. Dans la version « client-serveur », des schémas similaires sont utilisés, mais un lien supplémentaire est ajouté, combiné dans un cluster de serveurs. C'est de lui que certaines réponses arrivent promptement. Le cas échéant, la demande est adressée à un niveau supérieur, dans le SGBD.

Application de différents systèmes de gestion de bases de données

  • SGBD de fichiers :
    • Représentation de l'une des tables par les fichiers suivants : descriptions, enregistrements, index et valeurs ;
    • Chaque fichier n'occupe pas plus de 4 Go d'espace disque ;
    • La longueur de la clé est limitée à 1 920 octets ;
    • Un maximum de 256 champs peuvent être utilisés pour l'indexation.
  • PostgreSQL :
    • Si le mode de tri est croissant, les NULL sont situés en fin de liste ;
    • La vitesse de traitement des données dans ce SGBD diminue avec une augmentation significative de l'intensité des requêtes des utilisateurs ;
    • Les indicateurs de performance dépendent fortement des paramètres techniques correspondants des variateurs ;
    • Un algorithme spécial pour enregistrer chaque transaction augmente le niveau de fiabilité ;
    • L'utilisation intégrée d'alimentations sans coupure et de matrices RAID contribuera à prévenir les erreurs.
  • Microsoft SQL – le plus grand nombre de tables dans une requête ne doit pas dépasser 256 unités ;
  • Dans Oracle DB, comme PostgreSQL, après le tri par ordre croissant, NULL est défini à la fin de la liste. Dans ce SGBD, il est interdit de placer « Ordre » ou « Premier » dans la construction de sous-requête « Into ». Lorsque vous l'utilisez, vous devez travailler avec soin avec les statistiques du plan de requête. Ils ont un impact notable sur la stabilité de 1C ;
  • IBM DB2 :
    • NULL n'est pas un exposant typé ;
    • La valeur numérique ne doit pas dépasser 31 caractères ;
    • Un champ est limité à 1 Go ;
    • À mesure que le nombre de sous-requêtes augmente (dans une condition de jointure), une certaine dégradation des performances est possible.

La mise en œuvre correcte de 1C dans une entreprise est réalisée en tenant compte des informations présentées dans cet article.

La base de données de définitions (DB) est une collection nommée de données qui reflète l'état des objets et leurs relations dans le domaine considéré. Un système de gestion de base de données (SGBD) est un ensemble d'outils linguistiques et logiciels conçus pour créer, maintenir et partager une base de données avec de nombreux utilisateurs. L'utilisation d'un SGBD permet de créer des programmes indépendants des modalités de mise en œuvre du stockage des données sur des supports externes. Pour travailler avec une base de données, le SGBD doit offrir : la possibilité d'utiliser des moyens d'accès et de manipulation des données de la base de données ; travailler avec de grandes quantités de données ; rapidité de récupération des données ; l'intégrité logique des données (leur cohérence) ; fiabilité du stockage des données (possibilité de récupération suite à diverses pannes) ; la capacité d'autoriser et de différencier les pouvoirs des utilisateurs (protection contre les accès non autorisés). 2


Principales fonctions d'un SGBD 1. Gestion directe des données dans la mémoire externe Cette fonction comprend la fourniture des structures de mémoire externe nécessaires à la fois pour stocker les données directement incluses dans la base de données et à des fins de service, par exemple pour accélérer l'accès aux données dans certains cas. (généralement utilisé à cette fin). que dans les SGBD développés, les utilisateurs n'ont en aucun cas besoin de savoir si le SGBD utilise un système de fichiers et, si c'est le cas, comment les fichiers sont organisés. 2. Gestion des tampons RAM Les SGBD développés prennent en charge leur propre ensemble de tampons RAM avec leur propre discipline de remplacement de tampon. 3. Gestion des transactions Une transaction est une séquence d'opérations sur une base de données, considérée par le SGBD comme un tout. Soit la transaction s'exécute avec succès et le SGBD valide (COMMIT) les modifications de la base de données apportées par cette transaction dans la mémoire externe, soit aucune de ces modifications n'a d'effet sur l'état de la base de données. Le concept de transaction est nécessaire pour maintenir l'intégrité logique de la base de données. Le maintien du mécanisme de transaction est une condition préalable même pour les SGBD mono-utilisateur (si, bien sûr, un tel système mérite le nom de SGBD). Mais la notion de transaction est bien plus importante dans les SGBD multi-utilisateurs. 3


Principales fonctions d'un SGBD 4. Journalisation Le journal est une partie spéciale de la base de données, inaccessible aux utilisateurs du SGBD et entretenue avec un soin particulier (parfois deux copies du journal sont conservées, situées sur des disques physiques différents), qui reçoit les enregistrements de toutes les modifications. à la partie principale de la base de données. Dans différents SGBD, les modifications de la base de données sont enregistrées à différents niveaux : tantôt une entrée de journal correspond à une opération logique de changement de base de données, tantôt à une opération interne minimale de modification d'une page mémoire externe ; certains systèmes utilisent les deux approches simultanément. 5. Prise en charge des langages de base de données Langage de définition de schéma de base de données (SDL - Schema Definition Language) Langage de manipulation de données (DML - Data Manipulation Language) Langage SQL (Structured Query Language) : permet de définir un schéma de base de données relationnelle et de manipuler des données (implémente SDL et DML) contient des moyens spéciaux pour déterminer les restrictions d'intégrité de la base de données autorise l'accès aux objets de la base de données 4


Composants du noyau du SGBD, qui est responsable de la gestion des données dans la mémoire externe et RAM, et de la journalisation, un processeur de langage de base de données, qui optimise les demandes de récupération et de modification des données et crée, en règle générale, un code interne exécutable indépendant de la machine, un runtime sous-système de support, qui interprète les programmes de manipulation de données qui créent une interface utilisateur avec le SGBD ainsi que les programmes de service (utilitaires externes) qui fournissent un certain nombre de fonctionnalités supplémentaires pour la maintenance du système d'information. 5


Architecture du SGBD Un modèle à trois niveaux de système de gestion de base de données, proposé par l'ANSI (American National Standards Institute). Cette architecture permet une indépendance logique (entre les niveaux 1 et 2) et physique (entre les niveaux 2 et 3) lors du travail avec des données. L'identification du niveau conceptuel a permis de développer un appareil de gestion centralisée de bases de données. Couche de modèle externe Couche physique 6


Le niveau des modèles externes est le niveau supérieur, où chaque modèle a sa propre « vision » des données. Ce niveau définit la vue de la base de données d'application individuelle. Chaque application voit et traite uniquement les données nécessaires à cette application particulière. Le niveau conceptuel est le lien central de contrôle, ici la base de données est présentée sous sa forme la plus générale, qui regroupe les données utilisées par toutes les applications fonctionnant avec cette base de données. En fait, le niveau conceptuel reflète un modèle généralisé du domaine (objets du monde réel) pour lequel la base de données a été créée. Comme tout modèle, un modèle conceptuel reflète uniquement les caractéristiques significatives, du point de vue du traitement, des objets du monde réel. La couche physique est constituée des données elles-mêmes, situées dans des fichiers ou dans des structures de pages situées sur des supports de stockage externes. 7




Architecture du serveur de fichiers 9


Serveur de fichiers SGBD Les fichiers de données sont situés de manière centralisée sur un serveur de fichiers. Le SGBD est situé sur chaque ordinateur client. Le SGBD accède aux données via un réseau local. La synchronisation des lectures et des mises à jour s'effectue à l'aide de verrous de fichiers. L'avantage de cette architecture est la faible charge CPU sur le serveur. Inconvénients : charge du réseau local potentiellement élevée ; difficulté de gestion centralisée; difficulté à garantir des caractéristiques aussi importantes qu’une fiabilité, une disponibilité et une sécurité élevées. Ils sont le plus souvent utilisés dans les applications locales utilisant des fonctions de gestion de bases de données. Exemples : Microsoft Access, Paradox, dBase, FoxPro, Visual FoxProMicrosoft AccessParadoxdBaseFoxProVisual FoxPro 10


Architecture client-serveur 11


SGBD client-serveur Un SGBD client-serveur se trouve sur le serveur avec la base de données et permet d'accéder directement à la base de données, en mode exclusif. Toutes les demandes des clients pour le traitement des données sont traitées de manière centralisée par le SGBD client-serveur. L'inconvénient du SGBD client-serveur réside dans les exigences accrues pour le serveur. Avantages : charge du réseau local potentiellement réduite ; commodité d'une gestion centralisée; commodité de fournir des caractéristiques aussi importantes qu'une fiabilité élevée, une disponibilité élevée et une sécurité élevée. Exemples : Oracle, Firebird, Interbase, IBM DB2, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, LINTER.OracleFirebirdInterbaseIBM DB2MS SQL ServerSybase Adaptive Server EnterprisePostgreSQLMySQLCachéLINTER 12


SGBD intégré Peut être fourni en tant que composant de certains produits logiciels, sans nécessiter de procédure d'auto-installation. Conçu pour le stockage local des données d'application et non destiné à une utilisation partagée sur un réseau. Physiquement, il est le plus souvent implémenté sous la forme d’une bibliothèque de plug-ins. L'accès aux données du côté application peut se faire via SQL ou via des interfaces de programme spéciales. Exemples : OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, MySQL, Sav Zigzag, Microsoft SQL Server Compact, LINTER.OpenEdgeSQLiteBerkeleyDBFirebird EmbeddedMySQLSav Zigzag Microsoft SQL Server CompactLINTER 13


Séparation des fonctions entre le serveur et le client Fonctions de l'application client : Envoi de requêtes au serveur. Interprétation des résultats de requête reçus du serveur. Présenter les résultats à l'utilisateur sous une forme (interface utilisateur). Fonctions de la partie serveur : Réception des requêtes des applications clientes. Interprétation des demandes. Optimisation et exécution des requêtes de base de données. Envoi des résultats à l'application client. Assurer un système de sécurité et de contrôle d’accès. Gestion de l'intégrité des bases de données. Implémentation de la stabilité du mode de fonctionnement multi-utilisateurs. 14


Les SGBD locaux modernes sont utilisés pour des tâches relativement petites (petit volume de données traitées, petit nombre d'utilisateurs), ont une architecture relativement simplifiée, notamment, ils fonctionnent en mode serveur de fichiers, ne supportent pas toutes les fonctions possibles du SGBD (par exemple, un le journal des transactions n'est pas tenu à jour, il n'y a aucune possibilité de récupération automatique de la base de données après des pannes, etc.) dBase III – PLUS, Clipper (Nantucket Inc.), FoxPro (Fox Software), FoxBase+ (Fox Software), Visual FoxPro (Microsoft), PARADOX (Borland International) Microsoft Access (société Microsoft). 15




Administration de base de données L'administration de base de données est une fonction de gestion de base de données. La personne responsable de l'administration de la base de données est appelée un administrateur de base de données (DBA). Un administrateur de base de données (DBA) ou administrateur de base de données (DBA) est une personne responsable du développement des exigences de base de données, de sa conception, de sa mise en œuvre, de son utilisation et de sa maintenance efficaces, y compris la gestion des comptes d'utilisateurs de base de données et la protection contre les accès non autorisés, ainsi que la prise en charge de l'intégrité de la base de données. 17


Tâches de l'administrateur de base de données 1. Conception de base de données. 2. Optimisation des performances de la base de données. 3. Fournir et contrôler l'accès à la base de données. 4. Assurer la sécurité de la base de données. 5. Sauvegarde et récupération de la base de données. 6. Assurer l'intégrité de la base de données. 7. Assurer la transition vers une nouvelle version du SGBD. 18


Spécialisations d'administrateur de base de données 1. Administrateur système. 2. Architecte de base de données. 3. Analyste de bases de données. 4. Développeur de modèles de données. 5. Administrateur d'applications. 6. Administrateur de base de données orienté problèmes. 7. Analyste des performances. 8. Administrateur d'entrepôt de données. 19