PrestoDBとTrino

以下のページでは、Looker を PrestoDB または Trino に接続する方法について説明します。

ネットワークトラフィックの暗号化

Looker アプリケーションとデータベース間のネットワーク トラフィックを暗号化することをおすすめします。セキュアなデータベースアクセスを可能にするドキュメント ページに記載されているオプションのいずれかを検討してください。

データベースへの Looker 接続の作成

Looker の [管理者] セクションで [接続] を選択し、[新しい接続] をクリックします。

接続の詳細を入力します。設定の大部分は、ほとんどのデータベース言語に共通するものです。詳細については、Looker をデータベースに接続するのドキュメント ページをご覧ください。設定の一部を次に説明します。

  • 言語: [PrestoDB] または [Trino] を選択します。

    PrestoSQL の製品名称は Trino に変更されました。352 より前の Trino バージョンを使用する場合は、Looker の言語メニューから [PrestoSQL] を選択します。

  • ホスト: データベースのホスト名。

  • ポート: データベースのポート。デフォルトのポートは8080です。

  • データベース: Presto 用語の「カタログ」または「コネクタ」。

  • ユーザー名: クエリを実行するユーザーのユーザー名です。

    この情報は、SSLが有効になっている場合にのみPrestoDBまたはTrinoサーバーに送信されます。

  • パスワード: クエリを実行するユーザーのパスワードです。

    この情報は、SSLが有効になっている場合にのみPrestoDBまたはTrinoサーバーに送信されます。

  • スキーマ: スキーマが指定されていない場合に使用されるデフォルトのスキーマ。

  • PDT を有効にする: 永続的な派生テーブル(PDT)を有効にするには、この切り替えボタンを使用します。これにより、追加の PDT フィールドと、接続の [PDT オーバーライド] セクションが表示されます。

  • 一時データベース: PDT を書き込むスキーマ(バージョン3.50でPDTのサポートがPrestoに追加されました。PDT のサポート用に Presto を構成する方法について詳しくは、このページの PDT 用に PrestoDB または Trino を構成するのセクションをご覧ください)。

  • その他の JDBC パラメータ: PrestoDB JDBC ドライバまたは Trino JDBC ドライバの追加パラメータ。

  • SSL: SSL 接続を有効にします。

  • SSL を確認: この項目は無視してください。すべての SSL 接続では、[その他の JDBC パラメータ] フィールドに入力できる PrestoDB JDBC パラメータまたは Trino JDBC ドライバを使用する別の方法が指示されない限り、デフォルトのJava Truststoreを使用します。

接続が成功したことを確認するには、[テスト] をクリックします。トラブルシューティング情報については、データベース接続のテストのドキュメント ページをご覧ください。

これらの設定を保存するには、[接続] をクリックします。

接続設定の詳細については、ドキュメント ページの Looker をデータベースに接続するをご覧ください。

PDTのためのPrestoDBまたはTrinoの設定

PDTサポートは、PrestoDBかTrinoで使用しているコネクタに左右されます。このセクションでは、スクラッチデータベースに必要な構成設定について説明します。この例では、使用されているコネクタが hive であると仮定しています。

Hiveカタログプロパティファイルには、いくつかの設定プロパティと値を含める必要があります。

PrestoはHiveメタストア結果をキャッシュし、Lookerはすぐにテーブルを表示できる必要があるため、以下が必要です。

hive.metastore-cache-ttl = 0s

LookerはPDTをドロップし、名前を変更できなければならないため、以下の2つのプロパティが必要です。

hive.allow-rename-table=true
hive.allow-drop-table=true

なお、Google の内部 Presto テストサーバーでは、hive.properties ファイルを使用しています。これがすべての Hive スキーマに使用されます。

hive.s3.connect-timeout=1m
hive.s3.max-backoff-time=10m
hive.s3.max-error-retries=50
hive.metastore-cache-ttl = 0s
hive.metastore-refresh-interval = 5s
hive.s3.max-connections=500
hive.s3.max-client-retries=50
connector.name=hive-hadoop2
hive.s3.socket-timeout=2m
hive.s3.staging-directory=/mnt/tmp/
hive.s3.use-instance-credentials=true
hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml
hive.parquet.use-column-names=true
hive.allow-drop-table=true
hive.metastore.uri=thrift://<metastore-server>:9083
hive.storage-format=ORC
hive.allow-rename-table=true

Reference

Hive コネクタの構成の詳細については、PrestoDB Hive コネクタまたは Trino Hive コネクタをご覧ください。

機能のサポート

一部の機能については、Looker でサポートするには、データベース言語が同じ機能に対応している必要があります。

PrestoDB では、Looker 24.6 の時点で、次の機能がサポートされています。

特徴 サポート対象
サポート レベル
サポート対象
Looker(Google Cloud コア)
はい
対称集計
あり
派生テーブル
あり
永続的な SQL 派生テーブル
あり
永続的なネイティブ派生テーブル
あり
安定したビュー
あり
クエリの強制終了
あり
SQL ベースのピボット
あり
タイムゾーン
あり
SSL
あり
Subtotals
あり
JDBC の追加パラメータ
あり
Case Sensitive
あり
ロケーション タイプ
あり
リストのタイプ
あり
パーセンタイル
あり
個別のパーセンタイル
いいえ
SQL Runner の表示プロセス
あり
SQL Runner の説明テーブル
あり
SQL Runner 表示インデックス
いいえ
SQL Runner Select 10
あり
SQL ランナーの数
あり
SQL の説明
あり
Oauth 認証情報
いいえ
コンテキスト コメント
あり
接続プーリング
いいえ
HLL スケッチ
あり
集計認識
あり
増分PDT
いいえ
ミリ秒
あり
マイクロ秒
いいえ
マテリアライズド ビュー
いいえ
Approximate Count Distinct

Trino では、Looker 24.6 の時点で、次の機能がサポートされています。

特徴 サポート対象
サポート レベル
サポート対象
Looker(Google Cloud コア)
はい
対称集計
あり
派生テーブル
あり
永続的な SQL 派生テーブル
あり
永続的なネイティブ派生テーブル
あり
安定したビュー
いいえ
クエリの強制終了
あり
SQL ベースのピボット
あり
タイムゾーン
あり
SSL
あり
Subtotals
あり
JDBC の追加パラメータ
あり
Case Sensitive
あり
ロケーション タイプ
あり
リストのタイプ
あり
パーセンタイル
あり
個別のパーセンタイル
いいえ
SQL Runner の表示プロセス
あり
SQL Runner の説明テーブル
あり
SQL Runner 表示インデックス
いいえ
SQL Runner Select 10
あり
SQL ランナーの数
あり
SQL の説明
あり
Oauth 認証情報
いいえ
コンテキスト コメント
あり
接続プーリング
いいえ
HLL スケッチ
あり
集計認識
あり
増分PDT
いいえ
ミリ秒
あり
マイクロ秒
いいえ
マテリアライズド ビュー
いいえ
Approximate Count Distinct
あり

次のステップ

データベースを Looker に接続した後、ユーザーのログイン オプションを構成します