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

Décisions SGBD Discussion :

SGBDR et scalabilité horizontale


Sujet :

Décisions SGBD

  1. #1
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut SGBDR et scalabilité horizontale
    Bonjour à tous,

    je lis pas mal de chose sur le NoSQL en ce moment et un avantage revient souvent, c'est la scalabilité horizontal des SGBD NoSQL.

    Pourtant il me semble que la réplication se fait déja sur du SGBDR non?
    Load balancer..., n'est ce pas de la scalabilité horizontale?
    Pourquoi c'est plus difficile (impossible) sur des SGBDR?

    Merci à tous.

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Points : 32
    Points
    32
    Par défaut
    La scalabilité horizontale, c'est l'augmentation de performances par l'ajout de PC de relativement faible coût.

    C'est rendu possible grâce aux bases de données open source gratuites, qui ne nécessitent pas une licence/CPU.
    Les licences des bases de données commerciales sont tellement élevées (plusieurs dizaines de k€/CPU) que l'offre open source devient très intéressante pour beaucoup d'entreprises.

    Ça n'a pas grand chose à voir avec la réplication, si ce n'est que cette dernière implique un 2e CPU, donc une 2e licence pour les produits commerciaux.

  3. #3
    Membre éprouvé Avatar de Jester
    Inscrit en
    Septembre 2003
    Messages
    813
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 813
    Points : 1 058
    Points
    1 058
    Par défaut
    La structure de base des NoSQL est en général le MPP et shared nothing. Cela permet de passager à l'échelle en augmentant le nombre de noeud mais à contrario donne des fonctionnalités plus pauvres car la communication entre les deux devient plus complexe. C'est basé sur le sharding MySQL manuel classique, les client pair sur une instance, les clients impair sur une autre. Si vous voulez faire une opération sur des clients pairs et impairs en même temps ... ça ce complique.

    Sur les SGBD classiques on a bien souvent que des copies. Donc si les données ne tiennent pas sur un serveur, elles ne tiennent pas sur 2 non plus.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Citation Envoyé par Jester Voir le message
    Sur les SGBD classiques on a bien souvent que des copies. Donc si les données ne tiennent pas sur un serveur, elles ne tiennent pas sur 2 non plus.
    Je n'ai pas bien compris cette phrase.
    Cela veut dire que les suppréssions et mises à jour ne sont pas reproduites (immédiatement) sur les copies ?

    Comment ça les données ne tiennent pas sur un serveur ?


    Edit : Je viens de me rendre compte que j'ai confondu 2 termes. En parlant de réplication je voulais parler de load balancing.

  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 756
    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 756
    Points : 52 534
    Points
    52 534
    Billets dans le blog
    5
    Par défaut
    Non, les copies de données ne sont jamais synchrones dans les bases de données noSQL vu que c'est pas transactionnel par principe. Vous n'avez donc aucune garantie d'aucune sorte. Néanmoins, c'est généralement assez rapide.
    par exemple Amazon annonce en moyenne une seconde pour mettre à jour les nœuds.

    Le load balancing c'est différent. Certains SGBDR le font très bien. par exemple SQL Server permet de faire du LB, par partitionnement de certaines données. Ce qui est fait sur Fnac.com

    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
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Le load balancing c'est différent. Certains SGBDR le font très bien. par exemple SQL Server permet de faire du LB, par partitionnement de certaines données. Ce qui est fait sur Fnac.com

    A +
    En quoi est-ce différent?
    Le principe est bien de répartir la charge sur plusieurs serveurs non?
    Peut-on ici parler de scalabilité horizontale?

  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 756
    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 756
    Points : 52 534
    Points
    52 534
    Billets dans le blog
    5
    Par défaut
    Non, les concepts diffèrent.
    Par exemple sur fnac.com il y a n serveur SGBDR (MS SQL Server) se partageant le front office (clients, commandes...); Tant qu'un client navigue anonymement (il recherche un produit par exemple et lit les commentaires) il est envoyé sur le serveur le moins chargé à l'instant t. Ainsi de hit en hit il passe de serveur en serveur grâce au "load balancing".
    Dès qu'il est authentifié (il a donné son mail et son mot de passe) on calcule un hash sur ces informations et un modulo l'envoi sur le serveur adéquat sur lequel il existe, mettons le serveur 7 (c'est le seul serveur sur lequel existe son compte).

    Comme vous le voyez il n'est pas utile de répliquer toutes les données sur tous les serveurs :
    • Les produits sont répliquées deux fois par jour entre le FO et le BO
    • Les commentaires sont répliqués entre les serveurs FO à intervalle régulier dans la journée.
    • Les commandes nouvelles sont répliquées toutes les 5 minutes vers le BO.

    Cela s’appelle de l'architecture de données !

    En tout il doit y avoir une quinzaine de serveurs entre le FO et le BO
    + la redondance.

    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/ * * * * *

  8. #8
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Merci, j'ai compris.

    J'en reviens au NoSQL.

    On associe souvent les termes "Big Data" et "NoSQL" parce que scalabilité horizontale...
    Mais si j'ai bien compris, la répartition des données sur plusieurs serveurs est utile uniquement si les demandes de connections sont très nombreuses, peu importe la quantité de données que contiennent ces bases non ?

  9. #9
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 756
    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 756
    Points : 52 534
    Points
    52 534
    Billets dans le blog
    5
    Par défaut
    Non. Je dirais que les systèmes NoSQL ne répondent pas du tout aux mêmes besoins que les SGBDR.
    • Si besoin de transactions (en général liée à l'informatique de gestion : banque, assurance, compta, ventes...) alors base de données transactionnelle donc SGBD Relationnel.
    • Si pas besoin de transactions (en général lié à l'informatique documentaire ou ludique : newsgroup, réseaux sociaux, blogs...) alors pas forcément besoin d'un SSGBDR.

    La plupart du temps, les gros sites utilisent les deux (exemple Amazon utilise des SGBDR pour tout ce qui est commandes, paiement, facture et stock).

    Les histoire de volumétrie ne sont que des épi phénomènes qui dépendant de la façon dont on compte les données. Par exemple pour Pann Starrs qui utilise une base de données SQL Server répartie sur 8 serveur, il y a à ce jour plus de 4 Peta octets de données dans les bases, sans compter les images numériques stockées en dehors de la base....
    Les systèmes NoSQL ayant l'habitude de présenter leurs exploits en comptabilisant aussi ces fichiers externes, sous prétexte que l'information y est "déstructurée" !!!

    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/ * * * * *

  10. #10
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Non. Je dirais que les systèmes NoSQL ne répondent pas du tout aux mêmes besoins que les SGBDR.
    Ok, donc quels sont pour toi les besoins auquels réponds le NoSQL?

    Merci

  11. #11
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 756
    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 756
    Points : 52 534
    Points
    52 534
    Billets dans le blog
    5
    Par défaut
    Des besoins de stockage et de listage de données semi structurées (XML par exemple) ou non structurées : document électronique de toute nature, persistance d'objet (JSON par exemple).

    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/ * * * * *

  12. #12
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Ok donc NoSQL pour les données semi ou non structurées.

    Mais pour pouvoir les stocker ces données, il faut bien les structurer avant.
    Par exemple si je récupère des infos et que je veux les stocker dans une base MongoDB, il faut bien qu'à un moment je crée le document qui sera stocké et donc que je structure plus ou moins ces données.
    Dans ce cas, pourquoi est-ce que je ne pourrai pas les stocker dans un SQGBR ?

  13. #13
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 756
    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 756
    Points : 52 534
    Points
    52 534
    Billets dans le blog
    5
    Par défaut
    Parce que tu n'es pas censé connaître la structure AVANT d'avoir le document.

    Si je t’envoie un document XML il est bien structuré, mais de ma manière. Si je ne te donne pas la "grammaire" de ce doc, alors tu ne pourra pas l'atomiser dans tes tables !

    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/ * * * * *

  14. #14
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Ok, je comprends.

    Merci.

Discussions similaires

  1. Optimisation de votre SGBDR et de vos requêtes...
    Par SQLpro dans le forum Langage SQL
    Réponses: 35
    Dernier message: 11/01/2013, 11h49
  2. choix sgbdr (encore!)
    Par _Gabriel_ dans le forum Décisions SGBD
    Réponses: 9
    Dernier message: 23/03/2004, 10h39
  3. Alimentation d'un SGBDR depuis un autre SGBR
    Par samyl dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 17/09/2003, 15h57
  4. LES TECHNIQUES DES SGBDR / MySQL rapide ???
    Par SQLpro dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/09/2003, 11h16
  5. VGA : synchro verticale (et horizontale ?)
    Par Blustuff dans le forum Assembleur
    Réponses: 19
    Dernier message: 21/06/2003, 08h46

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