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 :

Base de données et versionnage des données


Sujet :

Décisions SGBD

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2007
    Messages : 103
    Points : 66
    Points
    66
    Par défaut Base de données et versionnage des données
    Bonjour,

    Je cherche une base de données SQL ou NoSQL qui gère de manière native le versionnage des données ou enregistrements ainsi que l'accès à ceux ci.

    Je n'ai rien trouvé de concluant hormis des pattern pour des SGBD relationnels. Je préfèrerai une soltuion Open source qui gère ce mécanisme de manière transparent.


    Merci d'avance

  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 768
    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 768
    Points : 52 565
    Points
    52 565
    Billets dans le blog
    5
    Par défaut
    Qu'appelez vous le "versionnage" des données ?

    Si c'est pour suivre l'évolution des données dans le temps (INSERT, UPDATE, DELETE), il existe 2 outils pour 2 fonctions différentes :
    1) pour savoir ce qui a évolué dans un temps impartit, afin, par exemple, d'alimenter un DataWarehouse en mode différentiel
    2) pour suivre l'intégralité des valeurs de certaines tables de leur naissance (CREATE TABLE) jusqu'à ce la suppression des lignes n'interviennent.

    Dans le premier cas un outil de type CDC (Change Data Capture) suffit, dans le second cas il faut utiliser les "temporal tables" qui sont une fonctionnalité nouvelle de la norme SQL 2011.

    Hélas aucun de ces outils n'existent en version professionnelle et performante dans le libre !

    Exemple pour SQL Server :
    CDC : https://msdn.microsoft.com/fr-fr/lib...ql.120%29.aspx
    Change Tracking (un CDC plus léger) : https://msdn.microsoft.com/en-us/library/bb933875.aspx
    Temporal table : https://msdn.microsoft.com/en-us/library/dn935015.aspx

    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 du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2007
    Messages : 103
    Points : 66
    Points
    66
    Par défaut
    Bonjour et merci,

    Ce que j'appelle le versionning de données, c'est la possibilité de versionner les modifications sur les données (ajout, modification ou suppression). Mais c'est la possibilité de faire des requêtes en indiquant sur une version donnée et de pouvoir récupérer une donnée à un instant T.

    Du coup il me semble que la partie 2 est plus proche de ce que je recherche. J'ai regardé du côté de Postgresql mais il semble qu'il ne gère pas les tables temporels. Mais il semble qu'il existe des extensions http://pgxn.org/dist/temporal_tables

    Je vais jeté un coup d'oeil mais il semble que le standard SQL 2011 ne sois pas géré par beaucoup de SGBD...

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    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 768
    Points : 52 565
    Points
    52 565
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par LeCogiteur Voir le message
    Bonjour et merci,

    Ce que j'appelle le versionning de données, c'est la possibilité de versionner les modifications sur les données (ajout, modification ou suppression). Mais c'est la possibilité de faire des requêtes en indiquant sur une version donnée et de pouvoir récupérer une donnée à un instant T.

    Du coup il me semble que la partie 2 est plus proche de ce que je recherche. J'ai regardé du côté de Postgresql mais il semble qu'il ne gère pas les tables temporels. Mais il semble qu'il existe des extensions http://pgxn.org/dist/temporal_tables

    Je vais jeté un coup d'oeil mais il semble que le standard SQL 2011 ne sois pas géré par beaucoup de SGBD...
    Je suis en train d'écrire un article à ce sujet pour MS SQL Server (une cinquantaine de pages) et je termine par la comparaison avec les différents autres SGBDR.
    Grosso modo voici la situation :


    En résumé vraiment exploitable BD2 (mais hors de prix...) ou SQL Server 2016 !
    Ce dernier présentant une version gratuite SQL Server Express, certes limitée, mais incluant la fonctionnalité !

    En tout cas c'est supporté dans SQL Server 2016 et vous pouvez télécharger la version CTP 3 à cette URL pour les tests :
    https://www.microsoft.com/en-us/eval...ql-server-2016

    Je vais poster mon article dans une dizaine de jours dans mon blog : http://blog.developpez.com/sqlpro

    mais pour tout comprendre sur la complexité de la chose, lisez le bouquin de Snodgrass qui est à l'origine du concept :
    http://www.cs.arizona.edu/~rts/tdbbook.pdf
    Vous verrez que c'est assez complexe mine de rien et sans les bons opérateurs, c'est mission impossible avec des chausses-trappes comaque !

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

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2007
    Messages : 103
    Points : 66
    Points
    66
    Par défaut
    Merci pour ce retour;

    Effectivement, j'ai l'impression que la norme SQL 2011 n'est pas prête d'être opérationnelle prochainement sur la majorité des SGBD. Pour autant les tables temporelles sont séduisantes. Par contre SQL server est propriétaire. J'attendrai ton article.

    D'autres personnes ont un retour sur ce sujet sur les bases de données NoSQL?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    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 768
    Points : 52 565
    Points
    52 565
    Billets dans le blog
    5
    Par défaut
    SQL Server c'est du Microsoft. Depuis environ 2 ans il est en train de doubler Oracle sur tous les terrains. C'était déjà le cas depuis 2005 niveau sécurité, c'est maintenant le cas sur les performances et les fonctionnalités, vu qu'Oracle est en retard et financièrement tangent.... son action à perdu 10% depuis de le début de l'année !
    http://www.boursier.com/actions/cour...9X1054,US.html
    En comparaison MS :
    http://www.boursier.com/actions/cour...181045,US.html

    Pour rappel il existe des versions gratuites de SQL Server (SQL Server Express), certes limitées à des bases de 10 Go, mais avec au plus 32650 bases, soit plus de 320 To !

    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. Réponses: 1
    Dernier message: 03/02/2014, 11h44
  2. Réponses: 0
    Dernier message: 30/04/2012, 20h49
  3. Réponses: 6
    Dernier message: 22/03/2012, 12h24
  4. Réponses: 6
    Dernier message: 13/12/2010, 20h20
  5. Réponses: 2
    Dernier message: 06/06/2010, 15h15

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