java - 解压hadoop兼容的snappy文件
问题描述
Firehose 正在以 snappy 压缩形式将数据推送到 s3,并且其帧格式与 hadoop 兼容。我正在下载那个 snappy 文件并尝试使用这个库在 scala 中解压缩。
val input: Array[Byte] = Files.readAllBytes(Paths.get("/path/to/prod-a8d272bb-b7af-4141-bdba-6965b343a75f.snappy"))
val uncompressed: Array[Byte] = Snappy.uncompress(input)
哪个抛出错误
Exception in thread "main" java.io.IOException: FAILED_TO_UNCOMPRESS(5)
at org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:98)
可以使用 SnappyHadoopCompatibleOutputStream 生成与 Hadoop Snappy 兼容的压缩流,但在我的情况下,我需要解压缩已经生成的压缩文件。这个库可以吗?或者如果没有,还有其他我可以使用的库吗?
解决方案
推荐阅读
- excel - 在vba中以数组模式使用工作表函数
- c# - 从 Web API 返回的 PDF 无法打开。打开此文档时出错。文件已损坏,无法修复
- sql - 我将如何修复此代码以使其修剪尾随零和小数点
- java - Making a int with Math.random pick a new number when called
- python - 球坐标/ python实现中的旋转问题
- csv - CSV 数据源不支持二进制数据类型
- windows - 我无法从 Win32 未打包的应用程序访问 ApplicationData.Current?
- laravel - 在 laravel 5.6 中找不到方法
- python - 如何使用带有 ssh 密钥的结构?
- c# - 从 Razor 视图调用 C# 方法?