не могу понять определенный тип представления в couchdb - PullRequest
0 голосов
/ 04 ноября 2019

Мне трудно понять конкретное представление в одной из баз данных, над которыми я работаю. Вот представление:

{
  "_id": "_design/last_access",
  "language": "query",
  "views": {
    "last_accessed_on": {
      "map": {
        "fields": {
          "indexer.last_accessed_on": "asc"
        },
        "partial_filter_selector": {}
      },
      "reduce": "_count",
      "options": {
        "def": {
          "fields": [
            "indexer.last_access"
          ]
        }
      }
    }
  }
}

Обычно, когда у меня есть представления, у меня есть функция, которая выполняет излучение в части карты и в уменьшающей части, которая агрегирует, но вышеприведенное сильно отличается. Я ценю, если кто-нибудь может пролить свет на вышесказанное? что это такое? что это за вид, который не имеет излучения?

Ответы [ 2 ]

0 голосов
/ 04 ноября 2019

Этот документ определяет индекс, который можно использовать для ускорения Манго-запросов оценка.

В вашем случае вы определяете индекс по атрибуту "indexer.last_accessed_on" каждого документав вашей базе данных. Это похоже на выдачу этого атрибута для каждого документа в вашей базе данных (в индексе будут присутствовать только документы с атрибутом). Вы можете проверить синтаксис создания индекса здесь .

0 голосов
/ 04 ноября 2019

Первая подсказка:

Посмотрите на language представления:

  "language": "query",

Так что это вообще не JavaScript-представление. Это результат построения индекса Манго с конечной точкой / db / _index .

Что касается уменьшения, то оно использует встроенные функции . * 1013. *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...