Hello,

J'ai 500k documents dans ma base de données couchDB, j'aimerai savoir si il est possible d'éviter de faire un _find sur la totalité des documents en créant un pré-filtre.

Créer un filtre comme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
  "index": {
    "partial_filter_selector": {
      "type": {
        "$eq": "installation"
      },
      "contract.country": {
        "$eq": "fr"
      }
    }
  },
  "ddoc" : "installation-fr",
  "type" : "json"
}
Ce filtre prendrait uniquement les documents avec type = "installation" et contract.country = "fr"

Le _find suivant retournerait uniquement les documents type=installations et contract.country=fr

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
{
   "selector": {},
   "use_index": "installation-fr"
}
Ainsi, mon selector s'appliquerait uniquement sur 5K documents plutot que les 500k de la base de données.