Hadoop 如何跳过impala外部表中的文件头?
我有78 GB大小的HDFS文件 我需要在上面创建一个Impala外部表,以便对可用数据执行一些分组和聚合 问题 该文件包含标题 问题 是否有任何方法可以在读取文件时跳过文件头并查询其余数据 虽然我有办法通过将文件复制到本地,然后删除标题,然后将更新后的文件再次复制到HDFS来解决问题,但这是不可行的,因为文件大小太大 如果有人有任何想法,请建议 如有任何建议,将不胜感激Hadoop 如何跳过impala外部表中的文件头?,hadoop,hdfs,cloudera,impala,external-tables,Hadoop,Hdfs,Cloudera,Impala,External Tables,我有78 GB大小的HDFS文件 我需要在上面创建一个Impala外部表,以便对可用数据执行一些分组和聚合 问题 该文件包含标题 问题 是否有任何方法可以在读取文件时跳过文件头并查询其余数据 虽然我有办法通过将文件复制到本地,然后删除标题,然后将更新后的文件再次复制到HDFS来解决问题,但这是不可行的,因为文件大小太大 如果有人有任何想法,请建议 如有任何建议,将不胜感激 提前感谢更新或删除行操作在Hive/Impala中不可用。因此,您应该将DELETE模拟为 将数据文件加载到临时配置单元/
提前感谢更新或删除行操作在Hive/Impala中不可用。因此,您应该将DELETE模拟为
- 将数据文件加载到临时配置单元/Impala表中
- 使用INSERT INTO或CREATE TABLE AS on temp TABLE创建所需表格
更神秘的方法取决于HDFS数据的格式。例如,如果标题行和数据行都是制表符分隔的,那么您可以使用包含所有字符串字段的模式读取所有内容,然后在进行聚合之前过滤或分区标题。是的,我有此选项,但这将占用我现在所需的2倍空间。。。。。还有别的办法吗?但是智能解决方案有一个,谢谢:)不,为什么是2x?从临时表中复制数据后删除临时表。好的,这需要一些pig知识,但我没有:(无论如何,我会尝试,如果你有相关链接,请用它更新你的答案。