一种存储物理数据表的方法及装置制造方法及图纸

技术编号:19023360 阅读:54 留言:0更新日期:2018-09-26 19:03
本申请提供一种存储物理数据表的方法及装置,涉及存储技术领域,能够节省存储物理数据表的设备的物理存储空间,从而提高该设备的物理存储空间的使用率。该方法包括:获取第一逻辑数据表中的第一表项的第一数据项;并将第一逻辑数据表中的第一表项的第一数据项存储至物理数据表的第一位置;以及获取第二逻辑数据表中的第一表项的第一数据项;并将第二逻辑数据表中的第一表项的第一数据项存储至物理数据表的不同于第一位置的第二位置。

【技术实现步骤摘要】
一种存储物理数据表的方法及装置
本申请涉及存储
,尤其涉及一种存储物理数据表的方法及装置。
技术介绍
随着网络的不断发展,处理器在存储数据表(例如哈希表或者线性表等)时,对数据表的物理存储空间的需求越来越高。以哈希表为例,如图1所示,处理器可以将一个所需物理存储空间较大的哈希表在逻辑上划分成多个逻辑子表(如图1中A1、A2、A3和A4)进行存储,并为每个非空的逻辑子表(例如图1中的A1、A2和A3)分别分配物理存储空间进行存储。其中,非空的逻辑子表是指逻辑子表中存在至少一个数据项。然而,由于哈希表的随机性,哈希表中数据项的分布可能比较分散,即使某个逻辑子表,例如图1所示的A2或者A3中只有一个数据项,也需要为整个逻辑子表分配物理存储空间。如此浪费了物理存储空间。
技术实现思路
本申请提供一种存储物理数据表的方法及装置,能够节省存储物理数据表的设备的物理存储空间,从而提高该设备的物理存储空间的使用率。为达到上述目的,本申请采用如下技术方案:第一方面,提供一种存储物理数据表的方法,该方法包括:获取第一逻辑数据表中的第一表项的第一数据项,并将该第一逻辑数据表中的第一表项的第一数据项存储至物理数据表的第一位置;以及获取第二逻辑数据表中的第一表项的第一数据项,并将该第二逻辑数据表中的第一表项的第一数据项存储至该物理数据表的不同于该第一位置的第二位置。本申请提供的存储物理数据表的方法,由于可以将多个逻辑数据表(例如上述第一逻辑数据表和第二逻辑数据表)中的表项的数据项(例如上述第一逻辑数据表中的第一表项的第一数据项和第二逻辑数据表中的第一表项的第一数据项)存储到一个物理数据表中,因此可以只为该多个逻辑数据表中的表项中存在的数据项(即上述存储至物理数据表中的数据项)分配物理存储空间,而无需为整个逻辑数据表分配物理存储空间,从而能够节省存储物理数据表的设备的物理存储空间,进而提高该设备的物理存储空间的使用率。在第一方面的第一种可选的实现方式中,本申请提供的存储物理数据表的方法还可以包括:获取第三逻辑数据表中的第一表项的第一数据项,并将该第三逻辑数据表中的第一表项的第一数据项存储至上述物理数据表的第三位置。其中,该第三位置位于该物理数据表中的第一表项,该第三位置不同于该第一位置。如此,可以将不同逻辑数据表(例如第一逻辑数据表和第三逻辑数据表)中的表项的数据项存储至物理数据表中的同一表项。在第一方面的第二种可选的实现方式中,本申请提供的存储物理数据表的方法还可以包括:获取上述第一逻辑数据表中的第一表项的第二数据项,并将该第一逻辑数据表中的第一表项的第二数据项存储至上述物理数据表的第四位置。其中,该第四位置位于该物理数据表中的第一表项,该第四位置不同于上述第一位置和上述第三位置。如此,可以将同一逻辑数据表中的同一表项的不同数据项存储至物理数据表中的同一表项,即物理数据表中的一个表项可以用于存储同一逻辑数据表中的同一表项的不同数据项。通过第一方面的第二种可选的实现方式,可以使得每个逻辑数据表中的同一表项的所有数据项均存储至物理数据表中与该表项的排列序号相同的表项,如此,在查询某个数据项时,可以按照现有的查询数据项的机制查询该数据项,例如可以根据该数据项在其所属的逻辑数据表中的表项查找到该数据项在物理数据表中所在的表项,然后再在该表项中查找该数据项。也就是说,采用本专利技术实施例提供的存储物理数据表的方法,可以无需修改现有的在数据表中查询数据项的机制。如此,本申请提供的存储物理数据表的方法,可以在兼容现有查询数据项的机制的基础上,节省存储物理数据表的设备的物理存储空间,提高该设备的物理存储空间的使用率。第二方面,提供一种存储物理数据表的装置,该装置包括获取单元和存储单元。其中,获取单元用于获取第一逻辑数据表中的第一表项的第一数据项;存储单元用于将获取单元获取的该第一逻辑数据表中的第一表项的第一数据项存储至物理数据表的第一位置。获取单元还用于获取第二逻辑数据表中的第一表项的第一数据项;存储单元还用于将获取单元获取的该第二逻辑数据表中的第一表项的第一数据项存储至该物理数据表的不同于该第一位置的第二位置。在第二方面的第一种可选的实现方式中,上述获取单元还用于获取第三逻辑数据表中的第一表项的第一数据项;上述存储单元还用于将获取单元获取的该第三逻辑数据表中的第一表项的第一数据项存储至该物理数据表的第三位置。该第三位置位于该物理数据表中的第一表项,该第三位置不同于上述第一位置。在第二方面的第二种可选的实现方式中,上述获取单元还用于获取上述第一逻辑数据表中的第一表项的第二数据项;上述存储单元还用于将获取单元获取的该第一逻辑数据表中的第一表项的第二数据项存储至该物理数据表的第四位置。该第四位置位于该物理数据表中的第一表项,该第四位置不同于上述第一位置和上述第三位置。可选地,在上述第一方面和第二方面中,上述第一位置位于上述物理数据表中的第一表项,上述第二位置位于该物理数据表中的第二表项。即该第一位置和该第二位置位于该物理数据表中的不同表项。可选地,在上述第一方面和第二方面中,上述第一位置还存储有用于标识上述第一逻辑数据表的第一标识;上述第二位置还存储有用于标识上述第二逻辑数据表的第二标识。可选地,在上述第一方面和第二方面中,上述用于标识第一逻辑数据表的第一标识和用于标识第二逻辑数据表的第二标识还存储于执行本申请提供的存储物理数据表的方法的装置(即存储物理数据表的装置)中。可选地,该第一标识和第二标识存储于该装置的存储器、中央处理器(centralprocessingunit,CPU)或网络处理器(networkprocessor,NP)中。本申请中,通过存储第一逻辑数据表的标识和第二逻辑数据表的标识,能够区分物理数据表中存储的不同数据项(这些数据项可以为同一表项的,也可以为不同表项的)所属的逻辑数据表。可以理解,本申请中,上述第三位置还可以还存储有用于标识上述第三逻辑数据表的第三标识;上述第四位置还可以还存储有用于标识上述第一逻辑数据表的第一标识。本申请中,如果物理数据表中的某个表项不足以存储多个逻辑数据表中排列序号相同的表项的数据项,那么本申请在存储该多个逻辑数据表中的各个数据项时,可以设置或者创建多个物理数据表,并将该多个逻辑数据表中的各个数据项分别按照存储顺序依次存储至该多个物理数据表中的相应物理数据表中。第三方面,提供一种存储物理数据表的装置,该装置包括处理器和与处理器耦合连接的存储器。该处理器用于执行上述第一方面或其任意一种可选的实现方式中的存储物理数据表的方法,该存储器用于存储该物理数据表。第四方面,提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当该计算机指令在存储物理数据表的装置上运行时,使得该装置执行上述第一方面或其任意一种可选的实现方式中的存储物理数据表的方法。对第二方面、第二方面的任意一种可选的实现方式、第三方面以及第四方面的技术效果以及其他内容可以参见上述对第一方面和其任意一种可选的实现方式的技术效果以及其他内容的相关描述,此处不再赘述。附图说明图1为现有技术提供的数据表的结构示意图;图2为本专利技术实施例提供的通信系统的架构示意图;图3为本专利技术实施例提供的路由器的硬件示意图;图4为本专利技术实施例提供本文档来自技高网...

【技术保护点】
1.一种存储物理数据表的方法,其特征在于,包括:获取第一逻辑数据表中的第一表项的第一数据项;将所述第一逻辑数据表中的第一表项的第一数据项存储至物理数据表的第一位置;获取第二逻辑数据表中的第一表项的第一数据项;将所述第二逻辑数据表中的第一表项的第一数据项存储至所述物理数据表的第二位置,所述第二位置不同于所述第一位置。

【技术特征摘要】
1.一种存储物理数据表的方法,其特征在于,包括:获取第一逻辑数据表中的第一表项的第一数据项;将所述第一逻辑数据表中的第一表项的第一数据项存储至物理数据表的第一位置;获取第二逻辑数据表中的第一表项的第一数据项;将所述第二逻辑数据表中的第一表项的第一数据项存储至所述物理数据表的第二位置,所述第二位置不同于所述第一位置。2.根据权利要求1所述的方法,其特征在于,所述第一位置位于所述物理数据表中的第一表项,所述第二位置位于所述物理数据表中的第二表项。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:获取第三逻辑数据表中的第一表项的第一数据项;将所述第三逻辑数据表中的第一表项的第一数据项存储至所述物理数据表的第三位置,所述第三位置位于所述物理数据表中的第一表项,所述第三位置不同于所述第一位置。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:获取所述第一逻辑数据表中的第一表项的第二数据项;将所述第一逻辑数据表中的第一表项的第二数据项存储至所述物理数据表的第四位置,所述第四位置位于所述物理数据表中的第一表项,所述第四位置不同于所述第一位置和所述第三位置。5.根据权利要求1至4任意一项所述的方法,其特征在于,所述第一位置还存储有第一标识,所述第一标识用于标识所述第一逻辑数据表;所述第二位置还存储有第二标识,所述第二标识用于标识所述第二逻辑数据表。6.一种存储物理数据表的装置,其特征在于,包括获取单元和存储单元,所述获取单元,用于获取第一逻辑数据表中的第一表项的第一数据项;所述存储单元,用于将所述获取单元获取的所述第一逻辑数据表中的第一表项的第一...

【专利技术属性】
技术研发人员:袁赛王小忠
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1