Snappy
Snappy使用C++ 开发的压缩和解压缩开发包,只在提供高速压缩速度和合理压缩率。
主要是用内存空间换压缩速度,2015年的i7大概能提供250-500M的压缩速度。
Spark取消CSV文件输出默认的Snappy压缩格式:
1 | var spark = SparkSession.builder().appName("sparktoDisk").enableHiveSupport().getOrCreate() |
DF保存为CSV
1 | df.coalesce(1).write.option("header","true").csv("sample_file.csv") |
使用Lib包压索解压文件
Python解压snappy文件
1
wget https://bootstrap.pypa.io/get-pip.py
1
python ./get-pip.py
1
yum install gcc-c++
1
pip install python-snappy
用法
解压
1 | python -m snappy -c uncompressed_file compressed_file.snappy |
压缩
1 | python -m snappy -d compressed_file.snappy uncompressed_file |
阿里云文档说明
阿里云对这些整理的很细致啊,是个找资料的好地方
1 | https://www.alibabacloud.com/help/zh/doc-detail/108942.htm |
同时还有别的压缩格式的介绍,很详细。
文档中心->数据投递->投递日志到OSS->Snappy