标签: snappy

如何在Google Compute Engine的hadoop集群上启用Snappy/Snappy Codec

我正在尝试在Google Compute引擎上运行Hadoop Job来对抗我们的压缩数据,该数据位于Google云端存储上.在尝试通过SequenceFileInputFormat读取数据时,我得到以下异常:

hadoop@hadoop-m:/home/salikeeno$ hadoop jar ${JAR} ${PROJECT} ${OUTPUT_TABLE}
14/08/21 19:56:00 INFO jaws.JawsApp: Using export bucket 'askbuckerthroughhadoop' as specified in 'mapred.bq.gcs.bucket'
14/08/21 19:56:00 INFO bigquery.BigQueryConfiguration: Using specified project-id 'regal-campaign-641' for output
14/08/21 19:56:00 INFO gcs.GoogleHadoopFileSystemBase: GHFS version: 1.2.8-hadoop1
14/08/21 19:56:01 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
14/08/21 19:56:03 INFO input.FileInputFormat: Total input paths to process : 1
14/08/21 19:56:09 INFO mapred.JobClient: Running job: job_201408211943_0002
14/08/21 19:56:10 INFO mapred.JobClient:  map 0% reduce …
Run Code Online (Sandbox Code Playgroud)

google-api google-api-java-client google-compute-engine snappy google-hadoop

2
推荐指数
1
解决办法
4790
查看次数

Hadoop发出的本机snappy压缩数据无法通过java-snappy版本提取

当我们在一些处理之后使用Spark时,我将结果存储到文件中,并使用简单的代码使用snappy编解码器:

 data.saveAsTextFile("/data/2014-11-29",classOf[org.apache.hadoop.io.compress.SnappyCodec])
Run Code Online (Sandbox Code Playgroud)

之后我使用Spark来读取这个文件夹文件,所以Everything工作得很好!但是今天我尝试在我的电脑中使用java snappy(java-snappy 1.1.1.2)来解压缩结果文件夹中的文件(这个文件是从这个文件夹中下载到我的Pc的文件之一)

maven依赖:

<dependency>
    <groupId>org.xerial.snappy</groupId>
    <artifactId>snappy-java</artifactId>
    <version>1.1.1.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我用这段代码解压缩:

File fileIn = new File("E:\\dt\\part-00000.snappy");
File fileOut = new File("E:\\dt\\adv1417971604684.dat");
FileOutputStream fos = new FileOutputStream(fileOut, true);
byte[] fileBytes = Files.readAllBytes(Paths.get(fileIn.getPath()));
byte[] fileBytesOut = Snappy.uncompress(fileBytes);
fos.write(fileBytesOut);
Run Code Online (Sandbox Code Playgroud)

但是:(我立即得到这个错误:

    java.io.IOException: FAILED_TO_UNCOMPRESS(5)
 at org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:84)
 at org.xerial.snappy.SnappyNative.rawUncompress(Native Method)
 at org.xerial.snappy.Snappy.rawUncompress(Snappy.java:444)
 at org.xerial.snappy.Snappy.uncompress(Snappy.java:480)
 at org.xerial.snappy.Snappy.uncompress(Snappy.java:456)
 at
Run Code Online (Sandbox Code Playgroud)

在火花群中我们使用:

spark 1.1.0 && hadoop 2.5.1(原生hadoop snappy)

这是我运行hadoop checknative -a的结果:

    14/12/09 16:16:57 INFO bzip2.Bzip2Factory: Successfully loaded & initialized native-bzip2    library system-native
14/12/09 16:16:57 INFO zlib.ZlibFactory: Successfully …
Run Code Online (Sandbox Code Playgroud)

java compression hadoop snappy apache-spark

2
推荐指数
1
解决办法
1742
查看次数

如何使用镶木地板和snappy创建表格

我知道使用镶木地板创建表格的语法,但我想知道使用镶木地板格式创建表格并通过snappy压缩是什么意思,我们如何做到这一点?请帮我一个示例语法.

使用snappy压缩有什么好处?

hive snappy parquet

2
推荐指数
1
解决办法
1万
查看次数

HDFS 中 parquet 文件的最佳压缩技术

我正在尝试对 Hdfs 中的镶木地板文件进行数据保留。对于已经用 snappy 压缩的这些类型的文件类型,哪种压缩技术比较好?

compression hdfs snappy parquet

2
推荐指数
1
解决办法
3832
查看次数

没有curl或wget的HTTP请求(Ubuntu Core Bash)

如何在Ubuntu Core中发出HTTPS(或HTTP)请求?该卷曲wget的不可用(我不知道任何替代品)。

我正在尝试使用此行更新DtDns: https://www.dtdns.com/api/autodns.cfm?<options>

-

编辑
无法找到任何快速便捷的解决方案,因此走了更长的弯路,并学习了如何使用snapcraft(在经典模式下)创建捕捉。然后只需将curl和我的bash脚本一起包括在内即可。这是我的snap.yaml的摘录:

apps:
  my-app:
    command: my-app.sh
    daemon: simple
    restart-condition: always

parts:
  client:
    plugin: dump
    source: my-app-src/
    stage-packages: 
      - curl
Run Code Online (Sandbox Code Playgroud)

一个很好的起点:如何构建快照-教程

linux bash ubuntu snappy

1
推荐指数
2
解决办法
3611
查看次数

如何插入带有镶木地板文件格式和 SNAPPY 压缩的配置单元表?

蜂巢 2.1

我有以下表格定义:

CREATE EXTERNAL TABLE table_snappy (
a STRING,
b INT) 
PARTITIONED BY (c STRING)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION '/'
TBLPROPERTIES ('parquet.compress'='SNAPPY');
Run Code Online (Sandbox Code Playgroud)

现在,我想向其中插入数据:

INSERT INTO table_snappy PARTITION (c='something') VALUES ('xyz', 1);
Run Code Online (Sandbox Code Playgroud)

但是,当我查看数据文件时,我看到的只是没有任何压缩的普通镶木地板文件。在这种情况下如何启用快速压缩?

目标:以镶木地板格式和 SNAPPY 压缩配置单元表数据。

我也尝试过设置多个属性:

SET parquet.compression=SNAPPY;
SET hive.exec.compress.output=true;
SET mapred.output.compression.codec=org.apache.hadoop.io.compress.SnappyCodec;
SET mapred.output.compression.type=BLOCK;
SET mapreduce.output.fileoutputformat.compress=true;
SET mapreduce.output.fileoutputformat.compress.codec=org.apache.hadoop.io.compress.SnappyCodec;
SET PARQUET_COMPRESSION_CODEC=snappy;
Run Code Online (Sandbox Code Playgroud)

TBLPROPERTIES ('parquet.compression'='SNAPPY');
Run Code Online (Sandbox Code Playgroud)

但没有任何帮助。我对 GZIP 压缩进行了同样的尝试,但似乎效果不佳。我开始思考这是否可能。任何帮助表示赞赏。

compression hadoop hive snappy parquet

1
推荐指数
1
解决办法
3357
查看次数

最快的解压缩算法?


我听说Google snappy是一个快速解压缩库.
Snappy库使用什么作为算法?
是否有一些算法在解压缩方面更快?
压缩率和编码不是我的兴趣,但实时解压缩是我感兴趣的.
非常感谢你提前!

compression snappy

0
推荐指数
1
解决办法
2222
查看次数