CN101051324A - 一种内存数据库的事务管理方法 - Google Patents
一种内存数据库的事务管理方法 Download PDFInfo
- Publication number
- CN101051324A CN101051324A CN 200710103758 CN200710103758A CN101051324A CN 101051324 A CN101051324 A CN 101051324A CN 200710103758 CN200710103758 CN 200710103758 CN 200710103758 A CN200710103758 A CN 200710103758A CN 101051324 A CN101051324 A CN 101051324A
- Authority
- CN
- China
- Prior art keywords
- data
- memory database
- volatile memory
- deposit
- memory medium
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000012423 maintenance Methods 0.000 claims abstract description 15
- 238000007726 management method Methods 0.000 claims description 13
- 238000000151 deposition Methods 0.000 claims description 4
- INJRKJPEYSAMPD-UHFFFAOYSA-N aluminum;silicic acid;hydrate Chemical compound O.[Al].[Al].O[Si](O)(O)O INJRKJPEYSAMPD-UHFFFAOYSA-N 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种内存数据库的事务管理方法:步骤1,操作维护子系统后台将数据提交到内存数据库;步骤2,设置非易失存储介质中预设的存盘标志为未完成,将内存数据库中的数据存入上述非易失存储介质;步骤3,当内存数据库中的数据存入上述非易失存储介质的存储过程完成后,将上述存盘标志设置为已完成。本发明可以同时保证事务处理的完整性和实时性,易于处理实时性要求较高的应用,保证数据能够完整实时地更新,不会因系统的故障、复位等异常而破坏上述操作,从而增加内存数据库的容灾性。
Description
技术领域
本发明涉及内存数据库的管理方法,特别是一种内存数据库的事务管理方法。
背景技术
随着嵌入式软件的广泛应用,软件系统中需要保存的数据大量出现,内存数据库的需求大量增加,事务操作是内存数据库最本质的操作之一,它的目的就是为了保证一次操作能够完全进行,为了保证事务操作能够永久的提交,通常是将内存数据库修改的数据保存在非易失的介质上后才回应事务提交完成。但在嵌入式系统中,I/O操作时间要求与嵌入式本身的时间要求来比相对较长,尤其是当需要考虑成本的时候,可能会选择I/O性能比较低的物理介质,这样写非易失存储介质的时间相对来说又会大大加长。
由于嵌入式系统中写文件的时间相对比较长,用户不得不忍受较长的事务操作。那么目前对于实时性要求比较高的应用,用户为了提高事务处理的速度只有尽量减少写文件的内容以及写文件的次数、或者是使用读写性能更高的物理介质,这样处理的方式要么会因为选择存盘的数据而增加应用程序的复杂度,要么会因为选择性能较高的物理介质而增加用户的成本。
发明内容
本发明目的在于提供一种使内存数据库的实时提交能够被完整处理的改进的内存数据库的事务管理方法。
鉴于上述目的,本发明提供了一种内存数据库的事务管理方法,包括以下步骤:
步骤1,操作维护子系统(Operating And Maintenance Subsystem,以下简称OMS)后台将数据提交到内存数据库;
步骤2,设置非易失存储介质中预设的存盘标志为未完成,然后内存数据库中的数据存入上述非易失存储介质;
步骤3,当内存数据库中的数据存入上述非易失存储介质的存储过程完成后,将上述存盘标志设置为已完成。
其中,如果上述存储过程没有完成,而是在进行过程中出现异常,例如意外中断等,则停止存储过程,不对上述存盘标志改动,其仍为未完成,以便系统启动后重新提交数据。
所述方法还包括:
步骤4,当系统启动时,读取非易失存储介质的上述存盘标志,并判断该存盘标志是否为未完成,如果是则进入步骤5,否则步骤结束;
步骤5,更新内存数据库,在更新过程中拒绝所有OMS后台(即OMS的网管中心)对该内存数据库的操作;
步骤6,更新完成后,将内存数据库中的数据重新存入非易失存储介质,转到步骤3。
其中,上述存盘标志可以是已完成或未完成,如果在该系统初始启动时,也可以先将存盘标志设置为初始化。
所述步骤5中,根据非易失存储介质中的数据更新内存数据库,该更新不与OMS后台交互。
所述步骤1具体为,OMS后台发起事务操作,数据以文件或消息的方式传送到OMS前台,而后提交到内存数据库。
所述步骤1中,如果数据以消息的方式传送,则将其维护信息存放在保留内存中或非易失存储介质的配置文件中作备份,该数据的存储过程完成后,清除上述维护信息。
综上所述,本发明的有益效果在于,本发明可以同时保证事务处理的完整性和实时性,易于处理实时性要求较高的应用,保证数据能够完整实时地更新,不会因系统的故障、复位等异常而破坏上述操作,从而增加内存数据库的容灾性。
附图说明
图1是本发明一较佳实施例的内存数据库的事务管理方法流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步地介绍,但不作为对本发明的限定。
本发明的原理为:在非易失存储介质中设置存盘标志,OMS后台将数据提交到内存数据库之后,直接回应事务提交完成,然后将上述数据从内存数据库存入非易失存储介质,用上述存盘标志来记录存盘是否成功,如果系统出现故障,通过该存盘标志即可重新自动存盘。这样可以保证整个过程既在可接受的时间内完成,又不会受系统故障的破坏。
本发明的事务管理方法中的存盘标志设置操作可以包括以下步骤:
步骤11,系统初始启动时,在非易失存储介质上设置存盘标志Val为初始化;
步骤12,OMS后台更新内存数据库的数据,数据可以以文件或消息的方式传送到OMS前台,存入内存数据库,其中,可以根据文件传输协议(File Transfer Protocol,以下简称FTP)传送数据;
步骤13,内存数据库更新完成后,将存盘标志Val设置为未完成,同时开始将内存数据库的数据存入非易失存储介质;
步骤14,如果上述存储过程正常完成,则将存盘标志Val设置为已完成;如果在上述存储过程中出现异常情况,例如故障、意外中断或复位,则不改动上述存盘标志Val,其仍为未完成。
本发明的内存数据库的事务管理方法可以通过系统启动操作的步骤详细说明,如图1所示,其包括以下步骤:
步骤21,系统上电启动,根据存盘标志Val判断上一次存盘的状态;
步骤22,如果上述存盘标志Val为初始化或已完成,则表示上次存盘正常,转入步骤23;如果上述存盘标志Val为未完成,则说明上次存盘过程未完成,转到步骤25;
步骤23,OMS后台发起事务操作,更新内存数据库的数据;
步骤24,更新完成后将存盘标志Val设置为未完成,将上述数据存储到非易失存储介质,转到步骤27;
步骤25,重新更新内存数据库,该更新不用和OMS后台交互,根据非易失存储介质中的数据更新内存数据库;
步骤26,更新完成后将内存数据库中的数据存储到非易失存储介质;
步骤27,如果存储过程正常完成,则设置上述存盘标志Val为已完成;如果在存储过程中系统出现异常,例如故障、复位等,则停止存储过程并保持存盘标志Val为未完成,流程结束。
在所述步骤12中,如果数据是以消息的方式传送,则将此操作的维护信息保存在保留内存或非易失存储介质的配置文件中做备份,待该更新操作完成后清除保存的维护信息;采用保留内存是由于在系统非掉电启动时,存放在保留内存中的数据不会被破坏;采用非易失存储介质的配置文件备份文件是由于有些操作系统不提供保留内存或者由于某些原因而破坏保存在保留内存中的数据,例如某些操作系统会掉电启动,这种情况下保存在保留内存中的数据将被破坏,因此可以将上述维护信息保存在相对稳定的非易失存储介质的配置文件中。因为配置文件较小,所以读写速度较快,一定程度上可以代替保留内存的方式。
以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;如果不脱离本发明的精神和范围,对本发明进行修改或者等同替换的,均应涵盖在本发明的权利要求的保护范围当中。
Claims (5)
1.一种内存数据库的事务管理方法,其特征在于包括以下步骤:
步骤1,操作维护子系统后台将数据提交到内存数据库;
步骤2,设置非易失存储介质中预设的存盘标志为未完成,将内存数据库中的数据存入上述非易失存储介质;
步骤3,当内存数据库中的数据存入上述非易失存储介质的存储过程完成后,将上述存盘标志设置为已完成。
2、根据权利要求1所述的事务管理方法,其特征在于所述方法还包括:
步骤4,系统启动时,读取非易失存储介质的上述存盘标志,并判断该存盘标志是否为未完成,如果是则进入步骤5,否则步骤结束;
步骤5,更新内存数据库,在更新过程中拒绝所有操作维护子系统后台对该内存数据库的操作;
步骤6,更新完成后,内存数据库中的数据重新存入非易失存储介质,转到步骤3。
3.根据权利要求2所述的事务管理方法,其特征在于所述步骤5中,根据非易失存储介质中的数据更新内存数据库,该更新不与操作维护子系统后台交互。
4.根据权利要求3所述的事务管理方法,其特征在于所述步骤1具体为,操作维护子系统后台发起事务操作,数据以文件或消息的方式传送到操作维护子系统前台,而后提交到内存数据库。
5.根据权利要求4所述的事务管理方法,其特征在于所述步骤1中,如果数据以消息的方式传送,则将其维护信息存放在保留内存中或非易失存储介质的配置文件中作备份,该数据的存储过程完成后,清除上述存放的维护信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710103758 CN101051324A (zh) | 2007-05-23 | 2007-05-23 | 一种内存数据库的事务管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710103758 CN101051324A (zh) | 2007-05-23 | 2007-05-23 | 一种内存数据库的事务管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101051324A true CN101051324A (zh) | 2007-10-10 |
Family
ID=38782736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710103758 Pending CN101051324A (zh) | 2007-05-23 | 2007-05-23 | 一种内存数据库的事务管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101051324A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587476B (zh) * | 2008-05-22 | 2012-02-08 | 中兴通讯股份有限公司 | 一种实现分布式存储的内存数据库系统及应用 |
CN102934089A (zh) * | 2010-06-17 | 2013-02-13 | 微软公司 | 针对文件的错误检测 |
CN102929983A (zh) * | 2012-10-18 | 2013-02-13 | 京信通信系统(中国)有限公司 | 嵌入式数据库同步到flash数据库的方法和装置 |
US8996829B2 (en) | 2009-12-11 | 2015-03-31 | Microsoft Technology Licensing, Llc | Consistency without ordering dependency |
CN105117308A (zh) * | 2015-09-29 | 2015-12-02 | 联想(北京)有限公司 | 一种数据处理方法、装置和系统 |
CN106293678A (zh) * | 2015-06-09 | 2017-01-04 | 北京京东尚科信息技术有限公司 | 一种管理应用服务的变量的方法和系统 |
US9563487B2 (en) | 2011-08-11 | 2017-02-07 | Microsoft Technology Licensing, Llc. | Runtime system |
CN106959969A (zh) * | 2016-01-12 | 2017-07-18 | 恒生电子股份有限公司 | 一种数据处理方法及装置 |
CN108279762A (zh) * | 2018-01-22 | 2018-07-13 | 北京计算机技术及应用研究所 | 基于硬件保护的事务处理方法 |
CN110515927A (zh) * | 2019-08-28 | 2019-11-29 | 中国工商银行股份有限公司 | 数据处理方法及其系统、电子设备和介质 |
US10635504B2 (en) | 2014-10-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | API versioning independent of product releases |
-
2007
- 2007-05-23 CN CN 200710103758 patent/CN101051324A/zh active Pending
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587476B (zh) * | 2008-05-22 | 2012-02-08 | 中兴通讯股份有限公司 | 一种实现分布式存储的内存数据库系统及应用 |
US8996829B2 (en) | 2009-12-11 | 2015-03-31 | Microsoft Technology Licensing, Llc | Consistency without ordering dependency |
US9430160B2 (en) | 2009-12-11 | 2016-08-30 | Microsoft Technology Licensing, Llc | Consistency without ordering dependency |
US9448869B2 (en) | 2010-06-17 | 2016-09-20 | Microsoft Technology Licensing, Llc | Error detection for files |
CN102934089A (zh) * | 2010-06-17 | 2013-02-13 | 微软公司 | 针对文件的错误检测 |
US8793440B2 (en) | 2010-06-17 | 2014-07-29 | Microsoft Corporation | Error detection for files |
US8984233B2 (en) | 2010-06-17 | 2015-03-17 | Microsoft Corporation | Error detection for files |
CN102934089B (zh) * | 2010-06-17 | 2015-04-01 | 微软公司 | 针对文件的错误检测 |
US9563487B2 (en) | 2011-08-11 | 2017-02-07 | Microsoft Technology Licensing, Llc. | Runtime system |
CN102929983B (zh) * | 2012-10-18 | 2016-11-16 | 京信通信系统(中国)有限公司 | 嵌入式数据库同步到flash数据库的方法和装置 |
CN102929983A (zh) * | 2012-10-18 | 2013-02-13 | 京信通信系统(中国)有限公司 | 嵌入式数据库同步到flash数据库的方法和装置 |
US10635504B2 (en) | 2014-10-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | API versioning independent of product releases |
CN106293678A (zh) * | 2015-06-09 | 2017-01-04 | 北京京东尚科信息技术有限公司 | 一种管理应用服务的变量的方法和系统 |
CN106293678B (zh) * | 2015-06-09 | 2020-11-24 | 北京京东尚科信息技术有限公司 | 一种管理应用服务的变量的方法和系统 |
CN105117308A (zh) * | 2015-09-29 | 2015-12-02 | 联想(北京)有限公司 | 一种数据处理方法、装置和系统 |
CN105117308B (zh) * | 2015-09-29 | 2020-06-23 | 联想(北京)有限公司 | 一种数据处理方法、装置和系统 |
CN106959969A (zh) * | 2016-01-12 | 2017-07-18 | 恒生电子股份有限公司 | 一种数据处理方法及装置 |
CN106959969B (zh) * | 2016-01-12 | 2020-07-17 | 恒生电子股份有限公司 | 一种数据处理方法及装置 |
CN108279762A (zh) * | 2018-01-22 | 2018-07-13 | 北京计算机技术及应用研究所 | 基于硬件保护的事务处理方法 |
CN110515927A (zh) * | 2019-08-28 | 2019-11-29 | 中国工商银行股份有限公司 | 数据处理方法及其系统、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101051324A (zh) | 一种内存数据库的事务管理方法 | |
US8074035B1 (en) | System and method for using multivolume snapshots for online data backup | |
US7861047B2 (en) | Storage device and information management system | |
US7725440B2 (en) | Restoring a database using fuzzy snapshot techniques | |
TWI494762B (zh) | 用於管理快取資料及元資料的方法、電腦儲存媒體與電腦 | |
US8583885B1 (en) | Energy efficient sync and async replication | |
US6757792B2 (en) | Storage system and method of configuring the storage system | |
US7350043B2 (en) | Continuous data protection of block-level volumes | |
US7386695B2 (en) | Storage system with multiple copy targeting | |
JP4248510B2 (ja) | 計算機システム、ディスク装置およびデータ更新制御方法 | |
US8214610B2 (en) | Managing backup device metadata in a high availability disk subsystem | |
US20090216973A1 (en) | Computer system, storage subsystem, and data management method | |
JP4808275B2 (ja) | ネットワークブートシステム | |
US20080201544A1 (en) | Storage system | |
US7657720B2 (en) | Storage apparatus and method of managing data using the storage apparatus | |
CN101231604B (zh) | 用于集群服务器数据的卷级恢复的设备、系统及方法 | |
CN105550062B (zh) | 基于持续数据保护与时间点浏览恢复的数据回流方法 | |
CN101441582A (zh) | 计算机数据对象的备份和恢复方法及实现该方法的系统和程序产品 | |
US20070294568A1 (en) | Storage system and method of managing data using the same | |
CN1776676A (zh) | 管理存储子系统中元数据的方法、系统和计算机程序产品 | |
US8019953B2 (en) | Method for providing atomicity for host write input/outputs (I/Os) in a continuous data protection (CDP)-enabled volume using intent log | |
JP2001337792A (ja) | ディスクアレイ装置 | |
JP3136258B2 (ja) | ディスク更新ログ記録方式 | |
CN105550063A (zh) | 一种基于持续数据保护与kvm虚拟化的容灾方法 | |
US20040225914A1 (en) | Method, apparatus and program storage device for allowing continuous availability of data during volume set failures in a mirrored environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |