R: Как я могу кэшировать элементы в памяти в Shiny?

В настоящее время у меня возникают проблемы с кэшированием элементов для использования в Shiny (в R), и я хотел бы знать правильный способ сделать это. Примером может быть то, что мне нужно загрузить большой файл data.table, используя readRDS, который затем разрезается и нарезается кубиками различными способами и создается несколько диаграмм. Я могу легко кэшировать загрузку файла с помощью

LoadFile <- memoise(function(filepath) {...})

Однако при попытке кэширования результатов вычислений возникают проблемы. Если у меня есть

f(data.table, data.table)

Тогда запоминание f, похоже, не помогает, поскольку я не наблюдаю ускорения и очень похожее время между первым и последующими вызовами, указывающее на отсутствие кэширования.

Это известный недостаток памятки? Есть ли какие-либо другие библиотеки кэширования, которые я могу использовать, чтобы обойти проблемы

cachefunction(myfunction(param1,param2))

шаблон дизайна? А именно, что если param1 и param2 являются большими сложными типами данных, то формулировка ключа занимает много времени и / или может происходить неправильно.

В этом случае я действительно хочу чего-то большего от дизайна

cache(mykey, myvalue, [expiry date/time])

Кеширование на основе памяти - это то, к чему я стремлюсь, поскольку кеширование на основе файлов слишком медленное в веб-контексте для моих действий.

0 ответов

Другие вопросы по тегам