我想知道什么时候使用一个数据库和一个具有多个对象存储的数据库会是一个好主意。我阅读了网上的大多数教程,也看了indexedDB的规范,但是没有找到一个比较这些不同概念的好例子。有人有这类事情的具体例子吗(使用多个对象存储和/或代码的设计模型)?
xpszyzbs1#
只要对象存储之间没有交叉事务操作,就可以将它们分离到多个数据库中。我更喜欢使用分离的数据库,尽可能多,这样在较小的对象存储数据库中更改模式就更容易。在极少数情况下,我甚至使用单独的数据库,即使需要交叉事务。这些情况是在用户设置数据库和应用程序数据库之间发现的。用户设置和应用程序之间的不一致没有关系,因为真相在用户设置中,暂时的不一致并不重要。请注意,打开数据库的成本很高。但是一旦打开数据库,连接就不会消耗内存。数据库的数量没有限制。多个数据库 * 将 * 比具有多个对象存储的单个数据库具有更高的吞吐量,因为Firefox的实现在任何写入事务上锁定了整个数据库。
1条答案
按热度按时间xpszyzbs1#
只要对象存储之间没有交叉事务操作,就可以将它们分离到多个数据库中。我更喜欢使用分离的数据库,尽可能多,这样在较小的对象存储数据库中更改模式就更容易。
在极少数情况下,我甚至使用单独的数据库,即使需要交叉事务。这些情况是在用户设置数据库和应用程序数据库之间发现的。用户设置和应用程序之间的不一致没有关系,因为真相在用户设置中,暂时的不一致并不重要。
请注意,打开数据库的成本很高。但是一旦打开数据库,连接就不会消耗内存。数据库的数量没有限制。
多个数据库 * 将 * 比具有多个对象存储的单个数据库具有更高的吞吐量,因为Firefox的实现在任何写入事务上锁定了整个数据库。