[发明专利]一种创建数据库索引及其查询的方法有效
申请号: | 201410583221.6 | 申请日: | 2014-10-27 |
公开(公告)号: | CN104268298B | 公开(公告)日: | 2018-05-04 |
发明(设计)人: | 徐田田;齐朗晔;王杰;李少利;李江伟 | 申请(专利权)人: | 中电海康集团有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 杭州之江专利事务所(普通合伙)33216 | 代理人: | 张慧英 |
地址: | 311121 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 创建 数据库 索引 及其 查询 方法 | ||
技术领域
本发明涉及数据库领域,尤其涉及一种创建数据库索引及其查询的方法。
背景技术
在很多行业中,每时每刻都产生大量数据,从而形成了对海量数据的存储性能需求,而随着各行业信息系统的发展,又产生了对这些海量历史数据的查询性能需求,例如查询某一特定标示id在某一时间段的所有记录,从而要求我们为该标示id以及时间字段建立相应的索引满足快速查询的需求。同时由于在不断产生新的数据要求导入进存储系统中,这样还要求数据库系统有极高的导入速度。
而索引是对数据库表中一列或多列的值进行排序的一种结构。其方式为二叉树或者哈希查找,避免扫描全表的情况。更通俗来讲,索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。在一张有大量记录的表中,如果没有创建查询条件的索引时,其搜索方式就是全表搜索,将所有表中记录与查询条件做比较,再返回查询结果,但是这样会消耗大量时间以及磁盘IO操作;另一种方式就是合理创建索引,先在索引中查找符合查询条件的索引值,再通过索引值对应的行号快速找到满足查询条件的结果集,这样对查询性能会有很大帮助。
对于标示id+数据采样时间这种比较普适性的查询场景,可以分别建立标示id和数据采样时间的唯一性索引或者建立这两个字段的联合索引以提高查询性能及保证数据唯一性,但是随着单表数据容量的增大,数据库系统需要维护大量的索引,创建过多的索引势必会降低存储的性能。
例如在某张数据记录表中有标示id、采样时间以及其他一些字段等。其中查询条件为标示id和采样时间,如果对标示id及采样时间字段分别创建索引或者创建两个字段的联合索引固然能提升查询性能,但是随着数据量的增大数据库系统要维护大量的索引,不能提高数据库增删改的性能,反而会影响其性能,基于这个原因我们提出了另一种创建索引的方法,该方法既能有效保证数据唯一性及查询速度又能降低过多的索引对存储带来的负面效应。
发明内容
本发明为克服上述的不足之处,目的在于提供一种创建数据库索引及其查询的方法,该方法依据标示id和时间time可以唯一确定一条数据记录的思想,通过在表中预留一个扩展字段,并为该扩展字段创建唯一性索引。数据存储时,扩展字段的值是由标示id和时间time两个字段的值拼接得来,与其他字段一起存入数据库。数据查询时,将查询参数标示id和时间time按与存储相同的方式拼接成扩展字段的值,将扩展字段作为SQL参数进行数据查询。该方法不仅满足了数据的唯一性要求,提高了查询效率,而且还保证了数据存入数据库的速度。
本发明是通过以下技术方案达到上述目的:一种创建数据库索引及其查询的方法,包括如下步骤:
(1)创建数据记录表并预留扩展字段;
(2)为扩展字段创建唯一性索引;
(3)为数据存储对象中各属性赋值;
(4)将标示id和数据采样时间拼接生成数据存储对象中扩展字段的属性值;
(5)将扩展字段属性值与其他字段的属性值作为一条数据记录存入数据库;
(6)通过标示id和数据采样时间拼接得到需要查询的扩展字段的属性值;
(7)利用扩展字段属性值进行数据查询,得到数据记录。
作为优选,所述扩展字段的类型是十进制长度为20的长整型。
作为优选,所述步骤(4)与步骤(6)对标示id和数据采样时间的拼接方法相同。
作为优选,所述的拼接过程步骤如下:
1)将数据采样时间转换为数据采样时间代表的秒数量,秒数量的类型是长度为10位的长整型;
2)将标示id转换为长度不超过10位的长整型数,将长整型数乘以10的10次方;
3)将步骤1)和步骤2)的结果进行相加得到扩展字段的属性值。
作为优选,所述的步骤(7)利用扩展字段属性值进行数据查询为将扩展字段值作为SQL的参数进行数据查询。
本发明的有益效果在于:(1)本发明仅对一个字段建立唯一性索引,不仅有效保证了数据唯一性及查询速度,而且还避免了过多索引对存储带来的负面效应;(2)本发明在同时进行数据库存入和查询的过程中,将关键字段拼接为一个字段,保证了数据存入数据库的速度。
附图说明
图1是本发明的整体结构示意图;
图2是本发明数据存储的流程图;
图3是本发明数据记录表查询的流程图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中电海康集团有限公司,未经中电海康集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410583221.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:托板与机身外形贴合调整机构
- 下一篇:一种家居智能用烘干式储物箱