CN111382179B - 数据处理方法、装置及电子设备 - Google Patents

数据处理方法、装置及电子设备 Download PDF

Info

Publication number
CN111382179B
CN111382179B CN202010164154.XA CN202010164154A CN111382179B CN 111382179 B CN111382179 B CN 111382179B CN 202010164154 A CN202010164154 A CN 202010164154A CN 111382179 B CN111382179 B CN 111382179B
Authority
CN
China
Prior art keywords
database
data
memory table
memory
server
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.)
Active
Application number
CN202010164154.XA
Other languages
English (en)
Other versions
CN111382179A (zh
Inventor
杨杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202010164154.XA priority Critical patent/CN111382179B/zh
Publication of CN111382179A publication Critical patent/CN111382179A/zh
Application granted granted Critical
Publication of CN111382179B publication Critical patent/CN111382179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据处理方法、装置及电子设备,涉及数据库技术领域,该方法应用于服务器,服务器上运行有数据库,该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间,且该缓存空间用于存储该内存表的数据;该方法包括:接收与该内存表的数据相关联的数据访问请求;通过该数据库,从缓存空间中访问该内存表的数据。本发明通过在数据库中加载内存表,并在内存中缓存内存表对应的数据,当需要访问数据库中的目标数据时,首先在数据库中查找与目标数据关联的内存表,进而根据该内存表,直接从内存中访问预先缓存的该内存表的数据,实现快速访问数据库中的数据。

Description

数据处理方法、装置及电子设备
技术领域
本发明涉及数据库技术领域,尤其是涉及一种数据处理方法、装置及电子设备。
背景技术
PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统。其中,PostgreSQL的最底层模块是存储系统,该存储系统向下通过操作系统接口访问物理数据,向上为上层模块提供存储操作的接口和函数。
在PostgreSQL数据库的某些应用场景下,要求快速访问数据库中的数据。但是,目前针对PostgreSQL中数据的访问和操作都是通过其存储系统模块来进行的,该数据访问方式速度较慢。
发明内容
有鉴于此,本发明的目的在于提供一种数据处理方法、装置及电子设备,可以快速访问数据库中的数据。
第一方面,本发明实施例提供了一种数据处理方法,该方法应用于服务器,该服务器上运行有数据库;该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间;该缓存空间用于存储该内存表的数据;该方法包括:接收与该内存表的数据相关联的数据访问请求;通过该数据库,从缓存空间中访问该内存表的数据。
在本发明较佳的实施例中,上述数据库中预先创建有外部服务器;该外部服务器上预先创建有该内存表对应的外部表;上述通过数据库,从缓存空间中访问该内存表的数据的步骤,包括:通过该数据库中与该内存表对应的外部表,从该缓存空间中访问该内存表的数据。
在本发明较佳的实施例中,上述从该缓存空间中访问该内存表的数据的步骤之前,该方法还包括:通过该外部服务器将该内存表加载至该数据库;通过该外部表将该内存表的数据预先存储到该缓存空间。
在本发明较佳的实施例中,上述通过该外部服务器将该内存表加载至该数据库的步骤,包括:按照该数据库的索引组织,通过该外部服务器将该内存表的表行存储在该数据库的指定页面;其中,该指定页面包括按照表主键定义的B-Tree索引的叶页面。
在本发明较佳的实施例中,上述通过该外部服务器将该内存表加载至该数据库的步骤之后,该方法还包括:根据该内存表存储在该数据库中的存储位置,生成该内存表的索引信息,将该内存表的索引信息保存在缓存空间。
第二方面,本发明实施例还提供了一种数据处理装置,该装置应用于服务器,该数据处理装置上运行有数据库;该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间;该缓存空间用于存储该内存表的数据;该装置包括:数据访问请求接收模块,用于接收与该内存表的数据相关联的数据访问请求;数据访问模块,用于通过该数据库,从上述缓存空间中访问该内存表的数据。
在本发明较佳的实施例中,上述数据库中预先创建有外部服务器;该外部服务器上预先创建有该内存表对应的外部表;该数据访问模块还用于:通过数据库中与该内存表对应的外部表,从上述缓存空间中访问该内存表的数据。
在本发明较佳的实施例中,上述数据访问模块还用于:通过该外部服务器将该内存表加载至数据库;通过该外部表将该内存表的数据预先存储到上述缓存空间。
在本发明较佳的实施例中,上述数据访问模块还用于:按照该数据库的索引组织,通过该外部服务器将该内存表的表行存储在该数据库的指定页面;其中,该指定页面包括按照表主键定义的B-Tree索引的叶页面。
在本发明较佳的实施例中,上述数据访问模块还用于:根据该内存表存储在数据库中的存储位置,生成该内存表的索引信息,将该内存表的索引信息保存在上述缓存空间。
第三方面,本发明实施例还提供了一种电子设备,包括处理器和存储器,该存储器存储有能够被该处理器执行的机器可执行指令,该处理器执行该机器可执行指令以实现上述数据处理方法。
第四方面,本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述数据处理方法。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种数据处理方法、装置及电子设备,该方法应用于服务器,该服务器上运行有数据库;该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间;该缓存空间用于存储该内存表的数据;该方法包括:接收与该内存表的数据相关联的数据访问请求;通过该数据库,从缓存空间中访问该内存表的数据。该方式中,通过在数据库中加载内存表,并在内存中缓存内存表对应的数据,当需要访问数据库中的目标数据时,首先在数据库中查找与目标数据关联的内存表,进而根据该内存表,直接从内存中访问预先缓存的该内存表的数据,实现快速访问数据库中的数据。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的另一种数据处理方法的流程示意图;
图3为本发明实施例提供的另一种数据处理方法的流程示意图;
图4为本发明实施例提供的一种数据处理装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
图标:40-数据访问请求接收模块;41-数据访问模块;51-处理器;52-存储器;53-总线;54-通信接口。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
通常情况下,数据库管理系统将数据存储在磁盘、磁带以及其他的裸设备上,虽然这些设备具有非易失性和大容量的特点,但它们的访问速度相比内存要慢很多。考虑到在某些应用场景下要求快速访问数据库中的数据,本发明实施例提供了一种数据处理方法、装置及电子设备,该技术可以应用于各种需要对数据库中的数据进行访问的应用场景中。为便于对本实施例进行理解,首先对本发明实施例所公开的一种数据处理方法进行详细介绍。
参见图1,其为本实施例提供的一种数据处理方法的流程示意图,其中,该数据处理方法应用于服务器,且在该服务器上运行有数据库。并且,该数据库中加载有预设的内存表,该服务器的内存中预设有该内存表对应的缓存空间,其中,该缓存空间用于存储该内存表的数据。由图1可见,该方法包括以下步骤:
步骤S102:接收与该内存表的数据相关联的数据访问请求。
这里,该服务器上运行有数据库,可以为各类应用程序提供数据服务。在其中一种实施方式中,该服务器可以是数据库服务器,其中,数据库服务器是由运行在局域网中的一台或多台计算机,以及数据库管理系统软件共同构成,数据库服务器为客户应用程序提供数据服务。
在本实施例中,该数据库中还加载有内存表,其中,内存表是保存在内存中的数据表,具体地,内存表的表结构保存在磁盘中,而内存表的数据保存在内存中。相比于临时表,临时表的表结构和数据都保存在内存中,并且,临时表是会话级别,只允许单个会话独享,在会话断开或者跨会话的情况下,都需要重新建立临时表;而内存表是可以多个会话共享的。在实际操作中,当断开连接时,例如服务器重启的情况下,临时表的数据和结构都会丢失,而内存表的数据虽会丢失,但是内存表的结构还存在,因内存表的结构是存放在实际数据库路径下,不会自动删除。
步骤S104:通过该数据库,从缓存空间中访问该内存表的数据。
在其中一种可能的实施方式中,可以预先在数据库中创建外部服务器,并通过该外部服务器将内存表加载到数据库中。例如,假设该数据库为PostgreSQL数据库,这里,在PostgreSQL数据库中,自身配置有外部数据包装器(Foreign Data Wrapper,FDW),因而可以通过该外部数据包装器创建外部服务器,以通过该外部服务器将内存表加载到数据库中。
通常情况下,数据库中的数据保存在服务器的磁盘上,当需要访问数据库中的目标数据时,需要先将目标数据从磁盘读取到内存,再从内存里读取该目标数据。在本实施例中,在服务器的内存中预先设置缓存空间,该缓存空间与数据库中加载的内存表对应,该缓存空间用于存储内存表的数据。以上述PostgreSQL数据库为例说明,在至少一种可能的实施方式中,可以在该数据库对应的共享内存中,为数据库中加载的内存表单独分配一个缓存空间,用于存储内存表的数据。
在实际操作中,当该服务器接收到数据访问请求时,若该数据访问请求与数据库中预先加载的内存表的数据是相关联的,则通过该数据库,从上述缓存空间中访问该内存表的数据。这样,相比于常规的数据访问方式,因为可以直接从内存中访问预先缓存的内存表的数据,而不需要从磁盘将数据读取到内存中,节省了时间,提高了数据访问的效率。
本发明实施例提供的数据处理方法,该方法应用于服务器,该服务器上运行有数据库;该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间;该缓存空间用于存储该内存表的数据;该方法包括:接收与该内存表的数据相关联的数据访问请求;通过该数据库,从缓存空间中访问该内存表的数据。该方式中,通过在数据库中加载内存表,并在内存中缓存内存表对应的数据,当需要访问数据库中的目标数据时,首先在数据库中查找与目标数据关联的内存表,进而根据该内存表,直接从内存中访问预先缓存的该内存表的数据,实现快速访问数据库中的数据。
在图1示出的数据处理方法的基础上,本实施例还提供了另一种数据处理方法,该方法重点描述了通过数据库,从缓存空间中访问内存表的数据的具体实现过程。
图2所示为该方法的流程示意图,其中,该方法应用于服务器,该服务器上运行有数据库,该数据库中加载有预设的内存表,并且,该服务器的内存中预设有该内存表对应的缓存空间,该缓存空间用于存储该内存表的数据。另外,该数据库中还预先创建有外部服务器,且该外部服务器上预先创建有该内存表对应的外部表。由图2可见,该方法包括以下步骤:
步骤S202:接收与该内存表的数据相关联的数据访问请求。
这里,步骤S202的实施方式可以参考前述实施例中的对应内容,在此不再赘述。
步骤S204:通过该数据库中与该内存表对应的外部表,从该缓存空间中访问该内存表的数据。
在本实施例中,上述数据库中预先创建有外部服务器,这里,外部服务器用于访问外部源数据。以PostgreSQL为例,PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统,并且,PostgreSQL数据库中配置有外部数据包装器,通过该外部数据包装器可以创建外部服务器。例如,可以在PostgreSQL数据库中,创建专门用于访问内存的外部数据包装器memory_fdw,以通过该外部数据包装器memory_fdw访问上述缓存空间中的数据,也即访问内存表的数据。
在上述外部服务器中,还预先创建有与内存表对应的外部表,其中,外部表是PostgreSQL数据库内部提供的一种表类型,它是提供用户访问外部源数据的一种方式,这里,外部数据源可以是远程数据库、文件或者其他数据来源。
在本实施例中,当该服务器接收到数据访问请求时,若该数据访问请求与数据库中预先加载的内存表的数据是相关联的,则通过该数据库中与该内存表对应的外部表,从缓存空间中访问该内存表的数据。可见,在本实施例中,内存相当于提供了外部表的外部源数据。
这样,本发明提供的数据处理方法,可以满足数据库在某些应用场景下,需要快速访问数据库中的数据,但是对数据可靠性要求不高的需求。此外,因为该方法通过扩展插件实现,例如,在PostgreSQL数据库中是通过外部数据包装器实现,且该数据库还提供了完善的外部数据包装器的扩展开发机制,因而不影响数据库升级带来的迭代问题。
本实施例中的数据处理方法,通过在数据库中创建外部服务器,并在外部服务器上创建内存表对应的外部表,以内存中特定的缓存空间作为外部数据源,从而在需要访问内存表的数据时,通过该外部表可以直接访问该缓存空间中的内存表数据,提高了数据访问的效率。
在图2所示数据处理方法的基础上,为了进一步提高针对数据库中数据的访问速度,本实施例还提供了另一种数据处理方法,其中,该方法应用于服务器,该服务器上运行有数据库,该数据库中加载有预设的内存表,并且,该服务器的内存中预设有该内存表对应的缓存空间,该缓存空间用于存储该内存表的数据。另外,该数据库中还预先创建有外部服务器,且该外部服务器上预先创建有该内存表对应的外部表。如图3所示,其为该方法的流程示意图,其中,该方法包括以下步骤:
步骤S302:通过外部服务器将内存表加载至数据库。
在其中一种可能的实施方式中,可以按照该数据库的索引组织,通过上述外部服务器,将该内存表的表行存储在该数据库的指定页面。其中,该指定页面包括按照表主键定义的B-Tree索引的叶页面。
这里,B-tree(多路搜索树)是一种常见的数据结构,使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度。其中,叶页面是叶节点的页面,在本实施例中,上述内存表的表行存储在叶页面。
步骤S304:根据该内存表存储在数据库中的存储位置,生成该内存表的索引信息,将该内存表的索引信息保存在缓存空间。
在其中一种可能的实施方式中,可以按以下方式创建内存表的索引:
create index tbl_bb_index on tbl_bb(id,name)。
其中,tbl_bb表示表名称,tbl_bb_index为创建的索引名称,id和name为表里的字段。
步骤S306:通过该外部表将该内存表的数据预先存储到上述缓存空间。
由于外部表为数据库提供了访问外部数据源的途径,通过该外部表,可以读取内存表的数据,并将内存表的数据预先存储到缓存空间。
步骤S308:如果接收到与该内存表的数据相关联的数据访问请求,通过该数据库中与该内存表对应的外部表,从上述缓存空间中访问该内存表的数据。
这里,通过外部表从缓存空间中访问内存表的数据的具体过程,可以参见上述实施例中对应部分的描述,在此不再赘述。
本实施例提供的数据处理方法,通过生成内存表的索引信息,并将索引信息保存在缓存空间,可以在接收到与该内存表的数据相关联的数据访问请求时,通过该索引信息快速查找到与访问请求关联的目标内存表,进而通过外部表访问缓存空间中目标内存表对应的数据,进一步提高数据库中数据的访问效率。
对应于上述数据处理方法,本实施例还提供了一种数据处理装置,其中,该数据处理装置应用于服务器,且在该装置上运行有数据库,该数据库中加载有预设的内存表。另外,该服务器的内存中预设有该内存表对应的缓存空间,该缓存空间用于存储该内存表的数据。
参见图4,其为该数据处理装置的结构示意图,其中,该数据处理装置包括依次向量的数据访问请求接收模块40和数据访问模块41,其中,各个模块的功能如下:
数据访问请求接收模块40,用于接收与该内存表的数据相关联的数据访问请求;
数据访问模块41,用于通过该数据库,从上述缓存空间中访问该内存表的数据。
本发明实施例提供的数据处理装置,该装置应用于服务器,该服务器上运行有数据库;该数据库中加载有预设的内存表;该服务器的内存中预设有该内存表对应的缓存空间;该缓存空间用于存储该内存表的数据;该装置首先接收与该内存表的数据相关联的数据访问请求,然后通过该数据库,从缓存空间中访问该内存表的数据。该装置中,通过在数据库中加载内存表,并在内存中缓存内存表对应的数据,当需要访问数据库中的目标数据时,首先在数据库中查找与目标数据关联的内存表,进而根据该内存表,直接从内存中访问预先缓存的该内存表的数据,实现快速访问数据库中的数据。
在其中一种可能的实施方式中,上述数据库中预先创建有外部服务器;该外部服务器上预先创建有该内存表对应的外部表;该数据访问模块41还用于:通过数据库中与该内存表对应的外部表,从上述缓存空间中访问该内存表的数据。
在另一种可能的实施方式中,上述数据访问模块41还用于:通过该外部服务器将该内存表加载至数据库;通过该外部表将该内存表的数据预先存储到上述缓存空间。
在另一种可能的实施方式中,上述数据访问模块41还用于:按照该数据库的索引组织,通过该外部服务器将该内存表的表行存储在该数据库的指定页面;其中,该指定页面包括按照表主键定义的B-Tree索引的叶页面。
在另一种可能的实施方式中,上述数据访问模块41还用于:根据该内存表存储在数据库中的存储位置,生成该内存表的索引信息,将该内存表的索引信息保存在上述缓存空间。
本发明实施例提供的数据处理装置,其实现原理及产生的技术效果和前述数据处理方法实施例相同,为简要描述,数据处理装置的实施例部分未提及之处,可参考前述数据处理方法实施例中相应内容。
本发明实施例还提供了一种电子设备,如图5所示,为该电子设备的结构示意图,其中,该电子设备包括处理器51和存储器52,该存储器52存储有能够被该处理器51执行的机器可执行指令,该处理器51执行该机器可执行指令以实现上述数据处理方法。
在图5示出的实施方式中,该电子设备还包括总线53和通信接口54,其中,处理器51、通信接口54和存储器52通过总线53连接。
其中,存储器52可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口54(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线53可以是ISA总线、PCI总线或EISA总线等。所述总线53可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器51可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器51中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器51可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器52,处理器51读取存储器52中的信息,结合其硬件完成前述实施例的数据处理方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述数据处理方法,具体实现可参见前述方法实施例,在此不再赘述。
本发明实施例所提供的数据处理方法、数据处理装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的数据处理方法,具体实现可参见方法实施例,在此不再赘述。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种数据处理方法,其特征在于,所述方法应用于服务器,所述服务器上运行有数据库;所述数据库中加载有预设的内存表;所述服务器的内存中预设有所述内存表对应的缓存空间;所述缓存空间用于存储所述内存表的数据所述数据库的类型为PostgreSQL数据库;所述数据库中预先创建有外部服务器;所述外部服务器上预先创建有所述内存表对应的外部表;所述方法包括:
接收与所述内存表的数据相关联的数据访问请求;
通过所述数据库中与所述内存表对应的外部表,从所述缓存空间中访问所述内存表的数据。
2.根据权利要求1所述的数据处理方法,其特征在于,从所述缓存空间中访问所述内存表的数据的步骤之前,所述方法还包括:
通过所述外部服务器将所述内存表加载至所述数据库;
通过所述外部表将所述内存表的数据预先存储到所述缓存空间。
3.根据权利要求2所述的数据处理方法,其特征在于,通过所述外部服务器将所述内存表加载至所述数据库的步骤,包括:
按照所述数据库的索引组织,通过所述外部服务器将所述内存表的表行存储在所述数据库的指定页面;其中,所述指定页面包括按照表主键定义的B-Tree索引的叶页面。
4.根据权利要求2所述的数据处理方法,其特征在于,通过所述外部服务器将所述内存表加载至所述数据库的步骤之后,所述方法还包括:
根据所述内存表存储在所述数据库中的存储位置,生成所述内存表的索引信息,将所述内存表的索引信息保存在所述缓存空间。
5.一种数据处理装置,其特征在于,所述装置应用于服务器,所述数据处理装置上运行有数据库;所述数据库中加载有预设的内存表;所述服务器的内存中预设有所述内存表对应的缓存空间;所述缓存空间用于存储所述内存表的数据;所述数据库的类型为PostgreSQL数据库;所述数据库中预先创建有外部服务器;所述外部服务器上预先创建有所述内存表对应的外部表;所述装置包括:
数据访问请求接收模块,用于接收与所述内存表的数据相关联的数据访问请求;
数据访问模块,用于通过所述数据库中与所述内存表对应的外部表,从所述缓存空间中访问所述内存表的数据。
6.根据权利要求5所述的数据处理装置,其特征在于,所述数据访问模块还用于:
通过所述外部服务器将所述内存表加载至所述数据库;
通过所述外部表将所述内存表的数据预先存储到所述缓存空间。
7.根据权利要求6所述的数据处理装置,其特征在于,所述数据访问模块还用于:
按照所述数据库的索引组织,通过所述外部服务器将所述内存表的表行存储在所述数据库的指定页面;其中,所述指定页面包括按照表主键定义的B-Tree索引的叶页面。
8.根据权利要求6所述的数据处理装置,其特征在于,所述数据访问模块还用于:
根据所述内存表存储在所述数据库中的存储位置,生成所述内存表的索引信息,将所述内存表的索引信息保存在所述缓存空间。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至4任一项所述的数据处理方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现权利要求1至4任一项所述的数据处理方法。
CN202010164154.XA 2020-03-10 2020-03-10 数据处理方法、装置及电子设备 Active CN111382179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010164154.XA CN111382179B (zh) 2020-03-10 2020-03-10 数据处理方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010164154.XA CN111382179B (zh) 2020-03-10 2020-03-10 数据处理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111382179A CN111382179A (zh) 2020-07-07
CN111382179B true CN111382179B (zh) 2023-12-01

Family

ID=71218742

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010164154.XA Active CN111382179B (zh) 2020-03-10 2020-03-10 数据处理方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111382179B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231405A (zh) * 2020-10-19 2021-01-15 浙江大华技术股份有限公司 数据存储装置
CN114490095B (zh) * 2022-04-19 2022-06-21 北京闪马智建科技有限公司 请求结果的确定方法和装置、存储介质及电子装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016497A (en) * 1997-12-24 2000-01-18 Microsoft Corporation Methods and system for storing and accessing embedded information in object-relational databases
CN102999584A (zh) * 2012-11-14 2013-03-27 厦门亿力吉奥信息科技有限公司 电力gis跨平台空间数据服务方法及系统
CN103729453A (zh) * 2014-01-02 2014-04-16 浪潮电子信息产业股份有限公司 一种HBase表联合查询优化的方法
CN106790562A (zh) * 2016-12-26 2017-05-31 中国建设银行股份有限公司 一种分布式缓存系统、方法及装置
CN107707346A (zh) * 2017-04-10 2018-02-16 浙江九州量子信息技术股份有限公司 一种基于数据库的密钥存储、获取方法
CN109542907A (zh) * 2018-11-21 2019-03-29 万兴科技股份有限公司 数据库缓存构建方法、装置、计算机设备以及存储介质
CN109726219A (zh) * 2018-11-27 2019-05-07 中科恒运股份有限公司 数据查询的方法及终端设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7099898B1 (en) * 1999-08-12 2006-08-29 International Business Machines Corporation Data access system
US11003663B2 (en) * 2017-10-10 2021-05-11 Paypal, Inc. Configuration-aware micro-database caches

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016497A (en) * 1997-12-24 2000-01-18 Microsoft Corporation Methods and system for storing and accessing embedded information in object-relational databases
CN102999584A (zh) * 2012-11-14 2013-03-27 厦门亿力吉奥信息科技有限公司 电力gis跨平台空间数据服务方法及系统
CN103729453A (zh) * 2014-01-02 2014-04-16 浪潮电子信息产业股份有限公司 一种HBase表联合查询优化的方法
CN106790562A (zh) * 2016-12-26 2017-05-31 中国建设银行股份有限公司 一种分布式缓存系统、方法及装置
CN107707346A (zh) * 2017-04-10 2018-02-16 浙江九州量子信息技术股份有限公司 一种基于数据库的密钥存储、获取方法
CN109542907A (zh) * 2018-11-21 2019-03-29 万兴科技股份有限公司 数据库缓存构建方法、装置、计算机设备以及存储介质
CN109726219A (zh) * 2018-11-27 2019-05-07 中科恒运股份有限公司 数据查询的方法及终端设备

Also Published As

Publication number Publication date
CN111382179A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
US8126859B2 (en) Updating a local version of a file based on a rule
CN108846749B (zh) 一种基于区块链技术的分片化的交易执行系统及方法
US20190129851A1 (en) Application cache replication to secondary application(s)
US10678784B2 (en) Dynamic column synopsis for analytical databases
CN111382179B (zh) 数据处理方法、装置及电子设备
CN113064859B (zh) 一种元数据处理方法、装置及电子设备和存储介质
CN111858520A (zh) 一种区块链节点数据分离存储的方法和装置
CN114900546B (zh) 一种数据处理方法、装置、设备及可读存储介质
CN114356893A (zh) 基于机器学习的元数据调优方法、装置、设备及存储介质
CN111241040B (zh) 信息获取方法、装置、电子设备及计算机存储介质
CN112559529A (zh) 数据存储方法、装置、计算机设备及存储介质
CN115617799A (zh) 一种数据存储的方法、装置、设备及存储介质
CN111694992B (zh) 一种数据处理方法和装置
CN111414207A (zh) 一种页面搭建方法、装置和设备
CN109388651B (zh) 一种数据处理方法和装置
CN110851434B (zh) 一种数据存储方法、装置及设备
CN109948056B (zh) 一种推荐系统的评估方法及装置
CN108470043A (zh) 一种业务结果的获取方法及装置
CN113297267A (zh) 数据缓存和任务处理方法、装置、设备以及存储介质
CN111522509A (zh) 分布式存储系统的缓存方法及设备
CN114020525B (zh) 故障隔离方法、装置、设备及存储介质
CN110019295B (zh) 数据库检索方法、装置、系统以及存储介质
CN114675995A (zh) 数据备份方法、装置和电子设备
CN108733789B (zh) 数据库操作指令的执行计划演进方法、装置以及设备
CN114518841A (zh) 存储器中处理器和使用存储器中处理器输出指令的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant