增量式索引列表的生成方法及装置的制造方法

文档序号:9844147阅读:657来源:国知局
增量式索引列表的生成方法及装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别是涉及一种增量式索引列表的生成方法及装置。
【背景技术】
[0002]索引是对数据库表中一列或多列的值进行排序的一种结构。由于使用索引可快速访问数据库表中的特定信息,因此可以基于数据库表中的单列或多列创建索引,形成索引列表。通过创建的索引列表查找相应数据,加快数据的检索速度,同时也可以提高系统的性會K。
[0003]由于数据库中的数据在不断增加,为了能够满足用户的需求,需要对增加的数据创建相应的索引项,进一步对索引列表进行更新。
[0004]现有技术中,当数据库中出现新增数据时,是对数据库中的所有数据再重新创建对应的索引,生成新的索引列表。由于该方法是对数据库中的所有数据创建索引,因此创建索引的过程耗费的时间长,效率低,并且会占用系统较多的资源。另外,由于数据库中的数据更新速度非常快,数据库中不断出现新的数据,一旦数据库中出现新的数据,就需要对数据库中的所有数据创建索引,因此创建索引的过程是多次重复的过程,多次重复的为数据库中所有数据创建索引,会加重系统的负担,甚至可能导致系统瘫痪。

【发明内容】

[0005]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的增量式索引列表的生成方法及装置。
[0006]基于本发明的一个方面,提供了一种增量式索引列表的生成方法,包括:
[0007]在按照时间顺序存储有各索引项信息的原索引列表中,读取所述索引列表中记载的末次索引的时间;
[0008]创建独立的增量索引列表,采用所述原索引列表相同的存储格式,对以所述末次索引的时间为起始点的新增索引数据进行顺序存储;
[0009 ]结合所述原索引列表和新增的增量索引列表,生成新的索引列表。
[0010]可选地,所述生成新的索引列表之后,还包括:
[0011]使用所述新的索引列表替换所述原索引列表。
[0012]可选地,所述方法还包括:读取所述原索引列表的末次索引项;
[0013]结合所述原索引列表和新增的增量索引列表,生成新的索引列表,具体包括:以所述原索引列表中的末次索引项为结合点,结合所述原索引列表和所述新增的增量索引列表,生成新的索引列表。
[0014]可选地,所述创建独立的增量索引列表,具体包括:采用与所述原索引列表相同存储格式的状态表作为所述增量索引列表。
[0015]可选地,结合所述原索引列表和所述新增的增量索引列表,生成新的索引列表,具体包括:
[0016]建立第一中间文件textl和第二中间文件text2 ;
[0017]在所述第二中间文件text2中写入所述新增的增量索引列表;
[0018]将所述第二中间文件text2的内容赋予所述第一中间文件textl;
[0019]在承载所述原索引列表的索引文件textO中按时间顺序继续写入所述第一中间文件textl的内容,以生成所述新的索引列表。
[0020]可选地,所述第一中间文件textl和所述第二中间文件text2的起始状态均为空白状态。
[0021]可选地,还包括:
[0022]所述新的索引列表生成之后,删除所述第二中间文件text2中的内容;
[0023]若出现另一个新增的增量索引列表,则继续将该增量索引列表的内容写入已删除内容的所述第二中间文件text2。
[0024]可选地,还包括:
[0025]若所述新的索引列表生成失败,则将所述新的索引列表回退至未结合所述新增的增量索引列表的原索引列表状态。
[0026]基于本发明的另一个方面,还提供了一种增量式索引列表的生成装置,包括:
[0027]读取模块,适于在按照时间顺序存储有各索引项信息的原索引列表中,读取所述索引列表中记载的末次索引的时间;
[0028]仓I键模块,适于创建独立的增量索引列表,采用所述原索引列表相同的存储格式,对以所述末次索引的时间为起始点的新增索引数据进行顺序存储;
[0029]生成模块,适于结合所述原索引列表和新增的增量索引列表,生成新的索引列表。
[0030]可选地,所述装置还包括:
[0031]替换模块,适于使用所述新的索引列表替换所述原索引列表。
[0032]可选地,所述读取模块还适于:读取所述原索引列表的末次索引项;
[0033]所述生成模块还适于:以所述原索引列表中的末次索引项为结合点,结合所述原索引列表和所述新增的增量索引列表,生成新的索引列表。
[0034]可选地,所述创建模块还适于:采用与所述原索引列表相同存储格式的状态表作为所述增量索引列表。
[0035]可选地,所述生成模块还适于:
[0036]建立第一中间文件textl和第二中间文件text2 ;
[0037]在所述第二中间文件text2中写入所述新增的增量索引列表;
[0038]将所述第二中间文件text2的内容赋予所述第一中间文件textl;
[0039]在承载所述原索引列表的索引文件textO中按时间顺序继续写入所述第一中间文件textl的内容,以生成所述新的索引列表。
[0040]可选地,所述第一中间文件textl和所述第二中间文件text2的起始状态均为空白状态。
[0041 ] 可选地,所述生成模块还适于:
[0042]所述新的索引列表生成之后,删除所述第二中间文件text2中的内容;
[0043]若出现另一个新增的增量索引列表,则继续将该增量索引列表的内容写入已删除内容的所述第二中间文件text2。
[0044]可选地,所述装置还包括:
[0045]回退模块,适于若所述新的索引列表生成失败,则将所述新的索引列表回退至未结合所述新增的增量索引列表的原索引列表状态。
[0046]采用本发明实施例中的方法,当数据库中的数据发生变化后,读取索引列表中记载的末次索引的时间,以末次索引的时间为起始点查找出新增索引数据,并为新增索引数据创建增量索引列表,再将原索引列表与增量索引列表进行结合,生成新的索引列表。与现有技术相比,当数据库中出现新增索引数据时,本发明实施例中仅仅是为新增索引数据创建索引,不再是为数据库中的所有数据创建索引,由于新增索引数据的数量要远远小于与数据库中所有数据的数量,因此为新增索引数据创建索引耗费的时间短,提高了效率,并且为新增数据创建索引的过程较为简单,不容易出现错误,保证了准确率。另外,当数据库中的数据更新的速度较快时,数据库中不断出现新增索引数据,因此需要多次重复地为新增索引数据创建索引,而本发明实施例仅为新增索引数据创建索引,由于新增索引数据的数量相对较少,避免了因多次重复生成大量数据对应的索引造成的系统瘫痪。
[0047]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
[0048]根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
【附图说明】
[0049]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0050]图1示出了根据本发明一个实施例的增量式索引列表的生成方法的处理流程示意图;
[0051]图2示出了根据本发明一个实施例的生成新的索引列表的处理流程示意图;
[0052]图3示出了根据本发明一个实施例的原索引列表和增量索引列表结合的处理流程示意图;
[0053]图4示出了根据本发明一个实施例的新的索引列表生成失败的处理流程示意图;
[0054]图5示出了根据本发明一个实施例的新的索引列表生成失败后的原索引列表和增量索引列表再次结合的处理流程示意图;
[0055]图6示出了根据本发明一个实施例的增量式索引列表的生成装置的结构示意图;以及
[0056]图7示出了根据本发明一个实施例的增量式索引列表的生成装置的另一种结构示意图。
【具体实施方式】
[0057]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。<
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1