【发布时间】:2018-12-16 16:38:04
【问题描述】:
我正在为我工作的公司构建一个闪亮的仪表板,用于显示公司的关键指标。仪表板当前加载速度非常快,但随着时间的推移,仪表板变得越来越慢,因为我正在查询的数据库中的表(我为此使用 RMySQL)变得越来越大(它随着时间的推移收集更多数据)。
我已尽最大努力使 SQL 查询运行得更快(利用索引列、重新分区等),但仅此而已。查询数据后,仪表板需要处理该数据,随着时间的推移,由于数据量的增加,处理速度也会变慢。
有没有办法解决这个问题?我一起工作的一位工程师建议在 R 中使用 Ajax 函数,这将允许仪表板一开始只加载一部分数据(即过去 2 个月),足以填充仪表板的图表,并且在后台将继续加载其余数据(在单独的过程中?我不确定)。但是,我不知道如何从这里开始。 (使用什么库,如何调用查询并在ajax函数中运行后续数据处理代码等)
对此的任何想法将不胜感激。
(旁注:我的查询将花费足够长的时间,以至于当我尝试从 AWS EC2 实例启动闪亮仪表板时,它会导致闪亮的仪表板“与服务器断开连接”。我通过在“reactivePoll”中调用查询来解决这个问题我确信这可能不是最好的方法。)
编辑 1:仪表板还从 API 端点获取一些数据,我不确定这会如何影响使用任何类似 ajax 的操作或函数来改进我的仪表板。
【问题讨论】:
-
阅读shiny async,可能会感兴趣