[发明专利]一种保存数据的方法和装置有效
申请号: | 200910226218.8 | 申请日: | 2009-11-20 |
公开(公告)号: | CN102073655A | 公开(公告)日: | 2011-05-25 |
发明(设计)人: | 邓立波;栾涛 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F11/14 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 何文彬 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 保存 数据 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种保存数据的方法和装置。
背景技术
计算机的文件系统是应用程序(如word、qq等)文件管理的核心模块,管理着应用程序的数据本地持久化工作。
复合文档(Compound Documents)是实现文件系统的一种很好的方案。复合文档不仅包含文本,而且包含图形、电子表格数据、声音、视频图像以及其它信息。可以把复合文档想象成一个所有者,它装着文本、图形以及多媒体信息(如声音和图像),并按照一定的目录级别将多个文件组织在一起。
在实现本发明过程中,发明人发现现有技术至少存在如下缺点:
由于复合文档是按照目录级别对各个文件进行保存,那么在文件数据保存的过程中,如果计算机的应用程序发生异常(例如断电、死机、进程Crash、死锁等),文件系统中的数据很有可能会造成损坏,而这些数据的损坏往往会导致应用程序出现各种各样的问题。
发明内容
为了使文件系统能够为应用程序提供高度可靠的数据存储系统、对上层应用提供事务性支持,本发明实施例提供了一种保存数据的方法和装置。所述技术方案如下:
一种保存数据的方法,所述方法包括:
接收一个事务周期内对于操作对象的操作数据,将所述操作数据保存到内存;
将所述操作对象在复合文档中的原始数据备份到日志文件;
将内存中的所述操作数据保存到所述复合文档。
一种保存数据的装置,所述装置包括:
接收模块,用于接收一个事务周期内对于操作对象的操作数据,将所述操作数据保存到内存;
备份模块,用于将所述操作对象在复合文档中的原始数据备份到日志文件,所述日志文件独立于所述复合文档;
保存模块,用于在所述备份模块将所述操作对象在复合文档中的原始数据备份到日志文件后,将内存中的所述操作数据保存到所述复合文档。
本发明实施例提供的技术方案带来的有益效果是:
通过将操作数据先存入内存,并在文件系统将操作数据存入复合文档之前,对操作对象在复合文档中的原始数据备份到日志文件中,备份完成后,再将操作数据保存到操作对象的复合文档中。其中,如果将内存中的操作数据保存到操作对象的复合文档的过程十分顺利,没有遇到异常情况,则达到了All orNothing的事物特征中“All”的效果;如果将内存中的操作数据保存到操作对象的复合文档的过程中复合文档出现异常,则可以利用日志文件对操作对象在复合文档中的原始数据进行恢复,达到了All or Nothing的事物特征中“Nothing”的效果。为用户提供了高度可靠的数据存储系统。
附图说明
图1是本发明实施例1中提供的保存数据的方法流程图;
图2是本发明实施例2中提供的保存数据的方法流程图;
图3是本发明实施例3中提供的保存数据的方法流程图;
图4是本发明实施例4中提供的保存数据的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
为了给用户提供高度可靠的数据存储,本发明实施例提供了一种保存数据的方法,参见图1,该方法包括:
101:接收一个事务周期内对于操作对象的操作数据,将操作数据保存到内存;
其中,可以通过调用计算机相应指令、指针的方式,将接收到的对于文件系统中的操作对象的操作数据直接定向到计算机的内存。
102:将操作对象在复合文档中的原始数据备份到日志文件;
其中,当计算机接收到对于文件系统中的操作对象的操作数据时,即可确定操作对象在复合文档中的原始数据,将这部分原始数据从复合文档中读出,并备份到日志文件中。日志文件与复合文档是相互独立的,这里所说的相互独立,可以理解为日志文件与复合文档存储在不同的硬盘扇区、也可以理解为日志文件与复合文档的操作互不影响等。日志文件可以是预先创建的,也可以是已经建立的,可以与复合文档位于同一目录下,完成对操作对象在本次操作前的原始数据的备份。其中,日志文件为原始数据备份文件的代名词,也可以叫其他名称。
103:将内存中的操作数据保存到复合文档中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910226218.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置