一种智能终端数据存储方法

文档序号:8514677阅读:495来源:国知局
一种智能终端数据存储方法
【技术领域】
[0001] 本发明设及手机互联网信息存储,特别设及一种智能终端数据存储方法。
【背景技术】
[0002] 手机互联网和云计算的普及应用,为人们提供了极大的便利。智能手机上的数据 及在云存储服务器的存储,设及到数据同步问题。有的数据需要严格同步,才能为用户带来 使用的便利,如通讯录信息;而有的数据需要一般同步,比如智能手机里的照片、视频等,需 要在云存储服务器保留历史数据,W实现增量同步。现有的数据同步方法不适合大数据量 的应用,通过检测和传输差异数据来降低网络传输的数据量,需要手机端和服务器端共同 参与才能实现。

【发明内容】

[0003] 为解决上述现有技术所存在的问题,本发明提出了一种智能终端数据存储方法, 包括:
[0004] 用户智能终端与云存储服务器通过网络相连,将数据的同步信息单独放置在特征 值信息文件中,采用散列值作为数据的特征值信息,根据智能终端与云存储服务器分别存 储的特征值信息来确定智能终端是否从云存储服务器下载数据,W及智能终端是否向云存 储服务器上传数据。
[0005] 优选地,所述特征值信息包括文件名特征值信息和文件内容特征值信息两部分, 用于唯一标识文件的路径信息和内容信息;
[0006] 对于一个目录下的所有文件,则仅计算文件名特征值信息,对于树状存储结构的 目录和文件,则计算全路径文件名特征值信息;
[0007] 根据文件尺寸,采用W下两种计算策略之一;计算全部数据的特征值信息,或选取 文件片段计算。
[000引优选地,所述特征值信息文件由3类数据块组成;文件头信息块、文件名特征值信 息块和文件内容特征值信息块;
[0009] 文件头信息块定义如下字段名,分别为:
[0010] ARYSIZE;指示文件名散列码映射数组的尺寸
[OCm]FNHTYPE;指示计算文件名散列值采用的散列方法类型
[0012] 皿COUNT;文件内容采用散列方法的个数
[0013] 皿TYPE;散列方法类型
[0014] 文件名特征值信息块定义如下字段名,分别为:
[0015] FNNOFFSET;0表示无下一个特征值信息;非0表示下一个文件名散列信息的偏移 量
[0016] FLAG;0表示本地无此文件;1表示本地文件与云存储服务器完全一致;2表示本 地文件内容与云存储服务器文件内容不一致;3表示本地有此文件,而云存储服务器没有;
[0017] 皿OFFSET;表示文件内容散列信息偏移量;
[0018] OFFSETFLAG;表示皿OFFSET是否有效;
[0019] 其中文件名特征值信息块采用散列数组链表的方式组织:文件名特征值信息块构 成散列数组链表,数组尺寸由ARYSIZE字段决定;文件名散列数组链表通过FNNOFFSET文件 偏移量字段来实现;文件名信息块中通过皿OFFSET偏移量字段来查找所对应的文件内容 信息块,实现散列信息逻辑组织到文件存储的物理映射;
[0020] 在特征值信息文件的新增信息块写入过程中,先写信息块内容,再对标志信息块 的关键字段进行更新,对写错误采取舍弃相应存储空间的策略,对于信息块的修改操作,仅 在修改前,先将相应的标志位置无效。
[0021] 优选地,所述在新增信息块的写入操作进一步包括:
[0022] (1)在分配文件名信息块和分配文件内容信息块的情况下对特征值信息文件尾 部写信息,在文件尾部的数据追加过程中,先写信息块WDATA,再更新前面的偏移量字段
[002引 ①程序中记录OFFSET;
[0024] ②在文件尾执行WDATA操作,如果出现意外,则下次写信息时重新从①开始;
[0025] ⑨执行更小操作,如果出现意外,则下次写信息时重新从①开始;
[0026] 最后执行回写更新;
[0027] (2)对皿OFFSET字段的写,先确保OFFSETFLAG字段为0,表示皿OFFSET字段无 效,然后执行新信息块的分配和写操作,新信息块写成功后,再更新皿OFFSET字段,最后将 OFFSETFLAG字段置1,表示皿OFFSET字段有效。
[002引本发明相比现有技术,具有W下优点:
[0029] 本发明提出了一种智能终端存储方法,可W减轻服务器的压力,降低智能手机与 云存储集群的禪合程度,增强数据同步应用的灵活性。
【附图说明】
[0030] 图1是根据本发明实施例的智能终端数据存储方法的流程图。
【具体实施方式】
[0031] 下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合该样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权 利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节 W便提供对本发明的透彻理解。出于示例的目的而提供该些细节,并且无该些具体细节中 的一些或者所有细节也可W根据权利要求书实现本发明。
[0032] 本发明的一方面提供了一种智能终端数据存储方法。图1是根据本发明实施例的 智能终端数据存储方法流程图。本发明根据数据的特征值信息,将多种数据同步机制融合 在一起,并且可W灵活选择同步策略。同步机制的选择可W由用户指定,也可W由应用程序 来选择,将数据的同步信息,单独放置在特征值信息文件中,使方法的适用面较广。
[0033] 数据同步之前,需要检测数据的冗余情况和缺失情况,进而根据该些情况来进行 数据同步操作。用户智能手机与云存储服务器通过网络相连。本发明方法采用散列值作为 数据的特征值信息,根据同步的数据情况,采用个快速散列方法生成不同的特征值信息,w防止碰撞;采用散列方法的数量及类型,与方法本身独立,增强了方法的适应性。
[0034] 特征值信息由"文件名特征值信息"和"文件内容特征值信息"组成,两者结合,可 W唯一标识一个文件的路径信息和内容信息。
[0035] (1)文件名特征值信息的计算。方法考虑了常用的两种情况;①扁平化存储的文 件,如一个目录下的所有文件(不包括子目录),则仅需要计算文件名特征值信息。②树状 存储结构的目录和文件,如多层次目录结构中的文件,则需要计算全路径文件名特征值信 息。
[0036] (2)文件内容的特征值信息计算。用户智能手机的数据类型多样,有文本文件等尺 寸较小的文件,也有照片、视频片段等比较大的文件数据。针对文件尺寸该两类不同的数据 情况,可W采用W下两种计算策略:①W联系人信息为代表的小数据量信息,计算全部数据 的特征值信息。②W照片、视频等为代表的大数据量信息,可W采用全部计算方式。但为了 节省智能手机电力的使用,在防止散列碰撞的前提下,可W采用选取几个文件片段的计算 方式。由于本发明方法的文件同步主要依赖于文件名信息,同一个文件在内容修改后的特 征值信息碰撞几率非常低。
[0037] 根据基于云存储服务器的应用特点,将特征值信息单独打包存储为文件,保存在 云存储服务器。该方法的优点是;终端进行数据重复检查时,仅下载特征值信息文件,节省 网络带宽,不用再重复计算云存储服务器保存数据的特征值信息,提高了数据检查效率。 [003引本发明方法设计的特征值信息逻辑组织结构如下:特征值信息文件由3类数据块 组成;文件头信息块、文件名特征值信息块和文件内容特征值信息块。
[0039] 文件头信息块定义如下字段名,分别为:
[0040] ARYSIZE;指示文件名散列码映射数组的尺寸
[004UFNHTYPE;指示计算文件名散列值采用的散列方法类型
[0042] 皿COUNT;文件内容采用散列方法的个数
[0043] 皿TYPE;散列方法类型
[0044] 文件名特征值信息块定义如下字段名,分别为:
[0045] FNNOFFSET;0表示无下一个特征值信息;非0表示下一个文件名散列信息的偏移 量
[0046] FLAG;0表示本地无此文件;1表示本地文件与云存储服务器完全一致;2表示本 地文件内容与云存储服务器文件内容不一致;3表示本地有此文件,而云存储服务器没有;
[0047] 皿OFFSET表示文件内容散列信息偏移量;
[0048] OFFSETFLAG;表示皿OFFSET是否有效。
[0049] 文件名特征值信息块采用散列数组链表的方式组织;文件名特征值信息块构成散 列数组链表,数组尺寸由ARYSIZE字段决定;文件名散列数组链表通过FNNOFFSET文件偏移 量字段来实现;文件名信息块中通过皿OFFSET偏移量字段来查找所对应的文件内容信息 块。通过此种方式,实现了散列信息逻辑组织到文件存储的物理映射。
[0化0] 在上述特征值信息文件的读写工作机制中,W写为例,对特征值信息文件中信息 块的写操作,如果实现基于事务的原子操作开销比较大,并且特征值信息文件不会发生并 发读写操作。据此,本发明方法对新增信息块的写采用回写方法,即先写信息块内容,再对 标志信息块的关键字段进行更新,在保证方法正确性的前提下,对写错误采取舍弃相应存 储空间的策略。回写方法对信息块的修改操作同样适用,仅需在修改前,先将相应的标志位 置无效即可。新增信息块的写包括分配写和对皿OFFSET字段的更新写。写流程如下: [0化1] (1)新信息块的分配写。只有在两种情况下才会对特征值信息文件尾部写信息: 分配文件名信息块和分配文件内容信息块。采用回写方法处理文件尾部的数据追加过程 中,因意外造成的信息不一致问题,具体策略为先写信息块,再更新前面的偏移量字段。 [0化2] 假定偏移量为OFFSET,写信息块为WDATA,写偏移量为W0FFSET,回写方法写过程 如下:
[0化3] ①程序中记录OFFSET。
[0化4] ②在文件尾执行WDATA操作,如果该步骤出现意外,则下次写信息时重新从①开 始。
[0化5] ⑨执行W0FFSET操作,如果该步骤出现意外,则下次写信息时重新从①开始。
[0056] 回写方法W0FFSET最后执行,保证了信息块的正确性。
[0化7] (2)对皿OFFSET字段的写,也采用回写方法;先确保OFFSETFLAG字段为0,表 示皿OFFSET字段无效,然后执行新信息块的分配和写操作,新信息块写成功后,再更新 皿OFFSET字段,最后将OFFSETFLAG字段置1,表示皿OFFSET字段有效。至此,保证了特征 值信息文件逻辑的正确性。
[005引用户在实际使用智能手机设备中,可能会出现W下情况;(1)丢失设备、更换设 备。(2)对设备进行完全重置,如恢复出厂设置、格式化存储等
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1