本文主要是介绍[看法]一些远距离大数据传输的想法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一些远距离大数据传输的想法
在计算机网络中,传输文件一直是一个典型的案例用来讨论。但是不同场景下网络传输的方式方法都需要改变,远距离大数据传说就是其中一个场景,如何传输?这里说一下我的想法。
寄送硬盘
在《计算机网络》中,特别指出其实用货车运送一货车的数据带宽还挺大的。按照我们平时的下载数据的常用衡量指标GB/s, 如果使用快递3天(3 * 24 * 60 * 60 s)可以到达,那么运送254GB的数据就要比下载速度为1MB/s的网络要快。如果你想运送TB级别甚至PB级别的数据,用快递还是不错的~
数据分片
如果使用网络传输大数据,在传输之前,把数据分片是一种通行的做法。分片通俗的讲就是把一个完整的数据包分成不同小包,小包再传输出去。这样的做法有两个好处
- 数据量小,容易传输。即使在传输过程中出现了传输断开等情况,重传这个小分片的代价不是很大。
- 当网络传输的速度不是受制于带宽而是发包主机,那么分片传输就可以利用主机的并行传输能力,提高传输带宽。
当然分片传输的缺点也是比较明显,就是双端都需要知道分片算法,而且大数据情况下需要一定时间进行分片,这部分时间有时候也需要算到传输时间里。
数据压缩
数据压缩也是其中的一个重点。如果在传输前,对数据进行压缩,压缩率的大小直接决定了传输时间的多少,虽然这不能明显的提高传输带宽,但是可以显著降低传输的时间,同时,减少对带宽的占用。
断点续传
断点续传在我们平时不少下载软件中都有实现。长距离数据传输中,传输断连是经常发生的事情,那么断点续传可以降低出现断连带来的影响。当数据断连时,只需要很小的代价重新连接传输就行,而不需要再传已经传输过的数据。
数据完整性校验
数据完整性校验也需要我们来关注。使用MD5等方式,保证传输方数据和接收方数据一致,从而避免数据中间的篡改或者丢失。
数据双端加密
双端加密很重要。信息安全是我们网络中尤其要关心的一件事。数据传输时,如果不使用加密算法,中间数据传输的节点就都可以看到你数据传输的内容。一种可行的非对称加密方案是,接收端首先生成一对公钥和秘钥,将公钥传输到发送端,发送端使用公钥把数据加密,发送给接收端,接收端再用私钥解密。
不造轮子
不造轮子普适于所有的计算机技术。尽量使用现有的大数据传输方案,甚至我们尽量不要过多的修改底层传输的方式,从而降低传输的技术成本。
这篇关于[看法]一些远距离大数据传输的想法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!