使用 nosql 批量更新所有数据
Mass update of all data with nosql
努力了解完整更新的最佳实践。
场景示例是如果我在硬盘驱动器上为每个文件存储一个文档。每天运行一个进程更新所有文件信息。删除的文件不需要保留历史记录,文件就可以了。
显然查询每条记录是低效的,并且不会覆盖已删除的文件(数据流只有一种方式)。
所以我猜选项是:
1) 把所有有时间戳的记录存起来,然后把昨天的记录全部删除
2) 删除数据库,但是我会失去所有的观点等等
3) 还有别的吗?
No history needs to be kept of deleted files
如果你使用一个数据库,每次你删除你的文件时,它都会保留你的文件的墓碑(它不会使用很多 space 但仍然......)
这是我会使用的解决方案:
- 使用设计文档创建模板数据库。在那里保持你的观点。
创建执行以下操作的脚本:
- 用今天的日期创建一个数据库
- 从模板数据库复制 _design 文档
- 将您的数据添加到数据库
使用此解决方案,每天的内容都可以从 CouchDB 中完全删除。
努力了解完整更新的最佳实践。
场景示例是如果我在硬盘驱动器上为每个文件存储一个文档。每天运行一个进程更新所有文件信息。删除的文件不需要保留历史记录,文件就可以了。
显然查询每条记录是低效的,并且不会覆盖已删除的文件(数据流只有一种方式)。
所以我猜选项是:
1) 把所有有时间戳的记录存起来,然后把昨天的记录全部删除
2) 删除数据库,但是我会失去所有的观点等等
3) 还有别的吗?
No history needs to be kept of deleted files
如果你使用一个数据库,每次你删除你的文件时,它都会保留你的文件的墓碑(它不会使用很多 space 但仍然......)
这是我会使用的解决方案:
- 使用设计文档创建模板数据库。在那里保持你的观点。
创建执行以下操作的脚本:
- 用今天的日期创建一个数据库
- 从模板数据库复制 _design 文档
- 将您的数据添加到数据库
使用此解决方案,每天的内容都可以从 CouchDB 中完全删除。