41 votes

CouchDB un exemple du monde réel

Ce soir dans mon quotidien tech recherche sur Google je suis tombé sur couchDB, après avoir vu des tonnes de présentations sur la façon d'effectuer dix à cent fois meilleurs que n'importe quel RDBM, de la manière de nous sauver de SQL langues, des tables, des clés primaires et tellement plus. J'ai décidé moi-même de l'essayer moi-même. Seul problème, il semble que je suis incapable de comprendre comment il fonctionne.

Comme pour commencer, je voudrais le code d'un site web avec gestionnaire de contacts à l'aide de couchDB. Le projet permettrait à l'utilisateur de faire des trucs de base comme

  • Créer/ Modifier / Supprimer des contacts
  • voir une liste de leurs contacts commandés
  • effectuer une recherche sur plusieurs critères

Alors, comment dois-je commencer ?

Voici quelques une de mes pensées

  • créer une base de données par l'utilisateur comme juillet, Ann
  • dans les DB, ajouter un peu de document avec contact de type, le document devrait ressembler à ceci en premier lieu, voir le code 1
  • créer / modifier / supprimer est simple suffit à faire le PUT, POST, DELETE dans la bonne base de données
  • la recherche pourrait être traité par couchdb-lucene comme dnolen suggéré

maintenant, voici la partie la plus difficile, je ne comprends pas vraiment l'ensemble de la carte/réduire concept et comment je peux l'utiliser pour faire le travail que je faisais avec SQL. Également avec vue sur comment gérer la pagination, également groupement de.

Je voudrais construire un écran avec une pagination ensemble de liens à quelque chose comme ceci

John, Doe
Johny, Hallyday
Jon Skeet

A B C D E F **J** etc .... <-- ils sont en lien pour voir les personnes avec le prénom

comment dois-je créer pour ce faire, si vous pouvez fournir des échantillons, il serait merveilleux.


Contacter le document.

{
    type: 'contact',
    firstname: 'firstname',
    lastname: 'lastname',
    email: ['home': 'foobar@foobar.net', 'work': 'foobar@foobar-working.net'],
    phone: ['home': '+81 00 0000 0000'],
    address: []
    ... some other fields maybe ...
}

8voto

Brian Agnew Points 143181

IBM propose un excellent didacticiel , utilisant curl pour lire / écrire via l’ interface REST .

6voto

dnolen Points 12833

Votre application est assez facile à faire avec CouchDB. Vous auriez une base de données par utilisateur. Les contacts sont simplement des documents dans la base de données d'un utilisateur particulier. CRUD ne fait que parler à la base de données via HTTP. Vous pouvez créer des vues qui émettent des clés (nom, prénom) pour permettre le tri.

Pour une recherche puissante, je recommanderais couchdb-lucene.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X