结构化查询语言的执行方法、装置、服务器和存储介质制造方法及图纸

技术编号:19857841 阅读:23 留言:0更新日期:2018-12-22 11:46
本发明专利技术实施例涉及数据库领域,公开了一种结构化查询语言的执行方法、装置、服务器和存储介质。本发明专利技术中,该方法包括:根据SQL语句,从热数据表中查询数据;其中,热数据表中存储有全表中的热数据;根据从热数据表中查询的数据,确定SQL语句的执行结果。该实现方式减少了SQL语句的执行装置需要查询的数据量,提高了SQL语句的执行效率。

【技术实现步骤摘要】
结构化查询语言的执行方法、装置、服务器和存储介质
本专利技术实施例涉及数据库领域,特别涉及一种结构化查询语言的执行方法、装置、服务器和存储介质。
技术介绍
目前,随着计算机技术的飞速发展,数据库技术也在不断的更新升级,这其中就包括引入大数据技术。不断发展的云计算技术和大数据技术对数据库技术的发展起到了促进作用。其中,大数据技术的出现提高了数据库的管理能力,使得数据库管理更加智能化。数据库文件可以根据需要自定义格式,所以数据在数据库文件中的相应位置可以有不同的表示方法,但总体思路都是记录数据元素在数据库文件中的确切位置,后续查找该数据元素时,不需要遍历数据库文件,可以借助记录的确切位置快速定位数据元素,从而达到加快查找的目的。数据库索引基于数据库存储的实体文件,即上面所说的“数据库文件中的相应位置”。然而,专利技术人发现现有技术中至少存在如下问题:现有的列式数据存储通过字典表压缩数据,经过字典表进行数据压缩后,表中的字符串才都变成数字。目前,很多技术人员通过创建索引的方式提高SQL语句的执行速度。然而使用数据索引后,对于出现频率较高的数据,仍然需要不断的从多表中关联查询,SQL语句的执行速度仍然很慢,执行效率过低。
技术实现思路
本专利技术实施方式的目的在于提供一种结构化查询语言的执行方法、装置、服务器和存储介质,减少了SQL语句的执行装置需要查询的数据量,提高了SQL语句的执行效率。为解决上述技术问题,本专利技术的实施方式提供了一种结构化查询语言(StructuredQueryLanguage,SQL)语句的执行方法,包括以下步骤:根据SQL语句,从热数据表中查询数据;其中,热数据表中存储有全表中的热数据;根据从热数据表中查询得到的数据,确定SQL语句的执行结果。本专利技术的实施方式还提供了一种结构化查询语言SQL语句的执行装置,包括:查询模块和确定模块;查询模块用于根据SQL语句,从热数据表中查询数据;其中,热数据表中存储有全表中的热数据;确定模块用于根据从热数据表中查询得到的数据,确定SQL语句的执行结果。本专利技术的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上述实施方式提及的结构化查询语言SQL语句的执行方法。本专利技术的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述实时方式提及的结构化查询语言SQL语句的执行方法。本专利技术实施方式相对于现有技术而言,由于热数据表中存储有全表中的热数据,即查询频率较高的数据,从查询频率较高的数据中查询出符合SQL语句的过滤条件的数据的概率更高,所以,SQL语句的执行装置优先查询热数据表,可以减少SQL语句的执行装置查询的数据量,也可以减少在多表之间的关联查询的次数,提高SQL语句的执行效率。另外,根据从热数据表中查询得到的数据,确定SQL语句的执行结果,具体包括:判断从热数据表中查询得到的数据是否指示热数据表中的数据完全满足SQL语句中的过滤条件的所有要求;若确定是,将从热数据表中查询得到的数据作为SQL语句的执行结果,或,根据从热数据表中查询得到的数据,执行SQL语句的计算,确定SQL语句的执行结果;否则,根据SQL语句对应的字段,以及SQL语句中的过滤条件,从全表中查询数据,根据从全表中查询得到的数据,确定SQL语句的执行结果。该实现中,使得SQL语句的执行装置在热数据表中查询失败时,通过查询全表,确定SQL语句需要的数据。另外,根据SQL语句,从热数据表中查询数据,具体包括:根据SQL语句,确定SQL语句对应的字段;根据SQL语句对应的字段,更新热数据表的索引;根据更新后的热数据表的索引,从热数据表中查询符合SQL语句中的过滤条件的要求的数据。该实现中,根据更新后的热数据表的索引查询数据,使得SQL语句的执行装置中的输入数据更为精简,进一步缩短了SQL语句的执行时间。另外,根据SQL语句对应的字段,更新热数据表中的索引,具体包括:根据SQL语句对应的字段,更新热数据表中每个字段的使用频率;根据更新后的热数据表中每个字段的使用频率,更新热数据表的索引。另外,根据SQL语句,确定SQL语句对应的字段,具体包括:根据SQL语句,确定SQL语句的优化后的逻辑计划;根据优化后的逻辑计划,确定SQL语句对应的字段。该实现中,根据SQL语句的优化后的逻辑计划查询热数据表,进一步提高了SQL语句的执行效率。另外,在根据从热数据表中查询得到的数据,确定SQL语句的执行结果之后,SQL语句的执行方法还包括:根据从热数据表中查询得到的数据或从全表中查询得到的数据,更新热数据表中的热数据。另外,在根据从热数据表中查询得到的数据或从全表中查询得到的数据,更新热数据表中的热数据之后,SQL语句的执行方法还包括:根据更新后的热数据表中的热数据,更新热数据表的索引。该实现中,在热数据发生变化时,及时更新热数据表的索引,避免执行SQL语句的过程中由于索引位置不合适导致执行效率下降的情况。附图说明一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。图1是本专利技术的第一实施方式的SQL语句的执行方法的流程图;图2是本专利技术的第二实施方式的SQL语句的执行方法的流程图;图3是本专利技术的第三实施方式的SQL语句的执行装置的结构示意图;图4是本专利技术的第四实施方式的SQL语句的执行装置的结构示意图;图5是本专利技术的第五实施方式的服务器的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本专利技术各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。本专利技术的第一实施方式涉及一种SQL语句的执行方法,应用于SQL语句的执行装置,具体流程如图1所示,包括以下步骤:步骤101:根据SQL语句,从热数据表中查询数据。具体地说,热数据表中存储有全表中的热数据。全表是指数据库中存储的所有表格,热数据是指数据库的所有表格中查询频率较高的数据。其中,热数据表可以通过列式数据存储方式存储于SQL语句的执行装置中。步骤102:根据从热数据表中查询得到的数据,确定SQL语句的执行结果。具体地说,SQL语句的执行装置在热数据表中查询SQL语句需要的数据,并在确定从热数据表中查询的数据指示热数据表中的数据能够满足SQL语句中的过滤条件的所有要求后,将从热数据表中查询得到的数据作为SQL语句的执行结果,或,根据从热数据表中查询得到的数据,执行SQL语句的计算,确定SQL语句的执行结果。若SQL语句的执行装置确定从热数据表中查询的数据指示热数据表中的数据不能满足SQL语句中的过滤条件的所有要求,则可以发出提示信息,提示查询失败,或者,在全表中查询需要的数据,根据全表中查询得到的数据,确定SQL语句的执行结果。需要说明的是,本本文档来自技高网...

【技术保护点】
1.一种结构化查询语言SQL语句的执行方法,其特征在于,包括:根据SQL语句,从热数据表中查询数据;其中,所述热数据表中存储有全表中的热数据;根据从所述热数据表中查询得到的数据,确定所述SQL语句的执行结果。

【技术特征摘要】
1.一种结构化查询语言SQL语句的执行方法,其特征在于,包括:根据SQL语句,从热数据表中查询数据;其中,所述热数据表中存储有全表中的热数据;根据从所述热数据表中查询得到的数据,确定所述SQL语句的执行结果。2.根据权利要求1所述的SQL语句的执行方法,其特征在于,所述根据从所述热数据表中查询得到的数据,确定所述SQL语句的执行结果,具体包括:判断所述从所述热数据表中查询得到的数据是否指示所述热数据表中的数据能够满足所述SQL语句中的过滤条件的所有要求;若确定是,将所述从所述热数据表中查询得到的数据作为所述SQL语句的执行结果,或,根据所述从所述热数据表中查询得到的数据,执行所述SQL语句的计算,确定所述SQL语句的执行结果;否则,根据所述SQL语句对应的字段,以及所述SQL语句中的过滤条件,从全表中查询数据,根据从所述全表中查询得到的数据,确定所述SQL语句的执行结果。3.根据权利要求1所述的SQL语句的执行方法,其特征在于,所述根据SQL语句,从热数据表中查询数据,具体包括:根据所述SQL语句,确定所述SQL语句对应的字段;根据所述SQL语句对应的字段,更新所述热数据表的索引;根据更新后的所述热数据表的索引,从所述热数据表中查询符合所述SQL语句中的过滤条件的要求的数据。4.根据权利要求3所述的SQL语句的执行方法,其特征在于,所述根据所述SQL语句对应的字段,更新所述热数据表中的索引,具体包括:根据所述SQL语句对应的字段,更新所述热数据表中每个字段的使用频率;根据更新后的所述热数据表中每个字段的使用频率,更新所述热数据表的索引。5.根据权利要求3所述的SQL语句的执行方法,其...

【专利技术属性】
技术研发人员:沈静夏正勋
申请(专利权)人:中兴飞流信息科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1