Cloudant数据库映射减少

时间:2015-06-24 23:33:22

标签: cloudant

我是cloudant,no-sql数据库的新手(我曾在mongodb工作过)

1)是否有任何cloudant ui来编写queires以找到用于开发的结果集。

2)如何在cloudant中创建map-reduce?..

你可以回复我或发表你的看法。

1 个答案:

答案 0 :(得分:1)

搜索索引是用JavaScript编写的(目前,Cloduant已经推出了他们自己的“Cloudant Query”,它有望更容易使用,但我还没有时间正确地尝试它。)

假设您的数据库中包含一个名为“UserName”的字段,并且您想要创建所有这些文档的视图。你可以编写这样的函数;

function(doc) {
   if ( typeof doc.UserName !== "undefined" ) {
      emit([doc.UserName], doc._id);
  }
}

例如(它将输出用户名和文档ID)

如果给定的用户名可以与多个文档相关联,则可以执行此操作,例如;

function(doc) {
   if ( typeof doc.UserName !== "undefined" ) {
      emit([doc.UserName,doc._id], 1);
  }
}

并使用内置的“count”或“sum”减少Cloudant提供的函数来计算给定用户名与之关联的文档数等。

您可以使用Cloudant DB信息中心中的UI执行查询或(我个人青睐)使用Postman(https://www.getpostman.com/)等工具

但有一句警告;你的JavaScript代码的错误和健全性检查几乎不存在,你只会知道当你点击“保存和构建索引”时某些东西不起作用,如果你正在努力这可能是一个很大的痛苦大型数据库(它可以使整个事情陷入停顿)。因此,专业提示是在一些安全的小沙箱数据库中的较小数据集上计算索引,然后再让它丢失任何重要的...

对于Cloudant查询,所有这些都应该会更好。