【问题标题】:CouchDB tag cloud viewCouchDB 标签云视图
【发布时间】:2011-11-22 16:01:00
【问题描述】:

鉴于我的 CouchDB 数据库中有一些文档,我希望能够获得按与每个标签关联的文档数量排序的标签列表。文档具有以下结构:

{
    "name": "Document Name 1",
    "description": "Document description",
    "tags": ["tag1", "tag2", "tag3"]
}

显然,我可以创建一个视图来列出每个标签以及与每个标签相关联的许多文档,如下所示:

function(doc) {
  if (doc.type == "Document") {
    for (tag in doc.tags) {
      emit(tag, 1)
    }
  }
};
function(keys, values, rereduce) {
  return sum(values);
}

这种方法的问题是标签名称将是此结果集中的键,因此我将无法按文档数量排序,也无法将结果限制为前 X 个标签。我觉得我遗漏了一些非常明显的东西,但仍然看不到解决方案。

【问题讨论】:

    标签: couchdb mapreduce tag-cloud


    【解决方案1】:

    【讨论】:

    • 感谢您的链接,这很有帮助。出于多种原因,在内存中排序或列表函数不起作用,包括数据集的大小,但将这些数据复制到单独的数据库或文档中会起作用。
    猜你喜欢
    • 1970-01-01
    • 2014-05-24
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-17
    • 2021-12-30
    相关资源
    最近更新 更多