假设我正在编写一个日志分析应用程序。主域对象将是一个日志条目。此外应用程序的用户定义一个日志主题,描述他们感兴趣的日志条目。当应用程序接收到日志条目时,它会将它们添加到couchDB中,并根据系统中的所有日志主题检查它们是否符合主题中的条件。如果是,则系统应记录条目与主题匹配。因此,日志条目和日志主题之间存在多对多关系
如果我将其存储在RDBMS中,我会执行以下操作:
CREATE TABLE Entry (
id int,
...
)
CREATE TABLE Topic (
id i
有没有办法限制couchdb中的修订数量?与配置文件中的硬限制类似的内容。我知道我可以定期压缩数据库,但不知何故,这感觉像是一次黑客攻击。有更好的方法吗?< P>没有可配置的限制,主要是因为CouCHDB使用只附加存储,即它只承诺写入文件的末尾,并且永远不会改变中间的任何东西。因此,可配置的限制毫无意义
压缩是您唯一的选择。关于邮件列表上的自动触发压缩,已经有一些讨论,但目前只能手动触发。可以通过此HTTP API在每个数据库上进行压缩:
PUT /{db}/_revs_limit
设置Cou
考虑以下文档结构
{
_id,
_rev,
postTitle,
postBody
}
我正在编写一个小的nodeJS日志应用程序,我希望我的url能够反映帖子的标题。例如/WebLog/Posts/View/Hello World/
既然除了_id属性之外,无法查询CouchDB,那么我为每篇文章创建一个视图,以便将postTitle映射到\u id,这有意义吗
除了\u id,您将如何查询其他文档属性
。。。我应该放弃使用MongoDB或MySQL吗?我对C
当我尝试添加设计文档时(以“_”开头),会出现一个错误“只有保留的文档ID可以以下划线开头”。如何添加设计文档?根据,类似这样的设计文档:
{
"_id" : "_design/example",
"views" : {
"foo" : {
"map" : "function(doc){ emit(doc._id, doc._rev)}"
}
}
}
可以使用如下curl命令将其添加到名为basic的数据库中:
curl -X PUT http://12
突然,我无法在我的Mac(OS 10.8.2)上启动CouchDB服务器。它似乎无缘无故地死掉了,现在它不会启动,即使在重新启动之后
更新:我正在使用v1.2.0
这是错误日志。我搜索了“eaddrnotavail”,但没有找到任何对我有帮助的东西。有什么想法吗
error_report,<0.34.0>,
{<0.127.0>,crash_report,
[[{initial_call,
我正在为我的员工管理应用程序使用couchdb。我在couchdb中创建了一个包含以下内容的文档:
{"employees" : [{"id":"123","name":"Henry","address":"HSR"},{"id":"456","name":"Erik","address":"Kormangala"}]}
当我在终端上输入这个时:
curl -X GET http://127.0.0.1:5984/myapp/9351c38f9a64fd26e40b2ac4cf012efe
我想知道每次一个文档被发送到coach,以便我可以通过外部服务处理该文档
我知道视图是自动更新的,有什么方法可以连接到这个过程中吗?我可以在视图中定义向外部服务发出http请求的逻辑吗?这个外部服务可能是一个沙发应用程序
我基本上是在寻找某种触发器,由存储在沙发上的文档启动 您可以为此利用,这将为您提供一种监视所有数据库写入的方法。(包括文档创建)
明确地说,这为您提供了一个钩子,在它已经添加到数据库中之后可以进行一些处理,因此您将无法以这种方式预处理文档。(根据您的要求,您可以使用a或a)谢谢
可以将Auth0与CouchDB或Cloudant一起使用吗?如果是的话,有人知道教程、代码示例或github项目的例子吗
这个问题已经在Auth0论坛上提出(不是我提出的),但没有得到回应:
在我的特殊情况下,我想将带有Auth0的Ionic 2应用程序连接到没有中间层(API)的CouchDB实例
任何帮助都将不胜感激 用户是否会在couchdb中拥有自己的数据库?
因为如果没有服务器端中间件,您将无法仅限制对用户数据的访问。
如果是这样的话,你可以考虑使用OAuth.
我对Auth0并不深
标签: Couchdb
database-replicationcouchdb-futon
我正在尝试使用筛选器创建复制,以便删除CouchDB上已删除的文档,但我总是面临相同的错误
这是我的过滤器:
"deletedfilter": "function(doc, req) { return !doc._deleted; };",
这是我的\u复制器:
{
"_id": "replicateCleanup",
"source": "http://myuser:mypass@l@localhost/a",
"target": "http://myuser:mypas
有没有办法在couchdb中应用唯一约束
假设我有一个文档,其中包含一些字段,如电子邮件,emp\u id,电话号码,这些字段在整个文档中必须是唯一的。我找不到任何办法。有人知道如何做到这一点吗
任何答案/建议都将不胜感激。CouchDB中唯一的唯一约束是文档ID。如果您可以将数据的唯一组件放入文档ID中,然后您就有了唯一性约束。CouchDB中唯一的唯一约束是文档ID。如果您可以将数据的唯一组件放在文档ID中,那么您就有了唯一性约束。经过大量搜索,我发现,如果您只想为一个参数添加唯一约束,可以
我在couchDB中的_users数据库中创建了一个用户列表,现在我想停用用户,这意味着用户不能登录couchDB。我不想从用户数据库列表中删除该用户,相反,该用户应该无法登录。我是CouchDB的新手。有人能给我提供解决方案吗。也许你可以将他们的密码更改为随机值
我有一个couchdb数据库,有大约2000个文档(50MB),但在3个月内删除了150K个文档,并且会增加
那么,保持高绩效的更好策略是什么?
使用清除+压缩,定期重新创建整个数据库
couchdb文档建议在存储短期数据时重新创建数据库,这不是我的情况,但在某些类型的文档中,删除是常量
如果您的用例创建了大量已删除的文档(例如,如果您正在存储日志条目、消息队列等短期数据),您可能希望定期切换到新数据库并删除旧数据库(一旦其中的条目全部过期)
使用apachecouchdbv。2.1.1在Co
恶意参与者/数据库管理员能够在CouchDB中操纵网络中所有对等方的数据
我们如何保证沙发DB的安全【以下技术除外】以及如何防止这种情况
向couchDb提供适当的权限
提供适当的背书政策
此外,CouchDB允许删除文档。查询所述对等方时,对等方返回null。如何防止这种情况
当所有对等方中的特定记录都发生了相同的更改时,Hyperledger结构将无法检测到攻击。如何防止这种情况发生?每个对等方都有自己的couchDB实例来跟踪世界状态,这些couchDB实例中的每一个都有自己的凭据。在对等
我想设置多个索引。
与下面的示例相同,我通过划分属性设置了多个索引,但它不是有效的json。
请让我知道如何正确设置多个索引
此链接中的示例。
似乎您需要将其放入不同的json文件中,每个索引一个。您可以创建多个json文件,并在三个不同的文件中使用每个索引。不要使用文本图像。它们很难读。视力受损者无法阅读,也无法编制索引。只需复制并粘贴文本即可。
{
"index":{
"fields":["owner"] // Names of the fields to be queried
我已经使用三个ec2实例在aws中设置了hyperledger结构网络。我想将分类账数据和couchdb数据存储在某个持久性位置,如果AWS ec2实例被破坏,我可以在该位置获取这些数据。您必须在docker外部映射docker内容
订购方的分类账内容位于/var/hyperledger/production/order/内。
对等方的分类账内容位于/var/hyperledger/production/内
其思想是,首先,创建一个文件夹,我们称之为“分类账”。
接下来,您将在该文件夹中映射前面
CouchDB(0.10及以上版本)现在支持就地更新。我很难理解它是如何工作的。我尝试使用提供的示例,但无法使其发挥作用
是否有人可以提供一些用于访问就地更新的示例和URI
谢谢示例功能in-place与其他应用程序中的“in-place”更新不同
数据库。CouchDB仍然使用只附加的架构;文件更新
处理程序仍然会创建新的文档修订版等
不过,更新处理程序非常方便,值得学习
假设您有一个带有累加器的文档。你
要仅使用一个HTTP查询在文档中累积整数,请指定
使用金额参数的增量金额。考虑以下命令:
我正在使用couchdb 1.0.2和i'v following来创建一个外部进程。。。
与教程没有什么不同。。。即使对于代码和文件夹结构
错误消息是
{"error":"{bad_return_value,{os_process_error,{exit_status,2}}}","reason":"{gen_server,call,\n [<0.1116.0>,\n {execute,{[{<<\"info\">>
如何创建长而复杂的文档并将其添加到CouchDB?是否有任何编辑器,我可以使用,然后把文件使用CRUD
多谢各位
雨果你可以在蒲团里做这个
单击现有文档,或单击“新建文档”链接。您将处于标准键/值编辑器中
单击右上角的“源”选项卡
双击文档正文。它将变成一个大的输入字段,您可以在其中自由编辑文档
完成后,单击绿色复选标记。它将确认您的编辑是有效的JSON
单击保存文档。这将创建或更新文档(取决于您在步骤1中单击的内容)
我有一个用户间信息的数据库。文档看起来像:
"_id": "msg_0bec56c1-cbfb-47a5-8882-4a61fec332cd",
"_rev": "1-00000eda4d07c93d0000009100000112",
"$flags": 0,
"$expiration": 0,
"Date": 1340280439303,
"OwnerId": 35,
"RcptId": 37,
"SndrId": 35,
"Text": "msg5",
"Unread": false,
"
在CouchDB中有没有一种方法可以创建主/详细视图或列表
从另一方面看,它看起来像_view只能呈现主视图,而_list只能呈现细节列表。因此,答案可以通过一个链接进行验证,确认这是不可能的。使用视图排序来收集详细信息:
function(doc) {
if (doc.type == "post") {
emit([doc._id, 0], doc);
} else if (doc.type == "comment") {
emit([doc.post_id, 1],
我试图通过使用密码字段保存用户文档来更改用户密码。我在Futon中看到创建了一个新的哈希和salt,我可以独立地验证哈希和salt是否与新密码匹配
然而,当我尝试使用新密码时,CouchDB只响应旧密码。我曾尝试通过在Futon中编辑文档来手动更改密码,我得到了相同的行为:hash和salt更新,但CouchDB不响应新密码
到目前为止,我发现更改密码的唯一方法是使用Futon的更改密码功能。是否无法通过HTTP更改密码,或者我缺少一个步骤?阅读以下内容:
您可能正在尝试更改管理员的密码
代表服
我对coach DB(所有版本1.01-1.31)中的视图有问题
我的数据如下所示:
{
"_id": "9a12b7fa4b886640be06f74b814306a6",
"_rev": "1-420c723f8c8f7921ead3df04bfc9ade5",
"client_id": "008",
"day": 1,
"month": 1,
"year": 2013,
"comment": "cool"
}
我希望看到客户在一段时间内完成的所有
我知道CouchDB视图是预先计算的,现在我想知道每个视图的存储成本是多少。如何估计呢?它是发出数据的原始JSON大小吗
更具体地说,这是BigCouch(CyoRoT)。 < P>我不能给你一个估计规则,但你必须考虑以下几个因素:
CouchDB使用仅附加存储,因此,如果更新数据,数据库(和视图)文件也会增加。要再次释放未使用的空间,需要
可以使用
CouchDB使用B树数据结构进行索引,因此视图需要序列化JSON的空间+树的一些开销
从1.2版开始,默认情况下CouchDB使用该算法访问数
正如@AkshatJiwanSharma所说,我在本地复制时尝试了一些东西。很有教育意义!我重新命名了这个问题,因为问题不在于设计文档被复制,事实上它没有被复制,,而是作为初始复制“协商”阶段的一部分,它是通过HTTP GET获取的
我把原来的问题移到了最下面,使新问题更清楚。新问题是:
使用远程源启动复制时,获取整个设计文档(即整个远程应用程序)似乎效率低下(尤其是在Couchapp的情况下)。这可以避免吗?
在我们的例子中,在高延迟链路(小于7.2Kbps)上,使用相对较大的设计文档(3MB
如何重放作为请求发送到cocohdb的头,关键是我想对数据库的所有文档重放头,而不考虑显示函数
因此,我会向couchdb发送一个请求,请求创建一个文档作为
curl -X POST -i -H "Content-Type: application/json" -H "User-Agent: CURL" --data-binary @${INPUTFILE} http://someip:port/db
其中db是我已经在Coach db中创建的数据库名,输入文件是要发送到
我们目前使用DFS管理近1 TB的数据(这些数据主要是MS Office文档)。目前用户进入,编辑他们的文档,dfs在几个节点上同步,瞧
不幸的是,最近这一直让我们头疼,我想提出一个更可行的解决方案(具体的头痛是用户随机删除文件,peerlock没有按照用户预期工作等等)
进行一些研究,couchdb似乎可以提供与dfs类似的功能/因此我的问题是:
couchdb是否支持MS Office文档/格式
如果没有,除了开发我们自己的应用程序,我还能做什么
Couchdb是一个“文档”存储,这意味着它
我刚接触couchDB,还在阅读教程。我的问题是,这是否是将我的应用程序的每个用户表示为新的数据库用户的正常方式,就像我在任何地方看到的那样
假设我有一个有许多不同玩家的在线游戏——我会为每个注册玩家创建一个新的“数据库用户”吗?或者我会制作自己的数据库“玩家”,并在应用程序中创建登录逻辑?不习惯于记录受驱动的DB对我来说似乎很奇怪,不区分DB用户和我的应用程序的用户…你可以用任何一种方法。首先介绍couchdb用户
couchdb中的用户存储在一个特殊的\u Users数据库中
数据库权限由
我在向CouchDB数据库添加外部进程时遇到问题。目前,数据库包含一些记录,所有记录都有PNG或JPG格式的独立附件。我想将coach_Image_Resizer(由KlausTrainer提供)添加到数据库中,这样我就可以使用Image Resizer提供的查询根据请求动态调整图像大小。但是,当前它仅在使用URL命令时返回错误:
http://virtualMachineAddress/_image/archive/test/the_starry_night_painting.jpg?resi
我遇到过关于从cloudant或couchdb恢复已删除文档的线程
然而,我们有一个cloudant数据库,拥有超过5000万条记录。我们需要清理这个数据库,并根据存储在外部SQL数据库中的标志恢复文档。我们正在探索是否可以将所有文档标记为已删除,然后仅恢复所需的文档
这样的规模是否可行?5000万用户?非常感谢您提供有关可使用何种策略的任何信息。删除文档后,其内容将不再可在“更改”提要中访问,而只能在修订中访问。因此,为了检查外部标志,您必须明确请求删除文档的最后一次修订。这就是为什么我不会先
我需要在使用CouchDB实例进行复制期间优化磁盘使用率和传输的数据量。将数字数据存储为int/float而不是字符串会对文件存储和/或http请求产生影响吗?我读过JSON将所有内容都视为字符串,但较新的JSON规范使用不同的数据类型(float/int/boolean)。PockDB呢?WebSQL和Sqlite中的PockDB将文档存储为字符串(我不知道什么是IndexedDb)。
因此,要优化磁盘使用,只需保留较少的数据。:) WebSQL和Sqlite中的PockDB将您的文档存储为字
有关:
我想用CouchDB 2.0.0设置一个集群,但首先我需要一台运行良好的主机。我尝试了许多主机名配置,但它们总是导致:
** System NOT running to use fully qualified hostnames **
这是我尝试过的,每次尝试后都会重新安装并重新启动
-sname couchdb@thiscomputer.local
-sname couchdb@thiscomputer
-sname couchdb@192.168.178.59
-snam
我正在运行中的代码,运行一个基本的示例链代码,在分类账上创建资产(键值对)
我能够使用cli调用链代码
peer chaincode invoke -n mycc -c '{"Args":["set", "a", "20"]}' -C myc
并运行查询
peer chaincode query -n mycc -c '{"Args":["query","a"]}' -C myc
现在我想看看键值对是如何存储在CouchDB中的。因此,我在fabric samples/chaincode d
如果我们实施基于Coach db的Hyperledger结构网络,数据存档的可能性是什么 当前Hyperledger结构不支持分类帐的存档或修剪。使用基于Kafka的Order,您可以删除Kakfa日志,但不能删除ordering服务节点日志
这一特性有一个史诗般的特点。工作可能会在v1.2发行版之后开始(目标是6月底)。您能否进一步解释数据存档的可能性是什么?这不是couchDB功能的问题。根据我的信息,没有此类功能。但在正常的应用程序中,我们控制数据访问等,当数据库变得有点旧时,我们可以通过
在CouchDB视图中使用Date()根据当前日期筛选结果是否合适?我想只有当记录被更改时它才会更新视图
如果是这样,有没有办法告诉视图每24小时重新编制一次索引
我意识到我可以在视图中提取所有数据,然后使用代码进行过滤,但我想知道是否有一种方法可以在视图中完成所有操作
在CouchDB视图中使用Date()根据当前日期筛选结果是否合适
Date()将仅在视图重建期间计算,因此您不能使用它根据查询时间获取查询结果
我想只有当记录被更改时它才会更新视图
当文档更改时,视图将以增量方式更新,当其定义
有没有办法在CouchDB中实现多标记搜索?我的文档(帖子)每个都有多个标签。我需要找到贴有任意一组标签的帖子。我该怎么做?当然,我可以通过多次调用一个视图来实现这一点,该视图为我提供标记文档,然后在我的应用程序中对其进行排序,但我想知道是否有一种方法可以在CouchDB视图中实现这一点。在CouchDB的最新版本中,您可以使用名为keys的JSON文档发布到视图中,它允许多键查找。该结构看起来像这样:
{"keys": ["first_tag", "second_tag", "third_ta
标签: Couchdb
geospatialdocument-oriented-db
我想使用面向文档的数据库来存储提要中的数据。有时,该提要包含地理空间数据,我希望能够对其进行搜索。我找到了Geococock,但不知道它是否能跟上CouchDb主线的功能
如果GeoCoach是一次性的,那么是否有更好的面向文档的数据库,具有地理空间功能 MongoDB也支持空间查询,但到目前为止,我对GeoCoach很满意。考虑到Geocooch的开发者Volker现在被CouchOne雇佣,Geocooch的未来可能是有把握的。他目前正在研究gc-separate,这是一个类似于插件的分支,
所以我们开始在工作中使用couchdb。在futon中编写javascript函数并不有趣。我希望能够在文本编辑器中编写它们。我还希望能够轻松地编写我的函数,将它们推送到开发人员数据库,然后将它们推送到测试/生产。帮助
即使您没有创建一个典型的couchapp(一个由CouchDB提供服务的web应用程序),我发现它对于您描述的需求来说是一个有用的工具
一个最小的couchapp允许您将每个视图、列表、显示、筛选和更新函数作为它们自己的.js文件组织在一个合理的目录结构中。它负责推送过程中的J
位于的手册中说,您可以将密码存储在~/.couchapp.conf中。但是,dburl实际上是指向特定数据库的url。如果在不同的数据库中有两个应用程序,比如说/db1和/db2,那么我们必须有这样的应用程序:
{
"env" : {
"default" : {
"db" : "http://admin:pass@localhost:5984/db1"
}
}
}
以及:
但我不知道如何将其合并为一个(除非使用hack而不是default为每个数据库添加一个
标签: Couchdb
autoconfhomebrewspidermonkey
尝试按照本指南安装Spidermonkey;
我应该遵循以下步骤:
cd js/src
autoconf-2.13
./configure
make
由于我没有autoconf,我将尝试在另一个mozilla教程中实现这一点,如下所示:
截至2011年12月,自制软件没有自动功能的配方
2.13,但可在此处获得。在/usr/local/Library/Formula中安装该文件,然后:
$brew安装自动通信213
它安装了autoconf。但是当运行autoc
我创建了一个简单的视图来返回博客标题和时间
function(doc) {
if ( doc.TITLE) emit(doc.TIME, doc.TITLE);
}
默认情况下,首先显示最新博客文章的简单方法是什么?反之亦然 只需在查看请求时应用降序排序,例如
GET /dbname/_design/titles/_view/by_time?descending=True
视图输出将以相反的方式排序——最新的博客文章将排在第一位。请记住,startkey/endkey参数将限制此相反顺序的键
在使用CouchDB的web应用程序中,我需要生成由两个字母和六位数组成的唯一ID,该ID用作访问文档的url键。ID将是随机的,而不是顺序的。执行此操作的最佳实践是什么?用于创建/更新具有符合您要求的\u id值的文档,并验证存储的文档是否具有有效的\u id字段
_id生成器函数的实现应该非常简单。这里是StackOverflow示例。用于创建/更新具有符合您要求的\u id值的文档,并验证存储的文档是否具有有效的\u id字段
_id生成器函数的实现应该非常简单。这里以StackOverf
当我在CouchDB中进行如下查询时:
curl -X GET "localhost:5984/content/_design/names/_view/by_name?key=%22xxx&xxx%22"
它返回:
{"error":"bad_request","reason":"invalid_json"}.
当我从键中删除“&”时,就可以了
您能告诉我如何搜索视图中包含“&”的名称吗?还是CouchDB密钥中禁止使用“&”
谢谢
“&”的编码是有效的。但是如何处理''(%22)?
当我压缩并清理视图时,是否建议加载我的每个视图,以便再次索引和缓存它们
或者它已经被自动索引了?清理视图只会清除不再需要的陈旧数据。视图始终保持索引状态
标签: Couchdb
attachmentdatabase-schema
在CouchDB中,附件可以是内容类型和长度属性,但不能是日期。我在哪里可以存储附件的最后修改日期 此功能的可能副本有自己的发行号as,必须实施。敬请期待!
我正在为在couchdb/DB中存储“graph-ish”数据的“最佳”设计而苦苦挣扎。
在我想要存储的节点之间的特定时间,我有特定数量的移动/流量,所以它有点像一个带时间戳的有向加权图
每条数据都有:
时间戳
一笔
消息来源
靶子
我想用这些数据回答的问题是:
最后的X动作是什么
在特定的时间范围内会发生什么变化
节点N的输入和输出是什么(在特定的时间范围内)
节点N,N1,…集合中的输入和输出是什么。。(在特定的时间范围内)
那么,如何在couchdb中存储数据,以便我能够回答问题并
我是couchDB的新手,在教程中尝试了这一点
function(doc) {
if(doc._attachments){
var filename;
foreach(var key in doc._attachments){
if(doc._attachments.hasOwnProperty(key) && typeof(key) !== 'function')
{
我选择在couchdb中为每个用户设置一个数据库。(所有数据库都是完全独立的,它们之间不需要聚合)
现在我的应用程序在增长,我有数千个数据库
couchDb在同一时间保持的开放数据库不超过100个。
为了提高性能,是否最好
保留一个couchdb实例并增加开放数据库的数量
启动另一个couchdb服务器实例,并在它们之间拆分用户
总而言之,问题是:
如果您有独立的数据数据库,那么水平缩放还是垂直缩放更好?我个人赞成水平缩放。它具有更少的查找时间和一些故障多样化。但是,正如@Alexis Côté
我有一个混合应用程序,可以在couchdb上生成很多墓碑。服务器上每月大约有100000台。每个用户每天应该得到大约4英镑。
你有墓碑吗?或者它们是被压缩还是被清除?还是有这样的命令?还是必须删除数据库并定期重新创建
感谢您在删除文档时所做的一切
Purge尚不适用于PockDB,因此完全删除文档的唯一方法是删除本地数据库
我试图涵盖CouchDB被回滚的问题,这将导致未来出现pockdb。我想找到一种方法来检测这种情况,并在这种情况发生时强制PockDB销毁和重新加载
有没有办法询问PockDB当前的pull seq编号?我找不到任何关于这方面的文件。我的google foo不够强大
到目前为止,我唯一的想法是观看sync.on(change)提要,并在每次拉动时记录序号。然后在应用程序重新加载时,以ajaxhttps:/server/db/_changes?descending=true&limit=1的形式运
我一直在努力,我该怎么做。老实说,当我开始扩展我的应用程序时,如果我不这么做,我可能会面临一些后果,这让我有点偏执
目前,每个数据库大约有5万个文档。仅仅几个月就被大量使用了。我希望这会增长很多。我做了很多.find()Mango查询,没有太多索引;老实说,我们正在构建一个关系式的文档结构
例如:
首先从ID获取项目
然后执行以下查找查询:
获取所有type:signature其中project\u id:X
获取所有type:revisionswhereproject\u id:X
原
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 47 页