常常有用户吐槽报告加载慢、图表数据迟迟加载不出来等等,为了解决这个“加载慢”的问题,首先我们需要知道哪个阶段“慢”,然后才能针对性地进行优化。 用户查看报告时,每一个图表背后的数据其实都是有数下发SQL去底层数据库查询得到的,大致可分为以下几个阶段: 首先是BI平台的查询准备和组件推导时间,即有数需要知道查询什么样的数据、生成什么样的图表;然后就是在数据库执行SQL获取数据的过程(该过程的耗时很大程度上是由数据源的性能和查询复杂度决定);等SQL执行完,BI平台拿到数据,前端渲染绘制图表,进行数据的可视化展现。

最佳性能优化实践 - 图1

以上不同阶段,无论哪个阶段“慢”都会导致最终报告加载慢,当然我们也可以通过一些针对性的操作来避免某些过程的“慢”。最佳性能优化实践就是提供这类平台侧及数据侧的最优操作,帮助大家制作一份“性能更优”的报告。