数据同步系统及方法 【技术领域】
本发明涉及一种数据同步系统及方法,特别是关于一种依据异动纪录,更新装置的储存内容,并仅传送异动数据中的共同格式部分的数据同步系统及方法。
背景技术
现有由于信息科技的进步,连带使得轻薄短小且功能完整的手持式电子装置应运而生。其可提供行事历、通讯簿、记事本、计算器、时钟、游戏等一般功能或是实时信息接收等特定功能,例如配合实体线路或现今当红的无线通讯装置接收电子名片、网页数据甚至是金融交易信息等,且其价格越来越低廉,故现已广泛地受到一般使用者的接受及喜爱,而使用于商业活动甚至是校园或日常生活中,进而促成如移动办公室等高弹性、反应快速的商业活动或e化的生活。
但由于手持式电子装置轻薄短小的特性,间接地限制了其储存容量的大小,使用者如欲使其储存内容符合需求,其中的一种作法为配合另一电子装置,弹性调整其储存内容;遇有数据同步的需求时,同样地也可配合另一电子装置,将手持式电子装置的储存内容更新至另一电子装置上,同时,如遇因装置不同而造成储存格式或字段不尽相同,则尚需进行必要的转换。
现有的同步作法为将手持式电子装置的全部储存内容传送至另一电子装置,以更新电子装置地储存内容,而手持式电子装置端的同步动作,也以相同的方式进行。上述作法的缺点在于如果原先的储存内容数据量庞大,则同步的工作旷日费时,往往异动的数据量仅占储存内容数据量的一小部分,却必须传送所有的储存内容。
另一个问题在于如遇到装置间储存格式或字段不尽相同时,现有的作法为将储存内容原封不动地传送至另一端,再由另一端装置自行转换其数据格式或撷取对应的部分。此种作法的缺点有二,其一为所传送的储存内容可能仅有部分为接收端装置所需,传送所有的数据将会造成频宽及时间上的浪费,其二为如果执行转换或撷取的一端硬件功能较为薄弱的话,上述动作将会耗费相当比例的系统资源,造成使用者的不便。
因此,如上所述,如何减少不必要的数据传输,以节省频宽及时间,并且避免接收端装置系统资源的浪费,使系统资源可以投入其它应用,间接提高装置的效能,实是当前亟待解决的课题。
【发明内容】
针对上述问题,本发明的目的是提供一种数据同步系统,其可依据异动纪录,更新装置的储存内容,且仅传送异动数据中的共同格式部分,以达到装置间数据同步的目的,并减少不必要的数据传输。
为达上述目的,本发明的数据同步系统实施于一手持式电子装置及一台式计算机。手持式电子装置包含一第一数据区块,台式计算机包含一第二数据区块,且第一数据区块所储存的一第一数据的一第一数据格式与第二数据区块所储存的一第二数据的一第二数据格式均分别包含一共同格式部分。
数据同步系统包含一第一存储装置,其位于手持式电子装置中,并储存第一数据区块的一第一异动纪录;一第二存储装置,其位于台式计算机中,并储存第二数据区块的一第二异动纪录;以及一同步程序,其位于台式计算机中,并依据第一异动纪录及第二异动纪录,更新第一数据区块及第二数据区块,且当于手持式电子装置及台式计算机之间传送该第一数据及该第二数据之一时,仅传送属于共同格式部分的内容。
本发明亦提供一种数据同步方法,其实施于一手持式电子装置及一台式计算机,手持式电子装置包含一第一数据区块,台式计算机包含一第二数据区块,且第一数据区块所储存的一第一数据的一第一数据格式与第二数据区块所储存的一第二数据的一第二数据格式均分别包含一共同格式部分。
数据同步方法首先为读取一第一异动纪录,其中第一异动纪录储存于手持式电子装置中,且记录第一数据区块的异动;其次为读取一第二异动纪录,其中第二异动纪录储存于台式计算机中,且记录第二数据区块的异动;最后依据第一异动纪录及第二异动纪录,更新第一数据区块及第二数据区块,且当于手持式电子装置及台式计算机之间传送第一数据及第二数据的一时,仅传送属于共同格式部分的内容。
由于依本发明的数据同步系统及方法,依据分别储存于手持式电子装置及台式计算机中的异动纪录,更新个别装置的储存内容,且如有传送数据的必要时,仅传送异动的数据;如遇装置之间数据格式不同时,则预先识别并撷取两装置的储存内容中属于共同格式部分的内容,因此可以减少不必要的数据传输,达到装置间数据同步的目的。
【附图说明】
以下将参照相关附图,说明依本发明较佳实施例的数据同步系统及方法,其中相同的组件将以相同的参照符号加以说明。
图1为一架构图,显示依本发明较佳实施例的数据同步系统的架构;
图2为一示意图,显示例示的通讯簿的内容及其「共同格式部分」;
图3为一架构图,显示依本发明较佳实施例的异动纪录的架构;
图4为一流程图,显示依本发明较佳实施例的数据同步方法的流程;
图5a为一示意图,显示数据同步前通讯簿的内容;
图5b为一示意图,显示数据同步后通讯簿的内容。
图中符号说明:
1 手持式电子装置
11 第一数据区块
111 第一数据
12 第一存储装置
121 第一异动纪录
13 第一异动记录程序
14 第一缓冲区
2 台式计算机
21 第二数据区块
211 第二数据
22 第二存储装置
221 第二异动纪录
23 第二异动记录程序
24 同步程序
25 第二缓冲区
S401~S409 数据同步方法的步骤
【具体实施方式】
请参照图1所示,依本发明较佳实施例的数据同步系统是实施于一手持式电子装置1及一台式计算机2,其中手持式电子装置1包含一第一数据区块11,而台式计算机2包含一第二数据区块21。数据同步系统包含一第一存储装置12,其位于手持式电子装置1中,并储存第一数据区块11的一第一异动纪录121;一第二存储装置22,其位于台式计算机2中,并储存第二数据区块21的一第二异动纪录221;以及一同步程序24,其位于台式计算机2中,并依据第一异动纪录121及第二异动纪录221,更新第一数据区块11及第二数据区块21,且当于手持式电子装置及台式计算机之间传送第一数据区块11或第二数据区块21中部分经异动的内容时,仅传送属于共同格式部分的内容。
上述共同格式部分是指二种数据格式当中相对应的部分,其包含的内容为同类或相同的数据。请参照图2所示,以通讯簿为例,通讯簿一包含姓名、身份、电话及电子邮件等四个字段,通讯簿二包含姓名、生日、电话、住址及电子邮件等五个字段,因此,通讯簿一及通讯簿二的共同格式部分为「姓名、电话及电子邮件」等三个字段,属于共同格式部分的内容则为此三字段的实际储存内容。需注意的是,本方法亦可用于非使用字段方式储存的档案取得其共同格式部分,其以相同的定义判断是否属于共同格式部分,并可事先将判断结果设定于同步程序24中以供其识别之用。
此外,请参照图1所示,手持式电子装置1尚包含一第一异动记录程序13,其监看第一数据区块11的异动,并将其记录于第一异动纪录121中,其中上述的异动包含数据的新增、删除及修改等。同样的,台式计算机2亦包含一第二异动记录程序23,其于台式计算机2中以模拟于第一异动记录程序13的方法运作。
以图2的通讯簿一及通讯簿二为例,其中通讯簿一储存于第一数据区块111中,通讯簿二储存于第二数据区块221中,如删除通讯簿一中张三的数据,则第一异动记录程序13于检测到此数据异动后,便将其记录于第一异动纪录121中。同样的,如在通讯簿二中增加一笔数据为「姓名:李四、生日:66/01/01、电话:(02)22224444、住址:台北县…、电子邮件:Four@li.com」,并将「王五」的电话修改为(03)5557777,则第二异动记录程序23于检测到此数据异动后,便将其记录于第二异动纪录221中。经异动后的通讯簿一及通讯簿二请参照图5b所示。
请参照图3所示,上述数据异动分别记录于第一异动纪录121及第二异动纪录221中,且皆各包含二个字段「目标」及「异动情形」,分别指示哪一笔数据进行异动,以及异动情形是为新增、修改或删除及其附带的参数。需注意的是,异动数据的格式不限于图3例示的格式,只要能够清楚指示进行异动的数据及其异动的方式即可。
在数据同步开始时,同步程序24首先读取位于手持式电子装置1中的第一异动纪录121,并依据第一异动纪录121更新台式计算机2中的第二数据区块21,如果有需要修改或新增数据,则同步程序24更进一步识别经异动的数据中需传送的部分数据,如第一数据区块11中的第一数据111,再将第一数据111中属于共同格式部分的内容暂存于手持式电子装置1的一第一缓冲区14,再传送至台式计算机2。
同样的,当台式计算机2端同步完成后,同步程序24也依据第二异动纪录221更新手持式电子装置1中的第一数据区块11,如果有需要修改或新增数据,则同步程序24更进一步识别经异动的数据中需传送的部分数据,如第二数据区块21中的第二数据211,再将第二数据211中属于共同格式部分的内容暂存于台式计算机2的一第二缓冲区25,再传送至手持式电子装置1。
需注意的是,上述的第一数据区块11、第一存储装置12、第一异动记录程序13及第一缓冲区14亦可位于同一储存装置中。举例而言,第一存储装置12可为一闪存(Flash Memory),第一数据区块11及第一缓冲区14可为闪存中的一区块,第一异动记录程序13则为储存于闪存中的一应用程序。同理,第二数据区块12、第二存储装置22、第二异动记录程序23乃至于同步程序24及第二缓冲区25,均可以相同的方式位于同一储存装置中。此外,上述组件更可以任何排列组合的方式分布于多个储存装置中,而不影响本发明的实施。
为使本发明的内容更容易理解,以下将举一实例,说明依本发明较佳实施例的数据同步方法的流程。
请参照图4所示,依本发明较佳实施例的数据同步方法包含:首先由第一异动记录程序13及第二异动记录程序23分别于第一异动纪录121及第二异动纪录221中记录第一数据区块11及第二数据区块12的异动(S401)。其次于数据同步开始时,由同步程序24分别读取第一异动纪录121及第二异动纪录221(S402),接着再判断异动纪录是否为空(S403)。如果异动纪录为空,则表示第一数据区块11及第二数据区块12没有异动的情形,此时不需进行同步的动作。所以,若步骤S403判断异动纪录为空,则直接结束整个流程。
如果异动纪录不为空,则进行步骤S404,判断是否需要传送数据。如数据的异动牵涉到新增或修改,则由同步程序24分别识别第一数据111及第二数据211中,属于共同格式部分的内容(S405),并将其分别暂存于第一缓冲区14或第二缓冲区25中(S406),再传送至相对的装置(S407)。
如果数据的异动仅牵涉到删除,则仅传送删除目标的信息即可,最后分别更新对应的数据区块(S408),并清除双方的异动纪录(S409),以避免重复更新。
以图2所示的通讯簿一、通讯簿二及图3所示的第一异动纪录121及第二异动纪录221为例,数据同步前的通讯簿一及通讯簿二请参照图5a所示。在数据同步开始后,同步程序24读取如图3所示的第一异动纪录121,并指示删除通讯簿二中「张三」的数据。完成后,再读取第二异动纪录221,其中第一笔为「新增(李四,66/01/01,(02)22224444,台北县…,Four@li.com)」,又其中属于共同格式部分的内容为「李四、(02)22224444、Four@li.com」,因此将其暂存缓冲器25,再传送至台式计算机2,于通讯簿一中新增一笔「李四」的数据;同样的,第二笔为「修改(NULL,NULL,(03)5557777,NULL,NULL)」,其中属于共同格式部分的内容为「(NULL,(03)5557777,NULL)」,因此将其暂存缓冲器25,再传送至台式计算机2,修改王五的电话成为「(03)5557777」。数据同步后的通讯簿内容请参照图5b所示。
需注意的是,手持式电子装置1及台式计算机2更新的先后顺序,及相冲突的异动,例如于同一笔数据一方作修改但另一方删除等问题,可由使用者依需要自行决定先后顺序解决的,不影响本发明的实施,故不在本发明的讨论范围内。
综上所述,本发明的数据同步系统及方法,依据分别储存于手持式电子装置及台式计算机中的异动纪录,更新个别装置的储存内容,且如有传送数据的必要时,仅传送异动的数据;如遇装置之间数据格式不同时,则预先识别并撷取两装置的储存内容中属于共同格式部分的内容,因此可以减少不必要的数据传输,达到装置间数据同步的目的。
以上所述仅为举例性,而非为限制性。任何未脱离本发明的精神与范畴,而对其进行的等效修改或变更,均应包含于本专利的保护范围中。