Dataproc Metastore在Datalake环境中的作用



在Google Datalake环境中,Dataproc Metastore服务的用途是什么?

我正在看一个谷歌云技术的视频,在这个视频的17:33分左右,主持人说:

为了使数据可访问,需要的另一件事是GCS桶中存在的所有数据,因此在BigQuery上。最近推出的Dataproc Metastore这是一个高兼容性的Metastore。它基于高亚稳态。这将允许你注册数据,特别是结构化数据,这样你就可以使用Spark, PRESTO或Hive进行查询

我理解这句话的方式是,如果我有一个名为my_bigquery_table的BigQuery表,我应该能够运行以下Hive查询(或类似)并获得输出:

SELECT * FROM my_bigquery_table;

据我所知,这只会工作,如果我的Metastore能够从数据目录中提取关于我的BigQuery表的条目。

我的理解正确吗?目前,我无法找到一种方法来同步我的数据目录条目到Metastore(同步数据从Metastore到数据目录是可能的,我知道这一点)。

更新1:

这是一个有效的例子,从GCS加载Parquet/CSV文件:

CREATE EXTERNAL TABLE sample_table(<column list>) STORED AS PARQUET LOCATION 'gs://parquet_bucket/parquet_file'; // table creation
SELECT * FROM sample_table; // select query

Dataproc Metastore是托管的Apache Hive Metastore服务。当访问存储在服务中的数据库和表元数据时,它提供100%的OSS兼容性。

例如,您可能有一个表存储在Google Cloud Storage上的Parquet文件中。您可以在这些文件上定义一个表,并将该元数据存储在Dataproc Metastore实例中。然后,您可以将Cloud Dataproc集群连接到您的Dataproc Metastore服务实例,并使用Hive, SparkSQL或其他查询引擎查询该表。

Dataproc Metastore还为Spark SQL提供了一个兼容OSS的元数据API,用于查询Cloud Dataplex发现的数据。更多信息请参阅本文档。

Dataproc Metastore不会自动从Data Catalog中获取元数据,也不会自动从Hive中查询BigQuery表。

相关内容

  • 没有找到相关文章