Хранить массив из миллиарда двойных / целых в html5 localStorage? - PullRequest
0 голосов
/ 09 декабря 2018

Я раздвигаю ограничения HTML5 здесь.

У меня есть проблема: у меня есть массив javascript с миллиардом двойных (или целых) значений, во всяком случае, МНОГО чисел.Я хочу сохранить это в локальном хранилище HTML5.

Вы можете сказать, эй, просто используйте JSON.Stringify, НО, JSON.Stringify создает огромную строку размером 200 МБ.Потому что число (например, 0,03910319) хранится в виде строки (поэтому каждое число занимает несколько байтов вместо всего нескольких байтов для целого числа).

Я думал о base64-кодировании чиселсначала в массиве, а затем применяя JSON.stringify?

Или, например, лучше JSON.Stringify, а затем GZip или использовать какую-либо функцию сжатия?

Придумайте свои творческие идеи, чтобызакодировать / декодировать массив javascript из BILLION ints / double для эффективного преобразования в переменную localStorage.

TensorFlowJS

Я смотрел на TensorflowJS, мой массив в основном представляет собой1-D Тензор.Tensorflow имеет некоторые возможности хранения для моделей ... Возможно, это реальное решение.

1 Ответ

0 голосов
/ 11 декабря 2018

Для тех, кто также сталкивается с этой проблемой:

Я использовал Float32Array (массив с типом javascript) для своих данных.

Float32Array легко сохраняется в IndexedDB с помощью https://github.com/localForage/localForage

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...