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])
Кеширование на основе памяти - это то, к чему я стремлюсь, поскольку кеширование на основе файлов слишком медленное в веб-контексте для моих действий.