[go: up one dir, main page]

CN104077368A - 一种调度监控系统历史数据两级缓存多阶段提交方法 - Google Patents

一种调度监控系统历史数据两级缓存多阶段提交方法 Download PDF

Info

Publication number
CN104077368A
CN104077368A CN201410271615.8A CN201410271615A CN104077368A CN 104077368 A CN104077368 A CN 104077368A CN 201410271615 A CN201410271615 A CN 201410271615A CN 104077368 A CN104077368 A CN 104077368A
Authority
CN
China
Prior art keywords
cache
historical data
submission
memory
data
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
CN201410271615.8A
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.)
NARI Technology Co Ltd
Electric Power Dispatch Control Center of Guangdong Power Grid Co Ltd
Original Assignee
NARI 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 NARI Technology Co Ltd filed Critical NARI Technology Co Ltd
Priority to CN201410271615.8A priority Critical patent/CN104077368A/zh
Publication of CN104077368A publication Critical patent/CN104077368A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种调度监控系统历史数据两级缓存多阶段提交方法。属于自动化调度监控领域,存在三个线程或者三个进程:请求处理线程/进程、内存转储线程/进程、历史数据提交线程/进程,它们各自负责不同的处理阶段。三个线程/进程在锁的控制下,互不干扰地使用两级缓存,并有序处理接受请求,进入内存缓存,提交历史数据的流程多个工作阶段,异常情况下,内存缓存的数据将溢出至硬盘缓存中,还存在一个处理异常情况的硬盘缓存处理阶段。使用本发明的方法,解决了无缓存历史数据提交方法的性能和可靠性问题及只用硬盘缓存带来的大I/O问题,为大型自动化调度监控系统提供了高效、可靠、安全的历史数据提交方式。

Description

一种调度监控系统历史数据两级缓存多阶段提交方法
技术领域
本发明属于自动化调度监控领域(譬如电网调度监控),尤指一种调度监控系统历史数据两级缓存多阶段提交方法,用于调度监控系统高效、可靠提交历史数据。
背景技术
对于大型自动化调度监控系统,一般都存在大量甚至海量的实时数据、计算数据采样到历史数据库的要求。一次提交一个测点的方式效率较低,且不能充分利用历史数据库批量提交的高效特性,这就需要将数据缓存,以便于批量提交。另外一方面,自动化调度监控系统在运行中,可能会出现商用数据库特别忙或者短时提交数据量特别大的情况,如果没有缓存,可能导致历史采样过程丢失历史数据。
传统的历史数据提交技术采用了文件缓存手段,这种方式简单可靠,对于中小型自动化调度监控系统,能够较好地保证历史采样数据的可靠提交。但是随着系统规模的扩大,这种方式带来的大文件I/O问题,该问题不仅会影响历史数据库库采样本身的性能,还会对调度系统其他模块的正常运行带来不利影响。
当前已有关于两级缓存的专利(基于两级缓存的快速组流方法,公告号:CN101986611A),但是上述两级缓存技术中,低速缓存存储大量待查询信息,告诉缓存存储频繁访问到的信息,该技术本质上是一种查询(“读”)用的两级缓存。
发明内容
本发明的目的是是提供一种调度监控系统历史数据两级缓存多阶段提交方法。解决无缓存的历史数据提交的性能和可靠性问题及硬盘缓存带来的大I/O问题。
为了解决上述技术问题,本发明披露了一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于,包括以下步骤:
1)历史数据提交服务包含内存队列缓存和文件缓存两种缓存,围绕这两种缓存有三个处理线程或进程。
2) 当外部请求提交的时候,请求处理线程/进程将请求以结构化的方式存入内存队列缓存。
3)正常情况下,历史数据库提交线程/进程会及时提交内存队列缓存中的请求,并清空内存已提交缓存队列,不会有信息写入文件缓存。
4) 但是当出现异常情况时(譬如历史数据库故障),已用内存队列缓存长度超过阈值后,内存转储线程/进程将把内存队列缓存的信息写入文件缓存,并清空内存队列缓存。
5) 当异常情况处理后,历史数据库提交线程/进程将优先提交文件缓存保存的采样数据。
6) 当所有文件缓存中的历史数据提交完毕后,然后再提交内存队列缓存中的数据。
分别以内存缓存和硬盘缓存做为内存队列缓存和文件缓存,通过两级缓存,进行历史数据提交。
历史数据提交线程或进程从两级缓存中批量读取历史信息,并提交到历史数据库中;优先从硬盘缓存中提交历史数据,只有硬盘缓存中所有数据提交到历史数据库后,才从内存缓存中提交数据。
本申请中的两级缓存是一种为了解决短时间内超过历史数据库处理能力的过多历史数据提交请求问题而设计的一种提交“写”的缓存,且与现有两级缓存不同的是,在向历史数据库提交成功后,缓存中的信息将被清除,减少了数据冗余,提高了数据处理能力和效率。
历史数据提交通过多个阶段完成。多个阶段是通过多个线程或多个进程来进行处理。
接收请求处理、内存转储硬盘、历史数据提交通过锁机制来防止两级缓存使用上的冲突。
本发明的工作原理为:
以内存、硬盘两级缓存为核心,存在三个线程或三个进程:请求处理线程/进程、内存转储线程/进程、历史数据提交线程/进程。请求处理线程在收到请求后,将请求以结构化的方式写入内存;内存转储线程/进程发现内存缓存使用超过阈值时,自动将内存中的缓存信息写入硬盘缓存,并清除内存缓存中已经写入硬盘缓存的内容;历史数据提交线程/进程从两级缓存中批量读取历史信息,并提交到历史数据库中,为了保证提交的时序性,优先从硬盘缓存中提交历史数据,只有硬盘缓存中所有数据提交到历史数据库后,才从内存缓存中提交数据。历史数据提交线程/进程在完成提交完数据后,将清除掉缓存中的数据。通过使用锁机制,保证三个线程/进程有序使用两级缓存,避免读写冲突的发生。
本发明所达到的有益效果:
采用本发明的方法,解决了无缓存历史数据提交方法的性能和可靠性问题及只用硬盘缓存带来的大I/O问题,为大型自动化调度监控系统提供了高效、可靠、安全的历史数据提交方式。
附图说明
图1为本发明的历史数据两级缓存多阶段提交方法原理图。
具体实施方式
下面是本发明的一个优选实施例,包括了采用本发明方法实现的一个具体的调度监控系统历史数据两级缓存多阶段提交过程。本发明的其它的特征、目的和优点也可以从实施例的说明中看出。调度监控系统历史数据两级缓存多阶段提交的原理如图1所示。
两级缓存中以进程私有内存或者共享内存作为高速缓存,以应对正常情况下的数据提交。高速缓存的空间要开得足够大,否则短时的大批量历史数据提交就可能导致高速缓存越过阈值甚至这块内存用尽,这就必然导致高速缓存中的信息频繁导出低速缓存—硬盘,进而会带来频繁的I/O,反而失去了使用两级缓存的优势。
系统存在三个线程或三个进程:请求处理线程/进程、内存转储线程/进程、历史数据提交线程/进程。
请求处理线程/进程在收到请求后,将请求以结构化的方式写入内存;内存转储线程/进程发现内存缓存使用超过阈值时,自动将内存中的缓存信息写入硬盘,并清除内存缓存中已经写入硬盘的内容;历史数据提交线程/进程从两级缓存中批量读取历史信息,并提交到数据库中,为了保证提交的时序性,优先从硬盘缓存中提交历史数据。
本发明按照优选实施例进行了说明,应当理解上述实施例不以任何形式限定本发明,凡采用等同替换或等效变换的形式所获得的技术方案,均落在本发明的保护范围之内。

Claims (6)

1.一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于,包括下列步骤:
1)    历史数据提交服务包含内存队列缓存和文件缓存两种缓存,围绕这两种缓存有三个处理线程或进程;
2)    当外部请求提交的时候,请求处理线程或进程将请求以结构化的方式存入内存队列缓存;
3)    正常情况下,历史数据库提交线程或进程提交内存队列缓存中的请求,并清空内存队列缓存中已提交的缓存队列;
4)    当出现异常情况时,已用内存队列缓存长度超过阈值后,内存转储线程或进程把内存队列缓存中的信息写入文件缓存,并清空内存队列缓存;
5)    当异常情况处理后,历史数据库提交线程或进程将优先提交文件缓存中保存的采样数据;
6)    当所有文件缓存中的历史数据提交完毕后,再提交内存队列缓存中的数据。
2. 根据权利要求1所述的一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于:分别以内存缓存和硬盘缓存做为内存队列缓存和文件缓存,通过两级缓存,进行历史数据提交。
3. 根据权利要求2所述的一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于:历史数据提交线程或进程从两级缓存中批量读取历史信息,并提交到历史数据库中;优先从硬盘缓存中提交历史数据,只有硬盘缓存中所有数据提交到历史数据库后,才从内存缓存中提交数据。
4. 根据权利要求1所述的一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于:历史数据提交通过多个阶段完成。
5. 根据权利要求4所述的一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于:多个阶段是通过多个线程或多个进程来进行处理。
6. 根据权利要求2所述的一种调度监控系统历史数据两级缓存多阶段提交方法,其特征在于:接收请求处理、内存转储硬盘、历史数据提交通过锁机制来防止两级缓存使用上的冲突。
CN201410271615.8A 2014-06-18 2014-06-18 一种调度监控系统历史数据两级缓存多阶段提交方法 Pending CN104077368A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410271615.8A CN104077368A (zh) 2014-06-18 2014-06-18 一种调度监控系统历史数据两级缓存多阶段提交方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410271615.8A CN104077368A (zh) 2014-06-18 2014-06-18 一种调度监控系统历史数据两级缓存多阶段提交方法

Publications (1)

Publication Number Publication Date
CN104077368A true CN104077368A (zh) 2014-10-01

Family

ID=51598622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410271615.8A Pending CN104077368A (zh) 2014-06-18 2014-06-18 一种调度监控系统历史数据两级缓存多阶段提交方法

Country Status (1)

Country Link
CN (1) CN104077368A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104391662A (zh) * 2014-12-12 2015-03-04 北京奇虎科技有限公司 一种数据读写方法及装置
CN107743137A (zh) * 2016-09-27 2018-02-27 腾讯科技(深圳)有限公司 一种文件上传方法及装置
CN108009008A (zh) * 2016-10-28 2018-05-08 北京市商汤科技开发有限公司 数据处理方法和系统、电子设备
CN109947798A (zh) * 2017-09-18 2019-06-28 中国移动通信有限公司研究院 一种流事件的处理方法及装置
CN112612424A (zh) * 2020-12-29 2021-04-06 江苏国科微电子有限公司 一种NVMe提交队列控制装置及方法
CN118714129A (zh) * 2024-07-26 2024-09-27 北京庚顿数据科技有限公司 基于数据采集的多策略断点续传系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1282043A2 (en) * 2001-02-09 2003-02-05 AT&T Corp. Database management system with a multiple-level cache arrangement
CN101986611A (zh) * 2010-11-30 2011-03-16 东南大学 基于两级缓存的快速组流方法
CN103246696A (zh) * 2013-03-21 2013-08-14 宁波公众信息产业有限公司 高并发数据库的访问方法及应用于多服务器系统的方法
CN103399856A (zh) * 2013-07-01 2013-11-20 北京科东电力控制系统有限责任公司 面向scada系统的爆发式数据缓存处理系统及其方法
WO2013175843A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processor, information processing method, and control program
CN103559217A (zh) * 2013-10-17 2014-02-05 北京航空航天大学 一种面向异构数据库的海量组播数据入库实现方法
CN103593307A (zh) * 2013-11-25 2014-02-19 湖南强军科技有限公司 一种电磁法勘探系统处理采集数据的方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1282043A2 (en) * 2001-02-09 2003-02-05 AT&T Corp. Database management system with a multiple-level cache arrangement
CN101986611A (zh) * 2010-11-30 2011-03-16 东南大学 基于两级缓存的快速组流方法
WO2013175843A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processor, information processing method, and control program
CN103246696A (zh) * 2013-03-21 2013-08-14 宁波公众信息产业有限公司 高并发数据库的访问方法及应用于多服务器系统的方法
CN103399856A (zh) * 2013-07-01 2013-11-20 北京科东电力控制系统有限责任公司 面向scada系统的爆发式数据缓存处理系统及其方法
CN103559217A (zh) * 2013-10-17 2014-02-05 北京航空航天大学 一种面向异构数据库的海量组播数据入库实现方法
CN103593307A (zh) * 2013-11-25 2014-02-19 湖南强军科技有限公司 一种电磁法勘探系统处理采集数据的方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104391662A (zh) * 2014-12-12 2015-03-04 北京奇虎科技有限公司 一种数据读写方法及装置
CN104391662B (zh) * 2014-12-12 2018-02-09 北京奇虎科技有限公司 一种数据读写方法及装置
CN107743137A (zh) * 2016-09-27 2018-02-27 腾讯科技(深圳)有限公司 一种文件上传方法及装置
CN107743137B (zh) * 2016-09-27 2020-03-17 腾讯科技(深圳)有限公司 一种文件上传方法及装置
CN108009008A (zh) * 2016-10-28 2018-05-08 北京市商汤科技开发有限公司 数据处理方法和系统、电子设备
CN109947798A (zh) * 2017-09-18 2019-06-28 中国移动通信有限公司研究院 一种流事件的处理方法及装置
CN112612424A (zh) * 2020-12-29 2021-04-06 江苏国科微电子有限公司 一种NVMe提交队列控制装置及方法
CN118714129A (zh) * 2024-07-26 2024-09-27 北京庚顿数据科技有限公司 基于数据采集的多策略断点续传系统
CN118714129B (zh) * 2024-07-26 2025-01-28 北京庚顿数据科技有限公司 基于数据采集的多策略断点续传系统

Similar Documents

Publication Publication Date Title
CN104077368A (zh) 一种调度监控系统历史数据两级缓存多阶段提交方法
EP2972844B1 (en) Method and apparatus for efficient scheduling for asymmetrical execution units
CN103399856B (zh) 面向scada系统的爆发式数据缓存处理系统及其方法
US9639280B2 (en) Ordering memory commands in a computer system
TWI397009B (zh) 基本輸入輸出系統的資料處理裝置
CN103617131B (zh) 一种实现数据缓存的方法
CN101872314B (zh) 用于多处理器的动态调度中断控制器
KR102386174B1 (ko) 키-벨류 장치를 포함하는 컴퓨터 시스템 및 그것의 인터럽트 처리 제공 방법
CN103034538B (zh) 一种嵌入式操作系统中驱动程序的多级缓存处理方法
CN105468298B (zh) 一种基于日志结构合并树的键值存储方法
CN109710312A (zh) 基于risc-v指令集的实时中断处理方法、装置及工控处理器
US9665466B2 (en) Debug architecture for multithreaded processors
US12260126B2 (en) SSD managed host write atomicity with arbitrary transfer length
TWI439925B (zh) 內嵌式系統及其執行緒與緩衝區管理方法
EP4163795A1 (en) Techniques for core-specific metrics collection
CN104461468A (zh) 基于处理器指令快速完成的精确异常维护方法及装置
CN103440279A (zh) 一种数据采集过程中的数据适配器及其数据适配方法
CN105630934A (zh) 一种数据统计方法及系统
CN113821175B (zh) 基于存储内容优先的ssd指令调度方法及系统
CN114020792B (zh) 实时数据库补历史数据方法、系统、存储介质及服务器
CN105487989A (zh) 一种降低响应延时提高系统效率的中断控制器及控制方法
CN106201918B (zh) 一种基于大数据量和大规模缓存快速释放的方法和系统
CN101770461B (zh) 数据处理方法及处理系统
CN102722450A (zh) 一种基于位置敏感哈希的删冗块设备存储方法
CN106484879B (zh) 一种基于MapReduce的Map端数据的聚合方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: POWER DISPATCHING CONTROL CENTER OF GUANGDONG POWE

Effective date: 20150724

C41 Transfer of patent application or patent right or utility model
C53 Correction of patent of invention or patent application
CB03 Change of inventor or designer information

Inventor after: Peng Hui

Inventor after: Wang Changpin

Inventor after: Wen Bojian

Inventor after: Wu Qingxi

Inventor after: Ji Huiying

Inventor after: Chen Zhidao

Inventor before: Peng Hui

Inventor before: Wang Changpin

Inventor before: Wen Bojian

Inventor before: Ding Hongen

Inventor before: Wu Qingxi

Inventor before: Ji Huiying

Inventor before: Chen Zhidao

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: PENG HUI WANG CHANGPIN WEN BOJIAN DING HONGEN WU QINGXI JI HUIYING CHEN ZHIDAO TO: PENG HUI WANG CHANGPIN WEN BOJIAN WU QINGXI JI HUIYING CHEN ZHIDAO

TA01 Transfer of patent application right

Effective date of registration: 20150724

Address after: High road high tech Zone of Nanjing City, Jiangsu Province, No. 20 210061

Applicant after: NARI Technology Development Co., Ltd.

Applicant after: POWER DISPATCH CONTROL CENTER, GUANGDONG POWER GRID CO., LTD.

Address before: High road high tech Zone of Nanjing City, Jiangsu Province, No. 20 210061

Applicant before: NARI Technology Development Co., Ltd.

CB03 Change of inventor or designer information

Inventor after: Peng Hui

Inventor after: Wen Baijian

Inventor after: Wang Changpin

Inventor after: Deng Dawei

Inventor after: Xu Zhanqiang

Inventor after: Liu Yang

Inventor after: Wu Qingxi

Inventor after: Ji Huiying

Inventor after: Chen Zhidao

Inventor before: Peng Hui

Inventor before: Wang Changpin

Inventor before: Wen Bojian

Inventor before: Wu Qingxi

Inventor before: Ji Huiying

Inventor before: Chen Zhidao

COR Change of bibliographic data
RJ01 Rejection of invention patent application after publication

Application publication date: 20141001

RJ01 Rejection of invention patent application after publication