效果概览

本页面概述了有助于提升 Looker 性能的基本组件。本页面旨在概述 Looker 的基本性能概念,以便您找到相关资源,并与 Looker 支持团队就性能问题进行有效沟通。本指南并非问题排查指南,因为每个性能问题都是特定的。

如果您遇到性能问题,请与 Looker 支持团队联系。详细联系信息位于本页面的最后一部分。

组件概览

概括来讲,Looker 是在服务器上运行的程序。Looker 使用该服务器的内存和 CPU 运行。每家使用 Looker 的公司都有自己的专用服务器或集群,没有全局性 Looker 服务器,当您从浏览器登录 Looker 时,浏览器会向您的服务器发送请求以获取信息。服务器返回所需信息,浏览器为您呈现这些信息。

Looker 还会连接到您的数据库。在这种情况下,Looker 服务器会向数据库请求信息,然后数据库将该信息返回给服务器。

示例:

当您前往 Looker 中的个人文件夹以打开信息中心并与信息中心互动时,后台会发生以下情况:

  1. 您选择预期的链接将打开您的个人文件夹页面。
  2. 您的浏览器会向 Looker 服务器请求该文件夹的相关信息:“这里是否有 Look、信息中心或其他文件夹?”
  3. 您的 Looker 服务器会将该信息返回到您的浏览器:“是,有包含 Look 1 和 2 的信息中心 A”。
  4. 您的浏览器会显示该文件夹的内容。
  5. 您选择信息中心 A。
  6. 您的浏览器向 Looker 服务器请求信息中心 A 的相关信息,其中包含与 Look 1 和 Look 2 关联的图块。
  7. 您的 Looker 服务器会生成 Look 1 和 Look 2 所需的 SQL 查询,并将其发送到您的数据库。
  8. 您的数据库会将这些查询的结果集返回到您的 Looker 服务器。
  9. 您的 Looker 服务器会将从这些查询收到的数据发送到您的浏览器。
  10. 浏览器使用从您的服务器接收的数据来呈现信息中心。

对缓慢程度进行分类

上一个示例中包含三个主要元素:您的数据库、Looker 服务器和浏览器。它们都有助于提升 Looker 性能,并执行一系列流程以提供数据。以下四个因素会影响数据库、服务器和浏览器进程的效率:

  • 数据库负载
  • 实例负载
  • 浏览器加载
  • 网络延迟

以下各部分介绍了这些流程及其对性能的潜在影响。

数据库负载

数据库处理 SQL 查询需要时间,特别是在查询很大或数据库同时处理多个查询时。如果“探索”“Look”或信息中心需要很长时间才能返回结果,原因可能是查询速度很慢,或者有多项查询同时运行。您可以查看管理菜单或数据库控制台中的查询页面,更详细地了解数据库在任意给定时间的负载。

实例负载

您的 Looker 服务器(通常称为 Looker 实例)可为使用该实例的所有用户提供可视化内容和页面。任何给定时间的用量水平都可能会使实例资源紧张。如果实例负载过重,那么简单的非查询处理任务(如在文件夹导航)可能需要一段时间才能加载完毕。

浏览器加载

最后,您的浏览器会显示 Looker 传送的数据。现代浏览器可以呈现的数据量是有限的。只打开包含大量数据的“探索”工具可能会导致浏览器崩溃。

Looker 内容的浏览器加载大致可以按以下方式衡量:(amount of data per cell) * (number of rows) * (number of columns)。大型查询的速度可能很快,并且您的实例可以快速提供查询结果,但浏览器可能需要很长时间才能呈现结果,或者可能会崩溃。在此示例中,只有打开这项大型查询的用户会受到影响。Looker 中的其他页面不会受到影响。为确保浏览器性能,建议不要超过 50 列。

网络延迟

由于 Looker 是一个 Web 应用,因此 Looker 的每次互动都会通过互联网发送和检索信息。互联网连接状况不佳会影响您的数据库、实例和浏览器。您可以咨询通过其他网络使用 Looker 的同事,或让 Looker 支持团队访问您实例上的同一页面,以确认您遇到了网络延迟问题。

与 Looker 支持团队联系

现在您已经了解 Looker 中的基本性能概念,接下来可以对实例性能问题的原因进行简要调查,然后联系您的 Looker 联系人或 Looker 支持团队。当您与 Looker 支持团队联系时,请提供尽可能具体的信息,并告知我们哪些实例页面运行缓慢,以及何时运行速度缓慢。