数据库类型

创建 Dataproc Metastore 服务时,您必须选择使用 MySQL 数据库类型或 Spanner 数据库类型。

此选择会影响您可以与 Dataproc Metastore 服务集成和使用的功能。请务必注意,创建 Dataproc Metastore 服务后,您无法更新数据库类型。请务必根据自己的需求选择合适的数据库类型。

本页介绍了这些数据库类型之间的区别,以及如何为您的服务选择合适的数据库类型。

MySQL 与 Spanner 之间的区别

MySQL

Dataproc Metastore MySQL 数据库类型是 Cloud SQL 的一种实现。 使用 MySQL 数据库时,请注意以下事项:

  • 创建 Dataproc Metastore 时,MySQL 是默认的数据库类型。
  • 所有 Hive 版本均支持 MySQL。
  • MySQL 支持所有 Dataproc Metastore 功能。
  • MySQL 支持 Dataproc Metastore 加密,例如使用客户管理的加密密钥 (CMEK)。

Spanner

Dataproc Metastore Spanner 数据库类型是 Spanner 的一种实现。 使用 Spanner 数据库时,请注意以下事项:

  • Spanner 仅在 Hive 版本 2.3.6 和 3.1.2 上受支持。
  • Spanner 仅支持 Avro 导入。
  • 表格中支持的最大列数为 5,000。

其他详情

下表提供了有关这些差异的更多详细信息。

MySQL Spanner
可靠性(正常运行时间) Cloud SQL SLO 99.95%* Spanner SLO 99.99%*
维护期 必填 不需要

注意:

  • *Cloud SQL 和 Spanner SLO 无法直接转换为 Dataproc Metastore SLO。Dataproc Metastore 您选择的数据库类型不会影响 Dataproc Metastore SLO。
  • 这两种数据库类型的价格没有区别。

准备工作

所需的角色

如需获得创建 Dataproc Metastore 所需的权限,请让管理员根据最小权限原则向您授予项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色包含创建 Dataproc Metastore 所需的 metastore.services.create 权限。

您也可以使用自定义角色或其他预定义角色来获取此权限。

如需详细了解特定的 Dataproc Metastore 角色和权限,请参阅使用 IAM 管理 Managed Service for Apache Spark 访问权限

选择数据库类型

您可以在首次创建 Dataproc Metastore 服务时选择数据库类型。

以下示例简要展示了您选择数据库类型的步骤。如需了解完整的分步说明,请参阅创建 Dataproc Metastore 服务

控制台

  1. 在 Google Cloud 控制台中,打开 Dataproc Metastore 页面:

    打开 Dataproc Metastore

  2. 在导航栏中,点击创建

    此时会打开创建服务页面。

  3. 对于数据库类型,请选择 MySQLSpanner

    MySQL 是默认数据库类型。

  4. 根据需要,为您的服务选择其余配置

  5. 点击提交

gcloud CLI

  1. 运行以下 gcloud metastore services create 命令:

    gcloud metastore services create SERVICE_ID \
       --location=LOCATION \
       --database-type=DATABASE_TYPE; default="mysql"
    

    替换以下内容:

    • SERVICE_ID:Dataproc Metastore 服务的名称或 ID。
    • LOCATION:Dataproc Metastore 服务所在的区域。
    • DATABASE_TYPE:您要为 Dataproc Metastore 服务设置的数据库类型。 可接受的值包括 mysqlspanner。默认值为 mysql

后续步骤