couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Couchdb Wiki] Update of "ServeurDeVue" by BenoitC
Date Mon, 30 Jun 2008 15:44:52 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for change notification.

The following page has been changed by BenoitC:
http://wiki.apache.org/couchdb/ServeurDeVue

------------------------------------------------------------------------------
  
  == Le serveur de vue ==
  
- CouchDB délègue le calcul des ["Vues"] à des serveurs de requêtes externes. Il communique
avec eux à travers l'entrée/sortie standard à travers un protocole simple à base de lignes.
Le serveur de requêtes par défaut est en en Javascript, fonctionnant via Mozilla !SpiderMonkey.
Vous pouvez utiliser d'autre languages en modifiant la propriété ''language'' d'un document
design ou l'entête  Content-Type  d'une vue temporaire. 
+ CouchDB délègue le calcul des ["Vues"] à des serveurs de requêtes externes. Il communique
avec eux à travers l'entrée/sortie standard avec un ensemble de lignes. Le serveur de requêtes
par défaut est en en Javascript, fonctionnant via Mozilla !SpiderMonkey. Vous pouvez utiliser
d'autre languages en modifiant la propriété ''language''. Si la propriété ''language''
n'est pas renseignée, Javascript est utilisé par défaut.
  
+ Pour enregistrer un serveur de requête auprès de CouchDB, ajoutez une ligne pour chaque
serveur dans ''couch.ini''. La syntaxe est :
- CouchDB delegates computation of ["Views"] to external query servers. It communicates with
them over standard input/output, using a very simple, line-based protocol. The default query
server is written in Javascript, running via Mozilla !SpiderMonkey. You can use other languages
by setting a MIME type in the ''language'' property of a design document or the Content-Type
header of a temporary view. Design documents that do not specify a ''language'' property are
assumed to be of type ''text/javascript'', as are ad hoc queries that are ''POST''ed to ''_temp_view''
without a ''Content-Type'' header.
- 
- To register query servers with CouchDB, add a line for each server to ''couch.ini''. The
basic syntax is:
  
  {{{
  [Couch Query Servers]
  
- text/javascript=/usr/local/bin/couchjs -f /usr/local/share/couchdb/server/main.js
+ javascript=/usr/local/bin/couchjs -f /usr/local/share/couchdb/server/main.js
- text/ruby=/wherever/couchobject/bin/couch_ruby_view_requestor
+ ruby=/wherever/couchobject/bin/couch_ruby_view_requestor
  }}}
  
- == Basic API ==
+ == API ==
  
- This shows you how the view server implementation for your language should behave. If in
doubt, look at the ''share/server/main.js'' file in your CouchDB source tree for reference.
+ Vous allez trouver ici, comment doit se comporter un serveur de vue pour votre langage.
En cas de doute, référez vous au fichier ''share/server/main.js'' que vous pouvez trouvezr
dans les sources de CouchDB.
  
- CouchDB launches the view server and starts sending commands. The server responds according
to its evaluation of the commands. There are only three commands the view server needs to
understand.
+ CouchDB lance le serveur de vue et lui envoie des commandes. Le serveur lui répond en fonction
de son évaluation de la commande. Il ya seulement 3 commandes que le serveur de vue a besoin
de comprendre.
  
  === reset ===
  
- This resets the state of the view server and makes it forget all previous input. If applicable,
this is the point to run garbage collection.
+ Elle réinitialise le serveur de vue et lui fait supprimer toutes les entrées précedentes.
Le cas échéant, le ramasse-miette (garbage collector) peut être lançé.
  
- CouchDB sends:
+ CouchDB envoie :
  
  {{{
  ["reset"]\n
  }}}
  
- The view server responds:
+ Le serveur de vue répond :
  
  {{{
  true\n
@@ -43, +41 @@

  
  === add_fun ===
  
- When creating a view, the view server gets sent the view function for evaluation. The view
server should parse/compile/evaluate the function he receives to make it callable later. If
this fails, the view server returns an error. CouchDB might store several functions before
sending in any actual documents.
+ Lors de la création d'une vue, le serveur de vue reçoit la fonction de vue à évaluer.
Le serveur de vue doit analyser/compiler/évaluer la fonction qu'il reçoit et la rendre appelable.
Si cela échoue, le serveur de vue retourne une erreur. CouchDB peut parfois stocker plusieurs
fonctions avant d'envoyer des documents.
  
- CouchDB sends:
+ CouchDB envoie :
  
  {{{
  ["add_fun", "function(doc) { map(null, doc); }"]\n
  }}}
  
+ lorsque le serveur peut évaluer la fonction et la rendre appelable, il retourne :
- When the view server can evaluate the function and make it callable, it returns:
- 
  {{{
  true\n
  }}}
  
- If not:
+ Sinon :
  
  {{{
  {"error": "some_error_code", "reason": "error message"}\n
@@ -65, +62 @@

  
  === map_doc ===
  
- When the view function is stored in the view server, CouchDB starts sending in all the documents
in the database, one at a time. The view server calls the previously stored functions one
after another with the document and stores its result. When all functions have been called,
the result is returned as a JSON string.
+ Lorsque la fonction est enregistrée dans le serveur de vue, CouchDB commence à lui envoyer
tous les documents un par un. Le serveur de vue applique les fonctions précedemment enregistrées
l'une après l'autre sur le document et enregistre le résultat. Lorsque toutes les fonctions
ont été appelées, le résultat est retourné sous forme d'une chaine de caractères JSON.
  
- CouchDB sends:
+ CouchDB envoie :
  
  {{{
  ["map_doc", {"_id":"8877AFF9789988EE","_rev":46874684684,"field":"value","otherfield":"othervalue"}]\n
  }}}
  
+ Si la fonction définie ci-dessus est la seule enregistrée, le serveur de vue répond :
- If the function above is the only function stored, the views server answers:
- 
  {{{
  [[[null, {"_id":"8877AFF9789988EE", "_rev":46874684684, "field":"value", "otherfield":"othervalue"}]]]\n
  }}}
  
- That is, an array with the result for every function for the given document. If a document
is to be excluded from the View, the array should be empty.
+ C'est un tableau avec le résultat de chaque fonction sur le document. Si un document est
exclu de la vue, le tableau doit être vide.
+ 
  === reduce ===
  
- If the view has a {{{reduce}}} function defined, CouchDB will enter into the reduce phase.
The view server will receive a list of reduce functions and some map results on which it can
apply them. The map results are given in the form {{{[[key, id-of-doc], value]}}}.
+ Si la vue a une fonction {{{reduce}}} définie, CouchDB entre dans la phase de réduction.
Le serveur reçoit une liste des fonctions reduce et les résultats d'association (map) sur
lesquels ils doit les appliquer. Les résultats d'association sont donnés sous la forme {{{[[key,
id-of-doc], value]}}}.
  
- CouchDB sends:
+ CouchDB envoie :
  
  {{{
  ["reduce",["function(k, v) { return sum(v); }"],[[[1,"699b524273605d5d3e9d4fd0ff2cb272"],10],[[2,"c081d0f69c13d2ce2050d684c7ba2843"],20],[[null,"foobar"],3]]]
  }}}
  
+ Le serveur de vue répond :
- @@ Is there any guarantee on the ordering? The example appears unordered (null trailing)
- 
- The view-server answers:
  
  {{{
  [33]
  }}}
  
- Note that even though the view server receives the map results in the form {{{[[key, id-of-doc],
value]}}}, the function may receive them in a different form. For example, the JavaScript
view-server applies functions on the list of keys and the list of values.
+ Attention même si le serveur de vue reçoit les résultats d'association(map) sous la forme
{{{[[key, id-of-doc], value]}}},la fonction peut être reçue de différentes manières. Par
exemple, le serveur de vue Javascript applique les fonctions sur la liste des clés et sur
la liste des valeurs.
  
  === rereduce ===
  
  === log ===
  
- At any time, the view-server may send some information that will be saved in CouchDB's log
file. This is done by sending a special object with just one field, {{{log}}}, on a separate
line.
+ À n'importe quel moment, le serveur de vue peut envoyer des informations qui seront stockées
dans le serveur de log de CouchDB. Cela est réalisé par l'envoi d'un objet spécial avec
un seul champ {{{log}}} sur une ligne à part.
  
- The view-server sends
+ Le serveur de vue envoie :
  {{{
  {"log":"A kuku!"}
  }}}
  
- CouchDB answers nothing.
+ CouchDB ne répond rien.
  
- The following line will appear in {{{couch.log}}}, mutatis mutandum:
+ La ligne suivante apparaitra dans le fichier {{couch.log}}}, mutatis mutandum:
  {{{
  [Sun, 22 Jun 2008 22:51:25 GMT] [info] [<0.72.0>] Query Server Log Message: A kuku!
  }}}
  
- If you use the JavaScript view-server, you achieve this effect by calling the function {{{log}}}
in your view. To do the same thing in ClCouch, call {{{logit}}}.
+ Si vous utilisez le serveur de vue javascript, vous pouvez obtenir cela en envoyant la fonction
{{{log}}} dans votre vue. Pour faire la même chose dans ClCouch, appelez {{{logit}}}.
  
- == Implementations ==
+ == Mise en œuvres ==
  
    * [http://svn.apache.org/repos/asf/incubator/couchdb/trunk/share/server/main.js JavaScript]
(CouchDB native)
    * [http://common-lisp.net/cgi-bin/darcsweb/darcsweb.cgi?r=submarine-cl-couch;a=summary
Common Lisp]

Mime
View raw message