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

NoSQL Discussion :

Apprendre les bases de données CouchDB : Le guide authentique


Sujet :

NoSQL

  1. #1
    Community Manager

    Profil pro
    Inscrit en
    Avril 2014
    Messages
    4 207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2014
    Messages : 4 207
    Points : 13 064
    Points
    13 064
    Par défaut Apprendre les bases de données CouchDB : Le guide authentique
    Bonjour

    Je vous présente un tutoriel pour apprendre les bases de données avec CouchDB : CouchDB : Le guide authentique - Introduction

    Citation Envoyé par Introduction
    Apache CouchDB est une nouvelle espèce de système de gestion de bases de données. Ce chapitre explique les raisons du besoin de nouveaux systèmes ainsi que les motivations sous-jacentes à la conception de CouchDB.

    En tant que développeurs de CouchDB, nous sommes bien entendu très excités à l'idée de pouvoir utiliser CouchDB. Tout au long de ce chapitre, nous partagerons avec vous les raisons de notre enthousiasme. Nous vous montrerons pourquoi le modèle de document sans squelette de CouchDB est une meilleure solution pour les applications classiques, en quoi le langage de requête qu'il intègre par défaut est un moyen puissant d'utilisation et de traitement de vos données, et en quoi la conception même de CouchDB se prête à la modularisation et au passage à l'échelle.

  2. #2
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut Avis
    Bonjour,

    Plutôt bien comme introduction, mais il manque un partie essentielle qui fait une des forces de CouchDB, le Reduce,
    ne pas le montrer est je crois une perte d'information essentielle pour le sujet.
    Une exemple a la clef est simple, il suffit de rajouter _count ou _stats dans la partie reduce.
    exemple https://wiki.apache.org/couchdb/Buil...duce_Functions

    J'utilise ces fonctions d'agrégations dans un cadre décisionnel, et franchement c'est plutôt top.

    Olivier

  3. #3
    Membre éprouvé Avatar de noOneIsInnocent
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 037
    Points : 1 161
    Points
    1 161
    Par défaut
    Bonjour

    J'ai eu l'occasion d'utiliser CouchDB pour un projet assez conséquent et j'avoue que j'ai été déçu des API Java qui ne gère pas la gestion concurrentielle pour éviter les conflits de révision. J’espère bientôt une prise en compte dans le projet Spring Data
    Et le second point est que Futon n'est à mon sens pas très pratique à utiliser, si ce n'est pour les map

    Effectivement la fonctionnalité de Reduce est vraiment intéressante à exploiter

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 37
    Points : 37
    Points
    37
    Par défaut
    Bonsoir,

    L'introduction est bien mais je pense qu'il faudrait aussi d'un des points forts de CouchDb, l'interopérabilité avec d'autres dérivés comme PouchDB qui permet de synchroniser hors ligne une base CoucheDB avec un mobile, un navigateur, etc tout en bénéficiant des révisions et du système de résolution des conflits.

  5. #5
    Expert éminent sénior

    Avatar de Francis Walter
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2012
    Messages
    2 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 2 315
    Points : 26 889
    Points
    26 889
    Par défaut
    Bonsoir,

    Ce n'est que la partie 1, les autres parties viendront vite.
    Vous aussi vous pouvez nous aider à préparer les autres parties qui restent à publier (contactez-moi par mp)

  6. #6
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 108
    Points : 3 203
    Points
    3 203
    Par défaut
    Nous l'avons utilisé pour une projet sur N sites et dispositifs mobiles desynchronizé (tablette).

    Les positifs :
    - le modèle document permet plein de chose

    Les négatifs :
    - le modèle document n'est viable que pour des modèle de donnée simpliste avec tres peu de type de document différent.
    - les collisions entre les versions de document
    - aucune gestion des contraintes d'intégrité, en clair c'est a vous de réinventer le suppression en cascade, les document en référence null, etc... etc ...
    - la lenteur de recherche dans les documents un peu complexe
    - un Nieme language de requetage a apprendre ...
    - mode connecté/déconnecté pas viable en pratique a cause des gestions de versions et de l'absence de contrainte, les bases finissent dans un état d'intégrité douteux.


    CouchDB ne fait pas exception à la règle malheureusement, les bases NoSQL sont faites pour des niches tres spécifique qui ont besoin de moins d'une dizaine de type de document différent.

    J'ai pu jouer un peu avec d'autres bases : OrientDB, Casandra et dans une moindre mesure Neo4j et Titan.

    Les quelques nouveautés qu'apportent le nosql ne compense pas la quantité de chose perdue, dans le cas de CouchDB on pensait gagner du temps avec le support du mode déconnecté, mais au final tous les éléments manquant à 'bidouiller' part dessus couchdb on prit plus de temps que si on était parti d'une base sql.

    Ma recommandation est assez simple : passez votre chemin, restez sur une base traditionnelle

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