标签: couchdb-futon

CouchDB减少了被褥的复选框

我在CouchDB中创建了一个小型测试数据库,我在Futon中创建了一个临时视图.我写了mapper和reducer.映射器工作,但reducer的复选框永远不会显示.我知道应该有一个复选框,因为我在播放一个更大的数据库时看到它.

为什么不存在减速器复选框?这是正常的行为吗?减速机复选框有时不会出现吗?也许是因为我的结果集很小或者由于某种原因无法减少?(虽然我认为没有理由不能减少我的结果)

我的映射器就是这个.我添加了这个[1, 2, 3].forEach东西只是因为我认为我需要将结果集放大以获得reduce复选框.

function(doc) {
  [1, 2, 3].forEach(function() {
    emit(doc.name, 1);
  });
}
Run Code Online (Sandbox Code Playgroud)

减速机就是这个.

function(keys, values, rereduce) {
  return sum(values);
}
Run Code Online (Sandbox Code Playgroud)

结果如下所示: 在此输入图像描述

reduce couchdb mapreduce couchdb-futon

20
推荐指数
1
解决办法
3215
查看次数

couchdb不断增长(文件大小)

在磁盘上的数据库文件大小方面,我对CouchDB行为非常困惑.看起来我做的并不重要,数据库文件只会变得越来越大(甚至在删除/清除文档或整个数据库时).

我看了我的/var/lib/couchdb/_dbs.couch文件,它的尺寸从未减小过.简单的例子:

curl -X PUT http://admin:secretpassword@localhost:5984/testdb
Run Code Online (Sandbox Code Playgroud)

_dbs.couch 文件大小增加了5kb.

curl -X DELETE http://admin:secretpassword@localhost:5984/testdb
Run Code Online (Sandbox Code Playgroud)

文件大小没有变化.即使我过滤了数据库的复制(过滤掉已删除的文档)或手动触发压缩,磁盘文件大小也不会减少.现在真正令人困惑的是,Fauxton实际上在这些操作之后显示减少的数据库大小,但它从未反映在所使用的物理磁盘空间中.

在全新安装后,我使用的几乎是标准配置.

这是"像预期的那样工作"还是这里有什么问题?

更重要的是:我能做些什么吗?

database couchdb couchdb-futon

11
推荐指数
1
解决办法
834
查看次数

Couchdb - 为读者用户提供的蒲团蒲团

我想知道如何阻止读者访问couchdb中的蒲团(_utils),只允许访问管理员.我需要这样做,为什么如果读者用户访问被褥,他可以看到我所有数据库的名称和有多少文件.我的应用程序应该让读者只有拥有它们的id才能访问文档.

security couchdb couchdb-futon

10
推荐指数
2
解决办法
1815
查看次数

需要说明couchdb减少功能

来自http://wiki.apache.org/couchdb/Introduction_to_CouchDB_views

couchdb reduce函数定义为

function (key, values, rereduce) {
    return sum(values);
}
Run Code Online (Sandbox Code Playgroud)
  • key将是一个数组,其元素是[key,id]形式的数组
  • values将是为键中的各个元素发出的值的数组
  • 即reduce([[key1,id1],[key2,id2],[key3,id3]],[value1,value2,value3],false)

我无法理解何时/为什么键数组将包含不同的键值.如果键数组确实包含不同的键值,我将如何处理它?

例如,假设我的数据库包含表单帐户之间的移动.

{"amount":100, "CreditAccount":"account_number", "DebitAccount":"account_number"}
Run Code Online (Sandbox Code Playgroud)

我想要一个提供帐户余额的视图.

我的地图功能有:

emit( doc.CreditAccount, doc.amount )
emit( doc.DebitAccount, -doc.amount )
Run Code Online (Sandbox Code Playgroud)

我的reduce函数有:

回报总和(值);

我似乎得到了预期的结果,但是我无法将此与我的reduce函数获得不同键值的可能性相协调.

我的reduce函数是否应该首先对键值进行分组?在那种情况下我会返回什么样的结果?

couchdb couchdb-futon

9
推荐指数
1
解决办法
2639
查看次数

Couchdb没有启动. - 未能启动Mochiweb:eaddrinuse

我在ubuntu 10.04上配置并安装了couchdb 1.6.1.虽然配置和安装它说成功完成了.但是,当我启动couchdb时,它给了我错误.

什么时候开始..

Apache CouchDB 1.6.1 (LogLevel=info) is starting.

Apache CouchDB has started. Time to relax.

**[info] [<0.32.0>] Apache CouchDB has started on http://127.0.0.1:5984/**
Run Code Online (Sandbox Code Playgroud)

再次开始时

 Apache CouchDB 1.6.1 (LogLevel=info) is starting.

 **Failure to start Mochiweb: eaddrinuse**

[error] [<0.127.0>] {error_report,<0.31.0>,
                    {<0.127.0>,crash_report,[[{initial_call,
                           {mochiweb_socket_server,init,['Argument__1']}},
                       {pid,<0.127.0>},
                       {registered_name,[]},
                       {error_info,
                           {exit,eaddrinuse,
                               [{gen_server,init_it,6},
                                {proc_lib,init_p_do_apply,3}]}},
                       {ancestors,
                           [couch_secondary_services,couch_server_sup,
                            <0.32.0>]},
                       {messages,[]},
                       {links,[<0.95.0>]},
                       {dictionary,[]},
                       {trap_exit,true},
                       {status,running},
                       {heap_size,987},
                       {stack_size,24},
                       {reductions,467}],
                      []]}}
{"init terminating in do_boot",{{badmatch,{error,{bad_return,{{couch_app,start,[normal,["/usr/local/etc/couchdb/default.ini","/usr/local/etc/couchdb/local.ini"]]},{'EXIT',{{badmatch,{error,shutdown}},[{couch_server_sup,start_server,1},{application_master,start_it_old,4}]}}}}}},[{couch,start,0},{init,start_it,1},{init,start_em,1}]}}

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()
Run Code Online (Sandbox Code Playgroud)

在local.ini中,我将端口更改为5983,并从127.0.0更改 …

erlang port couchdb couchdb-futon ubuntu-10.04

9
推荐指数
1
解决办法
4967
查看次数

CouchDB Fauxton - 如何浏览修订历史记录?

我已经使用CouchDB一段时间了,我目前正在本地环境中测试CouchDB 2和Fauxton.与好旧的被褥相比,真正令人不安的一件事是Fauxton无法浏览文档修订历史.

这个新的React工具真的没有实现,还是我错过了?是否有Fauxton附加组件实现了这个缺失的功能?

在被褥 在Fauxton

couchdb couchdb-futon revision-history

9
推荐指数
1
解决办法
607
查看次数

CouchDB通过命令行实时附件

问题

我希望能够通过命令行(见下文)在创建文档时附加一个/多个附件.我只能在Futon(Couchbase)中使用它,但只能在创建文档之后才能使用它.

我尝试过以下方法:

curl -X PUT 'http://username:password@localhost:5984/client_info'

curl -X POST 'http://username:password@localhost:5984/client_info' -H 'Content-Type: application/json' -d '{"client_type": "Private", "client_name": "John Doe","client_email": "john@doe.com","client_city": "Toronto","created_at": "2011-09-06 12:45:03","expires_at": "2012-01-01 00:00:00", "_attachments": {
   "test01.jpg": {
       "content_type": "image/jpeg",
       "length": 30189          
    }
  }
}'
Run Code Online (Sandbox Code Playgroud)

这只会导致以下错误:

{"error":"unknown_error","reason":"function_clause"}
Run Code Online (Sandbox Code Playgroud)

谢谢

couchdb couchdb-futon couchbase

8
推荐指数
2
解决办法
6881
查看次数

如何将蒲团(不是fauxton)添加到CouchDB

Fauxton很漂亮,但它至少缺少一个与CouchDB一起使用的关键功能:浏览文档的修订历史记录.数据库权限接口也设法创建了我的数据库.

有没有办法让旧蒲团跑步?

couchdb couchdb-futon fauxton

8
推荐指数
1
解决办法
308
查看次数

为每个CouchDB用户提供一个单独的数据库是一种好习惯吗?

关于用户及其文档的结构,我有一些概念性的问题.

为CouchDB中的每个用户提供他们自己的数据库来保存他们的文档是一个好习惯吗?

我已经读过,couchDB可以处理数千个数据库,并且每个用户拥有自己的数据库并不罕见.

原因:

提出这个问题的原因是我正在尝试创建一个系统,其中登录用户只能查看自己的文档而无法查看任何其他用户文档.

有什么建议.

先感谢您.

javascript database couchdb couchdb-futon

7
推荐指数
1
解决办法
2840
查看次数

如何将 couchdb 与 web api 核心连接

想要从 asp.net core web api 连接到 CouchDb 数据库,但我无法找到这样做的代码。

任何人都可以帮助我使用代码来做到这一点吗?这样做的“正常”方式是什么?

干杯!

couchdb couchdb-futon asp.net-core asp.net-core-webapi

7
推荐指数
1
解决办法
2435
查看次数