在配置单元中分区后处理子文件夹
handle subfolders after partitions in hive
我的目录结构如下。
- /data/year=/月=/日=/source1/abc.log
- /data/year=/月=/日=/source2/def.log
- /data/year=/月=/日=/source3/xyz.log
我想创建一个以年、月、日作为分区的配置单元 table,但是当我尝试执行 MSCK REPAIR TABLE 时它抱怨子文件夹 'source1'。
创建table 语句
CREATE EXTERNAL TABLE SAMPLE (
col1 STRING,
col2 STRING
)
PARTITIONED BY (year STRING, month STRING, date STRING)
STORED as ORC
Location "s3n://blah/data/"
TBLPROPERTIES ("orc.compress"="SNAPPY");
MSCK 修复 TABLE 给予 "unexpected component source1"。知道如何在不移动文件的情况下创建外部 table 吗?谢谢你的帮助。
能否请您尝试设置以下 属性
hive.msck.path.validation = skip (or) ignore
在 hive-site.xml 中,然后在 table
上执行 'MSCK REPAIR TABLE'
(参考自Hive Manual
在“恢复分区(MSCK REPAIR TABLE)”部分下)
这个错误可能是因为你的路径在你的分区(source2 和 source3)之后包含一个文件夹,我在创建语句中忘记分区时遇到了类似的问题。
我的目录结构如下。
- /data/year=/月=/日=/source1/abc.log
- /data/year=/月=/日=/source2/def.log
- /data/year=/月=/日=/source3/xyz.log
我想创建一个以年、月、日作为分区的配置单元 table,但是当我尝试执行 MSCK REPAIR TABLE 时它抱怨子文件夹 'source1'。
创建table 语句
CREATE EXTERNAL TABLE SAMPLE (
col1 STRING,
col2 STRING
)
PARTITIONED BY (year STRING, month STRING, date STRING)
STORED as ORC
Location "s3n://blah/data/"
TBLPROPERTIES ("orc.compress"="SNAPPY");
MSCK 修复 TABLE 给予 "unexpected component source1"。知道如何在不移动文件的情况下创建外部 table 吗?谢谢你的帮助。
能否请您尝试设置以下 属性
hive.msck.path.validation = skip (or) ignore
在 hive-site.xml 中,然后在 table
上执行 'MSCK REPAIR TABLE'(参考自Hive Manual 在“恢复分区(MSCK REPAIR TABLE)”部分下)
这个错误可能是因为你的路径在你的分区(source2 和 source3)之后包含一个文件夹,我在创建语句中忘记分区时遇到了类似的问题。