Hive gzip 文件解压

2024-02-09

我已经将一堆 .gz 文件加载到 HDFS 中,当我在它们之上创建一个原始表时,我在计算行数时看到了奇怪的行为。比较 gz 表和未压缩表的 count(*) 结果,结果有约 85% 的差异。文件 gz 压缩后的表记录较少。有人见过这个吗?

CREATE EXTERNAL TABLE IF NOT EXISTS test_gz(
  col1 string, col2 string, col3 string)
ROW FORMAT DELIMITED
   LINES TERMINATED BY '\n'
LOCATION '/data/raw/test_gz'
;

select count(*) from test_gz;    result 1,123,456
select count(*) from test;  result 7,720,109

我能够解决这个问题。不知何故,gzip 文件在 map/reduce 作业(hive 或自定义 java map/reduce)中没有完全解压缩。 Mapreduce 作业只会读取大约 450 MB 的 gzip 文件并将数据写入 HDFS,而不会完全读取 3.5GZ 文件。奇怪了,一点错误都没有!

由于文件是在另一台服务器上压缩的,因此我手动解压它们并在hadoop客户端服务器上重新压缩它们。之后,我将新压缩的3.5GZ文件上传到HDFS,然后hive能够完整统计读取整个文件的所有记录。

Marcin

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hive gzip 文件解压 的相关文章

随机推荐

  • 如何保持 /*!与 UglifyJS2 的评论?

    默认行为寻找 license or preserve 但很多插件和库仍在使用 用于许可评论块 我该如何使用UglifyJS2 https github com mishoo UglifyJS2 usage保留以以下内容开头的评论 See h
  • 从另一个 Python 脚本运行 Python 脚本时处理异常

    我正在从另一个 python 脚本运行一个 python 脚本 我想知道如何从父 python 脚本中捕获异常 我的父 python 脚本调用另一个 python 脚本 n 次 最终 被调用的脚本将退出并出现 ValueError 异常 我
  • ie7 内联块的替代方案

    对于我的网站 我使用内联块属性 它适用于 mozilla 和 ie8 但在 ie7 中显示为块元素 我怎样才能把它设置正确 看看这个 http foohack com 2007 11 cross browser support for in
  • 无法初始化 Log4j - SLF4JLoggerContextFactory

    我有一个使用 log4j2 运行的 jetty web 应用程序 它没有记录任何内容 并且启动时出现以下错误 错误 StatusLogger LogManager 返回了 org apache logging slf4j SLF4JLogg
  • numpy 从索引列表创建 2D 掩码 [+ 然后从掩码数组中绘制]

    我有一个二维值数组 需要先屏蔽该数组的某些元素 索引取自约 100k 元组对的列表 然后再从剩余元素中抽取随机样本而不进行替换 我需要既快速 高效 希望避免 for 循环 又具有较小内存占用的东西 因为实际上主数组约为 20000 x 20
  • 更改文本区域字段中的字体和字体大小

    使用以下代码示例
  • String.Replace 不替换撇号

    我试图用字符串替换撇号 由于某种原因 该方法只是在字符串中找不到撇号 这是似乎不起作用的 URL news 2012 march cameron s crackdown on whiplash why the minimum speed r
  • Criteriabuilder之类的,如何长时间做到这一点?

    我尝试使用 Criteriabuilder 中的 like 方法来获取基于模式 10 的所有记录 我想要获取 ID 为 101 10002 1003 1000 等的记录 我用过这个代码 Predicate p cb like r
  • 求解受限于给出非负解的时滞微分方程 (DDE) 系统

    在 MATLAB 中 ode45 http www mathworks com help techdoc ref ode45 html有一个参数叫做NonNegative http www mathworks com help techdo
  • Grep 在日期范围内创建的所有文件中

    我使用的是 Ubuntu 操作系统 我想在 2012 年 5 月 28 日到 2012 年 5 月 30 日范围内创建的所有日志文件中 grep 一个单词 例如 XYZ 我怎么做 这与 Banthar 的解决方案略有不同 但它适用于find
  • 如何处理 Go 包中嵌套的“vendor”目录?

    我正在编写一个应用程序并导入一些包B 这个包有vendor目录 其中又包含包C 我也想用那个包C直接在我的应用程序中 所以我决定使用glide包管理器 它同时下载B and C into myapp vendor目录 但保留myapp ve
  • 更改 datetimeoffset 的时区

    我有一个DateTimeOffset值为 11 11 1989 的变量16 00 00 03 30 我可以打电话ToLocalTime 方法 它显示 11 11 198918 00 00 05 30 我在印度 p 我正在寻找这样的东西 va
  • 嵌套通用接口

    我有一个如下所示的接口架构 C NET4 interface A interface B List a a interface C List b b 我是这样实现的 public interface A public interface B
  • 从派生 * 到基 * 的转换存在,但无法访问

    尽管 c 是一个结构体并且默认具有公共继承 为什么下面的代码会产生此错误 struct c protected int i public c int ii 0 i ii virtual c fun c c fun cout lt lt in
  • 语法错误:意外的标记,应为“”

    添加这个问题是因为我在网上不容易找到答案 我正在尝试使用react testing library测试组件是否正确呈现 然而 我收到了许多错误 这些错误似乎没有多大帮助 这是我的测试文件 report test ts 以及代码中的组件 im
  • Android Phonegap 应用程序中未获取 cookie

    Android 4 4 2 Cordova 3 4 1 jQuery 2 1 0 jQuery Mobile 1 4 2 我需要将登录凭据发布到服务器 本例中为 IBM Domino 9 01 但它无关紧要 并且服务器会使用会话 cooki
  • 以编程方式禁用特定 PHP 函数进行测试

    我有一个使用 cURL 发出 HTTP 请求的函数 该请求返回到file get contents 如果 cURL 在系统上不可用 我想为此函数编写单元测试 利用 PHPUnit 其中 cURL 可用于某些测试 但不可用于其他测试 是否可以
  • 如何将客户端的 Python 套接字连接到 Node.js/socket.io?

    我想通过套接字将 Blender v2 55 连接到网页 对于 Web 部分 我可以使用 Node js 和 socket io 我已经使用了一点node js socket io 我认为这不是问题 现在 对于 Blender 它在 Pyt
  • 什么 JQuery 选择器排除父级与给定选择器匹配的项目?

    I have var set foo bar filter function return this parents baz length lt 1 作为选择其类的所有元素的一种方式foo or bar并且谁不是其类的元素的后代baz 是否
  • Hive gzip 文件解压

    我已经将一堆 gz 文件加载到 HDFS 中 当我在它们之上创建一个原始表时 我在计算行数时看到了奇怪的行为 比较 gz 表和未压缩表的 count 结果 结果有约 85 的差异 文件 gz 压缩后的表记录较少 有人见过这个吗 CREATE