IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

[architecture] choix d'une ou plusieurs bases pour plusieurs applications


Sujet :

Administration SQL Server

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [architecture] choix d'une ou plusieurs bases pour plusieurs applications
    Bonjour,

    Ma première question ici, est sans doute une question de débutant, mais je n'y ai pas encore trouvé réponse. Il s'agit plus d'une question d'architecture générale, mais je ne vois pas ou la poster et comme je travaille sur du SQLServer c'est sans doute le meilleur endroit.

    Quels critères pour choisir d'avoir une ou plusieurs bases de données ? (sécurité, volumétrie, redondances des données, maintenance ...).
    Attention, je ne cherche pas des réponses dans un cas particulier précis, mais à avoir vos points de vue sur la question d'une manière générale. Quels arguments en faveur d'un choix ou d'un autre etc.

    Je m'explique, j'ai plusieurs applications utilisant des bases de données. Certaines applications très similaires mais ayant chacune leur propre base. Je reprends un système existant et vais le faire évoluer en y ajoutant de nouvelles applications. Ce serait sans doute le bon moment pour remettre a plat pas mal de choses d'ou ma question... une nouvelle base pour une nouvelle application ? Faire un travail de migration des anciennes applications pour consolider une seule base ? Rester sur l'existant ?

    D'un côté, une seule base permettrait de factoriser les informations redondantes d'une application à l'autre, d'éviter les saisies multiples etc. bref du pont de vue de la pertinence et de l'exploitation des données ce serait mieux. Même si cela demande sans doute plus de travail de conception/normalisation pour minimiser les problèmes.

    D'un autre côté, une seule base a sans doutes des inconvénients non ? Admettons que les volumes de données soient énormes ... les opérations de sauvegarde, de maintenance, les logs etc le seront également. Donc autre question, le volume de données (et d'entrées/sorties) est il à prendre en compte et à partir de quelle volumétrie doit on en prendre compte ?

    Quels autres critères faut il analyser pour se prononcer en faveur d'une seule base ? D'une base par application, ou d'un autre découpage par fonction par exemple ou autre ?

    Merci d'avance aux experts pour leurs lumières.

    Et désolé si je ne post pas au bon endroit, mais je n'ai pas vu de rubrique pour une question aussi générale.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Si fonctionnellement les bases sont indépendantes, alors vous devez faire plusieurs bases.
    Si les bases sont fonctionnellement dépendantes, alors mieux vaut ne faire qu'une seule base. En effet ceci mutualisera le référentiel de données et évitera donc la redondance et pire la désynchronisation des informations lié à la redondance (deux informations différentes alors que la même est attendue).
    Les problématique secondaires - volumétrie, indépendances logiques, sauvegardes à périodicité distinctes, sécurité... - se règlent soit au niveau logique, soit au niveau physique à l'aide de :
    1) les espaces de stockage physiques (FILEGROUP, FILE, PARTITION...)
    2) l'organisation des disques physiques (niveau de RAID, conception des LUN sur les SAN...)
    3) les espaces de stockage logique (SCHEMA SQL)
    4) une certaine rigueur dans l'administration et la gestion de la sécurité.

    A lire sur les aspects physique du stockage : http://blog.developpez.com/sqlpro/p8...t-le-stocakge/
    A lire sur l'utilité des schéma SQL : http://blog.developpez.com/sqlpro/p5...es-schema-sql/

    Votre post est tout à fait légitime ici !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 758
    Points : 1 069
    Points
    1 069
    Par défaut
    Citation Envoyé par nieufhopla Voir le message
    Quels autres critères faut il analyser pour se prononcer en faveur d'une seule base ?
    La consistance de la sauvegarde par exemple: comment fais-tu pour restaurer 10 bases de données à un même état consistant dans le temps ? Il y a des outils pour séparer logiquement ou physiquement des données dans une même base (schémas, partitions,multiples groupes de fichiers). Tu as raison cependant, il y a un gros travail d'étude en amont si tu pars de ce côté là.

    David B.
    David B.

  4. #4
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    On parle ici de mutualisation. Soyons donc clair sur les termes.

    Vous souhaitez mutualiser des instances ou des bases de données ?

    La mutualisation de base n'apporte pas grand chose, si ce n'est de la complexité ... et un risque majeur si tous les composants de la base n'évoluent pas en même temps.

    La mutualisation d'instances est possible, et bien plus simple sous MS-SQL que, par exemple, sous Oracle. Il y a en effet relativement peu de porosité entre les bases de données, surtout avec les dernières versions de MS-SQL (je pense principalement au gestionnaire de ressources permettant d'éviter qu'une application ne vampirise toutes les ressources d'une instance).

    Elle a certains avantages
    - baisse du coût des licences (pour microsoft, ainsi que pour tous les outils périphériques (ex. backups, bandes,... )
    - baisse du coût matériel (bien qu'il faille alors se diriger vers un serveur un peu plus musclé)
    - baisse de la charge d'administration
    - aisance à s'orienter vers des solutions de haute dispo
    - etc...

    Et elle a certaines contraintes
    - l'instance mutualisée n'aura qu'un seul type de paramètres systèmes (il vaut donc mieux éviter de mélanger de l BI avec de l'OLTP)
    - l'arrêt de l'instance paralysera toutes les applications (d'où l'intérêt d'une solution à haute dispo)
    - versionning : si vous migrez vers une version ultérieur, la migration devra se faire en bloc pour toutes vos bases.
    - etc

    Ceci étant dit, votre choix n'est pas inscrit dans le marbre : en tout temps, si vous maîtrisez les datasources de chacune de vos applications, il vous sera possible de redéplacer une base qui poserait problème.
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par fadace Voir le message
    Et elle a certaines contraintes
    - l'instance mutualisée n'aura qu'un seul type de paramètres systèmes (il vaut donc mieux éviter de mélanger de l BI avec de l'OLTP)
    - l'arrêt de l'instance paralysera toutes les applications (d'où l'intérêt d'une solution à haute dispo)
    - versionning : si vous migrez vers une version ultérieur, la migration devra se faire en bloc pour toutes vos bases.
    1) l'instance mutualisée n'aura qu'un seul type de paramètres systèmes à modérer avec l'apparition du gouverneur de ressources.
    2) l'arrêt de l'instance paralysera toutes les applications Comme tu l'as dit les solution de haute dispo comme mirroring, clustering, log shipping ou encore capture d'IO (genre double take) font que ceci est peu important
    3) versionning : c'est le seul véritable problème !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Wouhhh ça dépote, merci pour ces réponses si rapides.

    Ok pour la question de monté de version... bon ce n'est pas non plus quelque chose que l'on fait tous les jours, et cela se prépare sur des serveurs de pré-production à l'avance.

    Mon interrogation reste au niveau de la sécurité sur le fait d'avoir une seule base. Le risque se porte sur toutes les applications. Il sera toujours plus simple de corrompre un base que N...



    Merci également pour les liens forts instructifs !

  7. #7
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    si la sécurité vous préoccupe, suivez ce cours : http://www.orsys.fr/formation-sql-se...5-securite.asp

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Choix d'une adresse Image base pour les DLL
    Par zano972 dans le forum Débuter
    Réponses: 3
    Dernier message: 10/10/2012, 22h23
  2. Réponses: 1
    Dernier message: 18/06/2009, 09h14
  3. Réponses: 1
    Dernier message: 18/06/2009, 09h14
  4. Réponses: 1
    Dernier message: 19/02/2008, 11h21
  5. Réponses: 2
    Dernier message: 30/06/2006, 16h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo