CN116301667A - 一种数据库系统,数据访问方法、装置、设备及存储介质 - Google Patents

一种数据库系统,数据访问方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116301667A
CN116301667A CN202310586789.2A CN202310586789A CN116301667A CN 116301667 A CN116301667 A CN 116301667A CN 202310586789 A CN202310586789 A CN 202310586789A CN 116301667 A CN116301667 A CN 116301667A
Authority
CN
China
Prior art keywords
data
programmable gate
gate array
field programmable
memory
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.)
Granted
Application number
CN202310586789.2A
Other languages
English (en)
Other versions
CN116301667B (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.)
Shandong Inspur Science Research Institute Co Ltd
Original Assignee
Shandong Inspur Science Research Institute 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 Shandong Inspur Science Research Institute Co Ltd filed Critical Shandong Inspur Science Research Institute Co Ltd
Priority to CN202310586789.2A priority Critical patent/CN116301667B/zh
Publication of CN116301667A publication Critical patent/CN116301667A/zh
Application granted granted Critical
Publication of CN116301667B publication Critical patent/CN116301667B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1657Access to multiple memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7825Globally asynchronous, locally synchronous, e.g. network on chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种数据库系统,数据访问方法、装置、设备及存储介质,涉及计算机体系结构领域,包括:数据存储节点;包括闪存、非易失性存储器、保存第一热数据的双倍速率同步动态随机存储器;采用片上网络与数据存储节点数据通信的现场可编程逻辑门阵列,用于读取双倍速率同步动态随机存储器的第二热数据,保存至非易失性存储器;读取非易失性存储器的冷数据,保存至闪存;连接现场可编程逻辑门阵列的中央处理器,用于获取数据访问请求,控制现场可编程逻辑门阵列对数据存储节点的数据进行访问。在处理器与存储器间增加现场可编程逻辑门阵列,并引入片上网络用于节点间数据交换,可以有效的解决数据同步时效率较低的问题,并提升数据转发效率。

Description

一种数据库系统,数据访问方法、装置、设备及存储介质
技术领域
本发明涉及计算机体系结构领域,特别涉及一种数据库系统,数据访问方法、装置、设备及存储介质。
背景技术
随着存储设备的工艺提升,存储器的内存容量指数级提升,并且数据库软件引入了更多的内存计算的技术,降低了外存访问的开销,提升了处理速度。而PM/NVM(persistent memory/non-volatile memory,持久性内存/非易失性存储器)的引入,使得数据库系统有效的防止了系统掉电丢失数据的问题,但PM/NVM在读取和写入速度上存在较大差距,使得系统存在较大的性能瓶颈。另外,由于读写的非对称,也使得PM/NVM与系统内存之间,存在数据更新同步效率较低的问题。因此,如何提升数据访问效率,改善数据同步的效果是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种数据库系统,数据访问方法、装置、设备及存储介质。在中央处理器与非易失性存储器之间增加现场可编程逻辑门阵列,并引入片上网络用于节点间数据交换,可以有效地解决数据同步时效率较低的问题,并提升数据转发效率。其具体方案如下:
第一方面,本申请提供了一种数据库系统,包括:
用于存储数据的数据存储节点;所述数据存储节点包括闪存、非易失性存储器以及用于保存第一热数据的双倍速率同步动态随机存储器;
采用片上网络与所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器进行数据通信的现场可编程逻辑门阵列,用于对所述双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;对所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述闪存;其中,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
与所述现场可编程逻辑门阵列连接的中央处理器,用于获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据存储节点中的数据执行相应的访问操作。
可选的,所述现场可编程逻辑门阵列,包括:
地址映射模块,用于解析所述现场可编程逻辑门阵列中存储的数据报文,并基于所述数据报文进行所述现场可编程逻辑门阵列中逻辑地址与对应的物理地址的映射,以便所述现场可编程逻辑门阵列通过所述地址映射模块直接对所述物理地址进行操作;
复制写回模块,用于基于所述片上网络进行所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器的数据读取与保存;
智能队列模块,用于优化指令队列;所述指令队列为所述现场可编程逻辑门阵列基于所述中央处理器根据所述数据访问请求下发的数据访问指令构建的指令队列;
数据库指令算子库,用于加速所述数据访问指令;
存储控制模块,用于在将读取到的所述冷数据保存至所述闪存和将读取到的所述第二热数据保存至所述非易失性存储器时的存储空间划分。
可选的,所述现场可编程逻辑门阵列,包括:
系统控制模块,用于控制所述现场可编程逻辑门阵列中的各个模块,以及控制用于和所述现场可编程逻辑门阵列和所述闪存、所述非易失性存储器所述双倍速率同步动态随机存储器进行数据通信的数据通路。
可选的,所述现场可编程逻辑门阵列,包括:
片上网络路由模块,用于利用片上网络控制所述现场可编程逻辑门阵列中的各个模块之间的数据通信。
第二方面,本申请提供了一种数据访问方法,包括:
通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;
通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
可选的,所述对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器,包括:
基于双倍数据速率存储技术对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;
相应的,所述通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存,包括:
基于闪存控制器通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存。
可选的,所述通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,包括:
通过与所述现场可编程逻辑门阵列连接的中央处理器基于PCIE5/6接口以及CXL协议获取客户端发送的数据访问请求;所述CXL协议支持CXL.io模式、CXL.cache模式和CXL.memory模式。
第三方面,本申请提供了一种数据访问装置,包括:
第一数据读取模块,用于通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
第二数据读取模块,用于通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;
数据访问模块,用于通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
第四方面,本申请提供了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现前述的数据访问方法。
第五方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的数据访问方法。
通过上述技术方案,本申请提供了一种数据库系统,及数据访问方法,通过所述数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。在中央处理器与非易失性存储器之间增加现场可编程逻辑门阵列,并引入片上网络用于节点内和节点间的数据交换,可以有效地解决非易失性存储器由于读写非对称在数据访问时进行数据同步效率较低的问题,并提升了数据转发效率,增加系统弹性扩展能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种数据库系统构造图;
图2为本申请提供的一种数据访问方法流程图;
图3为本申请提供的一种数据访问装置结构示意图;
图4为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着非易失性存储器的引入,由于非易失性存储器在读取和写入速度上存在较大差距,存在数据更新同步效率较低的问题,使得系统存在较大的性能瓶颈。本申请公开的数据库系统在中央处理器(Central Processing Unit,CPU)与非易失性存储器之间增加现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA),并引入片上网络(network-on-chip,NoC)用于节点间数据交换,提升了数据转发效率,增加系统弹性扩展能力。
参见图1所示,本发明实施例公开了一种数据库系统,包括:
用于存储数据的数据存储节点;所述数据存储节点包括闪存(NandFlash)、非易失性存储器以及用于保存第一热数据的双倍速率同步动态随机存储器(Double Data RateSynchronous Dynamic Random Access Memory,DDR SDRAM,常被称为DDR)。
采用片上网络与所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器进行数据通信的现场可编程逻辑门阵列,用于对所述双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;对所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述闪存;其中,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率。本实施例中基于现场可编程逻辑门阵列进行外部存储器,即数据存储节点之间的数据同步,数据库中的数据同步顺序为DDR→PM/NVM→NandFlash,需要指出的是,数据同步时根据预设数据读取条件筛选满足数据更新频率的数据进行读取,上述条件包括第一预设条件和第二预设条件。双倍速率同步动态随机存储器与非易失性存储器内部均为热数据,闪存中为冷数据。并且双倍速率同步动态随机存储器中的第一热数据相较非易失性存储器中的第二热数据具有更高的写更新频率,用于平衡读写非对称问题。需要指出的是,上述现场可编程逻辑门阵列,包括:地址映射模块(Memory Map),用于解析所述现场可编程逻辑门阵列中存储的数据报文,并基于所述数据报文进行所述现场可编程逻辑门阵列中逻辑地址与对应的物理地址的映射,以便所述现场可编程逻辑门阵列通过所述地址映射模块直接对所述物理地址进行操作;复制写回模块(Copy Back),用于基于所述片上网络进行所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器的数据读取与保存,以及行数据转换列数据时的数据更新写回;智能队列模块(Smart Queue),用于优化指令队列,以及实现存储通路负载均衡,以便规划存储器的存储空间;所述指令队列为所述现场可编程逻辑门阵列基于所述中央处理器根据所述数据访问请求下发的数据访问指令构建的指令队列;数据库指令算子库(Operator Lib),用于加速所述数据访问指令;存储控制模块(Memory-Ctrl),用于在将读取到的所述冷数据保存至所述闪存和将读取到的所述第二热数据保存至所述非易失性存储器时的存储空间划分;系统控制模块(System-Ctrl),用于控制所述现场可编程逻辑门阵列中的各个模块,以及控制用于和所述现场可编程逻辑门阵列和所述闪存、所述非易失性存储器所述双倍速率同步动态随机存储器进行数据通信的数据通路;片上网络路由模块(NoC Router),用于利用片上网络控制所述现场可编程逻辑门阵列中的各个模块之间的数据通信,同时也用于服务器节点(ETH节点)间的通信与路由扩展,上述服务器节点通过SERDES(SERializer/DESerializer,串行器/解串器)进行数据通信。并且在图1所示的数据库系统中,中央处理器包括处理器核心0(core0)、处理器核心1(core1)…处理器核心N(coreN);一级缓存(L1)、二级缓存(L2)与末级缓存(LLC,即最后一级缓存,在图1中即为三级缓存)。
与所述现场可编程逻辑门阵列连接的中央处理器,用于获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据存储节点中的数据执行相应的访问操作。获取客户端发送的数据访问请求后,生成对应的数据访问指令完成对数据存储节点中数据的访问操作。
这样一来,上述数据库系统在中央处理器与非易失性存储器之间增加现场可编程逻辑门阵列,并引入片上网络用于节点内和节点间的数据交换,可以有效地解决非易失性存储器由于读写非对称在数据同步时效率较低的问题,并提升了数据转发效率,增加系统弹性扩展能力。
基于上一实施例可知,本申请的数据库系统在中央处理器与非易失性存储器之间增加现场可编程逻辑门阵列,并引入片上网络用于节点间数据交换,接下来,本实施例中将对基于上述数据库系统的数据访问方法进行详细地阐述。参见图2所示,本申请实施例公开了一种数据访问方法,包括:
步骤S11、通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率。
本实施例中,基于双倍数据速率(Double Data Rate,DDR)存储技术对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器。
步骤S12、通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存。
本实施例中,基于闪存控制器(NandFlash Controller,NFC)通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存。上述闪存控制器的其接口协议为Toggle(以DDR为基础制定的Flash接口标准)/ONFI(Open NAND FlashInterface,开放的NANDFlash接口标准)等。
步骤S13、通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
本实施例中,通过中央处理器获取客户端发送的数据访问请求,并控制现场可编程逻辑门阵列对数据库系统中的数据存储节点中的数据执行相应的访问操作。在获取数据访问请求时,通过与现场可编程逻辑门阵列连接的中央处理器基于PCIE5/6(peripheralcomponent interconnect express5.0/6.0,高速串行计算机扩展总线标准5.0/6.0)接口以及CXL协议(Compute eXpress Link,一种多协议的高速互联技术总线)获取客户端发送的数据访问请求。可以理解的是,上述CXL协议支持CXL.io模式、CXL.cache模式和CXL.memory模式。
通过上述技术方案,本实施例通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器,通过现场可编程逻辑门阵列对数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的冷数据保存至数据库系统中的闪存,通过与现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制现场可编程逻辑门阵列对数据库系统中的数据存储节点中的数据执行相应的访问操作。本实施例针对数据库系统扩展PM/NVM存在的问题,在中央处理器与非易失性存储器间增加基于现场可编程门阵列的存储扩展模块,同时引入片上网络用于节点内和节点间数据通路,可以有效的解决数据同步、读写非对称等问题,并提升节点内与节点间数据转发效率,增加系统弹性扩展能力。
参见图3所示,本申请实施例还公开了一种数据访问装置,包括:
第一数据读取模块11,用于通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
第二数据读取模块12,用于通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;
数据访问模块13,用于通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
本实施例中,通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;通过现场可编程逻辑门阵列对数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的冷数据保存至数据库系统中的闪存;通过与现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制现场可编程逻辑门阵列对数据库系统中的数据存储节点中的数据执行相应的访问操作。在中央处理器与非易失性存储器之间增加现场可编程逻辑门阵列,并引入片上网络用于节点内和节点间的数据交换,提升了数据转发效率,增加系统弹性扩展能力。
在一些具体实施例中,所述第一数据读取模块11,具体包括:
第一数据读取单元,用于基于双倍数据速率存储技术对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;
相应的,所述第二数据读取模块12,具体包括:
第二数据读取单元,用于基于闪存控制器通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存。
在一些具体实施例中,所述数据访问模块13,具体包括:
请求接收单元,用于通过与所述现场可编程逻辑门阵列连接的中央处理器基于PCIE5/6接口以及CXL协议获取客户端发送的数据访问请求;所述CXL协议支持CXL.io模式、CXL.cache模式和CXL.memory模式。
进一步的,本申请实施例还公开了一种电子设备,图4是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图4为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的数据访问方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的数据访问方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的数据访问方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种数据库系统,其特征在于,包括:
用于存储数据的数据存储节点;所述数据存储节点包括闪存、非易失性存储器以及用于保存第一热数据的双倍速率同步动态随机存储器;
采用片上网络与所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器进行数据通信的现场可编程逻辑门阵列,用于对所述双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;对所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述闪存;其中,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
与所述现场可编程逻辑门阵列连接的中央处理器,用于获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据存储节点中的数据执行相应的访问操作。
2.根据权利要求1所述的数据库系统,其特征在于,所述现场可编程逻辑门阵列,包括:
地址映射模块,用于解析所述现场可编程逻辑门阵列中存储的数据报文,并基于所述数据报文进行所述现场可编程逻辑门阵列中逻辑地址与对应的物理地址的映射,以便所述现场可编程逻辑门阵列通过所述地址映射模块直接对所述物理地址进行操作;
复制写回模块,用于基于所述片上网络进行所述闪存、所述非易失性存储器和所述双倍速率同步动态随机存储器的数据读取与保存;
智能队列模块,用于优化指令队列;所述指令队列为所述现场可编程逻辑门阵列基于所述中央处理器根据所述数据访问请求下发的数据访问指令构建的指令队列;
数据库指令算子库,用于加速所述数据访问指令;
存储控制模块,用于在将读取到的所述冷数据保存至所述闪存和将读取到的所述第二热数据保存至所述非易失性存储器时的存储空间划分。
3.根据权利要求2所述的数据库系统,其特征在于,所述现场可编程逻辑门阵列,包括:
系统控制模块,用于控制所述现场可编程逻辑门阵列中的各个模块,以及控制用于和所述现场可编程逻辑门阵列和所述闪存、所述非易失性存储器所述双倍速率同步动态随机存储器进行数据通信的数据通路。
4.根据权利要求3所述的数据库系统,其特征在于,所述现场可编程逻辑门阵列,包括:
片上网络路由模块,用于利用片上网络控制所述现场可编程逻辑门阵列中的各个模块之间的数据通信。
5.一种数据访问方法,其特征在于,包括:
通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;
通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
6.根据权利要求5所述的数据访问方法,其特征在于,所述对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器,包括:
基于双倍数据速率存储技术对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至所述非易失性存储器;
相应的,所述通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存,包括:
基于闪存控制器通过所述现场可编程逻辑门阵列对所述数据库系统中的非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存。
7.根据权利要求5所述的数据访问方法,其特征在于,所述通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,包括:
通过与所述现场可编程逻辑门阵列连接的中央处理器基于PCIE5/6接口以及CXL协议获取客户端发送的数据访问请求;所述CXL协议支持CXL.io模式、CXL.cache模式和CXL.memory模式。
8.一种数据访问装置,其特征在于,包括:
第一数据读取模块,用于通过数据库系统中的采用片上网络的现场可编程逻辑门阵列,对所述数据库系统中的双倍速率同步动态随机存储器中的满足第一预设条件的第二热数据进行读取,并将读取到的所述第二热数据保存至非易失性存储器;所述双倍速率同步动态随机存储器中预先保存有第一热数据,所述第一热数据的数据更新频率大于所述第二热数据的数据更新频率;
第二数据读取模块,用于通过所述现场可编程逻辑门阵列对所述数据库系统中的所述非易失性存储器中的满足第二预设条件的冷数据进行读取,并将读取到的所述冷数据保存至所述数据库系统中的闪存;
数据访问模块,用于通过与所述现场可编程逻辑门阵列连接的中央处理器获取客户端发送的数据访问请求,并控制所述现场可编程逻辑门阵列对所述数据库系统中的数据存储节点中的数据执行相应的访问操作;所述数据存储节点包括所述闪存、所述非易失性存储器以及所述双倍速率同步动态随机存储器。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求5至7任一项所述的数据访问方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求5至7任一项所述的数据访问方法。
CN202310586789.2A 2023-05-24 2023-05-24 一种数据库系统,数据访问方法、装置、设备及存储介质 Active CN116301667B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310586789.2A CN116301667B (zh) 2023-05-24 2023-05-24 一种数据库系统,数据访问方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310586789.2A CN116301667B (zh) 2023-05-24 2023-05-24 一种数据库系统,数据访问方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN116301667A true CN116301667A (zh) 2023-06-23
CN116301667B CN116301667B (zh) 2023-09-01

Family

ID=86789189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310586789.2A Active CN116301667B (zh) 2023-05-24 2023-05-24 一种数据库系统,数据访问方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116301667B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116627867A (zh) * 2023-07-25 2023-08-22 苏州浪潮智能科技有限公司 数据交互系统、方法、大规模运算处理方法、设备及介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090058462A1 (en) * 2005-01-21 2009-03-05 Actel Corporation Field programmable gate array including a nonvolatile user memory and method for programming
US20120131253A1 (en) * 2010-11-18 2012-05-24 Mcknight Thomas P Pcie nvram card based on nvdimm
US20120320517A1 (en) * 2011-06-17 2012-12-20 Bae Systems Controls Inc. Obsolescence tolerant flash memory architecture and physical building block (pbb) implementation
CN108133728A (zh) * 2018-01-18 2018-06-08 上海新储集成电路有限公司 一种非易失性随机存储器
CN111339544A (zh) * 2019-04-24 2020-06-26 上海安路信息科技有限公司 离线下载装置及离线下载方法
US20200218646A1 (en) * 2019-01-04 2020-07-09 Alibaba Group Holding Limited System and method of fpga-executed flash translation layer in multiple solid state drives
CN111984557A (zh) * 2019-05-21 2020-11-24 阿里巴巴集团控股有限公司 数据处理方法、装置和系统
CN212694406U (zh) * 2020-03-27 2021-03-12 西安紫光国芯半导体有限公司 储存级存储器的双列直插式存储模块装置
WO2022068185A1 (zh) * 2020-09-29 2022-04-07 深圳大普微电子科技有限公司 一种存储系统及存储数据处理方法
CN115480713A (zh) * 2022-10-21 2022-12-16 济南浪潮数据技术有限公司 一种冷热数据的确定方法、装置及介质
CN115577113A (zh) * 2021-06-21 2023-01-06 北京纵存科技有限公司 知识图谱平台
US20230055349A1 (en) * 2021-08-20 2023-02-23 Micron Technology, Inc. Memory access control

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090058462A1 (en) * 2005-01-21 2009-03-05 Actel Corporation Field programmable gate array including a nonvolatile user memory and method for programming
US20120131253A1 (en) * 2010-11-18 2012-05-24 Mcknight Thomas P Pcie nvram card based on nvdimm
US20120320517A1 (en) * 2011-06-17 2012-12-20 Bae Systems Controls Inc. Obsolescence tolerant flash memory architecture and physical building block (pbb) implementation
CN108133728A (zh) * 2018-01-18 2018-06-08 上海新储集成电路有限公司 一种非易失性随机存储器
US20200218646A1 (en) * 2019-01-04 2020-07-09 Alibaba Group Holding Limited System and method of fpga-executed flash translation layer in multiple solid state drives
CN111339544A (zh) * 2019-04-24 2020-06-26 上海安路信息科技有限公司 离线下载装置及离线下载方法
CN111984557A (zh) * 2019-05-21 2020-11-24 阿里巴巴集团控股有限公司 数据处理方法、装置和系统
CN212694406U (zh) * 2020-03-27 2021-03-12 西安紫光国芯半导体有限公司 储存级存储器的双列直插式存储模块装置
WO2022068185A1 (zh) * 2020-09-29 2022-04-07 深圳大普微电子科技有限公司 一种存储系统及存储数据处理方法
CN115577113A (zh) * 2021-06-21 2023-01-06 北京纵存科技有限公司 知识图谱平台
US20230055349A1 (en) * 2021-08-20 2023-02-23 Micron Technology, Inc. Memory access control
CN115480713A (zh) * 2022-10-21 2022-12-16 济南浪潮数据技术有限公司 一种冷热数据的确定方法、装置及介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KOICHIRO ZAITSU 等: "Nonvolatile Programmable Switch With Adjacently Integrated Flash Memory and CMOS Logic for Low-Power and High-Speed FPGA", 《IEEE TRANSACTIONS ON ELECTRON DEVICES》 *
谢玲芳;孟令军;许艳;朱珊;: "基于非易失性存储阵列的实时数据记录卡设计", 科学技术与工程, no. 30 *
谭海清;陈正国;陈微;肖侬;: "基于FPGA的DDR3协议解析逻辑设计", 计算机应用, no. 05 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116627867A (zh) * 2023-07-25 2023-08-22 苏州浪潮智能科技有限公司 数据交互系统、方法、大规模运算处理方法、设备及介质
CN116627867B (zh) * 2023-07-25 2023-11-03 苏州浪潮智能科技有限公司 数据交互系统、方法、大规模运算处理方法、设备及介质

Also Published As

Publication number Publication date
CN116301667B (zh) 2023-09-01

Similar Documents

Publication Publication Date Title
US11290534B2 (en) System and method for scheduling computer tasks
US8325603B2 (en) Method and apparatus for dequeuing data
US10203878B2 (en) Near memory accelerator
US20220224614A1 (en) Technologies for capturing processing resource metrics as a function of time
US9594696B1 (en) Systems and methods for automatic generation of parallel data processing code
US11025745B2 (en) Technologies for end-to-end quality of service deadline-aware I/O scheduling
CN106503058B (zh) 一种数据加载方法、终端和计算集群
CN116301667B (zh) 一种数据库系统,数据访问方法、装置、设备及存储介质
WO2012151162A2 (en) Method and system for dynamically creating and servicing master-slave pairs within and across switch fabrics of a portable computing device
US11863469B2 (en) Utilizing coherently attached interfaces in a network stack framework
US9690713B1 (en) Systems and methods for effectively interacting with a flash memory
CN110119304B (zh) 一种中断处理方法、装置及服务器
US20210377150A1 (en) Memory pooled time sensitive networking based architectures
CN109992597A (zh) 一种热点数据的存储方法及终端
JP5479710B2 (ja) データを処理するためのプロセッサ‐サーバ・ハイブリッド・システムおよび方法
CN111259014B (zh) 一种fpga的单向链表数据存储方法及系统
US10915470B2 (en) Memory system
JP2020166838A (ja) エッジ重複排除を提供するための技術
US9537941B2 (en) Method and system for verifying quality of server
TW202008172A (zh) 儲存系統
CN111104198A (zh) 一种提高扫描系统插件运行效率的方法、设备及介质
CN114490458B (zh) 数据传输方法、芯片、服务器以及存储介质
WO2016197607A1 (zh) 一种实现路由查找的方法及装置
US10678455B2 (en) System and method for increased efficiency thin provisioning with respect to garbage collection
CN112579006A (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