IBM Cloud Docs
MongoDB Enterprise Edition Analytics Add-On

MongoDB Enterprise Edition Analytics Add-On

Databases for MongoDB Enterprise Edition 的分析插件将于 2025 年 3 月 31 日之后停用。

Databases for MongoDB EE (Enterprise Edition) Analytics Add-On 允许您运行长时间运行的分析查询或供应 MongoDB Connector for Business Intelligence(BI),以使查询数据与 BI 工具 (例如 Tableau) 兼容。

Databases for MongoDB EE Analytics Add-On 由两个组件组成:

Databases for MongoDB EE Analytics Add-On 解决了哪些问题?

  1. 大多数 BI 工具不适用于 MongoDB 文档数据模型。

    MongoDB's文档数据模型由带有任意嵌套数据的复杂文档组成。 此模式使存储数据变得灵活,简单且可扩展。 但是,大多数 BI 工具都要求数据采用表格格式,这种格式是严格定义的,并存储在表格中,而不是文档中。 Databases for MongoDB EE Analytics Add-On 将 MongoDB 文档数据转换为可由 BI 工具查询和显示的 SQL 可读表格数据。

  2. BI 查询成本高昂,可能会降低数据库性能。

    长时间运行的查询可能会对部署的操作工作流程产生负面影响。 Databases for MongoDB EE Analytics Add-On 引入了额外的数据成员,用于将分析工作负载与操作工作负载隔离开来。 分析 Node 数据与其他节点保持同步,因此针对其运行的任何查询都会产生相同的结果。

分析节点

“分析”节点将分析与操作工作负载隔离开来,从而允许长时间运行的查询不会影响操作工作流程性能。 您可以直接通过使用 MongoDB 查询或通过 BI 连接器 (如果要运行 SQL 查询) 来使用分析节点。

在不使用 BI 连接器的情况下启用“分析”节点允许您运行文档类型的 MongoDB 查询或测试对生产数据的查询 而不 影响应用程序。

您可以通过连接字符串直接访问分析节点,例如:

mongodb://$USERNAME:$PASSWORD@host-0:30783,host-1:30783,host-2:30783/?readPreference=secondary&readPreferenceTags=nodeType%3AANALYTICS&replicaSet=replset

BI 的连接器

传统 BI 工具旨在处理表格,行和列数据。 Databases for MongoDB EE Analytics Add-On Connector for BI 允许您使用诸如 Tableau之类的工具,通过连接到 Analytics 节点并提供 SQL 接口来使用 SQL 查询 MongoDB 数据。

您可以使用您的用户名和密码以及主机 URL (如下所示)通过BI工具的 ODBC 连接器访问您的BI连接器:

xyz1234-scfr5rer-496hjgo6ghtg-biconnector.abc12345deft7.databases.appdomain.cloud:32757

如果没有分析节点,那么无法启用 Databases for MongoDB EE Analytics Add-On 连接器 for BI。

MongoDB EE 分析附加组件注意事项

在利用 Databases for MongoDB EE Analytics Add-On 之前,请考虑以下事项:

  • 该附加组件仅可用于 Databases for MongoDB EE。

  • 启用后,无法取消供应分析节点。

  • 无法扩展分析成员的磁盘空间。

  • 分析节点作为数据成员定价。 有关 Databases for MongoDB EE 的更多信息,请参阅 定价

    缩放主数据库成员的磁盘空间会导致分析成员按比例缩放。

配置分析节点和 BI 连接器

使用 Terraform 进行供应

Analytics Node 和 BI Connector 是可以添加到 Terraform 脚本的 group 属性。 您可以在此处看到一个示例:

data "ibm_resource_group" "test_acc" {
  is_default = true
}

resource "ibm_database" "mongodb_enterprise" {
  resource_group_id = data.ibm_resource_group.test_acc.id
  name              = "test"
  service           = "databases-for-mongodb"
  plan              = "enterprise"
  location          = "us-south"
  adminpassword     = "password12"
  tags              = ["one:two"]

  group {
    group_id = "member"

    host_flavor {
      id = "b3c.8x32.encrypted"
    }

    disk {
      allocation_mb = 256000
    }
  }

  group {
    group_id = "analytics"

    members {
      allocation_count = 1
    }
  }

  group {
    group_id = "bi_connector"

    members {
      allocation_count = 1
    }
  }

  timeouts {
    create = "120m"
    update = "120m"
    delete = "15m"
  }
}

data "ibm_database_connection" "mongodb_conn" {
  deployment_id = ibm_database.mongodb_enterprise.id
  user_type     = "database"
  user_id       = "admin"
  endpoint_type = "public"
}

output "bi_connector_connection" {
  description = "BI Connector connection string"
  value       = data.ibm_database_connection.mongodb_conn.bi_connector.0.composed.0
}

output "analytics_connection" {
  description = "Analytics Node connection string"
  value       = data.ibm_database_connection.mongodb_conn.analytics.0.composed.0
}

有关更多信息,请参阅 Terraform 文档

请记住,分析 Node 必须在 BI 连接器 之前 缩放,否则您的请求将失败。

通过 IBM Cloud 数据库 API 进行供应

通过 API 进行供应是一个两步过程:

  1. 创建 Databases for MongoDB EE 部署。
  2. 之后,您可以使用 Scale Group 方法将 Analytics Node 和 BI Connector group 添加到部署中。

分析 Node的示例:

curl --request PATCH \
  --url https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups/analytics \
  --header 'Authorization: Bearer <> \
  --header 'Content-Type: application/json' \
  --data '{
    "group": {
        "members": {
            "allocation_count": 1
        }
    }
}'

BI 连接器示例:

curl --request PATCH \
  --url https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups/bi_connector \
  --header 'Authorization: Bearer <> \
  --header 'Content-Type: application/json' \
  --data '{
    "group": {
        "members": {
            "allocation_count": 1
        }
    }
}'

请记住,分析 Node 必须部署 之前 BI 连接器,否则您的请求将失败。

要获取连接字符串以连接到分析 Node 和/或 BI 连接器,请遵循 此处 的指示信息。

使用 BI 工具进行连接

要使用常用 BI 工具连接到 MongoDB Connector for BI,请参阅: