Динамическое создание таблиц с indexedDb - PullRequest
0 голосов
/ 03 февраля 2020

В моем веб-приложении пользователь может запрашивать разные строки данных. Эти строки данных имеют уникальный «statusID», скажем, «18133». Когда пользователь запрашивает загрузку данных, они либо загружаются с сервера, либо из indexedDB (эту часть я пытаюсь выяснить). Чтобы сделать его максимально быстрым, я хочу, чтобы индекс был временной меткой данных, поскольку я буду запрашивать диапазоны, которые меньше, чем фактические данные в indexedDB. Тем не менее, я пытаюсь выяснить, как создать магазины и правильно хранить данные. Я пытался динамически создавать хранилища каждый раз, когда запрашиваются данные с новым Id, но создание хранилищ возможно только в «onupradeneeded». Я также думал о том, чтобы хранить все в одном и том же магазине, но боюсь, что производительность ухудшит ситуацию. Сейчас я не совсем понимаю, как к этому подойти.

Что я знаю: если вы индексируете значение, это означает, что данные отсортированы, а это именно то, что я хочу. Я не знаю, возможно ли следующее, но это решило бы и мою проблему: хранить все в одном и том же хранилище, индексировать по «statusID» и индексировать по «отметке времени». Таким образом, это было бы слишком быстро, я думаю.

Обратите внимание, что я говорю о многих многих точках данных, возможных в миллионах.

1 Ответ

0 голосов
/ 03 февраля 2020

Вы можете индексировать по нескольким значениям, что позволяет вам получить все по statusID и ограничивает диапазон для вашей отметки времени. Так что я бы go с одним решением хранилища данных. Производительность не должна быть проблемой.

Этот предыдущий пост может быть полезен: Javascript: Поиск по indexeddb с использованием нескольких индексов

...