CN106547481B - 一种数据预分配方法和设备 - Google Patents

一种数据预分配方法和设备 Download PDF

Info

Publication number
CN106547481B
CN106547481B CN201610864432.6A CN201610864432A CN106547481B CN 106547481 B CN106547481 B CN 106547481B CN 201610864432 A CN201610864432 A CN 201610864432A CN 106547481 B CN106547481 B CN 106547481B
Authority
CN
China
Prior art keywords
data
storage
predicted
attribute set
attribute
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
CN201610864432.6A
Other languages
English (en)
Other versions
CN106547481A (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.)
Zhejiang Uniview Technologies Co Ltd
Original Assignee
Zhejiang Uniview Technologies 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 Zhejiang Uniview Technologies Co Ltd filed Critical Zhejiang Uniview Technologies Co Ltd
Priority to CN201610864432.6A priority Critical patent/CN106547481B/zh
Publication of CN106547481A publication Critical patent/CN106547481A/zh
Application granted granted Critical
Publication of CN106547481B publication Critical patent/CN106547481B/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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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]

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

一种数据预分配方法和设备
技术领域
本发明涉及视频监控技术领域,尤其涉及一种数据预分配方法和设备
背景技术
随着监控***在交通领域重要性的不断加强,道路监控的应用越来越广泛,电子卡口抓拍过车图片的存储需求也在不断增加。图片的存储方式也由原来的集中存储慢慢地向分布式存储切换。
在分布式存储***中,针对单个卡口相机的卡口图片数据非连续、数据产生随机的特点,必须保证产生的数据能均匀分布在所有的数据节点上。针对所有卡口产生数据必须保证均匀地分布在各个存储设备上。从客户使用角度来讲,某时间段内的图片数据分布在不同数据节点的不同资源上,实现了图片的分布式存储,不会因为单台存储设备的宕机造成***的不可用。
在业内有代表性的分布式存储方案中,一种是通过每一个卡口客户端直接将数据流发给数据分发节点,再由该数据分发节点统一将数据转发到不同的数据节点上,这种方式虽然可以实现每一台存储节点都可接收到相同的数据量,但是该方案中对数据分发节点的依赖性比较强,单台设备出问题可能会造成多路卡口无法存储,并且该方案中图片数据流是由卡口先转发到数据分发节点,再有数据分发节点转发到存储数据节点,数据流路径较长,有数据丢失的风险;另一种是以时间粒度模拟任务数,再根据任务数在各个存储设备上尽可能保持一致来实现存储节点上的负载均衡,满覆盖则按照留存期来进行满覆盖,留存期日期以外的图片全部删除,但是这种方案虽然可以保证每个存储设备上的任务数相同,但是无法保证每个任务数存储的图片量相同,极大可能会导致某个存储设备提前将容量用完,所以相同任务数不代表相同图片量,没有达到容量均衡的效果,并且由于配额容量以卡口相机的最大速率来进行配置的,所以当卡口实际图片量远远小于最大图片量时,满覆盖按照留存期来进行,会导致存储的图片量与配额容量相差很大,空间使用率大大降低。
由此可见,现有的技术方案在实现负载均衡的过程中并未实现在容量上的负载均衡,同时也无法将存储设备的存储空间进行最大化的利用,因此,如何实现存储数据在容量上的负载均衡以及在实现负载均衡的同时提高存储设备的空间利用率成为了本领域技术人员亟待解决的问题。
发明内容
本发明提出了一种数据预分配方法和设备,以实现通过预测未来某一特定日期单位时间段内前端设备获取数据的数量,以使获取到的数据按照预测的数据存储量以分布式存储的方式存储在存储设备上,从而来达到容量上的负载均衡状态,同时实现存储设备容量的动态分配。
为了达到以上技术目的,本申请实施例提出了一种数据预分配方法,所述方法应用于包含多个前端设备以及多个存储设备的***中,该方法包括:
获取待预测日期的各个属性生成多个属性集合;
根据各所述属性集合中包含属性的数量以及类型,为各所述属性集合分配优先级;
根据所述优先级在数据库中获取预设时间段内与所述属性集合相应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量;
将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上所存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储。
优选的,根据各所述属性集合所包含属性的数量以及类型为各所述属性集合分配优先级,具体为:
根据各所述属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
根据各所述属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级;
其中,所述属性的类型至少包括节假日、年份、月份、星期数以及星期,所述节假日对应的重要程度高于其他属性类型对应的重要程度。
优选的,根据所述优先级在数据库中获取预设时间段内与所述属性集合对应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的每个单位时间段内的预测数据存储量,具体为:
确定与所述待预测日期对应的各属性集合的优先级;
从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内查找对应于当前属性集合的数据信息;
若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
优选的,所述方法还包括:
当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
当前端设备为不可预测前端时,将各所述可预测前端对应的预测数据存储量的平均值作为所述不可预测前端在所述待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
优选的,在将所述预测数据存储量平均分配到各个存储设备上之后,还包括:
当存储设备运行时,按照预设周期对所述存储设备进行扫描,判断所述存储设备的剩余容量是否小于预设阈值;
若所述存储设备的剩余容量小于预设阈值,则删除与所述预测数据存储量大小相同的存储数据;
若所述存储设备的剩余容量不小于预设阈值,则继续按照预设周期对所述存储设备继续进行扫描。
相应的,本申请实施例还提出了一种数据预分配设备,所述设备应用于包含多个前端设备以及多个存储设备的***中,该设备包括:
获取模块:获取待预测日期的各个属性生成多个属性集合;
第一分配模块:根据各所述属性集合中包含属性的数量以及类型,为各所述属性集合分配优先级;
确定模块:根据所述优先级在数据库中获取预设时间段内与所述属性集合相应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量;
第二分配模块:将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上报存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储。
优选的,所述第一分配模块具体用于:
根据各所述属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
根据各所述属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级;
其中,所述属性的类型至少包括节假日、年份、月份、星期数以及星期,所述节假日对应的重要程度高于其他属性类型对应的重要程度。
优选的,所述确定模块具体用于:
确定与所述待预测日期对应的各属性集合的优先级;
从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内查找对应于当前属性集合的数据信息;
若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
优选的,所述确定模块还用于:
当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
当前端设备为不可预测前端时,将各所述可预测前端对应的预测数据存储量的平均值作为所述不可预测前端在所述待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
优选的,所述设备还包括:
判断模块:当存储设备运行时,按照预设周期对所述存储设备进行扫描,判断所述存储设备的剩余容量是否小于预设阈值;
删除模块:若所述存储设备的剩余容量小于预设阈值,则删除与所述预测数据存储量大小相同的存储数据;
扫描模块:若所述存储设备的剩余容量不小于预设阈值,则继续按照预设周期对所述存储设备继续进行扫描。
与现有技术相比,本申请实施例所提出的技术方案的有益技术效果包括:
本申请实施例公开了一种数据预分配方法,通过现有的存储数据预测未来某一特定时间对应的数据存储量,进而将实际获取到的存储数据按照预测出来的数据存储量均匀存储在每个存储设备上,同时对于每个存储设备的剩余容量进行检测,在剩余容量不足时根据预测的数据存储量删除相应的存储数据。通过应用本申请提出的方案,根据预测的数据存储量来将实际获取到的数据量均匀分配到各个存储设备上,从而达到了容量上的负载均衡,通过检测存储设备的剩余容量实现了数据容量的动态配额管理。
附图说明
图1为本申请实施例中提出的一种数据预分配方法流程示意图;
图2为本申请实施例中提出的一种利用环比建模预测未来某一时间卡口数据存储量的方法流程示意图;
图3为具体的应用场景中按照不同的准确度查找历史数据时在不同准确度之切换的流程示意图;
图4为具体的应用场景中每个卡口将图片平均存储在各个存储设备上的方案示意图;
图5为具体的应用场景中分布式存储组网方案示意图;
图6为本申请实施例中提出的一种数据预分配设备的结构示意图。
具体实施方式
如背景技术所述,在现有的分布式存储方案中,通过分发节点来实现数据的分布式存储对分发节点依赖性强,且由于数据路径较长存在数据丢失的风险,而通过模拟任务数的方式来实现负载均衡虽然可以保证每个存储设备上的任务数相同,但是无法保证每个任务数存储的数据量相同,所以仍然无法达到容量上的负载均衡。
本申请实施例提出了一种数据预分配方法,通过获取现有存储数据来预测未来某一特定时间对应的数据存储量,进而在实际的数据存储过程中可以将实际获取到的存储数据按照预测出来的数据存储量均匀存储在每个存储设备上,从而对于实际获取到的数据的存储实现了存储容量上的负载均衡。
如图1所示,为本申请实施例中提出的一种数据预分配方法的流程示意图,所述方法具体包括以下步骤:
步骤101:获取待预测日期的各个属性,并根据各所述属性生成多种属性集合。
如背景技术所述,现有的技术方案在进行数据分布式存储的过程中,都是在获取到待存储数据之后,再将待存储的数据按照不同的方式来进行存储来达到负载均衡的效果。但是通过这样的方式常常需要依赖其他的一些客观条件,例如通过分发节点来将获取到的数据统一转发到不同的数据节点上时,若分发节点出现故障,则会导致多个数据节点无法使用。因此,本申请提出了一种根据现有数据库中存储的数据来对未来某一时刻的数据存储量进行预测并将预测的数据存储量平均分配到各个存储设备上的方法,来避免获取到数据之后再分配可能出现的问题。
由于本方法是根据待预测日期对应的属性在数据库中进行历史数据的查找来完成对待预测日期某一时刻的数据存储量进行预测的,所以在进行预测之前需要首先确定待预测日期对应的属性、属性类型以及这些属性之间可以形成的属性集合,为后续根据属性集合在数据库中查找历史数据提供基础。
其中,属性的类型至少包括:节假日、年份、月份、星期数以及星期。
步骤102:根据各所述属性集合中包含属性的数量以及类型,为各所述属性集合分配优先级。
由于生成的属性集合信息有多个,所以在根据属性集合信息在数据库中查找历史数据时会出现不同的查找结果,而不同的查找结果对应的预测结果也是不同的,有些预测结果对应的准确度相对较高,预测的数据存储量与实际获取到的数据之间的差异较小;而有些预测结果对应的准确度相对较低,预测的数据存储量与实际获取到的数据之间的差异较大。因此,在进行数据存储量预测之前,需要为不同的属性集合分配相应的优先级,进而按照优先级从高到低的顺序在数据库中进行查找,以使之后根据查找结果预测的数据存储量可以更加精确。
在本申请优选实施例中,在确定了待预测日期对应的属性并根据这些属性生成相应的属性集合之后,需要根据各属性集合中包含属性的数量以及类型为生成的多个属性集合分配优先级,具体的可以通过以下的步骤来实现:
1)、根据各属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
2)、根据各属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级;
需要说明的是,在所有的属性类型中,节假日对应的重要程度高于其他属性类型对应的重要程度,其他属性类型的重要程度从高到底依次为:年份>月份>星期数>星期;也就是说如果属性集合中包含节假期属性,则优先按照节假日属性在数据库中查找相应的历史数据。
在具体的应用场景中,假设待预测日期是明天,对应明天的日期属性集合可以有如下几种情况:
a、假设明天是存储图片的第i天,以历史最近3天的数据来预测明天的数据,预测值与实际值相比的准确度为v1;
b、假设明天是存储图片的第i周的周j,以历史最近3周的每周的周n的数据来预测明天的数据,预测值与实际值相比的准确度为v2;
c、假设明天是存储图片的第m个月的i周的周j,以历史最近3个月的每月第i周的周j的数据来预测明天的数据,预测值与实际值相比的准确度为v3;
d、假设明天是存储图片的第n年第m月第i周的周j,以历史最近3年m月第i周的周j的数据来预测明天的数据,预测值与实际值相比较的准确度为v4;
e、假设明天是特殊日子,如十一黄金周、五一节假日、中秋节等等,以历史近3年的该天来预测明天的数据,预测值与实际值相比较的准确度为v5。
通常情况下,以上5个准确度的排序为v1<v2<v3<v4<v5,所以在本方案中分配优先级对应的顺序为:5>4>3>2>1。
步骤103:根据所述优先级在数据库中获取预设时间段内与所述属性集合相应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量。
在通过上述步骤102中的方式确定了各个属性集合对应的优先级之后,为了能够准确的对未来某一时刻的数据存储量进行预测,在确定了各个属性集合的优先级之后,需要按照属性集合优先级从高到低的顺序在数据库中查找是否存在相应的历史数据,在查找的过程中优先考虑优先级最高的属性集合,若无法找到相应的历史数据,则在数据库中查找是否存在对应于次高优先级属性集合的历史数据,依次类推。通过这样的方式可以是预测出的数据存储量与未来时间实际获取到的数据存储量更加接近,从而更好的实现数据存储在容量上的附在均衡。
在本申请优选实施例中,根据优先级在数据库中查找预设时间段内与待预测日期属性相同的数据,并以该数据作为前端设备在待预测日期对应的每个单位时间段内的预测数据存储量,具体可以通过以下步骤来实现:
1)、确定与所述待预测日期对应的各属性集合的优先级;
2)、从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内获取对应于当前属性集合的数据信息;
3)、若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
4)、若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
在本申请优选实施例中,当确定了前端设备对应的预测类型之后,可以通过如下的步骤进一步确定各个前端设备在待预测日期每个单位时间内的预测数据存储量:
1)、当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
2)、当前端设备为不可预测前端时,将各可预测前端对应的预测数据存储量的平均值作为不可预测前端在待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
在具体的应用场景中,数据库会首先记录一段时间的日历,如从2000年开始到3000年的日历。每个卡口相机会根据当天的日期,每存储一个环比时间就会将此个环比时间内的图片数量记录在对应的数据库表中,即记录在某年某月某星期某日某个环比时间中,并且再将一些特殊的日子记录在一张数据表中,如十一、五一、中秋节、春节等。
在将历史数据按照上述方式进行存储之后,确认待预测的日期,即哪一年哪一月的第几周的周几以及几号,例如2016年8月份第3周的周一。根据该日期查找对应的日历,判断该天是否为特殊节假日,若为特殊节假日,则查找数据库对应前3年该节的数据,能完全找到3天的数据则根据这些数据通过环比建模预测明天各个环比时间的图片数量。若无法找到或找全对应的3天的数据,则查看能否找到前3年即2015,2014和2013年的8月份的第三周的周一,若能找到则建模计算;若找不到,则查看能否找前3个月即2016年5,6,7月第三周周一的数据,若能找到则建模计算;若找不到则查看能否找到前三周对应的周一的数据,若能找到则建模计算;若找不到则察看前三天的数据,若能找到则建模计算;若找不到则返回无法预测。
对于无法预测的卡口,将各可预测卡口对应的预测数据存储量的平均值作为当前无法预测的卡口的在每个存储设备上将要存储的数据量。
步骤104:将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上所存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储。
在将各前端设备的预测数据存储量平均分配到各个存储设备上之后,开始进行数据的获取和存储时,当某个前端设备在一个存储设备上存储了预期的数据量时则会切换存储设备进行存储,当切换到最后一个存储设备上时则一直进行数据存储到单位时间节点为止。
在本申请优选实施例中,在按照上述方法将预测的数据存储量平均分配到各个存储设备之后,可以通过以下的步骤来实现存储设备存储空间的动态配额管理:
1)、当存储设备运行时,按照预设周期对存储设备进行扫描,判断存储设备的剩余容量是否小于预设阈值;
2)、若存储设备的剩余容量小于预设阈值,则删除与预测数据存储量大小相同的存储数据;
3)、若存储设备的剩余容量不小于预设阈值,则继续按照预设周期对存储设备继续进行扫描。
与现有技术相比,本申请实施例所提出的技术方案的有益技术效果包括:
本申请实施例公开了一种数据预分配方法,通过现有的存储数据预测未来某一特定时间对应的数据存储量,进而将实际获取到的存储数据按照预测出来的数据存储量均匀存储在每个存储设备上,同时对于每个存储设备的剩余容量进行检测,在剩余容量不足时根据预测的数据存储量删除相应的存储数据。通过应用本申请提出的方案,根据预测的数据存储量来将实际获取到的数据量均匀分配到各个存储设备上,从而达到了容量上的负载均衡,通过检测存储设备的剩余容量实现了数据容量的动态配额管理。
为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。
如图2所示,为本申请优选实施例中提出的一种利用环比建模预测未来某一时间卡口数据存储量的方法流程示意图,该方法具体包括如下步骤:
步骤201:建立环比计量模型。
单位时间 历史日期 day1 day2 day3
0:00-2:00 a1 b1 c1
2:00-4:00 a2 b2 c2
4:00-6:00 a3 b3 c3
6:00-8:00 a4 b4 c4
8:00-10:00 a5 b5 c5
10:00-12:00 a6 b6 c6
12:00-14:00 a7 b7 c7
14:00-16:00 a8 b8 c8
16:00-18:00 a9 b9 c9
18:00-20:00 a10 b10 c10
20:00-22:00 a11 b11 c11
22:00-24:00 a12 b12 c12
24h总共 a b c
表1
在获取到历史3天的数据之后,可以通过如下步骤来对未来某一时刻卡口相机单位时间内存储的图片进行预测:
1)、计算3天中相同的单位时间的平均图片数量A,即Ai=(ai+bi+ci)/3,按照这个方式可以得到其他时间段的平均值A1-A12;
2)、计算出3天中每个小时存储图片数量的平均值B,即B=(a+b+c)/36;
3)、计算出各个时间段的环比计量C,即Ci=Ai/B,可以得到各个时间段的环比计量C1-C12;
4)、利用最小平方法建立环比计量预测模型
Yi=(a+bt)*Ci
其中,Yi为第i个环比时间(对应于之前的单位时间)的预测值,Ci为第i环比时间的环比计量,(a+bt)为回归直线方程函数,其中a和b为待定系数需通过历史值利用最小二乘法求出,t为预测的环比时间数;
5)、利用公式求出Y=a+bt中的a和b的值(其中∑t=0)
Figure BDA0001123919290000131
Figure BDA0001123919290000132
其中y为一天中单位两小时的图片量,n=36
其中t=-35,-33,…,-1,1,3,…,35
6)、在分别确定了系数a、b之后,可以根据具体的环比时间进行预测明天各个时间段的图片数量,如
0:00-2:00预估值Y=(a+b*37)*C1
4:00-6:00预估值Y=(a+b*41)*C3
…以此类推,通过以上方式即可根据现有三天的存储数据对明天的数据存储量进行预测。
步骤202:通过反复修正是预测数据趋于精确。
如步骤201中所述,该方法通过历史数据来预测未来一天的各个单位时间段的卡口图片数量。但是不同的历史数据所预测出来值的准确度不同,以下为不同原始数据预测出的数据的对应的准确度:
假设明天是存储图片的第i天,以历史最近3天的数据来预测明天的数据,预测值与实际值相比的准确度为v1;
假设明天是存储图片的第i周的周j,以历史最近3周的每周的周n的数据来预测明天的数据,预测值与实际值相比的准确度为v2;
假设明天是存储图片的第m个月的i周的周j,以历史最近3个月的每月第i周的周j的数据来预测明天的数据,预测值与实际值相比的准确度为v3;
假设明天是存储图片的第n年第m月第i周的周j,以历史最近3年m月第i周的周j的数据来预测明天的数据,预测值与实际值相比较的准确度为v4;
假设明天是特殊日子,如十一黄金周、五一节假日、中秋节等等,以历史近3年的该天来预测明天的数据,预测值与实际值相比较的准确度为v5;
通常情况下,以上5个准确度的排序为v1<v2<v3<v4<v5,所以在本方案中预测的方案选取历史数据的优先级应从v5到v1来进行,即优先考虑准确度高的,无法获取到相应的数据则次之,以此类推。
如图3所示,为本申请实施例中按照不同的准确度查找历史数据时在不同准确度之切换的流程示意图,具体的切换流程如下:
首先,在数据库中会记录从2000年开始到3000年的日历。每个卡口相机会根据当天的日期,每存储一个环比时间就会将此个环比时间内的图片数量记录在对应的数据库表中,即记录在某年某月某星期某日某个环比时间中。并且再将一些特殊的日子记录在一张数据表中,如十一、五一、中秋节、春节等。
确认待预测的日期,即哪一年哪一月的第几周的周几以及几号,例如2016年8月份第3周的周一。根据该日期查找对应的日历,判断该天是否为特殊节假日,若为特殊节假日,则查找数据库对应前3年该节的数据,能完全找到3天的数据则根据这些数据通过环比建模预测明天各个环比时间的图片数量。若无法找到或找全对应的3天的数据,则查看能否找到前3年即2015,2014和2013年的8月份的第三周的周一,若能找到则建模计算;若找不到,则查看能否找前3个月即2016年5,6,7月第三周周一的数据,若能找到则建模计算;若找不到则查看能否找到前三周对应的周一的数据,若能找到则建模计算;若找不到则察看前三天的数据,若能找到则建模计算;若找不到则返回无法预测。
需要说明的是,对于无法通过上述环比建模预测的卡口,其在未来某一特定日期对应的单位时间段内的数据存储量的预测值,通过可以由环比建模进行预测的卡口对应的预测存储数据量来进行确定,具体的将可预测的卡口相机对应的预测数据存储量的平均值作为无法预测的卡口相机对应的预测数据存储量。
步骤203:通过预测数据实现存储负载均衡。
通过前述步骤的预测方法,我们在存储图片之前就知道了每个卡口相机在单位时间内要存储的图片数量。在知道所有卡口相机即将存储2小时内的图片量的前提下,可以将容量平均地存储在各个存储设备上,以达到负载均衡的效果。在知道各个卡口的图片量的情况下,可以根据当前***中存储设备的个数来计算出每个卡口平均写到各个存储设备上的图片量,即“卡口图片量/存储设备数量”就是每个存储设备在接下来2小时中要存储该卡口相机的图片数量。这样就可以将接下来两个小时的图片量平均地分配到各个存储设备上。存储时在一个存储设备上将预定的图片量存储下之后就切换存储设备继续存储。如图4所示,为每个卡口将图片平均存储在各个存储设备上的示意图。
步骤204:对任务数进行维护。
一个卡口相机在某个存储设备上写数据作为一个任务数。在确定了每个卡口未来两小时内在各个存储设备上预期要存储的图片量之后,当一个卡口在一个存储设备上写了预期要存储的图片数量时则会切换存储设备存储,当切换到最后一个存储设备上时则一直写到2个小时的时间节点为止。
当新的2个小时开始时,当第一个卡口写第一张图片时会在所有存储设备中选择一个任务数最少的,任务数一样则随机选取。第二个卡口来写时则也是通过任务数最少的策略来选择,之后以此类推。当第一个卡口在存储设备1上已经写完了该写的图片量则会切换存储设备,选择策略为首先只选择此次2个小时区段中未选择过的存储设备,第二同样遵循选择任务数最少的存储设备。通过上述方法来将流量分配到不同的存储设备上,不会造成所有的卡口相机同时往一个存储设备上写入的情况,如图5所示,为本申请实施例中提出的分布式存储组网方案示意图。
步骤205:容量配额管理及满覆盖处理。
在知道每个卡口图片量的前提下,可以计算出每个存储设备在将来的2小时中将要存储的图片数量。
在所有的存储设备运行时,每小时会对存储设备上的剩余容量进行扫描,当发现剩余容量少于一定值(通过***中卡口和存储设备数量计算出一个合适值)时,则进行满覆盖删除,删除接下来2小时中要存储的图片量的空间大小。
通过该方法可以动态管理容量来进行满覆盖,使存储设备空闲最少的容量来存储图片,进而使存储设备的空间利用率变大。
本申请实施例中提出的利用环比建模预测图片存储量的方式在实现负载均衡的方法上明显优于现有的实现负载均衡的技术方案,通过环比建模预测未来某一时间段对应的图片获取量,并且对预测结果进行不断修正得到更加接近于真实值的预测值,将与预测值对应的数据存储量平均分配在各个存储设备上,从而使各存储设备在实际存储图片的过程中可以按照预分配的图片存储量进行存储,这样就可以在图片容量上实现负载均衡,同时通过定期扫描存储设备,满覆盖删除需求容量的方式,有效提高了存储设备的存储空间利用率。
为更清楚地说明本申请前述实施例提供的方案,基于与上述方法同样的发明构思,本申请实施例还提出了一种数据预分配设备,其结构示意图如图6所示,该数据预分配设备应用于包括多个前端设备和多个存储设备的***中,该设备具体包括:
获取模块610:获取待预测日期的各个属性生成多个属性集合;
第一分配模块620:根据各所述属性集合中包含属性的数量以及类型,为各所述属性集合分配优先级;
确定模块630:根据所述优先级在数据库中获取预设时间段内与所述属性集合相应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量;
第二分配模块640:将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上所存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储。
在具体的应用场景中,所述第一分配模块620具体用于:
根据各所述属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
根据各所述属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级;
其中,所述属性的类型至少包括节假日、年份、月份、星期数以及星期,所述节假日对应的重要程度高于其他属性类型对应的重要程度。
在具体的应用场景中,所述确定模块630具体用于:
确定与所述待预测日期对应的各属性集合的优先级;
从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内查找对应于当前属性集合的数据信息;
若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
在具体的应用场景中,所述确定模块630还用于:
当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
当前端设备为不可预测前端时,将各所述可预测前端对应的预测数据存储量的平均值作为所述不可预测前端在所述待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
在具体的应用场景中,所述设备还包括:
判断模块650:当存储设备运行时,按照预设周期对所述存储设备进行扫描,判断所述存储设备的剩余容量是否小于预设阈值;
删除模块660:若所述存储设备的剩余容量小于预设阈值,则删除与所述预测数据存储量大小相同的存储数据;
扫描模块670:若所述存储设备的剩余容量不小于预设阈值,则继续按照预设周期对所述存储设备继续进行扫描。
由此可见通过现有的存储数据预测未来某一特定时间对应的数据存储量,进而将实际获取到的存储数据按照预测出来的数据存储量均匀存储在每个存储设备上,同时对于每个存储设备的剩余容量进行检测,在剩余容量不足时根据预测的数据存储量删除相应的存储数据。通过应用本申请提出的方案,根据预测的数据存储量来将实际获取到的数据量均匀分配到各个存储设备上,从而达到了容量上的负载均衡,通过检测存储设备的剩余容量实现了数据容量的动态配额管理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (8)

1.一种数据预分配方法,其特征在于,所述方法应用于包含多个前端设备以及多个存储设备的***中,该方法包括:
获取待预测日期的各个属性,并根据各所述属性生成多种属性集合;
根据各所述属性集合所包含属性的数量以及类型,为各所述属性集合分配优先级;
根据所述优先级在数据库中获取预设时间段内与所述属性集合对应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量;
将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上所存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储;
所述根据各所述属性集合所包含属性的数量以及类型为各所述属性集合分配优先级,具体为:
根据各所述属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
根据各所述属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级。
2.如权利要求1所述的方法,其特征在于,根据所述优先级在数据库中获取预设时间段内与所述属性集合对应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量,具体为:
确定与所述待预测日期对应的各属性集合的优先级;
从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内查找对应于当前属性集合的数据信息;
若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
3.如权利要求2所述的方法,其特征在于,还包括:
当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
当前端设备为不可预测前端时,将各所述可预测前端对应的预测数据存储量的平均值作为所述不可预测前端在所述待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
4.如权利要求3所述的方法,其特征在于,在将所述预测数据存储量平均分配到各个存储设备上之后,还包括:
当存储设备运行时,按照预设周期对所述存储设备进行扫描,判断所述存储设备的剩余容量是否小于预设阈值;
若所述存储设备的剩余容量小于预设阈值,则删除与所述预测数据存储量大小相同的存储数据。
5.一种数据预分配设备,其特征在于,所述设备应用于包含多个前端设备以及多个存储设备的***中,该设备包括:
获取模块:获取待预测日期的各个属性生成多个属性集合;
第一分配模块:根据各所述属性集合中包含属性的数量以及类型,为各所述属性集合分配优先级;
确定模块:根据所述优先级在数据库中获取预设时间段内与所述属性集合相应的数据,并以所述数据作为所述前端设备在所述待预测日期对应的单位时间段内的预测数据存储量;
第二分配模块:将所述预测数据存储量平均分配到各个存储设备上,以使所述前端设备在一个存储设备上所存储的数据量达到所述预测数据存储量时切换至下一个存储设备继续进行存储;
所述第一分配模块具体用于:
根据各所述属性集合中包含的属性数量个数,确定包含属性数量多的属性集合对应的优先级高于包含属性数量少的属性集合对应的优先级;
根据各所述属性集合中包含的属性类型的重要程度,确定包含的属性类型的重要程度高的属性集合对应的优先级高于包含的属性类型的重要程度低的属性集合对应的优先级;
其中,所述属性的类型至少包括节假日、年份、月份、星期数以及星期,所述节假日对应的重要程度高于其他属性类型对应的重要程度。
6.如权利要求5所述的设备,其特征在于,所述确定模块具体用于:
确定与所述待预测日期对应的各属性集合的优先级;
从优先级最高的属性集合开始,遍历所述数据库,在预设时间段内查找对应于当前属性集合的数据信息;
若存在对应于当前属性集合的数据信息,确定当前的前端设备为可预测前端;
若不存在对应于当前属性集合的数据信息,确定当前的前段设备为不可预测前端。
7.如权利要求6所述的设备,其特征在于,所述确定模块还用于:
当前端设备为可预测前端时,分别确定各可预测前端在待预测日期对应的单位时间段内的预测数据存储量;
当前端设备为不可预测前端时,将各所述可预测前端对应的预测数据存储量的平均值作为所述不可预测前端在所述待预测日期对应的单位时间段内在各所述存储设备上的平均预测数据存储量。
8.如权利要求7所述的设备,其特征在于,所述设备还包括:
判断模块:当存储设备运行时,按照预设周期对所述存储设备进行扫描,判断所述存储设备的剩余容量是否小于预设阈值;
删除模块:若所述存储设备的剩余容量小于预设阈值,则删除与所述预测数据存储量大小相同的存储数据;
扫描模块:若所述存储设备的剩余容量不小于预设阈值,则继续按照预设周期对所述存储设备继续进行扫描。
CN201610864432.6A 2016-09-29 2016-09-29 一种数据预分配方法和设备 Active CN106547481B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610864432.6A CN106547481B (zh) 2016-09-29 2016-09-29 一种数据预分配方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610864432.6A CN106547481B (zh) 2016-09-29 2016-09-29 一种数据预分配方法和设备

Publications (2)

Publication Number Publication Date
CN106547481A CN106547481A (zh) 2017-03-29
CN106547481B true CN106547481B (zh) 2020-04-10

Family

ID=58368367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610864432.6A Active CN106547481B (zh) 2016-09-29 2016-09-29 一种数据预分配方法和设备

Country Status (1)

Country Link
CN (1) CN106547481B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107483858A (zh) * 2017-08-31 2017-12-15 益和电气集团股份有限公司 用电企业监控视频的分布式存储***及其分布式存储方法
CN110300134B (zh) * 2018-03-22 2022-10-04 杭州海康威视***技术有限公司 云存储资源池的存储空间调整方法、装置及云存储***
CN110519310B (zh) * 2018-05-21 2021-12-28 浙江宇视科技有限公司 一种存储任务分配方法及装置
CN109558152A (zh) * 2018-10-26 2019-04-02 深圳壹账通智能科技有限公司 ***灰度发布时流量切换方法、装置、介质及电子设备
CN110941602B (zh) * 2019-11-20 2023-05-12 建信金融科技有限责任公司 数据库的配置方法、装置、电子设备及存储介质
CN113127417A (zh) * 2019-12-30 2021-07-16 浙江宇视科技有限公司 一种文件查询方法、装置、设备及存储介质
CN112699181B (zh) * 2020-12-30 2021-07-16 深圳格隆汇信息科技有限公司 一种基于大数据信息处理***
CN113392092A (zh) * 2021-07-06 2021-09-14 山东电力工程咨询院有限公司 一种数据中心的数据库管理方法及***

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1484413A (zh) * 2002-09-18 2004-03-24 ����ͨѶ�ɷ����޹�˾ 一种实现聚合链路流量均衡的方法
CN101695050A (zh) * 2009-10-19 2010-04-14 浪潮电子信息产业股份有限公司 一种基于网络流量自适应预测的动态负载均衡方法
CN102711177A (zh) * 2012-04-26 2012-10-03 北京邮电大学 基于业务预测的负载均衡方法
CN103854068A (zh) * 2013-12-06 2014-06-11 国家电网公司 一种居民小区短期负荷预测方法
CN104378515A (zh) * 2014-12-04 2015-02-25 上海澄美信息服务有限公司 呼叫中心话务量预测方法
CN104899405A (zh) * 2014-03-04 2015-09-09 携程计算机技术(上海)有限公司 数据预测方法和***以及报警方法和***
CN105046953A (zh) * 2015-06-18 2015-11-11 南京信息工程大学 一种短时交通流组合预测方法
CN105592156A (zh) * 2015-12-25 2016-05-18 中国人民解放军信息工程大学 面向网络功能的分布式弹性控制方法
CN105847598A (zh) * 2016-04-05 2016-08-10 浙江远传信息技术股份有限公司 呼叫中心多因子话务预测方法及其装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2789942C (en) * 2009-03-02 2017-05-23 Jeffrey Lawson Method and system for a multitenancy telephone network

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1484413A (zh) * 2002-09-18 2004-03-24 ����ͨѶ�ɷ����޹�˾ 一种实现聚合链路流量均衡的方法
CN101695050A (zh) * 2009-10-19 2010-04-14 浪潮电子信息产业股份有限公司 一种基于网络流量自适应预测的动态负载均衡方法
CN102711177A (zh) * 2012-04-26 2012-10-03 北京邮电大学 基于业务预测的负载均衡方法
CN103854068A (zh) * 2013-12-06 2014-06-11 国家电网公司 一种居民小区短期负荷预测方法
CN104899405A (zh) * 2014-03-04 2015-09-09 携程计算机技术(上海)有限公司 数据预测方法和***以及报警方法和***
CN104378515A (zh) * 2014-12-04 2015-02-25 上海澄美信息服务有限公司 呼叫中心话务量预测方法
CN105046953A (zh) * 2015-06-18 2015-11-11 南京信息工程大学 一种短时交通流组合预测方法
CN105592156A (zh) * 2015-12-25 2016-05-18 中国人民解放军信息工程大学 面向网络功能的分布式弹性控制方法
CN105847598A (zh) * 2016-04-05 2016-08-10 浙江远传信息技术股份有限公司 呼叫中心多因子话务预测方法及其装置

Also Published As

Publication number Publication date
CN106547481A (zh) 2017-03-29

Similar Documents

Publication Publication Date Title
CN106547481B (zh) 一种数据预分配方法和设备
US8191070B2 (en) Dynamic resource allocation
US10637916B2 (en) Method and device for storage resource allocation for video cloud storage
US8887166B2 (en) Resource allocation and modification using access patterns
CN109005125A (zh) 动态限流方法、装置及***
CN109583799B (zh) 区域划分的方法及装置、电子设备
US20100011002A1 (en) Model-Based Resource Allocation
WO2010006127A1 (en) Model-based resource allocation
CN107665212A (zh) 一种实现法院分案的方法及装置
CN104469392A (zh) 一种视频文件存储方法及装置
CN107087031A (zh) 一种存储资源负载均衡方法及装置
CN106708608A (zh) 一种分布式锁服务方法、获取方法及相应装置
US10296394B2 (en) Consistent hashing
CN109510834B (zh) 一种安全策略下发方法及装置
CN103853500A (zh) 一种基于海量数据的数据分配方法、装置及***
US10733204B2 (en) Optimizing synchronization of enterprise content management systems
CN110515728B (zh) 服务器调度方法、装置、电子设备及机器可读存储介质
CN109189726B (zh) 一种读写日志的处理方法及装置
CN109118361A (zh) 额度管理方法、装置及***
CN111144659B (zh) 物流调度方法、装置、计算机设备及存储介质
FR3082029A1 (fr) Controleur de partage de ressources d&#39;une plate-forme informatique et procede associe de partage des ressources
CN106790485B (zh) 混合云模式中的基于成本考虑的在线服务请求调度方法
CN110083309B (zh) 共享数据块处理方法、***及可读存储介质
CN110874268B (zh) 数据处理方法、装置和设备
EP3828707A1 (fr) Procédé d&#39;affectation de ressources en réponse à des requêtes en fonction de leur priorité, programme d&#39;ordinateur, bloc de contrôle d&#39;affectation et système informatique associés

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