CN107682424A - 一种针对海量数据高效缓存及管理的方法 - Google Patents

一种针对海量数据高效缓存及管理的方法 Download PDF

Info

Publication number
CN107682424A
CN107682424A CN201710869212.7A CN201710869212A CN107682424A CN 107682424 A CN107682424 A CN 107682424A CN 201710869212 A CN201710869212 A CN 201710869212A CN 107682424 A CN107682424 A CN 107682424A
Authority
CN
China
Prior art keywords
data
block
queue
message
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.)
Pending
Application number
CN201710869212.7A
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.)
Hunan Sheng Yun Photoelectric Technology Co Ltd
Original Assignee
Hunan Sheng Yun Photoelectric 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 Hunan Sheng Yun Photoelectric Technology Co Ltd filed Critical Hunan Sheng Yun Photoelectric Technology Co Ltd
Priority to CN201710869212.7A priority Critical patent/CN107682424A/zh
Publication of CN107682424A publication Critical patent/CN107682424A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种针对海量数据高效缓存及管理的方法,首先生成空闲内存队列块;启动网络数据接收功能时,采用异步接收技术,从空闲内存队列块中获取空闲消息块,如果空闲消息队列为空,则有系统申请内存块,将内存块赋予异步接收函数;当网络数据已经接收完成时,操作系统将自动调用异步处理函数,这时内存块将是已经存储网络消息的数据块,将包含网络消息的数据块加入网络数据消息队列,并通知数据库存储模块存储消息数据;本发明采用异步数据处理开发技术,使操作系统接收的网络数据直接存储于预分配的内存块,避免了频繁动态申请内存块,极大的提高了系统资源利用率;同时本发明采用队列缓存机制,可以使系统能够应付突发大量数据的存储。

Description

一种针对海量数据高效缓存及管理的方法
技术领域
本发明涉及数据处理技术领域,具体是一种针对海量数据高效缓存及管理的方法。
背景技术
目前采用双机备份的技术来保证数据采集的高可靠性,双机备份包括采集过程的备份以及后台数据的备份,当前后台数据库备份技术已经成熟,只需利用合理的数据库技术,就可以达到数据库引擎以及数据库存储的备份目的。
双机备份系统具有高可靠性、高实时性和高信息吞吐量,其数据库管理系统为完成其基本功能,可以使用动态内存分配子系统来获取内存空间。而常用的系统调用malloc()和free()存在着效率不够高、可能产生内存碎片的问题,而由于内存空间受限,内存碎片的产生可能会导致内存空间不足,造成数据库操作失败,从而影响系统的可靠性和安全性,这对于安全关键的系统是不可接受的。
另外,由于双机备份系统接收的数据处于高速海量网络数据,系统接收数据需要申请内存空间存储接收的网络数据,在高速环境下,频繁申请系统内存,一方面申请释放内存空间会消耗大量的内存资源,另一方面,也会造成系统存在大量的不可用空闲内存,这时尽管操作系统有内存管理机制合并内存块,但是不可避免也会消耗大量系统资源,极大地降低系统性能。
发明内容
本发明的目的在于提供一种针对海量数据高效缓存及管理的方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种针对海量数据高效缓存及管理的方法,具体步骤如下:
(1)首先生成空闲内存队列块;
(2)启动网络数据接收功能时,采用异步接收技术,从空闲内存队列块中获取空闲消息块,如果空闲消息队列为空,则有系统申请内存块,将内存块赋予异步接收函数;
(3)当网络数据已经接收完成时,操作系统将自动调用异步处理函数,这时内存块将是已经存储网络消息的数据块,将包含网络消息的数据块加入网络数据消息队列,并通知数据库存储模块存储消息数据;
(4)数据库存储模块从网络数据消息队列头获取存储数据的消息块,将网络数据存储于数据块,当消息队列中数据量大于5个时,则每次将5个数据块构造一个存储过程,一次将5个数据同时存入数据库,以提高数据存储效率;
(5)数据存储成功后,将插入成功的数据块内存插入空闲内存块队列。
与现有技术相比,本发明的有益效果是:
本发明通过申请内存使之成为空闲数据块,采用异步数据处理开发技术,使操作系统接收的网络数据直接存储于预分配的内存块,避免了频繁动态申请内存块,减少了大量的系统调用,极大的提高了系统资源利用率;同时本发明采用队列缓存机制,可以使系统能够应付突发大量数据的存储。
附图说明
图1为本发明的方法示意图。
具体实施方式
下面结合具体实施方式对本专利的技术方案作进一步详细地说明。
请参阅图1,一种针对海量数据高效缓存及管理的方法,具体步骤如下:
(1)首先生成空闲内存队列块;
(2)启动网络数据接收功能时,采用异步接收技术,从空闲内存队列块中获取空闲消息块,如果空闲消息队列为空,则有系统申请内存块,将内存块赋予异步接收函数;
(3)当网络数据已经接收完成时,操作系统将自动调用异步处理函数,这时内存块将是已经存储网络消息的数据块,将包含网络消息的数据块加入网络数据消息队列,并通知数据库存储模块存储消息数据;
(4)数据库存储模块从网络数据消息队列头获取存储数据的消息块,将网络数据存储于数据块,当消息队列中数据量大于5个时,则每次将5个数据块构造一个存储过程,一次将5个数据同时存入数据库,以提高数据存储效率;
(5)数据存储成功后,将插入成功的数据块内存插入空闲内存块队列。
本发明通过申请内存使之成为空闲数据块,采用异步数据处理开发技术,使操作系统接收的网络数据直接存储于预分配的内存块,避免了频繁动态申请内存块,减少了大量的系统调用,极大的提高了系统资源利用率;同时本发明采用队列缓存机制,可以使系统能够应付突发大量数据的存储。
上面对本专利的较佳实施方式作了详细说明,但是本专利并不限于上述实施方式,在本领域的普通技术人员所具备的知识范围内,还可以在不脱离本专利宗旨的前提下作出各种变化。

Claims (1)

1.一种针对海量数据高效缓存及管理的方法,其特征在于,具体步骤如下:
(1)首先生成空闲内存队列块;
(2)启动网络数据接收功能时,采用异步接收技术,从空闲内存队列块中获取空闲消息块,如果空闲消息队列为空,则有系统申请内存块,将内存块赋予异步接收函数;
(3)当网络数据已经接收完成时,操作系统将自动调用异步处理函数,这时内存块将是已经存储网络消息的数据块,将包含网络消息的数据块加入网络数据消息队列,并通知数据库存储模块存储消息数据;
(4)数据库存储模块从网络数据消息队列头获取存储数据的消息块,将网络数据存储于数据块,当消息队列中数据量大于5个时,则每次将5个数据块构造一个存储过程,一次将5个数据同时存入数据库,以提高数据存储效率;
(5)数据存储成功后,将插入成功的数据块内存插入空闲内存块队列。
CN201710869212.7A 2017-09-23 2017-09-23 一种针对海量数据高效缓存及管理的方法 Pending CN107682424A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710869212.7A CN107682424A (zh) 2017-09-23 2017-09-23 一种针对海量数据高效缓存及管理的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710869212.7A CN107682424A (zh) 2017-09-23 2017-09-23 一种针对海量数据高效缓存及管理的方法

Publications (1)

Publication Number Publication Date
CN107682424A true CN107682424A (zh) 2018-02-09

Family

ID=61137133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710869212.7A Pending CN107682424A (zh) 2017-09-23 2017-09-23 一种针对海量数据高效缓存及管理的方法

Country Status (1)

Country Link
CN (1) CN107682424A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144891A (zh) * 2018-07-20 2019-01-04 新华三技术有限公司 一种数据存储方法和装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203706B2 (en) * 2002-08-01 2007-04-10 Oracle International Corporation Buffered message queue architecture for database management systems with memory optimizations and “zero copy” buffered message queue
KR20080089986A (ko) * 2007-04-03 2008-10-08 삼성전자주식회사 휴대 단말기의 메시지 전송 방법 및 장치
CN101739296A (zh) * 2009-12-28 2010-06-16 广州菲音信息科技有限公司 数据处理系统和方法
CN101754169A (zh) * 2008-12-02 2010-06-23 中兴通讯股份有限公司 一种归属位置寄存器受理指令的业务管理方法及其系统
CN102279810A (zh) * 2011-08-11 2011-12-14 浪潮(北京)电子信息产业有限公司 一种网络存储服务器及其缓存数据的方法
CN102761489A (zh) * 2012-07-17 2012-10-31 中国科学技术大学苏州研究院 基于流水线模式的数据包零拷贝的核间通信方法
CN103024014A (zh) * 2012-12-03 2013-04-03 北京京东世纪贸易有限公司 通过消息队列的海量数据分发处理的方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203706B2 (en) * 2002-08-01 2007-04-10 Oracle International Corporation Buffered message queue architecture for database management systems with memory optimizations and “zero copy” buffered message queue
KR20080089986A (ko) * 2007-04-03 2008-10-08 삼성전자주식회사 휴대 단말기의 메시지 전송 방법 및 장치
CN101754169A (zh) * 2008-12-02 2010-06-23 中兴通讯股份有限公司 一种归属位置寄存器受理指令的业务管理方法及其系统
CN101739296A (zh) * 2009-12-28 2010-06-16 广州菲音信息科技有限公司 数据处理系统和方法
CN102279810A (zh) * 2011-08-11 2011-12-14 浪潮(北京)电子信息产业有限公司 一种网络存储服务器及其缓存数据的方法
CN102761489A (zh) * 2012-07-17 2012-10-31 中国科学技术大学苏州研究院 基于流水线模式的数据包零拷贝的核间通信方法
CN103024014A (zh) * 2012-12-03 2013-04-03 北京京东世纪贸易有限公司 通过消息队列的海量数据分发处理的方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144891A (zh) * 2018-07-20 2019-01-04 新华三技术有限公司 一种数据存储方法和装置

Similar Documents

Publication Publication Date Title
US20170192819A1 (en) Method and electronic device for resource allocation
CN107832100B (zh) 一种apk插件的加载方法及其终端
US20150213134A1 (en) Data query method and system and storage medium
CN104601696A (zh) 服务处理方法、服务调用框架、装置和架构
WO2015062228A1 (zh) 一种访问共享内存的方法和装置
CN112486913B (zh) 一种基于集群环境下的日志异步存储方法和设备
CN110069557B (zh) 数据传输方法、装置、设备及存储介质
US20230128085A1 (en) Data aggregation processing apparatus and method, and storage medium
CN110764688A (zh) 对数据进行处理的方法和装置
WO2021012795A1 (zh) 网络节点的调度方法、装置、电子设备和存储介质
CN105610917A (zh) 实现系统中同步数据修复的方法及系统
CN110704212A (zh) 一种消息处理方法及装置
CN107682424A (zh) 一种针对海量数据高效缓存及管理的方法
CN104391876A (zh) 一种静态数据存储及查询方法及系统
CN113037851A (zh) 一种基于存储实现的针对云手机系统超分的方法
CN106357557A (zh) 一种消息处理方法及装置
CN116126916A (zh) 一种基于智能网卡的数据查询方法、装置及设备
CN116366634A (zh) 一种文件下载方法、装置、终端、源服务器及介质
CN116185578A (zh) 计算任务的调度方法和计算任务的执行方法
CN106934044B (zh) 一种数据处理方法及装置
CN115629909A (zh) 业务数据处理的方法、装置、电子设备和存储介质
CN113744013B (zh) 订单号的生成方法、装置、服务器及存储介质
CN112231409B (zh) 数据库同步的初始化装载方法、装置、设备和存储介质
CN110851477B (zh) 流数据处理方法、装置、计算机设备和存储介质
US20130198138A1 (en) Model for capturing audit trail data with reduced probability of loss of critical data

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180209