适用于 BI 的 MongoDB 连接器

Looker 可以通过以下两种方式使用 MongoDB Connector for BI 访问 MongoDB:

  • MongoDB Atlas 中使用 MongoDB Connector for BI。
  • 使用安装在与 MongoDB 数据库相同的服务器上的 BI MongoDB 连接器。

MongoDB Atlas

您的 MongoDB Atlas 必须使用 M10+ 集群。为了让 Looker 使用在 MongoDB Atlas 上运行的 MongoDB 数据库,您必须使用 MongoDB Connector for BI (MongoBI)。为 Atlas 启用 BI 连接器要求 MongoDB Atlas 使用 M10+ 集群。

您还必须创建一个具有所需数据库读取权限的用户账号。

为 BI 配置 MongoDB 连接器

在 Looker 中创建连接之前,您的 MongoDB 或 Atlas 管理员需要按照以下步骤设置适用于 BI 的 MongoDB 连接器,本页对此进行了说明:

将 Looker 服务器添加到 Atlas IP 访问权限列表中

Atlas 仅允许来自项目 IP 访问列表中的条目的客户端连接。将 Looker IP 地址添加到 Atlas 项目的 IP 访问权限列表中:

  1. 获取 Looker IP 地址
  2. 按照 Atlas IP 访问权限列表设置说明,将 Looker IP 地址添加到 Atlas IP 访问权限列表中。

为 BI 启用 MongoDB 连接器

为 BI 启用 MongoDB Connector:

  1. 验证您是否位于 M10+ 集群上。
  2. 在 Atlas 中,打开集群的“连接”页面。记下主机名、端口和用户。在 Looker 中配置连接时,您需要使用这些信息。

同一服务器上的 MongoDB

在 Looker 中创建连接之前,您的 MongoDB 管理员应按照以下步骤设置 MongoDB 和 BI 的 Mongo 连接器,本页对此进行了说明:

安装适用于 BI 的 Mongo 连接器

在 MongoDB 数据库所在的服务器上安装适用于 BI 的 MongoDB Connector,如在本地安装 BI 连接器中所述 MongoDB 文档页面。

对网络流量进行加密

适用于 BI 的 MongoDB Connector 要求在 MongoDB 服务器和 Looker 应用之间使用 SSL 加密。按照为 BI 连接器配置 SSL MongoDB 文档页面上的 SSL 设置说明进行操作。

设置 Looker 用户和权限

MongoDB shell 中,输入 use 命令以切换到 Looker 将连接的数据库。然后,为 Looker 创建一个 db.createUser() 用户,角色为 readWrite

use looker_database

db.createUser({ user: looker,
                pwd: `some_password_here`,
                roles: [ "readWrite" ]
              })

安装 MongoBI JDBC 驱动程序文件

对于这两个适用于 BI 的 MongoDB Connector 选项,Looker 都需要按照以下步骤配置 JDBC 驱动程序文件:

下载以下两个 JAR 文件:

按照未打包的 JDBC 驱动程序文档页面上的步骤操作,使用以下值:

驱动程序符号mongobi

driver entry

- 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 派生表功能提供了一种创建数据库中尚不存在的新表的方法。

适用于 BI 的 MongoDB Connector 支持临时常规派生表,但不支持永久性派生表

由于常规派生表是临时表,因此不需要存储。因此,您无需为它们创建架构。但是,您需要向 looker_tmp 架构授予 dbOwner 角色,即使该架构不存在也是如此。

请按照有关配置数据库用户的 MongoDB 文档页面中的“修改 MongoDB 用户”部分操作,在 looker_tmp 上为 Looker 将用于连接的用户添加 dbOwner 角色。

db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])

正在创建与数据库的 Looker 连接

请按照以下步骤创建从 Looker 到数据库的连接:

  1. 在 Looker 的管理部分中,选择连接,然后点击添加连接
  2. 方言下拉菜单中选择 MongoBI

  3. 填写连接详情。大多数设置对大多数数据库方言都是通用的。如需了解详情,请参阅将 Looker 连接到您的数据库文档页面。

  4. 如需验证连接是否成功,请点击测试。如需了解问题排查信息,请参阅测试数据库连接文档页面。

  5. 要保存这些设置,请点击连接

将 SQL 函数和运算符与适用于 BI 的 MongoDB Connector 搭配使用

使用 MongoDB 连接器进行 BI 连接开发时,您可以使用 MongoDB 文档中列出的 SQL 函数和运算符

功能支持

要让 Looker 支持某些功能,您的数据库方言也必须支持这些功能。

从 Looker 24.12 开始,MongoBI 支持以下功能:

特征 是否支持?
支持级别
受支持
Looker (Google Cloud Core)
对称汇总
派生表
永久性 SQL 派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的数据透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
名单类型
百分位
不同百分位
SQL Runner 显示进程
SQL Runner 描述表
SQL Runner 显示索引
SQL Runner 选择 10
SQL 运行程序数量
SQL 说明
OAuth 凭据
上下文注释
连接池
HLL 素描
聚合感知
增量 PDT
毫秒
微秒
具体化视图
非重复近似计数

此外: