




已阅读5页,还剩51页未读, 继续免费阅读
(计算机系统结构专业论文)面向云计算的用户终端和虚拟空间数据同步系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 摘摘 要要 云计算将数据的分析和处理作为技术研究的核心,数据的重要性不言而喻。但 是某些数据与应用程序紧紧捆绑,使得用户在更换终端后不能使用数据。传统的数 据同步系统没有解决与应用程序相捆绑的用户数据的同步问题。 面向云计算的用户终端和虚拟空间数据同步系统有效地解决了上述问题。系统 的技术路线是:实现用户虚拟空间分配和管理,支持用户使用传统的桌面软件方式 管理虚拟空间的应用程序和个人数据,提高数据安全性;建立关联机制,分析应用 程序和本地文件的关联信息,写入关联策略库,保护数据使用环境的完整性;采用 基于线程循环监控的方式设计实时同步机制和周期同步机制;在应用程序的更新同 步阶段,通过对数据库中文件的更新时间进行对比分析,完成增量信息的关联和获 取,底层采用文件传输协议 ftp(file transfer protocol)进行增量数据传输。在此基 础上,用户通过连接至互联网的终端设备即可访问同步在虚拟空间的程序和用户关 键数据,实现应用程序和用户数据的随需所用。 功能测试表明系统完成应用程序的实时同步、周期同步、远程访问和增量数据 传输功能。性能测试结果表明:与实时同步机制相比,周期同步机制对中央处理器 cpu(central processing unit)平均负载仅为 33.4%;与完全同步相比,增量数据传 输所需要的时间一直低于完全同步所需时间的 50%。 关键词:关键词:云计算,数据同步,关联机制,实时同步,周期同步,增量信息获取 ii 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 abstract data analyzing and processing will be the core of cloud computing, the importance of data is self-evident. however, some of user data are tightly bound with the application program, which leads to that endusers cannot use data when they move to another terminator. and the existing synchronization system cannot synchronize data bound with the application program. data synchronization system between user terminator and virtual space in cloud computing solve the above problem effectively. the roadmap of implement this system is: implement the user virtual space allocation and management, user can use the desktop software to manage the applications and personal data; establish association mechanism, analysis the information that the local files associate with the application, write associate rules in the strategies library, to protect the integrity of application program; real-time synchronization and periodical synchronization is designed based on thread cyclic monitoring; at the renewal synchronous stage of application program, implement association and acquisition of incremental information through compare file updatetime in the database; on this basis, user using a terminal equipment connection to the internet can visit program and the key data in virtual space. the function test showed that the system have real-time synchronization, incremental synchronization, and remote access funtions. the performance evaluation showed that: compare to real-time synchronization mechanism, the cpu average load of using periodical synchronization mechanism is 33.4%; compare to complete synchronization, the time of incremental data transmission has always below 50% of complete synchronization time. key words: cloud computing, data synchronization, association mechanism, real-time synchronization, periodical synchronization, incremental information acquisition 独创性声明独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他 个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集 体, 均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和 借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密, 在 年解密后适用本授权书。 不保密。 (请在以上方框内打“” ) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 1 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 1 绪论绪论 本章首先简述面向云计算的用户终端与虚拟空间数据同步系统的国内外的研究 现状,接着阐述研究面向云计算的数据同步系统的研究背景与研究内容,最后给出 论文的基本框架和组织结构。 1.1 问题提出问题提出 伴随着用户应用需求的多样化,一般的计算机资源已经无法满足用户的实际需 求,在这种形式下,云计算应运而生并得到了快速发展,云计算1-2实际上是分布式 处理、并行处理、网格计算、网络存储和大型数据中心等既有理论的延续。云计算 所采用的原理是:终端用户的应用程序并不需要运行在用户的终端电脑上,而是运 行在云计算所提供的大规模服务器集群中。在此过程中,用户所处理的数据也并不 存储在本地,而是保存在安全的数据中心里。这些数据中心正常运转的管理和维护 则由提供云计算服务的机构3负责, 来保证足够强的计算能力和足够大的存储空间来 供用户使用,无论在任何时间和任何地点,用户都可以任意连接至互联网的虚拟空 间。因此,任何用户都能在云上实现数据的随需所用。 虽然一般的用户所进行的应用都不需要进行复杂的计算,但是由于其计算数量 非常可观,所以累积起来的计算需求也非常大。所以在应用上,云计算也被看作平 民化的网格计算。此外,为了方便管理,并充分运用云端服务器的功能,云计算也 经常会使用到虚拟化技术4,这也是云计算前进于网格计算的一方面。 云计算的发展前景是依托互联网为用户提供安全、便捷的数据存储和网络计算 服务。数据、软件、平台、基础设施都是云端计算的重要资源5-6,在数据为主的云 时代,优秀的云计算架构能够提供大规模的数据存储7、分享、管理和挖掘的功能。 目前数据服务面临的一些挑战,无法满足用户的实际需要。首先,硬件损坏、 病毒破坏、非正常操作等不可抗因素会造成用户关键数据的破坏、丢失、不可恢复, 如果没有备份这些关键的数据和信息,将会导致灾难性的后果;其次,随着终端技 术的蓬勃发展,用户可以拥有多个终端,生活在数字中的用户,经常在多种终端中 传送文件和视频、照片、音乐8,当用户需要一个文件时,可能需要在所有存储空间 中搜索,当找到目标文件时,却发现并不是所需的最新文件,用户需要多终端的自 2 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 动同步9。 类似上述的问题就是要解决的一方面问题:如果一台终端的用户数据在本地使 用时被改动,一旦该终端设备连接到互联网,备份在虚拟空间中的同步文件将自动 进行更新。 另一方面,由于存在着用户的某些数据与终端应用程序紧紧捆绑10,但是一般 的数据同步系统的功能局限于独立的数据、文件夹的同步,这种情况导致的结果是 用户在脱离本地终端的使用情况下不能够自由的使用用户数据,无法让数据和服务 围绕个人。 针对上述两方面数据服务问题提出一种在云计算环境下为用户建立虚拟空间, 并实现用户终端应用程序和数据和虚拟空间同步的解决方案。 1.2 国内外研究现状国内外研究现状 近年来,随着云计算的发展,研究界对云计算中数据中心的问题纷纷展开研究, 如何利用云计算为用户提供可靠、实用的数据服务成为目前研究的热点和难点。伴 随着信息化的推广普及和不断深入,大量的数据产生。数据是企业和用户的财富, 所以在商用领域,数据同步的服务在互联网中蓬勃发展11。 1.2.1 现有研究概况现有研究概况 数据同步服务在现实系统中实际使用的方案并不少,很多企业和研究机构已经 提出了有建设性的模型,并设计了实用的系统。在已经提出的数据同步服务中,具 有代表性并被广泛讨论和采纳的主要有 foldershare、 livemesh 以及 powerfolder, 国 内比较实用的系统有同步专家(syncexpnet) ,但是它们都有各自使用的局限性以及 对同步对象的选择性12,下面详细阐述这几个系统: 1foldershare 是微软推出的一种网络硬盘服务,相比于其他网络硬盘服务,微 软所提供的不单单是存储服务。foldershare 具备三大功能:在多台电脑上同步文件 夹;与其他人分享文件;远程访问文件。用户能够通过 foldershare 创建个人的对等 网络,帮助用户在各个终端设备之间同步文件并可以和其他用户分享文件。 (1)同步文件功能允许用户在两台或者多台电脑上对用户选择的文件夹或者用 户指定的磁盘中的文件进行同步,使得用户在其中任何一台电脑上修改文件,其他 的电脑上相对应的文件都会作相应的改变13。通过同步文件的功能,用户不会再因 3 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 为所需要的文件在另外一台电脑上而导致工作无法继续,也不用携带移动硬盘等存 储设备。只要用户的终端电脑都能上网,而且都安装运行了 foldershare 软件就能够 解决这个问题。用户可以指定某个文件夹进行同步,同样用户可以选择多个文件夹 进行同步。在打开的应用窗口中,首先需要选择一台用来实现同步的终端,两部电 脑都完成设置后,用户选择同步的方式:自动同步或者是手动同步,设置完成后, 点击完成安装即可同步两部终端了。完成同步后,用户可以看到终端上对应的文件 夹内容完全相同。只要同步的终端在线,foldershare 就会在后台运行,自动的实现 同步14。 (2)foldershare 还具备了远程访问文件的功能,远程访问允许用户从任何一个 网络终端访问用户的电脑。用户可以通过用户名和密码进行身份验证后,通过访问 网页的形式,根据对应的选项对文件进行下载。这一功能实际上是实现将用户电脑 中的整个硬盘的文件数据完全进行共享,只要所同步的另外一台电脑也通过相同的 用户名进行登录了,用户就可以访问远程电脑上的全部文件。 总体来说,foldershare 功能比较强大,与通常的网络磁盘只提供上传下载功能 相比,foldershare 不仅具有多台电脑的同步功能,还具有文件分享和远程访问的功 能。但是使用 foldershare 的安全性是一个问题,在不需要进行远程访问时,该功能 一定要关闭,否则用户终端电脑上的数据安全性将得不到保障。从目前的情况看起 来,它提供的功能与 livemesh 提供的同步功能类似。 2livemesh 是微软最新推出的云端服务平台,通过使用软件+服务15的模式, 实现用户同步、共享、存储和访问文件和文件夹的功能,并且支持移动设备和网络 云计算的项目,livemesh 在很多方面与 foldershare 等同步服务存在相似点,但比 这类同步软件更具有实际的意义。它可以实现跨多重用户终端,对文件、文件夹以 及各种网络内容进行同步16-18,满足多重设备使用者的需要。 livemesh 包含桌面客户端和一个网络组件。 用户终端通过安装 livemesh 客户端 软件能更方便的实现同步,如果希望加入更多的同步设备,只要在网络组件的界面 上添加相应的终端设备,并在需要同步的设备上安装 livemesh 客户端软件。 (1)用户终端同步功能。使用 livemesh,用户不再需要通过给邮箱发送邮件来 保存文件,通过在终端设备上安装 livemesh 软件使用同步功能,并在终端上选择需 要同步的文件,用户可以选择同步一到两个终端设备的文件夹,也可以选择将用户 的所有终端进行同步。这样,当任意用户终端或服务器端的文件发生变化时,所有 4 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 参与同步的设备都会收到同步消息,并完成相应操作。当用户在本地终端向同步文 件夹中添加文件的话,消息日志界面上就会显示刚添加的文件,说明 livemesh 在更 新同步时采用的是增量同步方式19-20。 (2)远程访问虚拟空间。用户注册 livemesh 后,会即时拥有动态桌面并拥有 5gb 的个人存储空间,用户可以同步文件到个人的存储空间,并且通过浏览器随时 随地方便的得到最新的文件21,同时,利用 livemesh,用户可以远程连接到另外的 计算机,得到文件和应用程序,就像实时操控远端计算机一样。即使本地的文件数 据遭到损坏,livemesh 个人存储空间的数据依然安全,livemesh 提供的云存储在某 个服务器损坏的情况下,会自动迁移数据,保证数据的安全性22。 目前 livemesh 提供的云存储, 支持 windows 的计算机, 针对 apple mac 和移动 设备平台即将推出的功能来看, livemesh比一般的同步软件功能全面, 但是livemesh 现在提供了 5gb 存储空间23,虽然 livemesh 是一个理想的备份服务,但是在将来, 用户能否可以通过某种方式进行个人空间的扩充还不确定。 livemesh 属于 p2p(peer to peer)+ web 类型的典型应用,而且主要实现数据同 步功能为主,livemesh 不仅仅实现具体的服务而且是一个云服务平台24,应该在未 来可以实现更多的云服务。 3powerfolder 是用于通过互联网或者本地局域网同步文件夹的软件,该同步 软件使用点对点技术来交换文件,用户不需要一台主机作为服务器来为文件服务。 解决计算机在互联网或局域网中的安全同步、存取、分享、备份和文件的传输。每 个用户终端拥有一个文件夹的本地拷贝,powerfolder 可以用于交换任何类型的文件 数据。powerfolder 自动地侦测文件夹的变化并自动同步该变化25-26,并且同步功能 是高度可配置的, 无论用户身在何处都可以随时的使用重要的文件数据。 powerfolder 也有很多独特之处: (1)使用点对点技术使用户终端与中央服务器之间相互独立; (2)综合的 delta-sync 算法和压缩使得 powerfolder 效率更高,并且具有实时 同步27的功能,因此不会忘记备份; (3)国际最先进的加密技术,powerfolder 可以确保数据的保密性。 目前 powerfolder 的同步对象是用户终端的各种文件数据, 需要用户在使用过程 中进行指定,不支持对应用程序及其各类关联文件的数据同步28。 4同步专家(syncexpnet)是国内设计的一款同步软件,该同步软件包括两个 5 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 部分:远程文件同步软件及数据库同步软件。软件主要适用于网站镜像、数据库异 地备份、容灾备份和游戏三层更新等应用,不是针对于个人用户数据的同步软件。 1.2.2 现有关键技术现有关键技术 数据同步的实现和数据捕获技术紧密联系,需要采用数据捕获技术生成需要进 行同步的数据29。现在常用的数据捕获技术包括基于快照法、基于触发器法、基于 时间戳法和控制表变化法。其中前两种方法主要适用于数据库的同步系统,下面对 这几种捕获方法进行简单的描述: 1基于快照法。快照是把存储的对象状态在某一时刻做一个完整的镜像,把镜 像文件作为同步的数据,以此来实现数据库的更新同步。快照法在数据同步时需要 进行完全的扫描,是数据捕获方法中最简单的一种。基于快照法的实现不需要依赖 特别的机制和额外的系统资源,但是快照法只能进行完全的数据同步,对系统造成 的负载太大,并且执行效率低下。只有在同步初始化和崩溃恢复时采用这种方式。 2基于触发器法。触发器是在两个数据库进行同步时,由源数据库在复制数据 对象时自动创建的,触发器是一种特殊类型的存储过程。当对已经进行同步的数据 库中的数据进行添加,删除,修改时,都会触发之前创建的触发器,捕获发生改变 的数据项,进行同步操作,同时数据的改变也将被写入数据库系统的日志中。 3基于时间戳法。基于时间戳法需要相关应用系统中的每一个同步对象中都有 一个时间戳字段,以记录每个同步文件的修改时间。这种方法不影响原有应用的运 行效率,但是需要建立相应的线程监控那些并非通过应用程序引起的文件数据变化。 增量数据传输就是采用基于时间戳的思想,并根据系统同步对象的特点做了改变和 优化,通过时间戳的对比找到需要进行更新同步的文件对象。 4 控制表变化法。 控制表变化法就是为每一个同步的源数据表创建一个控制表, 控制表中只包含源数据表的主键字段和一些控制信息字段,当表中的某个数据的记 录发生变化时,则控制表中相应关键字的记录也随即被修改,并且在控制信息字段 中记录变化的情况。控制表变化法可以通过触发器,中间件来实现,更新同步数据 的捕获由控制表中记录的改变进行生成。 要实现性能优良、功能完善的应用程序数据同步系统,仍然存在许多有待解决 的问题。其中的关键是如何在系统中建立关联机制,确定与应用程序相关的所有文 件和用户数据30-31,保证用户数据使用环境的完整性,实现数据围绕服务和用户; 同时在应用程序的更新同步阶段,针对大数据量的应用程序,实现增量信息的关联 6 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 和获取,进行增量数据传输32,在提供满足同步服务质量需求的性能基础上尽量提 高系统的效率,减轻系统的负载,在实际系统中可以稳定运行,满足终端用户的实 际需要。 1.3 研究背景与研究内容研究背景与研究内容 面向云计算的用户终端与虚拟空间的数据同步系统以教育部“十五”211 工程公 共服务体系建设项目“中国教育科研网格计划 chinagrid”为背景,针对用户的应用 需求中的数据集中型应用,解决用户终端应用程序和用户数据的绑定问题,结合云 计算中的数据中心和相关的同步机制,通过为用户创建虚拟空间。引入面向云计算 的同步机制,在云中保留用户应用程序和关键数据的备份,并实现用户终端和虚拟 空间的数据同步。当原始数据所在存储资源发生损坏时,可以通过访问虚拟空间获 取同步的应用程序和用户数据,实现数据围绕用户和服务。 用户终端和虚拟空间的数据同步系统(cloudsync)的数据同步系统正是为了实 现上述功能而设计的,其主要任务概括来说就是用户虚拟空间分配、终端应用程序 与虚拟空间的同步和远程访问虚拟空间。 cloudsync 的虚拟空间分配以服务的形式对外发布,服务将现有的存储资源和数 据服务结合起来,是虚拟存储技术和数据服务相结合的具体体现。用户虚拟空间分 配服务利用存储虚拟化技术,为用户提供一个虚拟化的存储空间,用户面向的只是 数据同步服务,而无需关心对虚拟空间的具体分配和管理。 在后台的应用服务器上,所有的用户信息都存放于 mysql 数据库中进行维护, 通过用户数据管理,数据模块有效地组织每个用户的数据资源,同时为用户提供了 一个同步系统的客户端,方便用户在用户终端进行与虚拟空间的同步操作。与传统 的磁盘存储系统不同, cloudsync 后台的存储资源具有一定的计算能力和智能处理能 力,一个存储资源也可以同时是一个计算资源,可以称作一种智能砖33。在用户申 请创建虚拟空间时系统通过相应的策略选择一个合适的虚拟空间返回给终端用户。 由于不同的用户终端应用程序具有不同的程序相关文件,所以为了实现终端应 用程序和虚拟空间的同步,提出建立关联机制的思想:编写程序来搜索应用程序的 所有关联文件,包括安装文件、配置文档、用户关键数据等,并且通过建立关联策 略库来实现关联机制,按照应用程序关联文件的复杂程度不同对程序进行内部归类, 将关联规则存入策略库,用以保证同步应用程序的完整性。提出对实时同步、周期 7 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 同步两种同步机制进行设计, 满足用户的应用需求。 cloudsync 同步系统采用的是 ftp 协议作为底层数据传输协议,为数据同步应用提供高效的数据传输机制。 1.4 论文的组织结构论文的组织结构 论文各章节的内容组织如下: 第 1 章概述随着云计算概念的提出,数据同步服务面临的问题,即为什么需要 进行面向云计算的数据同步研究,以及国内外的研究概况和关键技术,然后讲述面 向云计算的用户终端与虚拟空间同步系统的研究背景与主要研究内容,提出面向云 计算的数据同步解决方案。 第 2 章首先概述面向云计算的同步系统 cloudsync 的整体设计思想,然后阐述 cloudsync 系统中的客户端、服务器端的体系结构和功能模块,最后对数据同步的具 体流程进行分析。 第 3 章详细阐述在设计过程中涉及的关键技术实现,主要包括用户虚拟空间的 分配与管理,并对数据的关联机制和数据传输的同步机制进行详解,最后描述增量 信息的关联和获取,实现增量数据传输。 第 4 章是系统功能测试以及性能评价,分析并提出对面向云计算的用户终端和 虚拟空间同步等进行验证的功能指标,对应用程序及关联数据与虚拟空间的上传, 下载,远程访问等功能进行测试,并对关联机制的建立效率,实时同步机制和周期 同步机制的性能比较,以及增量数据传输进行性能测试。 第 5 章对全文进行总结,并指出下一步的工作。 最后是致谢和参考文献。 8 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 2 用户终端与虚拟空间数据同步系统设计用户终端与虚拟空间数据同步系统设计 本章首先阐述用户终端和虚拟空间的数据同步系统(cloudsync)的设计思想, 并在此基础上描述实现 cloudsync 的总体体系结构、客户端的体系结构和功能模块、 以及服务器端的架构,在本章的最后对系统的同步流程进行详细的分析。 2.1 设计思想设计思想 本系统通过建立数据中心,分配一定配额的虚拟空间供用户使用,提高存储资 源的利用率,开发相应的数据同步系统,引入面向云计算的同步机制,在虚拟空间 中保留应用程序和用户关键数据的备份,实现用户终端应用程序和虚拟空间的同步, 当原始数据所在存储资源发生损坏时,通过 web 在其他终端设备上访问云计算环境 下的虚拟空间获取数据服务,使用绑定于原终端环境程序的用户数据,使数据围绕 用户和程序,提高数据的可用性。这个思路的本质是利用虚拟空间来实现用户数据 的安全存储,并且通过相关的技术来实现应用程序的使用环境同步,来提升应用程 序数据的可用性。本节将通过分析得出用户终端和虚拟空间同步系统的设计思想。 用户登陆注册网址,并通过填写相应信息注册虚拟空间帐号,得到一定配额的 虚拟空间。在本地的客户端正确填入用户名和密码等信息,通过验证后即可对本地 终端的应用程序进行同步。用户选择需要同步的应用程序,通过关联机制和预处理 模块收集应用程序的所有数据信息,构造同步消息,并发送同步命令至服务器端。 同步服务器收到客户端发送的同步消息后,建立数据传输连接,将客户端发送来的 数据全部保存在数据中心为该帐号分配的虚拟存储空间中。应用程序同步成功后, 用户可以选择实时同步方式或者周期同步方式,在客户端使用本地的应用程序的过 程中,会造成本地应用程序数据的改变,在这种情况下,同步引擎触发同步线程, 发出数据同步命令,客户端通过比对分析文件的最后更新日期和数据库中的记录, 实现增量信息的关联和捕获,把本地上次同步后发生变动的数据(包括增加、修改 和删除的数据) ,发送到服务器端的虚拟空间。当同步服务器接收到客户端发送的对 数据进行修改的命令时,将对服务器端的虚拟空间的数据进行更新。客户端的修改 信息发送完全时,同步服务器检查虚拟空间中的数据,查找到自上次同步结束后, 服务器端发生改变的数据,然后构建成同步消息并发送给客户端。这样,同步完成 9 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 后,客户端的数据库和服务器端虚拟空间的数据中的数据信息将再次保持一致。当 同步过程成功结束后,用户可以通过 web 浏览器登录到系统的个人虚拟空间界面进 行访问。客户端上所有的数据保存在同步服务器的用户虚拟空间中,而且对应用程 序和数据进行下载。数据同步系统的客户端设计思想如图 2.1 所示。 用户提交同步请求 访问关联策略库 预处理 同步数据传输接口 虚拟空间 同步引擎模块 http/ftp 同步触发模块 应用 数据 访问 接口 同步消息构造 同步命令分发 周期 同步 实时 同步 搜索绿色应用 程序目录 分析安装型应用 程序关联文件 图 2.1 同步系统设计思路 当通过浏览器远程访问用户虚拟空间中同步的应用程序和关键数据时,可以对 虚拟空间中同步的应用程序进行下载和安装,同时得到用户关键数据。在这个过程 中,首先对系统的程序安装环境进行判断、提示。如果操作系统不能满足程序的安 装条件,则在终端显示提示。然后根据关联策略库中应用程序的所属类型,分别采 取不同的操作:绿色应用程序直接记录安装配置信息,在本机上存放应用程序安装 文件和用户关键数据;安装型应用程序则将虚拟空间的数据进行打包下载,将注册 文件导入注册表;复杂性应用程序需要给出安装链接,服务器端再根据关联策略库 中的规则,翻译路径,存放用户关键数据。 系统通过一定的传输方式将应用程序的关联文件传送回后台同步应用服务器所 连接的虚拟空间中,以备将来进一步使用;同时,用户终端随时与服务器端的虚拟 10 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 空间进行数据的同步与更新。 2.2 总体体系结构总体体系结构 根据系统的设计思想,面向云计算的用户终端和虚拟空间数据同步系统 (cloudsync)的主要服务概括来说就是用户虚拟空间分配与管理、终端与虚拟空间 的同步、远程访问虚拟空间和数据传输支持,与之相应的就是三个服务和在数据同 步过程中必须具备的两个角色:cloudsync 客户端和 cloudsync 服务器端。 1cloudsync 客户端 cloudsync 客户端向用户提供数据服务:实现用户终端与虚拟空间数据同步、虚 拟空间中数据的下载、以及实时同步和周期性同步的功能实现。用户通过同步客户 端将需要同步的应用程序发送给服务器的虚拟空间,接收来自服务器的应答消息。 在同步的更新阶段,一般情况下,cloudsync 客户端先发送它的数据的修改信息,但 服务器端也同样可以发起同步,服务器端首先发送同步修改信息作为一种特殊的数 据同步形式而存在,但是这种形式并不常见。 2cloudsync 服务器 cloudsync 服务器端是指包含了虚拟空间代理和用户空间管理模块的设备,它通 常等待 cloudsync 客户端首先发起同步,负责接收客户端的修改信息并进行同步分 析,反馈修改结果信息。当然,如果传输机制允许,如前所述,cloudsync 服务器端 也可以首先发起同步过程,然后再接收客户端的数据修改信息。一般的服务器设备 都可以成为普通数据同步服务器,cloudsync 的服务器端的存储资源并不是一块简单 的磁盘,而是运行着 linux 操作系统的计算机,有着 cpu、磁盘、网络。cloudsync 的服务器端的存储资源不仅仅提供放置数据的虚拟空间,同时具有一定的数据处理 能力。本系统在服务器端的数据资源上设计实现了虚拟空间代理以更好地管理和分 配服务器端的存储资源。并在存储资源上安装 ftp 服务器,利用 ftp 作为底层的数 据传输协议,通过这种统一的数据传输协议对底层存储资源的异构性进行屏蔽,为 用户提供一种统一的存储资源访问方式,从而达到用户对虚拟空间中应用程序和用 户数据的透明访问。 图 2.2 是 cloudsync 数据同步系统体系结构图, 数据同步系统由数据访问客户端、 用户空间管理、虚拟空间代理、数据中心等组成。 11 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 虚拟空间代理 应用 程序1 应用 程序2 应用 程序3 同步数据客户端 数据中心数据中心 用户空间 管理 internet 服务器 客户端 程序关联 文件 图 2.2 数据同步系统体系结构 数据同步各部分的功能描述如下: 1数据同步客户端。数据同步客户端实现应用程序的同步、下载功能,以及应 用程序的实时同步和周期性功能等功能。 2用户空间管理。实现对用户虚拟空间的管理,包括用户对虚拟空间的操作接 口、用户注册信息的管理等。 3虚拟空间代理。虚拟空间代理提供用户虚拟空间注册的服务,负责收集存储 资源状态信息的收集。同时,可供 cloudsync 管理员选择合适的存储资源,创建所需 的虚拟空间供用户使用。 4数据中心。建立在服务器端的 cloudsync 数据中心提供虚拟空间,负责完成 客户端与虚拟空间之间的数据传输。目前数据中心为运行着 ftp 服务器和 linux 操 作系统的存储资源,采用的数据传输协议也是采用标准的 ftp 协议,ftp 协议的典 型工作过程是:首先客户端发起连接,双方建立起一个 ftp 连接;然后客户端发出 请求;接着服务器端处理请求;最后服务器关闭连接。 2.3 客户端体系结构与功能模块客户端体系结构与功能模块 2.3.1 客户端体系结构客户端体系结构 cloudsync 的客户端是终端用户使用该系统的入口。通过本地客户端,用户可以 12 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 提交应用程序同步请求、监视同步服务运行、管理和传输数据;通过 web 客户端, 用户可以进行注册,远程访问虚拟空间,对虚拟空间中的数据进行访问,同时 web 客户端还具有用户虚拟空间注册管理等功能。 同步系统的本地客户端体系结构如图 2.3 所示, 整个数据同步软件逻辑上分为五 个层次,即应用层、服务层、核心层、转换层和传输层。 客户端界面模块 关联机制/预处理模块 同步引擎模块 同步触 发模块 数据存放接口 同步消 息构造 同步转换模块 同步传输模块 同步命 令分发 数据转换传输转换 应用层 服务层 核心层 转换层 传输层 图 2.3 cloudsync 同步系统客户端体系结构 1应用层主要负责对终端用户提供的同步需求与系统的交互处理,也就是根据 用户的选择和输入触发底层的服务处理。应用层的同步程序界面负责启动、终止同 步程序的运行,在同步的执行过程中,用户可以通过同步界面来干预同步的进程。 在同步的整个过程中,同步引擎会根据本身所处的同步状态,通知同步界面,完成 各个同步状态的实时显示。 2服务层主要对用户需要同步的应用程序所关联的文件进行搜索、收集。服务 层的关联机制和预处理模块为不同类型的软件建立了不同的同步策略,对于复杂的 软件在同步操作前进行预处理。 3核心层主要负责同步服务的基本控制管理,负责同步消息包的发送和接收, 数据更新信息的管理等。核心层的同步引擎是同步应用服务器的核心部分,同步引 13 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 擎提供的主要功能包括:触发同步操作,识别同步数据的来源,识别什么数据要被 更新,构造同步消息,分发同步命令。同步触发模块为同步提供改动的根据。在同 步应用程序后,客户端必须能够标识出上次同步后,发生变化的数据项,这些文件 更新信息在更新同步过程中将会用来完成数据信息的交互。服务器端数据库中保存 数据改变的信息(如文件的最后更新时间) ,它主要用于判定将哪些数据的修改发送 给服务器,并在用户选择了同步方式后,根据这些改变信息进行增量数据传输。 4转换层主要负责数据转换和传输转换,数据转换负责对上层应用的数据进行 转换,表示成服务器端传输要求的数据流格式,同时也可以对底层数据流格式进行 有效处理,得到上层同步应用要求的数据格式。传输层的数据存取接口为同步提供 了存取同步数据的接口。 5 传输层负责传输层面的实现。 传输转换具体就是本系统的 ftp 传输绑定模块, 也就是 ftp 协议的实现。数据存放接口调用传输模块的传输实现,完成同步数据包 的收发。 2.3.2 客户端功能模块客户端功能模块 如图 2.4 所示,面向云计算的用户终端和虚拟空间数据同步系统的客户端中,用 户虚拟空间分配与管理包含用户虚拟空间分配模块和用户虚拟空间管理模块;关联 机制包含绿色应用程序关联模块、安装型应用程序关联模块和安装型应用程序预处 理模块;数据传输的同步机制中包含实时同步机制和周期同步机制;增量信息关联 与获取包含增量信息关联模块、增量信息获取模块和增量信息的传输模块。以下分 别详细描述面向云计算的用户终端和虚拟空间数据同步系统的客户端主要功能模 块。 1用户虚拟空间分配 用户虚拟空间分配模块包含虚拟空间代理,用来负责用户虚拟空间的分配,用 户提交注册信息到本系统 web 服务器,web 服务器将信息交给虚拟空间代理,虚拟 空间代理会访问服务器端的 mysql 数据库中由虚拟空间管理员建立的用户权限表, 如果用户的注册信息满足申请虚拟空间的要求,虚拟空间代理则会选择合适的存储 资源自动分配给用户,并且设定虚拟空间的逻辑空间名为用户注册的用户名。并将 用户的注册信息写入 mysql 数据库,返回注册成功信息。用户注册成功后,可以通 过用户名密码作为验证方式登陆到虚拟空间,同步本地终端的应用程序数据。 14 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 用 户 虚 拟 空 间 分 配 绿 色 应 用 程 序 关 联 用 户 虚 拟 空 间 管 理 安 装 型 应 用 程 序 关 联 实 时 同 步 机 制 周 期 同 步 机 制 增 量 信 息 的 关 联 建 立 增 量 信 息 的 获 取 用户虚拟空间 分配与管理 关联机制 数据传输 的同步机制 增量信息 关联与获取 cloudsync数据同步系统 预 处 理 增 量 信 息 的 传 输 图 2.4 cloudsync 同步系统客户端功能模块 2用户虚拟空间管理 用户虚拟空间管理模块主要实现用户注册信息的管理、服务器端物理文件名与 服务器端文件 id(identity)的映射、用户对虚拟空间的操作接口等。用户虚拟空间 管理服务对整个系统服务器端的虚拟存储资源有着唯一的全局视图,这种单个的用 户虚拟空间管理模块简化了同步系统的设计,并且在用户使用同步系统的过程中, 客户端与用户虚拟空间管理交互的数据量主要是在用户登陆系统时产生,数据量相 对较少,终端应用程序的数据传输一般直接在客户端与虚拟空间之间进行,用户虚 拟空间管理的服务在应用程序关联文件的数量不太大的情况下性能良好。用户虚拟 空间的管理服务将用户名和相对应的用户虚拟空间的逻辑位置都进行记录,管理和 组织系统中的元数据等信息。 3绿色应用程序关联 绿色应用程序关联模块负责建立绿色应用程序和文件的关联。对绿色软件进行 同步时,只需要将应用程序本身所在目的安装目录同步到虚拟空间,用户在远端访 问时不需要进行任何配置即可使用用户的数据,不需要进行安装,随意拷贝、复制 就可以用。这是本系统所实现的同步应用程序关联模块中最简单的一部分。 4安装型应用程序关联 安装型应用程序关联模块负责建立安装型应用程序和文件的关联。该模块会根 据关联策略库中记录的应用程序关联文件信息,对应用程序的所有关联文件、注册 表项、用户关键数据一起传到虚拟空间,并在服务器端的数据库中建立相应的元数 15 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 据信息,比如上传文件的最后更新时间。在用户远程访问虚拟空间时,安装型应用 程序关联模块需要将应用程序在虚拟空间的所有关联文件进行打包,保持应用程序 关联数据的可用性。 5预处理 预处理模块负责对复杂性应用程序进行预处理。由于复杂性性应用程序的注册 表键值和关联文件为数众多,在建立关联数据时要耗费大量的时间,并且和操作系 统存在关联,不适合采用同步关联文件的方式,对于这类应用程序,需要进行预处 理,提供接口供用户选择希望同步的用户数据文件的相对路径。并在远程访问此类 应用程序时,给出应用程序的安装链接。 6实时同步机制 实时同步机制的功能是在已进行同步操作的数据发生改变时,能够立即触发同 步操作这个事件。本系统采用基于线程循环监控的方式建立实时同步机制。触发建 立监控同步文件的线程,在建立的监控线程内,根据完全同步的算法中对终端应用 程序的遍历思想遍历同步应用程序关联目录内的文件。对每一个文件读取更新时间, 并根据文件名在数据库中读取同步文件时记录的文件最后更新时间,如果本地文件 的时间和数据库中记录的更新时间不同或者不存在该文件信息,则触发同步事件, 并等待同步操作完成。 7周期同步机制 周期同步机制的功能是根据用户选择的同步应用程序的周期时间,对同步的应 用程序和数据建立周期同步机制。在用户选择周期同步功能时建立系统时钟,并产 生一个线程用来监控系统时间,在用户使用应用程序的过程中,选择的同步周期到 达时,触发产生一个同步线程,进行应用程序的更新同步。 8增量信息关联 增量信息的关联是通过 mysql 数据库实现的。 通过在服务器端的数据库建立用 户名和同步应用程序名的对照表,并在同步的过程中,在表格中建立索引项,记录 应用程序的关联文件的更新时间、关联文件所在目录的相对路径等,实现在应用程 序数据的更新同步阶段增量信息的关联。 9增量信息获取 在应用程序的更新同步阶段,通过对数据库中的相应表的访问操作建立增量信 息的关联,并通过对比分析数据库中文件的更新时间等增量信息来获取需要进行增 16 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 量同步的文件对象。增量信息的获取通过对数据库中的一系列操作来完成。 10增量信息传输 增量信息传输模块主要功能是完成从用户终端到虚拟空间单个文件的完整拷 贝。 本系统采用 ftp 作为底层数据传输协议。 用到两个 tcp 连接, 一个是控制连接, 用来在 ftp 用户终端与服务器端之间传递命令;另一个是数据连接,用来上传或下 载文件数据。采用的是 ftp 作为底层的数据传输协议,系统为普通用户提供了基于 ftp 的数据传输客户端,在其后台的服务器端的存储资源上,运行着 ftp 数据传输 服务器,并进行了个性化的设置,适应本系统的同步需要。 2.4 服务器端架构服务器端架构 在 cloudsync 数据同步系统的测试阶段,由于不会占用很多的存储空间,可以利 用存储虚拟化的思想提前对服务器端的存储空间进行规划,这样做很大程度地避免 了存储资源的浪费。随着注册用户的增多,使用存储虚拟化技术构建基于存储设备 的虚拟化环境34,可以方便地进行存储容量的扩充,这些都是用户在使用 cloudsync 数据同步系统过程中所体验不到的。cloudsync 数据同步系统使用存储虚拟化技术构 建基于存储设备的虚拟化环境,进行服务器端虚拟空间架构,提供能够保证数据可 靠性以及统一管理的同步系统数据平台。 在利用存储虚拟化技术的基础上,细化出 cloudsync 同步系统的服务器端架构, 包括虚拟空间代理、 mysql 数据库、 用户虚拟空间管理和关联策略库四个功能模块, 如图 2.5 所示。 关联策略库关联策略库 存储资源存储资源 虚拟空间代理虚拟空间代理虚拟空间管理服务虚拟空间管理服务 用户 虚拟 空间 用户 虚拟 空间2 用户 虚拟 空间 用户 虚拟 空间n 用户空间管理用户空间管理 绿色 应用程序 绿色 应用程序 安装型 应用程序 安装型 应用程序 用户 虚拟 空间 用户 虚拟 空间1 mysql数据 库 数据 库 1: 关联策略信息关联策略信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高速公路行业的经济价值分析
- 团队合作薪酬管理办法
- 基于《旅游景区质量等级的划分》的4A景区评审体系优化研究
- 民族成人登记管理办法
- 江苏牛羊屠宰管理办法
- 港口闸口工作总结
- 本人现岗位安全生产主要职责
- 景区违规建设管理办法
- 代谢流组真皮修复-洞察及研究
- 标准化知识培训课件
- 新《职业病危害工程防护》考试复习题库(浓缩500题)
- 仓储管理剖析
- JJF(辽) 556-2024 转速试验机校准规范
- 水电材料供货商技术方案范文
- 电信考试题目及答案
- 餐饮约束员工管理制度
- PLC基础知识课件下载
- 2023秸秆类生物质能源原料储存规范第1部分:存放
- DB11 T 212-2009 园林绿化工程施工及验收规范
- 感染性腹泻患者护理常规
- 2023年1月国家开放大学汉语言文学本科《古代诗歌散文专题》期末纸质考试试题及答案
评论
0/150
提交评论