首页 > 解决方案 > 在 Impala 中在 Parquet 目录上创建外部表,其中包含多个具有不同模式的 parquet 文件

问题描述

在 Spark 中,我们可以通过将 mergeSchema 选项设置为 true 来读取具有不同模式的多个 parquet 文件。Impala 中是否有任何类似的功能允许我们将外部表指向一个目录,该目录具有多个具有不同模式的 parquet 文件?

示例:我们有 MEDICAL.parquet 目录,在它下面有两个子目录:data_supplier_id=140060 和 data_supplier_id=140059,在每个子目录下,每个文件都有其他子目录,例如 file_uuid=vwefvkn-dfw16563e- qebebebeb,然后在每个 file_uuid=... 目录下,我们都有实际的 parquet 文件,每个 file_uuid=... 可能有不同的模式。

在 Spark 中,我们只需将 spark 指向顶级目录(在本例中为 Medical.parquet),它会在单个 Dataset 中读取其下的所有数据。

在创建外部表并将所有数据加载到其中时,Impala 有没有办法将其指向 MEDICAL.parquet 文件?而不是在每个 file_uuid=... 目录上创建外部表。

标签: hadoopimpala

解决方案


推荐阅读