在CouchDB/JSON中存储有序的子文档/值?
在CouchDB中存储已订购文档的最佳方式是什么 假设我有100篇文章,我想通过将它们以我喜欢的顺序明显地排列来进行排序,或者我有10000张图像,我希望它们以日期/类别/等以外的特定顺序出现。这最好存储在父级(“页面”或“相册”级)还是子级(图像/文章)级 如果是这样的话: 或者这个: 。。。其中在CouchDB/JSON中存储有序的子文档/值?,json,couchdb,html-lists,Json,Couchdb,Html Lists,在CouchDB中存储已订购文档的最佳方式是什么 假设我有100篇文章,我想通过将它们以我喜欢的顺序明显地排列来进行排序,或者我有10000张图像,我希望它们以日期/类别/等以外的特定顺序出现。这最好存储在父级(“页面”或“相册”级)还是子级(图像/文章)级 如果是这样的话: 或者这个: 。。。其中条款:[我的第14条、第5条、第2条、第20条……]是实际文章文档的\u id 每种方法的优点/缺点是什么?随着应用程序的发展,您发现哪种方法更易于使用?假设每篇文章包含非琐碎数据,请使用一个文档
条款:[我的第14条、第5条、第2条、第20条……]
是实际文章文档的\u id
每种方法的优点/缺点是什么?随着应用程序的发展,您发现哪种方法更易于使用?假设每篇文章包含非琐碎数据,请使用一个文档。一个大的“容器”文档并不是一个好主意——任何文章数据的每次小更新都会浪费大量的修改。这也会给解决冲突带来麻烦。第一个解决方案。 优点:一个职位不能有两篇文章 缺点:要按顺序获取文章,您需要从数据库获取所有文章,然后只过滤您需要的文章,或者需要调用页面上显示的文章的数量 第二种解决方案 优点:您可以在一次查询中获得一页的所有文档。只需创建视图,其中键由页面和位置组成,并使用startKey和endkey参数仅获取您需要的文章 缺点:可能会犯错误,并且在同一位置有更多的文章 我会选择第二种解决方案
{
_id: myPage;
articles: [myArticle14, myArticle5, myArticle2, myArticle20...];
}
{
_id: myArticle14;
position: 1;
}