从桶中读取所有文件
Reading all the documents from a bucket
有没有办法从一个桶中读取所有文档?它是一个活动的存储桶,我也想访问新创建的文档。
很少有人建议使用视图来查询存储桶。
我如何创建一个将使用新文档或更新文档进行更新的视图?
新建视图的地图功能:
function (doc, meta) {
emit(doc);
}
Reduce 函数为空。当我像这样查询视图时 bucket.query(ViewQuery.from("test1", "all")).totalRows()
它 returns 返回 0 个结果。
视图只是对存储桶的预定义查询。新的或更改的文档将显示在视图中。
您可以在创建视图时通过单击 Web 中的“显示结果”按钮来检查视图的结果 UI,因此如果那里显示 0 个文档,那么您从开发工具包。
如果您是 运行 Couchbase Server 4+ 和最新的 SDK,您可以使用 N1QL 并在您的存储桶上创建主索引,然后定期 Select * from bucket
获取所有文档。
对于返回零结果的问题,您是否将视图提升为生产视图?这是一个常见的错误。开发视图只查看一小部分数据,以免服务器不堪重负。先试试这个。
此外,如果可以的话,永远不会 发出整个文档,尤其是当您正在查看存储桶中的所有文档时。您想要发出文档的 ID,然后如果您需要获取这些对象的内容,请执行获取操作或批量操作。对于批量操作,我会给你直接 link,但你没有说你使用的是什么 SDK,这些是特定于 SDK 的。例如,这里是 Java 的
综上所述,我对您为什么要从存储桶中执行相当于 select * 的操作有疑问。有了这些数据后,您打算如何处理这些数据?你到底想做什么?当然,解决这个问题的方法有很多。
有没有办法从一个桶中读取所有文档?它是一个活动的存储桶,我也想访问新创建的文档。
很少有人建议使用视图来查询存储桶。
我如何创建一个将使用新文档或更新文档进行更新的视图?
新建视图的地图功能:
function (doc, meta) {
emit(doc);
}
Reduce 函数为空。当我像这样查询视图时 bucket.query(ViewQuery.from("test1", "all")).totalRows()
它 returns 返回 0 个结果。
视图只是对存储桶的预定义查询。新的或更改的文档将显示在视图中。
您可以在创建视图时通过单击 Web 中的“显示结果”按钮来检查视图的结果 UI,因此如果那里显示 0 个文档,那么您从开发工具包。
如果您是 运行 Couchbase Server 4+ 和最新的 SDK,您可以使用 N1QL 并在您的存储桶上创建主索引,然后定期 Select * from bucket
获取所有文档。
对于返回零结果的问题,您是否将视图提升为生产视图?这是一个常见的错误。开发视图只查看一小部分数据,以免服务器不堪重负。先试试这个。
此外,如果可以的话,永远不会 发出整个文档,尤其是当您正在查看存储桶中的所有文档时。您想要发出文档的 ID,然后如果您需要获取这些对象的内容,请执行获取操作或批量操作。对于批量操作,我会给你直接 link,但你没有说你使用的是什么 SDK,这些是特定于 SDK 的。例如,这里是 Java 的
综上所述,我对您为什么要从存储桶中执行相当于 select * 的操作有疑问。有了这些数据后,您打算如何处理这些数据?你到底想做什么?当然,解决这个问题的方法有很多。