本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
计划查询
计划查询可通过预先计算一些全队范围的聚合统计数据来帮助您优化仪表板。因此,一个自然而然的问题是,如何处理自己的用例,确定要预先计算哪些结果,以及如何使用存储在派生表中的这些结果来创建仪表板。此过程的第一步是确定要预先计算哪些面板。以下是一些高级指导方针:
-
考虑一下用于填充面板的查询所扫描的字节、仪表板重新加载的频率以及将加载这些仪表板的并发用户数量。您应该从加载频率最高的仪表板开始,然后扫描大量数据。聚合仪表板示例中的前两个仪表板以及向下钻取示例中的聚合仪表板就是此类仪表板的良好示例。
-
考虑重复使用了哪些计算。虽然可以为面板中使用的每个面板和每个变量值创建计划查询,但您可以通过寻找使用一种计算方法来预先计算多个面板所需的数据,从而显著优化成本和计划查询数量。
-
请考虑计划查询的频率,以刷新派生表中的物化结果。您需要分析仪表板的刷新频率、仪表板中查询的时间窗口、预计算中使用的时间分箱以及仪表板中的面板。例如,如果绘制过去几天每小时汇总数据的仪表板每隔几小时才刷新一次,则您可能需要将计划查询配置为仅每 30 分钟或每小时刷新一次。另一方面,如果您的仪表板可以绘制每分钟聚合数据,并且每分钟左右刷新一次,则您希望计划查询每分钟或几分钟刷新一次结果。
-
考虑使用计划查询可以进一步优化哪些查询模式(从查询成本和查询延迟的角度来看)。例如,在计算仪表板中经常用作变量的唯一维度值时,或者返回传感器发射的最后一个数据点或某个日期之后传感器发出的第一个数据点时,等等。本指南中讨论了其中一些示例模式。
在您移动仪表板以查询派生表时,上述注意事项将对您的节省、仪表板中数据的新鲜度以及计划查询所产生的成本产生重大影响。