パフォーマンスの概要

このページでは、Looker のパフォーマンスに寄与する基本コンポーネントの概要を説明します。このページでは、パフォーマンスの問題に関して、関連するリソースを確認し、Looker のサポートと効果的にやり取りできるように、Looker のパフォーマンスに関する基本的なコンセプトの概要を説明します。これはトラブルシューティング ガイドではありません。パフォーマンスの問題はそれぞれ固有だからです。

パフォーマンスの問題が発生した場合は、Looker サポートにお問い合わせください。連絡先の詳細は、このページの最後のセクションにあります。

コンポーネントの概要

基本的に、Looker はサーバー上で動作するプログラムです。Looker では、そのサーバーのメモリと CPU を使用して実行されます。Looker を使用する企業ごとに専用のサーバーやクラスタがあります。グローバルの Looker サーバーはありません。ブラウザから Looker にログインすると、ブラウザはサーバーに情報のリクエストを送信します。サーバーが目的の情報を返し、ブラウザがレンダリングします。

Looker はデータベースにも接続します。この場合は、Looker サーバーがデータベースに情報をリクエストし、データベースがサーバーに情報を返します。

例:

Looker の個人フォルダに移動してダッシュボードを開くと、以下のような処理が行われます。

  1. 想定しているリンクを選択すると、個人用フォルダのページが表示されます。
  2. ブラウザが、Looker サーバーにそのフォルダに関する情報を要求します: 「ここには、Look、ダッシュボード、または他のフォルダがありますか?」
  3. Looker サーバーはその情報をブラウザに返します: 「はい、ダッシュボード A には Look 1 と 2 が含まれています」
  4. ブラウザにフォルダの内容が表示されます。
  5. ダッシュボード A を選択します。
  6. ブラウザが、Looker サーバーにダッシュボード A に関する情報を要求します。このダッシュボードには、Look 1 と 2 にリンクされたタイルが含まれています。
  7. Looker サーバーは Look 1 と 2 に必要な SQL クエリを生成し、データベースに送信します。
  8. データベースは、そうしたクエリの結果セットを Looker サーバーに返します。
  9. Looker サーバーは、それらのクエリから受信したデータをブラウザに送信します。
  10. ブラウザは、サーバーから受信したデータを使用してダッシュボードを表示します。

遅延の分類

前の例で説明した主要な要素は、3 つあります。データベース、Looker サーバー、ブラウザです。どれも Looker のパフォーマンスの向上に寄与し、データを配信する一連のプロセスを実行します。次の 4 つの要素は、データベース、サーバー、ブラウザのプロセスの効率に影響を与える可能性があります。

  • データベースの負荷
  • インスタンスの負荷
  • ブラウザの負荷
  • ネットワーク レイテンシ

以降のセクションでは、これらのプロセスと、それぞれがパフォーマンスに与える影響について説明します。

データベースの負荷

特にクエリが大きい場合や、データベースで複数のクエリを一度に処理している場合、データベースによる SQL クエリの処理に時間がかかります。Explore、Look、ダッシュボードからの結果が返る時間がかかる場合は、クエリが遅いか、一度に複数のクエリが実行されている可能性があります。[管理] メニュー(またはデータベース コンソール)の [クエリ] ページを確認すると、データベースの負荷をいつでも確認できます。

インスタンスの負荷

Looker サーバー(一般に Looker インスタンスと呼ばれます)は、インスタンスを使用するすべてのユーザーに可視化とページを提供します。任意の時点での使用量レベルによっては、インスタンスのリソースが圧迫される可能性があります。インスタンスの負荷が高い場合、クエリ以外の単純な処理タスク(フォルダの移動など)では、読み込みに時間がかかることがあります。

ブラウザの負荷

最後に、Looker から提供されるデータがブラウザに表示されます。最新のブラウザで表示できるデータ量は限られています。ブラウザは、大量のデータを含む Explore を開くだけでクラッシュする場合があります。

Looker コンテンツのブラウザ負荷は、だいたい(amount of data per cell)×(number of rows)×(number of columns)で見積もれます。大規模なクエリは高速に、また、インスタンスはクエリの結果を迅速に提供する可能性がありますが、ブラウザでは結果の表示に時間がかかる場合や、クラッシュする可能性もあります。この例では、大規模なクエリを開いたユーザーのみが影響を受けます。Looker の他のページは影響を受けません。ブラウザのパフォーマンスを考えて、列数は50以下にすることをお勧めします。

ネットワーク レイテンシ

Looker はウェブ アプリケーションであるため、Looker の操作すべてがインターネットを介して情報を送受信します。インターネット接続が不安定な場合は、データベース、インスタンス、ブラウザに影響がおよびます。別のネットワーク上で Looker を使用している同僚に相談するか、Looker サポートにインスタンスの同じページを表示してもらい、ネットワーク レイテンシが発生しているかどうかを確認できます。

Looker サポートにお問い合わせください。

ここまでで、Looker の基本的なパフォーマンスの考え方はわかったので、次はインスタンスのパフォーマンスに関する問題の原因を調査します。そこで、Looker の担当者または Looker サポート にお問い合わせください。Looker サポートにお問い合わせる場合は、可能な限り具体的にして、どのインスタンス ページが遅いのか、スピードの低下が何回発生したのかをお知らせください。