是否可以在具有不同架构的镶木地板文件上创建外部配置单元 table?

Is it possible to create an external hive table on a parquet file with a different schema?

我的镶木地板文件结构如下:

+------+------------------+------------------+
| col1 |       col2       |        col3      |
+------+------------------+------------------+
|  v0  | { k1:v1, k2:v2 } | { k3:v3, k4:v4 } |
+------+------------------+------------------+

col2 和 col3 是地图列。 我希望创建一个配置单元 table,在此基础上使用以下架构,如下所示:

+-------+-----+-----+-----+-----+
| col1  |  k1 |  k2 |  k3 |  k4 |
+-------+-----+-----+-----+-----+
|  v0   |  v1 |  v2 |  v3 |  v4 |
+-------+-----+-----+-----+-----+

是否可以创建上述映射?我熟悉在 hbase table.

上创建外部 table 的类似过程

您可以通过以下步骤完成:

1.Create 临时 table 并按原样存储文件(使用映射列类型);

2.Create 一秒钟 table 得到您需要的最终结构;

3.Insert从临时table变成第二个table。插入时需要使用一些函数,如:trim、拆分等。您可以使用 this example.