MongoSQL

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

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

前提条件と MongoSQL の構成

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

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

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

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

Looker で接続を作成する前に、MongoSQL スキーマ ビルダーのドキュメントを参照して、表形式のスキーマを定義して公開します。

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 ウェブ コンソールを使用して、次の手順で Looker のデータベース ユーザー アカウントを作成します。

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

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

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

  1. MongoDB Atlas Consoleにログインします。
  2. クラスターに移動して、接続をクリックします。
  3. [Atlas SQL](または [Connect your application using SQL])を選択します。
  4. [JDBC ドライバ] を選択します。
  5. 生成された HostPort (通常は 27017)、Database、および SSL の要件に注意してください。これらの詳細を入力する際は、Looker 接続を作成する

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

Looker から MongoSQL への接続を確立する手順は次のとおりです。

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

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

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

機能のサポート

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

Looker 26.16 以降、MongoSQL は以下の機能をサポートしています。

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