Looker の永続的な派生テーブル(PDT)機能を使用すると、Looker 内で複雑な分析を行うことができます。Looker に表示されるいくつかの管理機能を使用すると、適切な権限を持つ管理者とユーザーが Looker の [管理] パネルの [データベース] セクションからアクセスできる [永続的な派生テーブル] ページの PDT 動作の追跡とトラブルシューティングを行うことができます(PDT のトラブルシューティングについては、Looker の派生テーブルのドキュメント ページをご覧ください)。
[永続的な派生テーブル] ページには、PDT が有効になっている接続と、次の条件を満たす PDT のみが表示されます。
- PDT は、本番環境にあるビューファイルで定義されます。ただし、開発モードでは、[Development] タブを使用して永続テーブルの開発バージョンを確認してください。
- PDT は、正しく構成されているモデルの一部です。
- PDT は、データアクセスが可能なモデルの一部です。
このページの情報は、このページの PDT イベントログ モデル セクションで説明されている内部 PDT イベントログに基づいています。
テーブルのカスタマイズ
デフォルトでは、[永続的な派生テーブル] ページには、最大 25 個の PDT がページに表示されます。また、Looker インスタンスに対するアクセス権がユーザーに付与されているすべての接続の PDT が読み込まれます。表に表示されるデータを変更するには、いくつかの方法があります。
- 特定の接続の PDT のみを表示するには、[すべての接続] の横にある矢印をクリックします。セレクタには、PDT が有効になっている接続と、ユーザーにデータアクセス権が付与されている接続のみが表示されます。
- 検索ボックスにキーワードを入力して、PDT リストを名前にキーワードが含まれる PDT に絞り込みます。表には、一致する検索キーワードが太字の状態で PDT が表示されます。検索バーの [X] をクリックして、検索クエリのキーワードを消去します。
- [フィルタ] アイコンをクリックして、テーブルのフィルタを定義します。
- 閉じる / 開くアイコンをクリックして、[一覧] セクションを表示または非表示にします。
- 列でテーブルを並べ替えるには、列の名前をクリックします。並べ替え順を逆にするには、列名をもう一度クリックします。
- [表示する列を選択] アイコンをクリックして、テーブル内の列の表示と非表示を切り替えます。
- 表示セレクタを使用して、1 ページに表示される結果の数を選択できます。表が 1 ページを超える場合は、ページの中央下にある矢印をクリックすると、次のページまたは前のページに移動できます。
フィルタリング
検索バーの横にある [フィルタ] アイコンを使用すると、[永続的な派生テーブル] ページに表示する PDT を選択できます。たとえば、[Last Build Status] でフィルタして、ビルドエラーが発生している PDT のみを表示できます。または、[Model] でフィルタして、表示される PDT を特定のモデルに制限することもできます。
[永続的な派生テーブル] ページをフィルタリングするには:
- フィルタ アイコン をクリックします。
- フィルタ メニューの最初のフィルタ セレクタからフィルタ オプションを選択します。次の選択肢が用意されています。
- [最後にトリガーされなかった] - 指定した時間数と分数内のトリガーされなかった PDT で [永続的な派生テーブル] ページをフィルタします。
- [最後にトリガーされた] - 指定した時間数と分数内にトリガーされた PDT で [永続的な派生テーブル] ページをフィルタします。
- モデル - 指定したモデルに含まれる PDT の [永続的な派生テーブル] ページをフィルタします。
- 永続性ルール - [永続的な派生テーブル] ページを PDT 永続性タイプでフィルタします。
- 最後の試行ステータス - 指定した PDT ステータスで [永続的な派生テーブル] ページをフィルタします。
- 安定表示として公開 - PDT の [永続的な派生テーブル] ページをフィルタするブール値。これは、安定表示として公開された PDT の場合は [Yes] を表示し、
publish_as_db_view
パラメータ値で確定される安定表示として公開されていない PDT の場合は [いいえ] と表示します。 - [時間超過中の最後のビルド] - ビルドが指定した秒数を超えた PDT で [永続的な派生テーブル] ページをフィルタします。
- プロジェクト - 指定した LookML プロジェクトからの PDT で [永続的な派生テーブル] ページをフィルタします。
- 2 番目のフィルタ セレクタで、[永続的な派生テーブル] ページをフィルタする値を選択します。[最後にトリガーされない] オプションまたは [最後にトリガーされる] オプションに、時間数または分数を入力します。[時間超過中の最後のビルド] オプションに、秒数を入力します。
- [フィルタの追加] をクリックしてフィルタを追加し、追加するフィルタごとに手順 2 と 3 を繰り返します。
- フィルタの選択をクリアし、任意の時点でやり直すには、[すべてクリア] をクリックします。
- その他のフィルタを個別に削除するには、削除するフィルタの上にある [クリア] をクリックします。
- 選択したフィルタ条件を [永続的な派生テーブル] ページに適用するには、[適用] をクリックします。
適用したフィルタが [永続的な派生テーブル] ページの上部に表示されます。
[永続的な派生テーブル] ページで適用されているフィルタの横にある [X] をクリックして、[永続的な派生テーブル] ページからフィルタを削除します。[すべてクリア] をクリックして、すべてのフィルタをクリアします。
PDT ページの把握
以降のセクションでは、[永続的な派生テーブル] ページに関する情報について説明します。
[本番環境] タブと [開発] タブ
Development Mode で操作している LookML のデベロッパーである場合、[永続的な派生テーブル] テーブルには 2 つのタブがあります。
デフォルトでは [本番環境] タブが選択され、本番環境の PDT が表示されます。これらはインスタンス上の本番環境にデプロイされた PDT です。これらの PDT は、ユーザーの Explore クエリ用のデータを提供します(本番環境モードで操作している場合、または
develop
権限を付与されていない場合は、[永続的な派生テーブル] ページにはタブが表示されず、本番環境の PDT に関する情報のみが表示されます)。[開発] タブには、開発 PDT が表示されます。開発 PDT がまだ本番環境に push されていません。
Looker では、デベロッパー モードの LookML デベロッパーが PDT のデータや PDT の照会方法に影響する変更を行うと、開発用 PDT が作成されます。このように変更することで、Looker は開発用 PDT を作成しますが、変更後、PDT がクエリを実行しない限り、Looker は実際には PDT をビルドしません。[Development] タブは、Looker が作成した開発 PDT と、ビルド済みかどうかの判断に役立ちます。
Looker に開発 PDT が作成される原因と、開発 PDT がデータベースに保持される期間の詳細については、Looker の派生テーブルのドキュメントをご覧ください。
[一覧] セクション
[一覧] セクションには、PDT テーブルに現在表示されている PDT のステータスの概要が表示されます。テーブルにフィルタを定義している場合や、ページ上部の [すべての接続] の横にある矢印を使用して、テーブルを特定の接続に絞り込む場合は、[At Glance] セクションを使用すると、PDT テーブルに表示される結果を絞り込むことができます。
セクションの上部にある閉じる / 開くアイコンをクリックすると、[一覧] セクションを表示または非表示にできます。
テーブル列
以降のセクションでは、[永続的な派生テーブル] ページのテーブル列について説明します。[表示する列を選択] アイコンをクリックして、テーブル列の一部の表示と非表示を切り替えます。詳細については、このページのテーブルのカスタマイズ セクションをご覧ください。
PDT名
[PDT 名] 列には PDT の LookML ビューファイルの view
パラメータで定義されている PDT の名前が表示されます。
該当する場合は、[PDT 名] 列の PDT 名の下に次の追加情報が表示されます。
- [古いビルド] は、行に古い PDT ビルドに関する情報が表示されていることを示します。このメッセージの詳細については、[オプション] メニューの [PDT の詳細] ポップアップをご覧ください。
- [増分] は、PDT が増分 PDT であることを示します。
- [マテリアライズド ビュー] は、PDT がデータベース上のマテリアライズド ビューであることを示します。
最後に試行されたステータス
[Last Attempt Status] 列には、リストされている各 PDT のビルドの最後に試行されたステータスが表示されます。
- [再生成] は、PDT にクエリを実行でき、現在作成中の更新済みテーブルがあることを示します。タイムスタンプは、PDT の構築が開始された日時を示します。
- [Success] は、PDT が正常にビルドされたことを示します。
- ビルドは、PDT が現在ビルド中であり、ビルドが完了するまでクエリできないことを示します。
- Not Built は、PDT がまだビルドされていないことを示します。
- ビルドエラーは、ビルド中にエラーが発生したことを示します。LookML を表示するための適切な権限を付与されている場合は、[ビルドエラー] をクリックして、エラーのソースを表示し、PDT の LookML に移動できます。永続的な派生テーブルページからの PDT のトラブルシューティングについて詳しくは、このページの [オプション メニュー] セクションをご覧ください。
最後の試行時刻:
[最後の試行時刻] 列は、PDT ビルドが最後に試行された時刻を表します。
最後に成功した作成
[Last Successful Build] 列は、最後に成功した PDT ビルドの時刻を表します。
直近のビルド期間
[最後のビルド時間] 列には、その PDT の最新ビルドにかかった時間(秒)と、PDT のビルドにかかった平均時間(秒)が表示されます。
永続性ルール
[永続性ルール] 列には、PDT のビューファイルで定義されているように、PDT に適用される永続性のタイプが表示されます。また、正常にビルドされた PDT がチェックされた最後の時間(トリガータイプの PDT の場合)、または正常にビルドされた PDT が有効期限切れになる時期(永続タイプの PDT の場合)も示されます。[永続性ルール] 列には、次の 2 種類の永続性が表示されます。
- [永続: (時間)] は、
persist_for
パラメータで永続化される PDT に表示されます。 - [トリガー: (データグループ名)] は、
datagroup_trigger
パラメータで永続化される PDT に表示されます。データグループ名のリンクをクリックすると、datagroup
パラメータのsql_trigger
値が表示されます。 - [トリガー: SQL] は、
sql_trigger_value
パラメータで永続化される PDT に表示されます。リンクをクリックして、sql_trigger_value
ステートメントを表示できます。 - [マテリアライズド ビュー] は、データベースの機能を使用して派生テーブルをデータベース上に永続化されるマテリアライズド ビューに対して表示されます。
プロジェクト
[プロジェクト] 列には、PDT が定義されている LookML プロジェクトの名前が表示されます。
接続
接続選択で [すべての接続] が選択されている場合は、[接続] 列が開き、PDT が有効になっている接続の名前が表示されます。
モデル
[モデル] 列には、PDT のビューファイルが含まれているモデルファイルの名前が表示されます。
オプションメニュー
その他のオプションメニュー
は、予期しない動作のトラブルシューティングに特に有用です。表示されるオプションにより、テーブルが最後にビルドされた日時の確認、ビルドにかかった時間の確認、最新のビルド時間と平均ビルド時間の比較、トリガーが正しく機能しているかどうかの確認が可能になります。次の中から選択できます:- LookML に移動 - LookML を表示するための適切な権限がある場合、PDT が定義されているビューファイルを開きます。
- PDT アクティビティ ダッシュボード - PDT アクティビティ ダッシュボードを開きます。ダッシュボードには、選択した PDT のアクティビティが表示されます。
- PDT の詳細 - 特定の PDT の詳細情報と統計情報を含むポップアップを開きます。詳細については、このページの PDT 詳細モーダル セクションをご覧ください。
トラブルシューティングのヒントについては、Looker の派生テーブルドキュメント ページの PDT セクションのモニタリングとトラブルシューティングをご覧ください。
PDT 詳細モーダル
PDT のその他の [オプション] メニュー
で [PDT の詳細] オプションをクリックして、PDT 詳細モーダルを表示します。モーダル内の情報は、PDT の構成によって異なります。表示される情報は次のとおりです。
- テーブル名: 正常にビルドされた最新の PDT のハッシュ。
- モデル: PDT のビューファイルが含まれているモデルファイルの名前。
- 安定した名前: データベース上の PDT の安定したデータベース ビューの名前(PDT が安定したビューとして公開されている場合)。PDT をデータベースで安定したビューとして公開するには、派生テーブルに
publish_as_db_view: yes
ステートメントを追加するか、materialized_view: yes
ステートメントを使用して派生テーブルをマテリアライズド ビューにします。 - 接続: PDT が有効な接続の名前。
- 古いビルド: ビルドが、古い PDT ビルドの場合は [はい]、そうでない場合は [いいえ] を表示するブール値。
- テーブルタイプ: 古いビルドの場合、このフィールドが表示され、テーブルタイプを表示します。値には、以前の世代のテーブルとスタンドインが含まれます。
- 増分 PDT: PDT が増分 PDT の場合は [はい] を、そうでない場合は [いいえ] を表示するブール値。
- ステータス: 最後の試行ステータスを示します。ビルドに失敗した場合、ユーザーに LookML を表示するための適切な権限がある場合は、SQL エラー メッセージとモデルの LookML へのリンクを表示します。
- 依存関係: [Show Dependency Graph] ボタンをクリックして、この PDT が依存するすべての派生テーブルの関係図を表示します。図の各ノードは派生テーブルに対応しています。各ノードの色は、次のように、その派生テーブルのステータスに対応しています。
- 直近のビルド:
- 成功した最新のビルド: 成功した最新の PDT ビルドの日時。
- Latest Build Duration: 最新の PDT ビルドに要する時間(秒)。テーブルがまだビルドされていない場合は – が表示されます。
- 平均ビルド期間: PDT のビルドに要する平均時間(秒で表示されます – テーブルがまだビルドされていない場合)。
- ビルド理由: PDT がビルドされた理由(最初のビルドの開始、PDT がデータグループで永続化された場合のトリガーされたデータグループ、PDT のSQL トリガー値が変更された場合のトリガー値の変更)。
- 増分キー: 増分ビルドを使用する PDT の
increment_key
パラメータ。 - 増分オフセット: 増分ビルドを使用する PDT の
increment_offset
パラメータ。 - Increment Build Add/Remove Rows: テーブルが最後にインクリメントされたときにテーブルに対して追加または削除された行の数(テーブルの永続化戦略が最後にインクリメントをトリガーした際に、行が追加または削除されなかった場合は – が表示されます)。
- 最後に試行された SQL: テーブルの最後のビルドを作成するためにデータベースへのクエリに使用された SQL。
- 永続性ルール:
- タイプ: テーブルで使用される永続性のタイプ。指定可能な値については、このページの [永続性ルール] 列 セクションをご覧ください。
- 持続期間: 永続タイプの PDT の場合における、持続期間の値。トリガー タイプの PDT には適用されません。
- データグループ: データグループ トリガーの PDT については、データグループの名前を指定します。
- SQL コードブロック: データグループと SQL トリガーの PDT の場合、コードブロックにはトリガーの SQL ステートメントが表示されます。データグループ トリガーの場合、これはデータグループの
sql_trigger
パラメータの SQL です。SQL トリガーの場合、これはsql_trigger_value
パラメータの SQL です。 - トリガー値: トリガーPDT のタイプ。PDT ビルドをトリガーした値(-適切にビルドされた PDT が作成され、
datagroup_trigger
。最新のトリガー値を確認し、データグループの詳細については、データグループページの管理パネルをご覧ください)。 - 最終チェック: トリガー タイプの PDT の場合、トリガー値が最後にチェックされた時点。
- 有効期限: 該当する場合、PDT の有効期限が切れる時刻(データグループのトリガーには該当しません)。
PDT アクティビティ ダッシュボード
[PDT アクティビティ] ダッシュボードには、PDT、その再ビルド、クエリに関する情報が表示されます。
[PDT アクティビティ] ダッシュボードには、デフォルトで過去 4 週間のアクティビティ情報が表示されます。表示する期間は、ダッシュボードの上部にあるフィルタバーを使用して変更できます。[PDT アクティビティ] ダッシュボードには、次の情報を表示するタイルが含まれています。
- LookML モデルの名前と PDT を定義するビューを含む PDT の概要、PDT が使用するデータベース 接続の名前、PDT の成功したビルド試行と失敗したビルド試行の合計数、失敗したビルド試行の総数の割合。
- PDT の最新の完全再ビルドの日時。
- PDT が増分 PDT の場合、PDT の最新の増分再ビルドの日時。
- PDT が増分 PDT の場合、最新の完全再ビルド以降に発生した増分再ビルドの数。
- PDT の再ビルドに要した平均時間。
- 最近発生したすべての作成イベントを表示し、イベントの原因となったアクションの種類の概要でグループ化した可視化。
- ダッシュボードの期間中に発生したすべての PDT 再ビルドのリスト。各再ビルドの完了日、再ビルドの完了にかかった秒数、再ビルドが増分ビルドであったかどうか、再ビルドの原因となったトリガー、PDT ビルド。
- 失敗した再ビルドが開始された日時、失敗の原因となったエラーの種類、エラー メッセージ、作成の失敗数など、失敗したすべての再ビルド試行のリスト。
- イベント ID 番号、イベントの日付、イベントの種類、トリガー イベントに付属するデータなど、すべての PDT 再ビルドトリガー イベントのリスト。
- イベント ID 番号、イベントの日付、イベントの種類、再ビルドイベントに付属するデータなど、すべての PDT 再ビルド イベントのリスト。
- クエリのソースと各クエリソースの平均ランタイムでグループ化した、フィールドを直接クエリしたクエリの数。
- PDT で実行されるクエリの合計数。
- フィールドが定義されている LookML ビューとモデル、フィールド名、フィールドを含む Explore 実行の名前、フィールドがクエリに含まれた回数など、クエリされたすべての PDT フィールドのリスト。
PDT イベントログ モデル
Looker には、PDT イベントログの簡単なデータ探索が可能なsystem_activity
という名前の事前ビルド済みモデルが含まれており、これは、PDT のトリガーとビルド アクティビティを追跡するデータベース接続の一時スキーマ内のテーブルです。
このモデルには、[永続的な派生テーブル] ページの [オプション] のその他メニュー に表示される [最近のビルドイベント] リンクと [最近のトリガー イベント] リンクから、または Looker [管理者] パネルの [接続] ページからアクセスできます。
[接続] ページから PDT イベントログ Explore にアクセスするには、各接続の歯車アイコンのプルダウン メニュー
から [PDT イベントログを表示] オプションを選択します。他の Looker Explore と同様に、モデルを調べることができます。[接続] ページからアクセスすると、[PDT イベントログ] の Explore では接続全体がフィルタされます。[永続的な派生テーブル] ページからアクセスすると、[PDT イベントログ] の Explore で特定の PDT がフィルタされます。
ここでは、[PDT イベントログ] Explore で使用可能なフィールドについて簡単に説明します。
フィールド | 説明 |
---|---|
操作 | 発生したアクションを記述します。たとえば、再生成、ドロップ、作成、読み込みなどの操作を行います。PDT のログ アクションとそれに対応するアクション データの表示と理解の詳細については、PDT ログ アクションについてのドキュメントをご覧ください。 |
アクション データ | 使用中のトリガー、トリガーの値、永続テーブルの有効期限、再ビルドの原因、エラー メッセージのテキストなど、アクションの詳細を指定します。PDT のログ アクションとそれに対応するアクション データの表示と理解の詳細については、PDT ログ アクションについてのドキュメントをご覧ください。 |
接続 | 派生テーブルが存在する接続の名前。 |
ハッシュ | 各派生テーブルには、そのテーブルを作成するために作成された SQL のハッシュが含まれています。 |
ID | PDT を生成した Looker インスタンスの一意の ID。多くの場合、データベースを指す Looker インスタンスは 1 つのみ存在するため、ID は 1 つのみ表示されます。ただし、ステージング インスタンスを使用している場合などは、複数の ID が表示される可能性があります。 |
モデル名 | テーブルの生成に使用されたモデルの名前。 |
発生日 | イベントが発生した日時 |
発生 Utc 表示日 | イベントが発生した日時(UTC)。 |
シーケンス | PDT ビルドのステップ番号。 |
短いハッシュ | 派生テーブルを作成するために書き込まれた SQL のハッシュの短縮版。 |
Table Name | テーブルタイプの接頭辞、ハッシュ、ビュー名を含む PDT の完全な名前。 |
Tid | トランザクション ID |
View Name | 派生テーブルのビュー名。 |