`

操作分布式文件之四:如何进行集群内文件复制和并行复制

阅读更多

集群文件复制是经常面临的需求,比如备份容灾,文件迁移,同步数据等等

FttpAdapter提供了简单高效的文件复制方法,支持远程文件的集群内复制
FttpAdapter fromfile = new FttpAdapter("fttp://10.232.20.151/home/log/a.log");
FttpAdapter tofile = fromfile.copyTo("fttp://10.232.20.154/home/log/a.log",FileAdapter.m(1));

上面代码代表将a.log文件复制到其他机器并得到相应的文件对象
这里的copyTo方法的第二个参数,表示复制时,每次以1M的速度传输
FileAdapter.m(1) 1M
FileAdapter.g(1) 1G
FileAdapter.k(1) 1k
数字1可以自由设置为其他数字,copyTo的默认值是每次以1M的速度,可以根据网络情况调整这个参数,达到最优化。

 

注意: 这里的复制方法名叫做copyTo而不是copy,它们之间存在区别,copyTo只是将前一文件内容复制到后一文件内容里,追加到末尾,但并不从头覆盖前一文件内容。通常在操作系统上覆盖文件,在用户不知情下需要给于警告框提示获得同意,因此copyTo避免在未经许可下覆盖旧文件。如果您需要这样做,可以参考下一节“如何读写远程文件”,设置读写位置为文件开始,从头覆盖文件内容。

 

FttpCopyDemo演示了集群中两台机器间的复制功能。

 

如果要进行并行复制,可以使用tryCopyTo,它的使用和copyTo一样,只不过是立即返回一个Result<FttpAdapter>对象,需要检查Result的getStatus是否复制完成,状态显示就绪代表复制已完成,这时可以获取到复制后的文件对象。

 

FttpMulCopyDemo演示了将一台计算机上的a.log文件并行复制到4台计算机上,并通过结果状态检查复制是否完成

 

下面是内网环境下向4台机器复制1g文件的测试结果(均为4核4G内存配置)
内网(并行复制):完成耗时39秒,速度大约是105M/S
内网(串行复制):完成耗时60秒,速度大约是68M/S
由此可以观察到如果是内网并行复制的速度比串行要快很多
局域网的传输数据的极限是100M/S,传统的串行复制无法超越这个速度,但是并行的传送总量和花费时间算下来会超过100M/S
外网环境的话受网络带宽局限,速度大约是3.6M/S

 

邮箱:Fourinone@yeah.net
企鹅群:241116021
demo源码指南及开发包下载地址:
http://www.skycn.com/soft/68321.html

分享到:
评论

相关推荐

    掌握分布式协调之钥:ZooKeeper在Hadoop集群中的应用全解析

    1. **分布式存储**:Hadoop的HDFS(Hadoop Distributed File System)是一个分布式文件系统,它允许跨多个服务器存储和处理大量数据。 2. **可扩展性**:Hadoop可以处理从GB到PB级别的数据,并且可以通过增加更多的...

    分布式计算、并行计算及集群、网格、云计算的区别.docx

    分布式计算、并行计算、集群计算、网格计算和云计算是当前计算机领域中几个热门的概念,为了帮助读者更好地理解这些概念,我们将从它们的定义、特点、应用场景等方面进行详细的比较和分析。 分布式计算 分布式计算...

    典型分布式文件系统概述(一)

    - **缓存和复制**:客户端可以缓存文件副本以减少网络通信。 - **容错性**:通过重试机制和冗余服务器提高系统的可靠性。 - **安全性**:最初的安全模型较弱,后期版本通过认证机制加强。 - **3.4 AFS、DFS、...

    Fourinone分布式并行计算四合一框架

    于是我将自己对分布式的理解融入到这个框架中,考虑到底层实现技术的相似性,我将Hadoop,Zookeeper,MQ,分布式缓存四大主要的分布式计算功能合为一个框架内,对复杂的分布式计算应用进行了大量简化和归纳。...

    面向大数据的分布式并行集群存储技术研究.pdf

    在硬件实现方面,分布式并行集群存储技术通过x86服务器搭建,利用自带磁盘进行数据的存储,可以实现大规模数据的存储和计算需求。这种架构支持多种数据类型和应用场景,使得它在互联网、物联网等多个领域中都得到了...

    分布式AI训练系统:ColossalAI

    1. 数据并行:这是最基础的分布式训练策略,通过将数据集分割成多个小批次,然后在不同的GPU或服务器之间分配,每个设备处理一部分数据,最终的结果再进行聚合,以实现模型的整体更新。 2. 模型并行:当模型过于...

    淘宝分布式并行计算四合一框架Fourinone

    - **分布式文件操作**:Fourinone允许用户像操作本地文件一样操作远程文件,包括并发读写、拆分、排他访问、复制、解析等操作,从而增强了对多台服务器硬盘资源的利用。 - **分布式协同和锁**:考虑到多台计算机物理...

    第3章-分布式文件系统HDFS.pdf

    与早期依赖专用硬件的并行处理系统不同,分布式文件系统采用的计算机集群通常由标准硬件组成,从而大幅减少了硬件投资成本,使得大规模数据处理更加经济实惠。 HDFS作为分布式文件系统的一种实现,其设计目标是为了...

    分布式文件系统

    分布式文件系统(Distributed File System,简称DFS)是一种跨越多台计算机的文件管理系统,能够使这些计算机上的文件如同位于同一台机器上一样进行管理和访问。它通过网络将分散在不同地理位置的计算节点连接起来,...

    Hadoop分布式文件系统的模型分析

    通过以上分析可以看出,Hadoop分布式文件系统不仅继承了Google文件系统的优秀设计理念,还在很多方面进行了优化和改进,使得其成为云计算领域中非常重要的基础设施之一。未来,随着云计算技术的不断发展,HDFS有望...

    分布式文件系统与传统文件系统的比较研究.pdf

    从并行处理的角度来看,传统文件系统并不擅长并行处理,而分布式文件系统则充分利用了并行计算的优势,从而显著提高处理速度和效率。然而,HDFS在并行处理上的便捷性不如传统文件系统,其任务分解相对繁琐,并行处理...

    Hadoop分布式文件系统——翻译

    Hadoop分布式文件系统(HDFS)是Hadoop项目的核心组件之一,旨在为大规模数据集提供高效可靠的存储解决方案。HDFS的设计原则强调了数据的分布式存储与处理,通过将计算任务部署在数据所在的节点上,有效提升了数据...

    Hadoop分布式文件系统的文件读写

    在Hadoop的分布式文件系统(HDFS)中,文件的读写是整个大数据处理的核心操作。HDFS的设计目标是提供高容错性、高吞吐量的数据访问,以支持大规模数据处理的应用。以下是对Hadoop文件读写及相关属性的详细说明。 ##...

    GPFS分布式文件系统架构和原理

    GPFS 提供的文件系统操作服务可以支持并行应用和串行应用,它允许任何节点上的并行应用同时访问同一个文件或者不同的文件,提供统一命名接口。 GPFS 文件系统架构分为三个层面:存储层、GPFS 服务器层以及客户端层...

    分布式计算、并行计算及集群、网格、云计算的区别.pdf

    分布式计算、并行计算及集群、网格、云计算的区别.pdf

    分布式文件系统负载均衡技术探讨.pdf

    在分布式文件系统中,实现负载均衡的方法包括对各节点的负载情况进行监控和调整,以确保集群中的每个服务器节点都能充分发挥性能。 本文提出的变邻域量子蝙蝠算法(VNQBA)通过引入量子进化理论来增强算法的全局...

    电子科技大学分布式并行计算-MPI实验报告.7z

    MPI(Message Passing Interface)是分布式并行计算中的一个关键标准,它为程序员提供了一种在分布式内存系统中进行通信的接口,使得不同节点之间的数据交换变得简单且高效。 在这个“电子科技大学分布式并行计算-...

    Python分布式文件系统源码.zip

    文件会被分割成小块,然后在集群中的不同节点上存储,以提高并行性和可靠性。文件上传时,系统会自动处理分块、校验和计算以及错误恢复。下载时,系统根据文件块位置进行智能调度,实现快速下载。 2. **查询与删除*...

Global site tag (gtag.js) - Google Analytics