tar+pv+lz4传输大数据

今天要备份个比较大的库,大概200G 左右吧,听说tar + pv + lz4 传输大数据的速度,比传统的scp 快很多,今天测试了一下:

过程如下:

tar+pv+lz4 大文件传输,速度到底比scp 快多少呢,实际验证了,才知道,经过测试大概两倍吧

1.install

这里需要提前编译安装两个软件,这两个软件可以直接google 搜索下载,下面我给的链接可以直接wget 下载

1.PV(pv-1.1.4.tar.gz)包可以在线下载或网盘取

wget http://pkgs.fedoraproject.org/repo/pkgs/pv/pv-1.1.4.tar.gz/8d0eda2182640919daaf6186cd816a13/pv-1.1.4.tar.gz

解压:tar -xf pv-1.1.4.tar.gz

cd  pv-1.1.4

./configure && make && make install

2.lz4 (lz4-r108.tar.gz) 包可以在线下载或网盘取

wget https://src.fedoraproject.org/repo/pkgs/lz4/lz4-r108.tar.gz/5c621dd18f27810bba3629cdb326e852/lz4-r108.tar.gz

解压: tar xf lz4-r108.tar.gz

cd lz4-r108

make && make install  ***注意:这里不需要configure

特别注意: lz4 需要在数据传输的两台服务器都要安装,理由很简单,传输的过程就是:  打包--压缩--解压 的过程, 两端都要lz4 解压缩,所以两端

都需要安装

3.命令: tar -c  tt.tar.gz|pv|lz4 -B4|ssh -c arcfour128 -o "MACs [email protected]" 192.168.50.244 "lz4 -d |tar -xC /data/bak"     ****提前做好免秘钥登录

说明:

tt.tar.gz  --代表要传输的文件

pv        --显示传输速度和进度

ssh : 可以-p 指定端口,默认可不写

arcfour128  --加密算法

192.168.50.244  --远程主机的ip

/data/bak    --远程主机存放目录

*****和scp 的速度对比:用时大概2倍的关系,有人说6倍,可能吧,测试可能有偏差,仅供参考,只是想说明一个问题,tar+ lz4 确实比scp 快很多,测试在局域网内,如果线上或不同网段,取决于出口带宽

[[email protected] websit_116]# time scp tt.tar.gz 192.168.50.244:/data/bak

tt.tar.gz                                                            100%  228MB  45.7MB/s  00:05

real 0m5.578s

user 0m1.699s

sys 0m0.542s

[[email protected] websit_116]# time tar -c  tt.tar.gz|pv|lz4 -B4|ssh -c arcfour128 -o "MACs [email protected]" 192.168.50.244 "lz4 -d |tar -xC /data/bak"

228MB 0:00:02 [79.4MB/s] [    <=>                                                                  ]

real 0m2.899s

user 0m0.224s

sys 0m1.923s

综述:有兴趣的可以尝试下, 如果文件很小,就没必要了,用你的scp 或rsync 就可以了,为啥??折腾呗!

时间: 2024-12-12 13:36:23

tar+pv+lz4传输大数据的相关文章

快速传输大数据(tar+lz4+pv)

快速传输大数据(tar+lz4+pv) 如果用传统SCP远程拷贝,速度是比较慢的.现在采用lz4压缩传输.LZ4是一个非常快的无损压缩算法,压缩速度在单核300MB/S,可扩展支持多核CPU.它还具有一个非常快速的解码器,速度单核可达到和超越1GB/S.通常能够达到多核系统上的RAM速度限制. 你PV 全命为Pipe Viewer,利用它我们可以查看到命令执行的进度. 下面介绍下lz4和pv的安装,下载软件: 下载pv-1.1.4.tar.gz wget http://sourceforge.j

使用tar+pigz+ssh实现大数据的高效传输

以前我们跨主机拷贝大数据的时候,比如要拷贝超过100GB的mysql原始数据,我们通常的做法如下: 在源端打包压缩为tar.gz文件 采用scp或者rsync等方式拷贝到目标主机 在目标主机解压文件 这三个过程是同步阻塞,即不能同时异步执行,导致效率低下. 现在我们将过程优化为以数据流的方式,同时执行(非阻塞模式),则效率一般可以提高到原来的3倍以上,具体实现如下: 磁盘读取---->打包---->压缩------>传输---->解压缩-->拆包---->落盘 |-&g

WCF LIST 传输大数据,远程服务器返回了意外响应 400

WCF传输LIST 大数据量 出现 远程服务器返回了意外响应 400 错误提示. 出现这个问题,各种搜索,都没有解决问题,而且有些都比较复杂,自己琢磨了一下,其实也不是很难,好了,看下面方案.解决方案:在web.config(host)端<system.serviceModel>节中, 增加 services 节 如下:<services>      <service behaviorConfiguration="app.dcgkbehavior" nam

【转】WCF传输大数据的设置

在从客户端向WCF服务端传送较大数据(>65535B)的时候,发现程序直接从Reference的BeginInvoke跳到EndInvoke,没有进入服务端的Service实际逻辑中,怀疑是由于数据过大超出限定导致的. 问题是我实际发送的数据是刚刚从WCF服务端接收过来的,一来一去,数据量差别并不大. 然后发现,在客户端和服务端实际使用的是不同的配置,对于客户端,在添加ServiceReference时自动生成的ServiceReferences.ClientConfig文件中system.se

WCF客户端传输大数据到服务端失败配置问题

最近使用WCF遇到一个问题:当客户端向WCF服务发送一个大量数据时候,发现会提示: "读取 XML 数据时,超出最大字符串内容长度配额 (8192).通过更改在创建 XML 读取器时所使用的 XmlDictionaryReaderQuotas 对象的 MaxStringContentLength 属性,可增加此配额." 于是上网搜索,都说修改配置就可以,但我是初学者,修改半天还没弄出来,最后各种整合,尝试,终于成功了,于是记下了,以备以后需要: 在配置文件内添加如下代码就可以了(只需要

大数据量传输时配置WCF的注意事项

原文:大数据量传输时配置WCF的注意事项 WCF传输数据量的能力受到许多因素的制约,如果程序中出现因需要传输的数据量较大而导致调用WCF服务失败的问题,应注意以下配置: 1.MaxReceivedMessageSize:获取或设置配置了此绑定的通道上可以接收的消息的最大大小. basicHttpBinding等预定义的绑定一般具有MaxReceivedMessageSize属性,CustomBinding则需要在Transport中定义. 示例代码: <bindings> <custom

Flume+Kafka+Storm+Redis构建大数据实时处理系统:实时统计网站PV、UV+展示

[TOC] 1 大数据处理的常用方法 前面在我的另一篇文章中<大数据采集.清洗.处理:使用MapReduce进行离线数据分析完整案例>中已经有提及到,这里依然给出下面的图示: 前面给出的那篇文章是基于MapReduce的离线数据分析案例,其通过对网站产生的用户访问日志进行处理并分析出该网站在某天的PV.UV等数据,对应上面的图示,其走的就是离线处理的数据处理方式,而这里即将要介绍的是另外一条路线的数据处理方式,即基于Storm的在线处理,在下面给出的完整案例中,我们将会完成下面的几项工作: 1

解决WCF大数据量传输 ,System.Net.Sockets.SocketException: 远程主机强迫关闭了一个现有的连接

开发中所用的数据需要通过WCF进行数据传输,结果就遇到了WCF大量传输问题 也就是提示System.Net.Sockets.SocketException: 远程主机强迫关闭了一个现有的连接 网上解决方案都是千篇一律互相转发的,并且没有明确的解决方案或者按照,各个博客中的解决方案都没能解决这个问题. 为此我整整浪费了一天时间用来解决这个问题,而且用了最笨的办法一点点的尝试网上所查到的方案.对于精研WCF来说的这可能是一个小问题,但是对于仅仅了解wcf,一知半解的会很困惑.将解决方案贴出来希望能帮

JDBC之 大数据内容的传输

JDBC之 大数据内容的传输 什么是大数据内容? 在数据库中,有一条一条的记录,记录中很多字段都是几个字符就够的,假如现在要把一部小说存入数据库,这本小说当然不是几个字符组成,而是由几万字组成,这本小说的数据我们就可以说是大数据,生活中当然有各种各样的大数据:电影,音乐,图片等等... 大字符数据内容操作 大字符内容:通常是指很长的字符类型的文件,例如小说,故事等等,内容有字符组成. 下面说明一下MySQL与Oracle中的大数据类型 数据种类 数据大小 MySQL Oracle 字符 小 ch