2016-08-05 22 views
0

Muss CouchDB entweder einen großen View-Index erstellen oder neu erstellen, genügt es, den View-Pfad in der URL mit der '? Limit = 1' zu übergeben, so dass es nicht funktioniert Ich sende nicht alle Daten zurück? Oder wird das nur den Index für den ersten Datensatz erstellen? Mit anderen Worten, erstellt CouchDB immer den gesamten Index, egal, was die Abfrage war?Loading a CouchDB View Index

Antwort

1

Das erste Mal, wenn Sie eine CouchDB-Ansicht abfragen, wird der gesamte View-Index generiert, unabhängig davon, welche Suchanfrage Sie haben. (source: documentation) Auch wenn Sie limit=1 angeben, gibt es keine Möglichkeit, dass CouchDB weiß, welches Element zuerst in der Liste steht, bis der gesamte Index aktualisiert wurde.

Sobald der View-Index erstellt wurde, muss er nicht erneut erstellt werden, da er von diesem Punkt an nur inkrementell aktualisiert wird. Wenn Sie sich Sorgen darüber machen, dass Ihr erster Benutzer eine Strafe für die Abfrage einer Ansicht zahlen muss oder wenn Sie eine sehr große Datenbank haben, können Sie die Ansicht immer selbst abfragen, um sie in Ihrem eigenen Zeitrahmen zu starten.

Wenn Sie CouchDB Ansichten neu sind, würde ich sehr empfehlen, ihre guide to views zu lesen.

+0

Danke, Dominic. Genau das wollte ich wissen. Als ich über die Neuerstellung eines Ansichtsindexes gesprochen habe, meinte ich die Situation, in der sich der Code für die Ansicht ändert. Und das wollte ich ja wegen der Reaktionszeit-Strafe für den ersten Nutzer, die ich vermeiden wollte. – Westy