Looker には MongoDB バージョン 4.0 以降と BI Connector for BI バージョン 2.6.0 以降が必要です(
type_conversion_mode
セッション変数が導入されました)。
Looker では、次の 2 つのオプションを使用して、MongoDB Connector for BI を使用して MongoDB にアクセスできます。
- MongoDB Atlas で BI 用の MongoDB コネクタを使用する。
- MongoDB データベースと同じサーバーにインストールされた BI 用の MongoDB コネクタを使用する。
MongoDB Atlas
MongoDB Atlas には M10+ クラスタを使用する必要があります。Looker が MongoDB Atlas 上で動作する MongoDB データベースを使用するには、MongoDB Connector for BI(MongoBI)を使用する必要があります。BI Connector for Atlas を有効にするには、MongoDB Atlas が M10+ クラスタを使用している必要があります。
また、目的のデータベースに対する読み取り権限を持つユーザー アカウントを作成する必要があります。
BI 向けの MongoDB コネクタの構成
Looker で接続を作成する前に、MongoDB または Atlas の管理者が、このページで説明する以下の手順に沿って MongoDB 用の BI コネクタをセットアップする必要があります。
Looker サーバーを Atlas IP アクセスリストに追加する
Versa 3 は、プロジェクトの IP アクセスリストに含まれるエントリからのクライアント接続のみを許可します。Looker の IP アドレスを Atlas プロジェクトの IP アクセスリストに追加します。
- Looker の IP アドレスを取得します。
- Atlas IP アクセスリストの設定の手順に沿って、Atlas の IP アクセスリストに Looker の IP アドレスを追加します。
BI 用 MongoDB コネクタの有効化
BI 用 MongoDB コネクタを有効にします。
- M10+ クラスタを使用していることを確認します。
- Versa 3 で、クラスタの [接続] ページを開きます。ホスト名、ポート、ユーザーをメモします。Looker で接続を構成する際にこの情報を使用する必要があります。
同じサーバー上の MongoDB
Looker で接続を作成する前に、MongoDB 管理者が次の手順を使用して、MongoDB と Mongo Connector for BI を設定する必要があります。詳しくは、このページをご覧ください。
BI 用 Mongo コネクタのインストール
オンプレミスへの BI コネクタのインストール MongoDB ドキュメント ページの説明に沿って、MongoDB データベースと同じサーバーに MongoDB 用の MongoDB コネクタをインストールします。
ネットワークトラフィックの暗号化
MongoDB Connector for BI では、MongoDB のサーバーと Looker アプリケーション間で SSL 暗号化を使用する必要があります。SSL の設定手順については、MongoDB ドキュメントの BI Connector 用に SSL を構成するをご覧ください。
Looker のユーザーと権限の設定
MongoDB シェルに use
コマンドを入力して、Looker が接続するデータベースに切り替えます。次に、readWrite
ロールを指定して、db.createUser()
で Looker のユーザーを作成します。
use looker_database
db.createUser({ user: looker,
pwd: `some_password_here`,
roles: [ "readWrite" ]
})
MongoBI JDBC ドライバ ファイルのインストール
どちらの MongoDB Connector for BI オプションでも、Looker では次の手順で JDBC ドライバ ファイルを構成する必要があります。
次の 2 つの JAR ファイルをダウンロードします。
以下の値を使用して、パッケージ化されていない JDBC ドライバのドキュメント ページにある手順を行います。
ドライバ シンボル: mongobi
ドライバのエントリ:
- name: mongobi
dir_name: mongobi
module_path: com.mysql.jdbc.Driver
override_jdbc_url_subprotocol: mysql
Looker 6.2 以前を使用している場合:
- name: maria15x
dir_name: mongobi
module_path: com.mysql.jdbc.Driver
override_jdbc_url_subprotocol: mysql
ダイアグラムにドライバを挿入する手順の場合、これらのファイルへのパスは次のようになります。looker/custom_jdbc_drivers/mongobi/mongosql-auth-1.0.0-rc0.jar
looker/custom_jdbc_drivers/mongobi/mysql-connector-java-5.1.47.jar
通常の派生テーブルの使用を許可する(推奨)
派生テーブルは Looker の重要なツールであり、分析の洗練度を高めることができます。また、クエリのパフォーマンスを向上させるうえでも重要な役割を果たします。Looker の派生テーブル機能は、大まかに言うと、データベースにまだ存在していない新しいテーブルを作成する手段を提供します。
MongoDB Connector for BI は一時的な通常の派生テーブルをサポートしていますが、永続的な派生テーブルはまだサポートしていません。
通常の派生テーブルは一時的なものであるため、保存する必要はありません。そのため、スキーマを作成する必要はありません。ただし、looker_tmp
スキーマが存在しない場合でも、そのスキーマに dbOwner
ロールを付与する必要があります。
この MongoDB のドキュメント ページの「MongoDB ユーザーを変更する」のセクションに沿って、Looker が接続するユーザーの looker_tmp
に対する dbOwner
ロールを追加します。
db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])
接続の追加
Looker のインターフェースを使用してデータベース接続を構成します。[Admin] セクションで、[Connections] を選択して [Add Connection] をクリックします。接続の詳細を入力します(詳細については、Looker のデータベースへの接続ページをご覧ください)。
[Test Settings Settings] をクリックして、接続が成功したことを確認します。データベース接続のテストのドキュメント ページには、トラブルシューティングに関する情報が記載されています。
MongoDB Connector for BI での SQL 関数と演算子の使用
MongoDB Connector for BI 接続を使用して開発する場合は、こちらの MongoDB のドキュメント ページに記載されている SQL 関数と演算子を使用できます。
機能のサポート
一部の機能については、Lookerでサポートするには、データベースダイアレクトが同じ機能に対応している必要があります。
Looker の最新リリースでは、MongoDB は次の Looker 機能をサポートしています。
次の特長があります。
- MongoDB では、ディメンション グループのミリ秒単位やマイクロ秒の期間はサポートされていません。
- MongoDB では、ディメンションに millisecond、millisecondX、microsecond のタイプは使用できません。
- Looker では、MongoBI からアクセスされるすべてのタイムスタンプが協定世界時(UTC)として扱われます。
次のステップ
データベースの構成が完了したら、Looker からデータベースに接続します。