首页 > 解决方案 > 使用 indexedDb 动态创建表

问题描述

在我的网络应用程序上,用户可以请求不同的数据线。这些数据线各有一个唯一的“statusID”,例如“18133”。当用户请求加载数据时,它要么从服务器加载,要么从 indexedDB 加载(我试图弄清楚的那部分)。为了使其尽可能快,我希望索引是数据的时间戳,因为我将请求小于 indexedDB 中实际数据的范围。但是,我试图弄清楚如何创建商店并正确存储数据。每次请求具有新 Id 的数据时,我都尝试动态创建商店,但只能在“onupradeneeded”中创建商店。我也想过把所有东西都放在同一个商店里,但我担心性能会变差。我现在真的不知道如何处理这件事。

我所知道的:如果您索引一个值,则意味着数据已排序,这正是我想要的。我不知道以下是否可行,但这也可以解决我的问题:将所有内容存储在同一个存储中,按“statusID”索引,按“时间戳”索引。这样,我猜它也会很快。

请注意,我说的是许多数据点,可能数百万。

标签: javascriptnosqlindexeddb

解决方案


可以按多个值进行索引,允许您通过 statusID 获取所有值并限制时间戳的范围。所以我会选择一个数据存储解决方案。性能应该不是问题。

这篇较早的帖子可能会有所帮助:Javascript:使用多个索引搜索 indexeddb


推荐阅读