Couchdb 是否可以创建在插入时而不是在查询时生成的索引?

Couchdb 是否可以创建在插入时而不是在查询时生成的索引?,couchdb,Couchdb,我在树莓皮3上用CouchDB。我的用例: 使用多进程python应用程序收集来自多个来源的传感器数据,捕获收集时的时间戳。由于有多个线程,如果序列化此数据,则会定期出现顺序错误。我希望将数据放入一些数据结构中,以便可以快速排序,并让另一个进程近实时地提取数据以进行进一步处理 我的问题是(使用CouchDB),我在时间戳上构建索引的视图只在读取时创建,而且构建需要很长时间。我要寻找的是RDBMS中的索引行为,它在插入数据时重建索引。这样一来,虽然每批插入都需要更长的时间来插入,但至少可以很快地用

我在树莓皮3上用CouchDB。我的用例:

使用多进程python应用程序收集来自多个来源的传感器数据,捕获收集时的时间戳。由于有多个线程,如果序列化此数据,则会定期出现顺序错误。我希望将数据放入一些数据结构中,以便可以快速排序,并让另一个进程近实时地提取数据以进行进一步处理

我的问题是(使用CouchDB),我在时间戳上构建索引的视图只在读取时创建,而且构建需要很长时间。我要寻找的是RDBMS中的索引行为,它在插入数据时重建索引。这样一来,虽然每批插入都需要更长的时间来插入,但至少可以很快地用于下一个过程


我也考虑过Mongo,但我不喜欢RPi的2GB限制。也考虑SQLite3,但更喜欢NoSQL的无模式特性。

我的建议是设置一些计划作业(可能通过cron?),并在
之后通过
stale=update\u。请求本身将非常快,因为视图不是在查询时计算的,而是异步发生的


这是我所看到的推荐模式,它试图避免对第一个查询视图的用户造成巨大的惩罚,在我看来应该可以很好地工作。当您查询视图并需要实时结果时,可以省略
stale
参数。

我的建议是设置一些计划作业(可能通过cron?)然后通过
stale=update\u after
。请求本身将非常快,因为视图不是在查询时计算的,而是异步发生的

这是我所看到的推荐模式,它试图避免对第一个查询视图的用户造成巨大的惩罚,在我看来,在这里应该工作得很好。当您查询视图并需要实时结果时,可以省略
stale
参数