CN113093994A - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN113093994A
CN113093994A CN202110376683.0A CN202110376683A CN113093994A CN 113093994 A CN113093994 A CN 113093994A CN 202110376683 A CN202110376683 A CN 202110376683A CN 113093994 A CN113093994 A CN 113093994A
Authority
CN
China
Prior art keywords
information segment
data
cache
information
cache layer
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.)
Pending
Application number
CN202110376683.0A
Other languages
English (en)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110376683.0A priority Critical patent/CN113093994A/zh
Publication of CN113093994A publication Critical patent/CN113093994A/zh
Pending legal-status Critical Current

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
    • G06F3/0611Improving I/O performance in relation to response time
    • 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
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种数据处理方法及装置,涉及大数据技术领域。所述方法包括:接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。所述装置用于执行上述方法。本发明实施例提供的数据处理方法及装置,提高了数据的读取效率。

Description

一种数据处理方法及装置
技术领域
本发明涉及大数据技术领域,具体涉及一种数据处理方法及装置。
背景技术
Kafka是一个分布式的基于发布/订阅模式的消息队列,主要应用于大数据的实时处理领域。
Kafka通过操作系统底层提供的页面缓存功能,来提高系统对文件的访问速度。对于生产者请求:服务端的I/O线程统一将请求中的数据写入到操作系统的页面缓存中后立即返回,当消息条数到达一定阈值后,Kafka应用本身或操作系统内核会触发强制刷盘操作,即将数据刷新到硬盘驱动器,进行持久化存储。对于消费者请求:当缓存代理(KafkaBroker)接收到读数据请求时,会向操作系统发送系统调用,操作系统首先从页面缓存中获取数据;如果在页面缓存中没有获取到数据,会触发缺页异常中断将数据从硬盘驱动器读入到临时缓冲区中,随后通过直接存储器访问(DMA)操作直接将数据拷贝到网卡缓冲区中等待后续的TCP传输。当Kafka支撑的实时作业数量太多时,会出现不同的消费者之间不停地竞争页面缓存资源,产生预期外的硬盘驱动器读取,导致整个Kafka集群的处理延迟上升和吞吐下降。
发明内容
针对现有技术中的问题,本发明实施例提供一种数据处理方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种数据处理方法,包括:
接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;
若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;
将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
另一方面,本发明提供一种数据处理装置,包括:
接收模块,用于接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;
查询模块,用于在根据所述信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据所述信息片段标识从缓存层查询对应的信息片段;
返回模块,用于将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述数据处理方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述数据处理方法的步骤。
本发明实施例提供的数据处理方法及装置,能够接收消费者终端发送的数据消费请求,在根据信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据信息片段标识从缓存层查询对应的信息片段,将查询获得的与信息片段标识对应的信息片段返回给消费者终端,在页面缓存中没有查询到对应的数据,可以从缓存层中获取对应的数据,减少从硬盘驱动器中读取数据,提高了数据的读取效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例提供的数据处理方法的流程示意图。
图2是本发明另一实施例提供的数据处理方法的流程示意图。
图3是本发明又一实施例提供的数据处理方法的流程示意图。
图4是本发明一实施例提供的数据处理装置的结构示意图。
图5是本发明另一实施例提供的数据处理装置的结构示意图。
图6是本发明又一实施例提供的数据处理装置的结构示意图。
图7是本发明再一实施例提供的数据处理装置的结构示意图。
图8是本发明还一实施例提供的数据处理装置的结构示意图。
图9是本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。
Kafka:Kakfa是一个分布式的基于发布/订阅模式的消息队列(message queue),主要应用于大数据的实时处理领域。
Kafka Broker:缓存代理,Kafka集群中的一台或者多台服务器统称为KafkaBroker。
Leader:为了保证高可用,Kafka会有一定数量的副本。如果有部分服务器不可用,副本所在的服务器就会顶替上来,保证应用的持续性。而为了保证较高的处理效率,消息的读写都是固定在一个副本上完成的,这个副本就是Leader。
集群:集群就是单机的多实例,在多个服务器上部署多个服务,每个服务就是一个节点,部署N个节点,处理业务的能力就提升大约N倍,这些节点的集合就叫做集群。
吞吐量:吞吐量是指对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量(以比特、字节、分组等测量)。
缓存命中率:始端用户访问节点时,如果该节点缓存了要被访问的数据时就叫做命中,否则就是没有命中。命中率=命中数/总数,缓存命中率是判断加速效果好坏的重要因素之一。
主题(Topic):Kafka处理资源的消息源的不同分类。
消息:通信的基本单位,每个生产者可以向一个主题发布消息;
生产者(Producer):消息的生成者;
消费者(Consumer):消息的使用者;
页面缓存(Page Cache):也叫文件缓冲,是由好几个磁盘块构成,大小通常为4k,在64位系统上为8k,构成的几个磁盘块在物理磁盘上不一定连续,文件的组织单位为一页,也就是一个page cache大小,文件读取是由外存上不连续的几个磁盘块,到buffer cache,然后组成page cache,然后供给应用程序。
Page cache在linux读写文件时,它用于缓存文件的逻辑内容,从而加快对磁盘上映像和数据的访问。
SSD:固态驱动器(Solid State Disk或Solid State Drive,简称SSD),俗称固态硬盘。固态硬盘是用固态电子存储芯片阵列制成的硬盘。固态硬盘的存储介质分为两种,一种是采用闪存(FLASH芯片)作为存储介质,另外一种是采用DRAM作为存储介质。
HDD:硬盘驱动器(Hard Disk Drive,简称HDD),通常被称为普通磁盘,是最基本的电脑存储器,我们电脑中常说的电脑硬盘C盘、D盘为磁盘分区都属于硬盘驱动器。
Kafka对于单一读写请求均拥有很好的吞吐和延迟。处理写请求时,数据写入PageCache后立即返回,数据通过异步方式批量刷入硬盘驱动器,既保证了多数写请求都能有较低的延迟,同时批量顺序刷盘对硬盘驱动器更加友好。处理读请求时,实时消费的作业可以直接从Page Cache读取到数据,请求延迟较小,大幅提升了数据传输的效率。但是,当Kafka支撑的实时作业数量太多时,会出现不同的消费者之间不停地竞争页面缓存资源,产生预期外的硬盘驱动器读取,导致整个kafka集群的处理延迟上升、吞吐下降。
根据对线上数据的统计,Page Cache最大可缓存数据跨度约为10分钟,而延迟范围在0-10分钟(认为是实时消费)的消费约占80%,因此,存在20%的消费是处于延迟消费的状态。
生产者通过生产者终端将数据发送到服务器,Page Cache会缓存这部分数据。当所有消费者的消费能力都充足时,所有的数据都会从Page Cache读取。但是如果其中一个消费者出现了消费延迟,根据读请求处理流程可知,此时会触发HDD读取,在从HDD读取数据的同时会预读部分数据到Page Cache中。当Page Cache空间不足时,可以按照最近最少使用的策略开始淘汰数据,此时延迟消费的请求读取到的数据会替换Page Cache中实时的缓存数据。后续当实时消费请求到达时,由于Page Cache中的数据已被替换掉,会产生预期外的硬盘驱动器读取。这样会导致两个缺点:(1)消费能力充足的消费者,在消费时失去了Page Cache的性能红利;(2)多个消费者相互影响,预期外的HDD读增多,硬盘驱动器的负载升高。
针对上述问题本发明实施例提供一种数据处理方法,实施成本低,能有效提升缓存命中率,降低硬盘驱动器读取,提升kafka集群吞吐量。下面以Kafka集群中的一台服务器作为执行主体为例,来说明本发明实施例提供的数据处理方法的具体实现过程。
图1是本发明一实施例提供的数据处理方法的流程示意图,如图1所示,本发明实施例提供的数据处理方法,包括:
S101、接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;
具体地,消费者在需要使用消息时,可以通过消费者终端向服务器发送数据消费请求,所述数据消费请求包括信息片段标识。信息片段标识与信息片段一一对应。信息片段标识可以包括多条数据,每条数据具有唯一对应的数据标识。其中,消费者终端包括但不限于台式机、笔记本电脑等。
S102、若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;
具体地,所述服务器在接收到所述数据消费请求之后,会根据所述信息片段标识从页面缓存中查询与所述信息片段标识对应的信息片段,如果在所述页面缓存中没有查询到对应的信息片段,那么根据所述信息片段标识从缓存层查询对应的信息片段。其中,缓存层是预设的,可以采用固态驱动器实现。
S103、将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
具体地,所述服务器如果根据所述信息片段标识从所述缓存层中查询到对应的信息片段,那么将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
本发明实施例提供的数据处理方法,能够接收消费者终端发送的数据消费请求,在根据信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据信息片段标识从缓存层查询对应的信息片段,将查询获得的与信息片段标识对应的信息片段返回给消费者终端,在页面缓存中没有查询到对应的数据,可以从缓存层中获取对应的数据,减少从硬盘驱动器中读取数据,提高了数据的读取效率。
在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理方法还包括:
若所述页面缓存的剩余存储空间小于预设值,则根据数据迁移规则将所述页面缓存中存储的信息片段迁移到所述缓存层,并标记为只缓存;其中,所述数据迁移规则是预设的。
具体地,生产者通过生成者终端产生的消息,会发送到所述服务器并以信息片段的形式存储到页面缓存中。所述服务器如果判断出所述页面缓存的剩余存储空间小于预设值,那么会根据数据迁移规则将所述页面缓存中存储的信息片段迁移到所述缓存层,以保证页面缓存可以继续存储新的数据,迁移到所述服务器的信息片段会标记为只缓存。标记为只缓存的信息片段会存储在缓存层中。其中,所述数据迁移规则是预设的,根据实际需要进行设置,本发明实施例不做限定。生成者终端包括但不限于台式机、笔记本电脑等。所述预设值根据实际需要进行设置,本发明实施例不做限定。
例如,所述数据迁移规则为迁移占页面缓存的至少十分之一存储空间的最旧的信息片段到缓存层。
在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理方法还包括:
根据数据拷贝规则将所述缓存层中的信息片段拷贝到硬盘驱动器中,并标记为已缓存;其中,所述数据拷贝规则是预设的。
具体地,由于缓存层的存储空间有限,所述服务器可以根据数据拷贝规则将所述缓存层中的信息片段拷贝到硬盘驱动器中,并将拷贝到硬盘驱动器中的信息片段标记为已缓存。缓存层中拷贝到硬盘驱动器中的信息片段不会在拷贝之后立刻删除,那么缓存层中的拷贝数据和硬盘驱动器中的拷贝数据都会标记为已缓存。标记为已缓存信息片段会同时存储在缓存层和硬盘驱动器上。其中,所述数据拷贝规则是预设的,根据实际需要进行设置,本发明实施例不做限定。预先将缓存层中的数据拷贝到硬盘驱动器中,当缓存层的存储空间不够迁移页面缓存中的数据时,可以直接删除标记为已缓存的信息片段,无需等待。
在上述各实施例的基础上,进一步地,所述数据拷贝规则包括:
每隔预设时间段拷贝一次数据或者在缓存层的存储空间的占用率大于设定值之后,拷贝一次数据。
具体地,所述数据拷贝规则包括每隔预设时间段拷贝一次数据,例如每隔10分钟拷贝一次数据,由于Kafka集群中的数据的消费频率随时间变化,越久远的数据消费频率越低,优先拷贝缓存层中最旧的信息片段。每个拷贝的数据的大小,根据实际需要进行设置,本发明实施例不做限定。其中,所述预设时间段根据时间需要进行设置,本发明实施例不做限定。
所述数据拷贝规则包括在缓存层的存储空间的占用率大于设定值之后,拷贝一次数据,例如缓存层的存储空间的占用率大于75%拷贝一次数据。优先拷贝缓存层中最旧的信息片段,每个拷贝的数据的大小,根据实际需要进行设置,本发明实施例不做限定。其中,所述设定值根据实际需要进行设置,本发明实施例不做限定。
图2是本发明另一实施例提供的数据处理方法的流程示意图,如图2所示,在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理方法还包括:
S201、若所述缓存层的剩余存储空间小于空间阈值,则从所述缓存层中删除标记为已缓存的信息片段;
具体地,所述服务器可以统计所述缓存层的剩余存储空间,如果所述缓存层的剩余存储空间小于空间阈值,为了保证缓存层的可用性,可以从所述缓存层中删除标记为已缓存的信息片段,从而增加所述缓存层的可用存储空间。其中,所述空间阈值根据实际需要进行设置,本发明实施例不做限定。
S202、将所述硬盘驱动器中标记为已缓存的信息片段更改标记为未缓存。
具体地,所述服务器在将所述缓存层中标记为已缓存的信息片段删除之后,会将硬盘驱动器中标记为已缓存的信息片段标记为未缓存。标记为未缓存的信息片段存储在硬盘驱动器中。
在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理方法还包括:
若根据所述信息片段标识在缓存层没有查询到对应的信息片段,则根据所述信息片段从硬盘驱动器中读取对应的信息片段。
具体地,所述服务器如果根据所述信息片段标识从所述缓存层中没有查询到对应的信息片段,那么可以根据所述信息片段表示从硬盘驱动器中查询对应的信息片段并从硬盘驱动器中读取对应的信息片段。
在上述各实施例的基础上,进一步地,所述缓存层通过固态驱动器实现。固态驱动器相对于硬盘驱动器读写速度较快,相对于页面缓存采用的磁盘块,可以降低成本,因此,通过固态驱动器实现缓存层,既降低了成本又提高了读写速度。此外,固态驱动器容易扩展,提高了缓存层的可扩展性。
SSD目前发展日益成熟,相较于HDD,SSD的IOPS与带宽拥有数量级级别的提升,很适合在Page Cache出现竞争后承接部分读流量。随着读取并发的增加,SSD的IOPS与带宽并不会显著降低,可以使用SSD作为Page Cache与HDD间的缓存层。
图3是本发明又一实施例提供的数据处理方法的流程示意图,如图3所示,本发明实施例提供的数据处理方法的实现流程如下:
第一步、接收数据消费请求。服务器接收消费者通过消费者终端发送的数据消费请求。其中,数据消费请求包括信息片段标识。
第二步、判断在页面缓存中是否命中数据。服务器根据信息片段标识从页面缓存中查询对应的信息片段,如果查询到对应的信息片段,那么在页面缓存中命中数据,进入第四步;如果没有查询到对应的信息片段,那么在页面缓存中没有命中数据,进入第三步。
第三步、判断在SSD中是否命中数据。服务器根据信息片段标识从SSD中查询对应的信息片段,如果查询到对应的信息片段,那么在SSD中命中数据,进入第五步;如果没有查询到对应的信息片段,那么在SSD中没有命中数据,进入第六步。
第四步、从页面缓存中获取数据。服务器根据信息片段标识从页面缓存中获取对应的信息片段,然后进入第七步。
第五步、从SSD中获取数据。服务器根据信息片段标识从SSD中获取对应的信息片段,然后进入第七步。
第六步、从HDD中获取数据。服务器根据信息片段标识从HDD中获取对应的信息片段,然后进入第七步。
第七步、响应数据消费请求。服务器将查询获得的与信息片段标识对应的信息片段返回给消费者终端。
本发明实施例提供的数据处理方法,针对Kafka集群由于Page Cache互相污染、进而引发Page Cache竞争导致实时作业被延迟作业影响的痛点,在Page Cache和HDD之间设置通过SSD实现的缓存层,能够降低数据读写耗时,使实时数据消费不受延迟数据消费的影响,成本低廉,可扩展性强,实现相对简单,且性能稳定。
图4是本发明一实施例提供的数据处理装置的结构示意图,如图4所示,本发明实施例提供的数据处理装置包括接收模块401、查询模块402和返回模块403,其中:
接收模块401用于接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;查询模块402用于在根据所述信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据所述信息片段标识从缓存层查询对应的信息片段;返回模块403用于将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
具体地,消费者在需要使用消息时,可以通过消费者终端向接收模块401发送数据消费请求,所述数据消费请求包括信息片段标识。信息片段标识与信息片段一一对应。信息片段标识可以包括多条数据,每条数据具有唯一对应的数据标识。其中,消费者终端包括但不限于台式机、笔记本电脑等。
在接收到所述数据消费请求之后,查询模块402会根据所述信息片段标识从页面缓存中查询与所述信息片段标识对应的信息片段,如果在所述页面缓存中没有查询到对应的信息片段,那么根据所述信息片段标识从缓存层查询对应的信息片段。其中,缓存层是预设的,可以采用固态驱动器实现。
返回模块403如果根据所述信息片段标识从所述缓存层中查询到对应的信息片段,那么将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
本发明实施例提供的数据处理装置,能够接收消费者终端发送的数据消费请求,在根据信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据信息片段标识从缓存层查询对应的信息片段,将查询获得的与信息片段标识对应的信息片段返回给消费者终端,在页面缓存中没有查询到对应的数据,可以从缓存层中获取对应的数据,减少从硬盘驱动器中读取数据,提高了数据的读取效率。
图5是本发明另一实施例提供的数据处理装置的结构示意图,如图5所示,在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理装置还包括迁移模块404,其中:
迁移模块404用于在所述页面缓存的剩余存储空间小于预设值之后,根据数据迁移规则将所述页面缓存中存储的信息片段迁移到所述缓存层,并标记为只缓存;其中,所述数据迁移规则是预设的。
图6是本发明又一实施例提供的数据处理装置的结构示意图,如图6所示,在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理装置还包括拷贝模块405,其中:
拷贝模块405用于根据数据拷贝规则将所述缓存层中的信息片段拷贝到硬盘驱动器中,并标记为已缓存;其中,所述数据拷贝规则是预设的。
在上述各实施例的基础上,进一步地,所述数据拷贝规则包括:
每隔预设时间段拷贝一次数据或者在缓存层的存储空间的占用率大于设定值之后,拷贝一次数据。
图7是本发明再一实施例提供的数据处理装置的结构示意图,如图7所示,在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理装置还包括删除模块406和更改模块407,其中:
删除模块406用于在所述缓存层的剩余存储空间小于空间阈值之后,从所述缓存层中删除标记为已缓存的信息片段;更改模块407用于将所述硬盘驱动器中标记为已缓存的信息片段更改标记为未缓存。
图8是本发明还一实施例提供的数据处理装置的结构示意图,如图8所示,在上述各实施例的基础上,进一步地,本发明实施例提供的数据处理装置还包括读取模块408,其中:
读取模块408用于在根据所述信息片段标识在缓存层没有查询到对应的信息片段之后,根据所述信息片段从硬盘驱动器中读取对应的信息片段。
在上述各实施例的基础上,进一步地,所述缓存层通过固态驱动器实现。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
需要说明的是,本发明实施例提供的数据处理方法及装置可用于金融领域,也可用于除金融领域之外的任意技术领域,本发明实施例对数据处理方法及装置的应用领域不做限定。
图9是本发明一实施例提供的电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)901、通信接口(Communications Interface)902、存储器(memory)903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。处理器901可以调用存储器903中的逻辑指令,以执行如下方法:接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;
若根据所述信息片段标识在页面缓存中没有查询到对应的信息片段,则根据所述信息片段标识从缓存层查询对应的信息片段;
将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述页面缓存的剩余存储空间小于预设值,则根据数据迁移规则将所述页面缓存中存储的信息片段迁移到所述缓存层,并标记为只缓存;其中,所述数据迁移规则是预设的。
3.根据权利要求1所述的方法,其特征在于,还包括:
根据数据拷贝规则将所述缓存层中的信息片段拷贝到硬盘驱动器中,并标记为已缓存;其中,所述数据拷贝规则是预设的。
4.根据权利要求3所述的方法,其特征在于,所述数据拷贝规则包括:
每隔预设时间段拷贝一次数据或者在缓存层的存储空间的占用率大于设定值之后,拷贝一次数据。
5.根据权利要求3所述的方法,其特征在于,还包括:
若所述缓存层的剩余存储空间小于空间阈值,则从所述缓存层中删除标记为已缓存的信息片段;
将所述硬盘驱动器中标记为已缓存的信息片段更改标记为未缓存。
6.根据权利要求1所述的方法,其特征在于,还包括:
若根据所述信息片段标识在缓存层没有查询到对应的信息片段,则根据所述信息片段从硬盘驱动器中读取对应的信息片段。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述缓存层通过固态驱动器实现。
8.一种数据处理装置,其特征在于,包括:
接收模块,用于接收消费者终端发送的数据消费请求,所述数据消费请求包括信息片段标识;
查询模块,用于在根据所述信息片段标识在页面缓存中没有查询到对应的信息片段之后,根据所述信息片段标识从缓存层查询对应的信息片段;
返回模块,用于将查询获得的与所述信息片段标识对应的信息片段返回给所述消费者终端。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
CN202110376683.0A 2021-04-08 2021-04-08 一种数据处理方法及装置 Pending CN113093994A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110376683.0A CN113093994A (zh) 2021-04-08 2021-04-08 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110376683.0A CN113093994A (zh) 2021-04-08 2021-04-08 一种数据处理方法及装置

Publications (1)

Publication Number Publication Date
CN113093994A true CN113093994A (zh) 2021-07-09

Family

ID=76675526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110376683.0A Pending CN113093994A (zh) 2021-04-08 2021-04-08 一种数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN113093994A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114089912A (zh) * 2021-10-19 2022-02-25 银联商务股份有限公司 基于消息中间件的数据处理方法及装置、存储介质
CN114089912B (zh) * 2021-10-19 2024-05-24 银联商务股份有限公司 基于消息中间件的数据处理方法及装置、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114089912A (zh) * 2021-10-19 2022-02-25 银联商务股份有限公司 基于消息中间件的数据处理方法及装置、存储介质
CN114089912B (zh) * 2021-10-19 2024-05-24 银联商务股份有限公司 基于消息中间件的数据处理方法及装置、存储介质

Similar Documents

Publication Publication Date Title
CN105740164B (zh) 支持缓存一致性的多核处理器、读写方法、装置及设备
CN107526546B (zh) 一种Spark分布式计算数据处理方法及系统
CN110555001B (zh) 数据处理方法、装置、终端及介质
US11093410B2 (en) Cache management method, storage system and computer program product
US9307024B2 (en) Efficient storage of small random changes to data on disk
EP3115904B1 (en) Method for managing a distributed cache
CN112506823B (zh) 一种fpga数据读写方法、装置、设备及可读存储介质
US10705977B2 (en) Method of dirty cache line eviction
CN110413545B (zh) 存储管理方法、电子设备和计算机程序产品
CN111930305A (zh) 数据的存储方法和装置、存储介质、电子装置
CN115617542A (zh) 内存交换方法、装置、计算机设备及存储介质
CN106164874B (zh) 多核系统中数据访问者目录的访问方法及设备
US9164904B2 (en) Accessing remote memory on a memory blade
KR102220468B1 (ko) 트랜잭션 지원을 가진 선점형 캐시 후기록
CN111857992A (zh) 一种Radosgw模块中线程资源分配方法和装置
CN113093994A (zh) 一种数据处理方法及装置
US11586353B2 (en) Optimized access to high-speed storage device
US11409673B2 (en) Triggered operations for collective communication
CN115495433A (zh) 一种分布式存储系统、数据迁移方法及存储装置
CN106873910B (zh) 一种基于openstack平台的SSD缓存方法
WO2024082702A1 (zh) 数据处理方法、装置、芯片以及计算机可读存储介质
EP4033346A1 (en) Affinity-based cache operation for a persistent storage device
CN116775560B (zh) 写分配方法、缓存系统、片上系统、电子组件及电子设备
CN115525219A (zh) 一种对象数据的存储方法、装置及介质
CN114816781A (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