MongoSQL

MongoSQL 言語(MongoSQL インターフェース を使用)を使用して、Looker を MongoSQL クラスタに直接接続します。Looker を MongoSQL に接続すると、リレーショナル SQL クエリを使用してドキュメント データを分析し、インタラクティブな Looker ダッシュボードを構築できます。

Looker には、MongoSQL インターフェース用の Apache-2.0 ライセンスの JDBC ドライバが公式にバンドルされています。従来の MongoBI 言語とは異なり、カスタムのアンパックされた JDBC ドライバ JAR ファイルを手動でインストールする必要はありません。

前提条件と MongoSQL の構成

Looker で接続を作成する前に、MongoSQL で次の構成手順を完了します。

SQL Schema Builder を使用してリレーショナル スキーマを構築する

MongoDB は、柔軟な非リレーショナル ドキュメント形式(JSON/BSON)でデータを保存します。Looker が標準 SQL を使用して MongoDB コレクションにクエリを実行できるようにするには、MongoSQL の SQL Schema Builder を使用して SQL スキーマを構築する必要があります。

MongoSQL インターフェースは、SQL Schema Builder によって作成されたリレーショナル スキーマを使用して、ドキュメント構造、ネストされたフィールド、配列を標準 SQL テーブル、行、列にマッピングします。アクティブな SQL スキーマがない場合、SQL インターフェースは MongoDB コレクションに対する SQL クエリを変換できません。

Looker で接続を作成する前に、MongoSQL Schema Builder のドキュメントを参照して、表形式のスキーマを定義して公開してください。

MongoDB Enterprise オンプレミス インスタンスの場合は、MongoDB SQL Schema Builder CLI を使用してスキーマを定義します。

Looker IP アドレスを Atlas IP アクセスリストに追加する

MongoSQL は、クライアント接続を承認済みの IP アドレスに制限します。Looker インスタンスから MongoSQL にクエリを実行するには、次の手順で Looker IP アドレスを Atlas IP アクセスリストに追加する必要があります。

  1. Looker インスタンスのリージョンの Looker IP アドレスのリストを取得します。
  2. Atlas IP アクセスリストのドキュメントに沿って、これらの IP アドレスを Atlas プロジェクトの IP アクセスリストに追加します。

Looker 用の MongoDB ユーザー アカウントを作成する

MongoDB Atlas Web Console を使用して、次の手順で Looker のデータベース ユーザー アカウントを作成します。

  1. MongoDB Atlas Console にログインします。
  2. メイン ナビゲーション メニューの [セキュリティ] で、[データベース アクセス] を選択します。
  3. [新しいデータベース ユーザーを追加] をクリックします。
  4. 認証方法として [パスワード] を選択します。ユーザー名looker など)と安全なパスワードを入力します。
  5. [データベース ユーザーの権限] で [組み込みロール] を選択し、Looker がアクセスするデータベースに read ロール(またはカスタム読み取り権限)を割り当てます。
  6. [ユーザーを追加] をクリックして、ユーザー認証情報を保存します。

Atlas SQL 接続パラメータを取得する

Looker 接続を作成するには、Atlas SQL 接続の接続パラメータを入力する必要があります。パラメータ情報は、次の手順で取得できます。

  1. MongoDB Atlas Console にログインします。
  2. クラスタに移動して [接続] をクリックします。
  3. [Atlas SQL](または [SQL を使用してアプリケーションを接続する])を選択します。
  4. [JDBC ドライバ] を選択します。
  5. 生成された ホストポート (通常は 27017)、データベース 、SSL 要件をメモします。これらの詳細は、Looker 接続を作成するときに入力します

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

次の手順で、Looker から MongoSQL への接続を確立します。

  1. Looker の [**管理者**] セクションで [**接続**] を選択し、[**新しい接続**] をクリックします。
  2. 接続の詳細を入力します。設定の大部分は、ほとんどのデータベース言語に共通するものです。詳細については、Looker をデータベースに接続するのドキュメント ページをご覧ください。設定の一部を次に説明します。他のすべてのフィールドはデフォルト値を使用するか、空白のままにします。

    • 名前: 一意の接続名を入力します。
    • 言語: プルダウン メニューから [MongoSQL] を選択します。
    • ホスト: MongoSQL インターフェースから提供されるホスト名(<cluster-name>.a.query.mongodb.net など)。
    • ポート: Atlas SQL のポート番号(デフォルト: 27017)。
    • データベース: SQL Schema Builder を使用してスキーマを作成したデータベースの名前。
    • ユーザー名: Looker 用に作成されたデータベースのユーザー名。
    • パスワード: データベース ユーザーのパスワード。
    • SSL: SSL を有効にします(ssl=true)。
    • その他の JDBC パラメータ: (省略可)MongoDB ドライバでサポートされている追加の JDBC パラメータ(authSource=adminconnectTimeoutMS=10000 など)。サポートされている JDBC パラメータをご覧ください。
  3. データベース接続を確認するには、[接続をテスト] をクリックします。

  4. Looker に [接続可能] と表示されたら、[接続] を押して接続を作成します。

これで、データベース接続が Looker の [接続] [管理] ページのリストに追加されます。

サポートされている JDBC パラメータ

MongoSQL 言語の場合、Looker は [その他の JDBC パラメータ] フィールドで次の JDBC パラメータをサポートしています。

  • appName
  • authSource
  • clientinfo
  • connectTimeoutMS
  • directConnection
  • disableclientcache
  • extjsonmode
  • heartbeatFrequencyMS
  • journal
  • localThresholdMS
  • maxIdleTimeMS
  • maxWaitTimeMS
  • readPreference
  • replicaSet
  • retryReads
  • retryWrites
  • serverSelectionTimeoutMS
  • socketTimeoutMS
  • ssl
  • tls
  • tlsAllowInvalidHostnames
  • tlsInsecure
  • w
  • wtimeoutMS

クエリの制限事項と SQL の動作

LookML モデルを構築し、SQL インターフェースを使用して MongoSQL にクエリを実行する場合は、次の言語の特性に注意してください。

  • SQL Schema Builder の要件: 前提条件で説明したように、SQL クエリには、Atlas SQL Schema Builder で定義された事前構成済みのリレーショナル スキーマが必要です。
  • 派生テーブル: 一時的な(標準)派生テーブルはサポートされていますが、永続的な派生テーブル(PDT)は対象外です。
  • 日付とタイムスタンプの型: date データ型はサポートされていません。標準的な方法として、日付は timestamp フィールドとして保存してモデル化します。
  • タイムゾーン: MongoSQL インターフェースからアクセスされるすべてのタイムスタンプは UTC で処理されます。Looker は、MongoDB 接続のデータベース内でタイムゾーンを変換しません。

機能のサポート

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

MongoSQL は、Looker 26.14 の時点で、次の機能をサポートしています。

機能 サポート対象
Looker(Google Cloud コア)
対称集計
派生テーブル
永続的な SQL 派生テーブル
永続的なネイティブ派生テーブル
安定したビュー
クエリの強制終了
SQL ベースのピボット
タイムゾーン
SSL
Subtotals
JDBC の追加パラメータ
大文字と小文字の区別
ロケーション タイプ
リストの種類
パーセンタイル
個別のパーセンタイル
SQL Runner の表示プロセス
SQL Runner の説明テーブル
SQL Runner 表示インデックス
SQL Runner Select 10
SQL Runner の数
SQL の説明
OAuth 2.0 認証情報
コンテキスト コメント
接続プーリング
HLL スケッチ
集計テーブルの自動認識
増分 PDT
ミリ秒
マイクロ秒
マテリアライズド ビュー
前の期間との比較指標
Approximate Count Distinct
データベース内分析モデル
カスタム カレンダー