- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下格式的 couchbase 文档
{
"docType": "scheduledJob",
"orgId": 2,
"jobs": {
"1456753078157": {
"jobName": "Job1",
"jobId": "910271049",
"fromTime": 1456752600000,
"toTime": 1456824600000,
"key": 1456753141401,
"status": "pending"
},
"1456753141401": {
"jobName": "Job2",
"jobId": "558624841",
"fromTime": 1456752600000,
"toTime": 1456821000000,
"key": 1456753141401,
"status": "pending"
}
}
}
已安排作业。作业可以在 fromTime 和 toTime 之间的任何时间执行。我的任务是每小时检查下一个小时是否有待处理的工作。意味着无论 fromTime 是什么,但 toTime 时间戳应该大于当前时间后 1 小时的时间戳。同样,如果 fromTime 也从当前时间戳落到下一小时时间戳,我们应该获取。
我是 couchbase 的新手。我创建的 View 是
function(doc, meta){
if( doc.docType && doc.docType=="scheduledJob"){
for(var key in doc.jobs){
var job = doc.jobs[key]
if(job.status == "pending") {
emit(job.fromTime+'_'+job.toTime, job);
}
}
}
}
我正在发送 startkey="currentTimestamp_0000000000000"和 endkey="0000000000000_currentTime+1hour-timestamp"
请帮助我哪里出错了。
最佳答案
您提供的开始键/结束键组合在所有重要情况下都会产生空结果。想象一下(为简单起见缩短为 2 位数)当前时间为 18 点,下一个小时为 19 点。那么您的字符串为:
startkey 18_00
endkey 00_19
按字典顺序,startkey比endkey大,所以区间为空。
在我看来最简单的方法是创建两个独立的 View ,一个只发出 fromTime,另一个发出 toTime。如果我对要求的理解正确,您将搜索从现在到现在 + 1 小时之间具有 fromTime 的所有工作,toTime 也是如此,然后对两个结果进行编程集并集。
只使用一个 View 可能会更简单,并且对于每个 scheduledJob,执行 2 次发出,一次是 fromTime,另一个是 toTime。但我从未尝试过在文档上执行超过 1 次 emit,所以你必须尝试它是否有效。
在我看来,您将数字值转换为字符串的方式很容易出错。如果需要复合键,我更喜欢使用合适的 couchbase 复合键,例如通过发出([job.fromTime, job.toTime], job)
。但是我没有看到使用那种 key 可以轻松解决您的问题。
关于javascript - Couchbase View 过滤日期范围内的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35716591/
我有看起来像这样的文件: { "name": "n", "age": 22 //other properties "hash": "XyRZHDJJD6738..." //This property
有下一个对象 "a" : { "id" : "1", "arr" : [ {"id" : "b1"}, {"id" : "b2"} ] } "b1" : { "id" : "b
Couchbase 文档说“磁盘持久性使您能够执行备份和恢复操作,并使您能够将数据集增长到比内置缓存层更大的数据集”,但我似乎无法让它发挥作用。 我正在一个三节点集群上测试 Couchbase 2.5
我搜索了有关 Couchbase 如何在集群内实现强一致性的解释。这一切都是因为使用了membase吗? 最佳答案 顺便说一句,Couchbase 是 membase。 Couchbase 是一个产品
我有以下格式存储的 couchbase 文档: { "userEmail": "satyam@xyz.com", "hashedPassword": "$2a$12$MT31FHNEbOAKpQGzL
请在下方找到有关 Couchbase 产品路线图的问题。 上下文 我目前正在研究一项将现有系统(后端应用程序和移动应用程序)转变为 Multi-Tenancy 应用程序的功能。 堆栈将是: 沙发底座
什么是 Couchbase,什么是 Couchbase Lite?两者之间有什么区别吗?如何在移动设备中创建 couchbase lite 以及如何与服务器通信? 最佳答案 你碰巧知道CouchDB
我正在寻找一种使用 Spring Data Couchbase 连接到两个单独的 Couchbase 集群的方法。查看文档和实现,不清楚如何执行此操作,我担心如果有两个扩展 AbstractCouch
我想使用 couchbase lite 和 couchbase syncgetway 在 nodejs 中开发一个 CRUD 应用程序。我想在 Raspberry-pi 上运行这个 Node js 应
我在 couchbase 存储桶中有具有这种结构的文件: "name": { "grandfather": { "parent1": { "ch
我有一个依赖于另一个的文件。第一的: { "doctype": "closed_auctions", "seller": { "person": "person11304" },
我以前使用过 couchdb 并且非常喜欢它的 UI,因为我可以直接在 UI 中创建 View 并测试它们并查看文档。 因为,我需要扩展,所以我开始使用 couchbase。但是,在安装 couchb
我的环境中有一个二级索引(没有复制),我想知道如何在不删除索引的情况下创建复制? 我不想删除索引并用副本重新创建它,因为我没有使用主索引,因此有约束。 谢谢 最佳答案 即将发布的 6.50 版本您可以
我正在考虑将 couchbase 用于我的下一个 Web 应用程序,我想知道我的数据应该如何构建,特别是存储桶的使用。例如,假设每个用户将拥有大量唯一数据,是否应该为每个用户创建一个单独的存储桶(甚至
我正在开发一个小型 express 应用程序,目前允许用户登录(通过护照)并查看有关他们 friend 的信息,即购买历史记录、喜欢等。理想情况下,我希望每个用户都有一个随附的个人资料照片和他们购买的
对于 Cassandra,假设复制因子为 1(即数据集的两个副本),至少需要三个节点才能启用具有强一致性的写入。 Couchbase 似乎没有这个要求,至少我没有在任何地方找到它。尽管如此,Couch
我正在使用 Couchbase 存储桶,其中所有文档都使用 DocType 保存。标识包含什么类型的数据的属性。我想执行一个查询,从每个 DocType 给我一个结果, 用作所有文档类型的示例。 我可
无法更改 Couchbase 控制台的端口号。默认为 8091。我试图在已知的 static_config 文件中附加一行。这条线就像- {rest_port, 9000}. 这是我缺少文件的屏幕。
我想使用 Couchbase,但我想在一些类似于 RethinkDB 的方式实现更改跟踪。 似乎有很多方法可以将更改从 Couchbase 服务器推送给我。 DCP 点击 XDCR 哪一个是正确的选择
我有一个 couchbase 文档,id 为 x x 没有子文档,因为在一些子文档操作中都被删除了,它是这样的 {} 我想删除所有没有子文档的空文档。是否可以在 couchbase 中使用 N1QL
我是一名优秀的程序员,十分优秀!