论文部分内容阅读
文件同步分为三个阶段。一是更新检测阶段,检测和发现文件的变化。二是同步决策阶段,决定如何进行文件同步,获得文件同步的具体步骤。三是同步实施阶段,进行具体的数据传输,完成文件同步。研究设计同步决策阶段的通用方法,解决如何根据文件的变动信息,产生文件同步过程。通过对流行的网盘进行分析,存在问题:一是冲突处理机制不清晰;二是同步过程中需要多次查询与文件同步相关的信息,增加网络数据传输量和服务器端的压力。 针对这些问题,提出了“同步树”概念。同步树是一个树型数据结构,用于描述文件与同步相关的信息,是对一个同步站点的所有同步信息的汇总。为了明确文件冲突处理机制,对文件同步中的冲突进行了分类。定义了冲突容忍级别,用于灵活的选择冲突处理的方式。 在同步树概念的基础上,设计给出了同步树的合并算法。算法描述了将两棵不同的同步树基于规则合并,得到一棵同步树的方法。同步树是同步信息的抽象描述,同步树的合并则是同步决策阶段的抽象过程。同步树的概念是在网盘文件同步中得到的,但它不仅仅适用于网盘,可以通过改变同步节点的结构来存储需要的同步信息,来适应其他形式的文件同步。同步树的合并方法是在同步树概念基础上设计的,因此不依赖于具体的文件格式、网络环境和操作系统。 最后,为了验证该方法的可行性,基于金山网盘开放平台实现了“同步树系统”,给出了系统实现相关的技术,系统结构,以及核心的同步树合并算法。