首页 > 解决方案 > Dataproc:本地 Hive 元存储的主要用例是什么?

问题描述

默认情况下,Dataproc 使用主节点上的本地 MySQL(映像版本 1.5+)数据库作为 Hive 表元数据存储。

我不完全理解这个本地元数据存储的主要用例。

使用它的好处和不使用它的缺点是什么?

标签: google-cloud-dataproc

解决方案


Dataproc 上的 Hive Metastore 有 3 种部署模式:

  1. 集群内 MySQL 和 Hive Metastore。这是默认设置。Hive 元数据(表模式)的生命周期与集群相同。一个典型的用例是您在 GCS 中有输入数据,并且希望输出数据也在 GCS 中。在您的 Hive 脚本中,您首先为输入和输出数据创建外部表,然后通过一些转换从输入表中查询数据并将结果插入到输出表中。查询完成后,不再需要表元数据。

  2. 外部 MySQL,集群内 Hive Metastore。在此部署中,您将 Hive 元数据存储在外部 MySQL 实例中,通常是 Cloud SQL 实例。集群内 Hive Metastore 使用外部 MySQL 实例作为底层数据库。有关更多详细信息,请参阅此文档

  3. 外部 MySQL 和 Hive Metastore。这是推荐的模式。在此部署中,集群中没有 MySQL 和 Hive Metastore,Hive Server2 依赖于外部 Hive Metastore,通常是 Dataproc Metastore Service。有关详细信息,请参阅此文档

当您不需要 Hive 元数据生命周期来超过集群生命周期时,请选择模式 1。需要时选择模式 2 或 3。


推荐阅读