视频数据存储方法、装置、计算机设备及存储介质

文档序号:1963434 发布日期:2021-12-14 浏览:27次 >En<

阅读说明:本技术 视频数据存储方法、装置、计算机设备及存储介质 (Video data storage method and device, computer equipment and storage medium ) 是由 夏春秋 于 2021-09-10 设计创作,主要内容包括:本申请实施例属于智能存储领域,涉及一种视频数据存储方法,包括:获取待上传文件;根据待上传文件生成对应的文件数据;根据文件数据判断待上传文件是否为可追加对象;若判断待上传文件是可追加对象,则获取文件数据的存储协议以及待上传的文件的追加模式;根据文件数据的存储协议分割待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据块标识;创建文件数据存储池以及数据块存储池;通过Ceph分布式存储系统将文件数据存储到文件数据存储池;根据数据标识为存储空间不超过阈值的数据块分配相应的数据块存储池。本申请还提供一种视频数据存储装置、计算机设备及存储介质。减少了视频存储占用的资源。(The embodiment of the application belongs to the field of intelligent storage, and relates to a video data storage method, which comprises the following steps: acquiring a file to be uploaded; generating corresponding file data according to the file to be uploaded; judging whether the file to be uploaded is an appendable object or not according to the file data; if the file to be uploaded is judged to be the appendable object, acquiring a storage protocol of file data and an appending mode of the file to be uploaded; dividing a file to be uploaded according to a storage protocol of file data, and generating at least one data block with a storage space not exceeding a threshold value and a corresponding data block identifier; creating a file data storage pool and a data block storage pool; storing the file data into a file data storage pool through a Ceph distributed storage system; and allocating corresponding data block storage pools for data blocks with storage space not exceeding a threshold value according to the data identification. The application also provides a video data storage device, computer equipment and a storage medium. The resources occupied by video storage are reduced.)

视频数据存储方法、装置、计算机设备及存储介质

技术领域

本申请涉及智能存储领域,尤其涉及一种视频数据存储方法、装置、计算机设备及存储介质。

背景技术

随着大数据分析的场景日益增多,对于归档类型的数据而言在对象存储中使用追加写的需求也体现出来,比如日渐兴起的直播行业,日志分析等大数据场景,都实现需要不间断的归档/分析后的数据存储到存储服务器中。标准的简单对象存储服务(simplestorage service,S3)都是以覆盖写的方式进行存放,也就是说当用户存储一个同名的文件,后端存储系统将会将之前的数据删除掉,然后在重新创建一个新的文件。根据这样的情况,业务端就不得已管理大量的对象列表,由于业务的不规律性,可能会出现文件大小不均匀的情况,极端的情况可能会维护着一个海量的小文件列表,当获取一部分数据时,这样就不得去依次获取大量的小文件,造成了大量的小IO,IOPS也急剧增加,性能也随之下降。

发明内容

本申请实施例的目的在于提出一种视频数据存储方法、装置、计算机设备及存储介质,减少了视频存储占用的资源。

为了解决上述技术问题,本申请实施例提供一种视频数据存储方法,采用了如下所述的技术方案:

获取待上传文件;

根据所述待上传文件生成对应的文件数据;

根据所述文件数据判断所述待上传文件是否为可追加对象;

若判断所述待上传文件是可追加对象,则获取所述文件数据的存储协议以及所述待上传的文件的追加模式;

根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据块标识;

创建文件数据存储池以及数据块存储池;

通过Ceph分布式存储系统将所述文件数据存储到所述文件数据存储池;

根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池。

进一步的,所述根据所述文件数据判断所述待上传文件是否为可追加对象的步骤具体包括:

读取所述文件数据;

将所述文件数据中的文件标识与预置标识进行匹配,所述文件标识用于指示文件类型,所述预置标识包括可追加标识以及不可追加标识;

当所述文件标识与所述预置可追加标识匹配时,则确定待上传文件为可追加对象;

当文件标识与所述预置不可追加标识匹配时,则确定待上传文件为不可追加对象。

进一步的,所述文件数据至少包括文件数据标识号,所述根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据标识的步骤具体包括:

若所述文件数据的存储协议为多副本协议,则将所述待上传的文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识;

或者,若所述文件数据的存储协议为纠删码EC协议,则补齐所述待上传的文件的末尾至EC对齐,得到目标待上传文件;

将所述目标待上传文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识。

进一步的,所述根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池的步骤具体包括:

获取所述数据块存储池的标识号;

通过Ceph分布式存储系统对所述数据块标识号做哈希运算并取模,得到对象标识object_ID;

通过Ceph分布式存储系统对所述数据块存储池的标识号做哈希运算,以得到存储池标识Pool_ID;

合并所述Pool_ID以及所述object_ID,得到PG_ID;

通过所述PG_ID为每个所述不超过阈值的数据块以及文件数据分配存储池。

进一步的,所述获取待上传文件的步骤之后,还包括:

在存储池中定义CGroup层级规则;

判断所述Ceph分布式存储系统进程是否启动,若所述Ceph分布式存储系统进程启动,则加载所述CGroup层级规则,并启动所述Ceph分布式存储系统进程的所述CGroup层级规则;

判断所述Ceph分布式存储系统进程是否关闭,若所述Ceph分布式存储系统进程已关闭,则清除所述CGroup层级规则;

通过将存储池挂载在所述CGgroup中,通过所述CGroup进行系统资源的调控,以分配资源给所述Ceph分布式存储系统。

进一步的,所述创建文件数据存储池以及数据块存储池的步骤之后,还包括:

当接收到重启指令时,通过所述重启指令停止接收所述待上传的文件并生成卸载信息;

通过所述卸载信息卸载所述Ceph分式存储系统的radosgw挂载点;

当所有所述fuse挂载点被卸载后,停止所述Ceph分布式存储系统的文件系统服务并生成重定向信息;

将所述重启指令重定向至重启服务,以重启所述Ceph分布式存储系统。

进一步的,所述获取待上传文件的步骤之前,还包括:

获取Ceph分布式存储系统组件的默认部署参数,所述默认参数至少包括对象存储网关参数、接口类参数、鉴权类参数、数据切分参数、对象存储单元参数、以及监控服务参数;

获取所述Ceph分布式存储系统的部署指令;

获取所述部署指令和所述部署参数,通过将所述部署指令以及所述部署参数通过固定格式组合生成相应的所述Ceph分布式存储系统资源的调度指令;

通过所述调度指令调取所述Ceph分布式存储系统的软件包资源和函数库资源;

通过选择所述Ceph分布式存储系统二进制模式传输,所述Ceph分布式存储系统调取Ceph分布式存储系统的软件包资源和函数库资源传送至目标K-UX操作系统;

设置所述Ceph分布式存储系统环境配置参数,通过所述Ceph分布式存储系统读取所述环境配置参数;

将所述环境配置参数部署至所述Ceph分布式存储系统;

实时监控并判断所述Ceph分布式存储系统资源和所述Ceph分布式存储系统资源的安装状态是否故障;

若所述Ceph分布式存储系统资源或所述Ceph分布式存储系统资源出现故障,则重置所述Ceph分布式存储系统资源的安装,以重新对所述Ceph分布式存储系统的安装部署。

为了解决上述技术问题,本申请实施例还提供一种视频数据存储装置,采用了如下所述的技术方案:

文件获取模块,用于获取待上传文件;

文件数据生成模块,用于根据所述待上传文件生成对应的文件数据;

追加判断模块,用于根据所述文件数据判断所述待上传文件是否为可追加对象;

协议获取模块,用于若判断所述待上传文件是可追加对象,则获取所述文件数据的存储协议以及所述待上传的文件的追加模式;

文件分割模块,用于根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据块标识;

存储池创建模块,用于创建文件数据存储池以及数据块存储池;

文件数据存储模块,用于通过Ceph分布式存储系统将所述文件数据存储到所述文件数据存储池;

数据块存储模块,用于根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池。

进一步的,所述追加判断模块,还用于:

读取所述文件数据;

将所述文件数据中的文件标识与预置标识进行匹配,所述文件标识用于指示文件类型,所述预置标识包括可追加标识以及不可追加标识;

当所述文件标识与所述预置可追加标识匹配时,则确定待上传文件为可追加对象;

当文件标识与所述预置不可追加标识匹配时,则确定待上传文件为不可追加对象。

进一步的,所述文件分割模块,还用于:

若所述文件数据的存储协议为多副本协议,则将所述待上传的文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识;

或者,若所述文件数据的存储协议为纠删码EC协议,则补齐所述待上传的文件的末尾至EC对齐,得到目标待上传文件;

将所述目标待上传文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识。

进一步的,所述数据块存储模块,还用于:

获取所述数据块存储池的标识号;

通过Ceph分布式存储系统对所述数据块标识号做哈希运算并取模,得到对象标识object_ID;

通过Ceph分布式存储系统对所述数据块存储池的标识号做哈希运算,以得到存储池标识Pool_ID;

合并所述Pool_ID以及所述object_ID,得到PG_ID;

通过所述PG_ID为每个所述不超过阈值的数据块以及文件数据分配存储池。

进一步的,所述视频数据存储装置还包括规则加载模块,所述规则加载模块用于:

在存储池中定义CGroup层级规则;

判断所述Ceph分布式存储系统进程是否启动,若所述Ceph分布式存储系统进程启动,则加载所述CGroup层级规则,并启动所述Ceph分布式存储系统进程的所述CGroup层级规则;

判断所述Ceph分布式存储系统进程是否关闭,若所述Ceph分布式存储系统进程已关闭,则清除所述CGroup层级规则;

通过将存储池挂载在所述CGgroup中,通过所述CGroup进行系统资源的调控,以分配资源给所述Ceph分布式存储系统。

进一步的,所述视频数据存储装置还包括重启模块,所述重启模块用于:

当接收到重启指令时,通过所述重启指令停止接收所述待上传的文件并生成卸载信息;

通过所述卸载信息卸载所述Ceph分式存储系统的radosgw挂载点;

当所有所述fuse挂载点被卸载后,停止所述Ceph分布式存储系统的文件系统服务并生成重定向信息;

将所述重启指令重定向至重启服务,以重启所述Ceph分布式存储系统。

进一步的,所述视频数据存储装置还包括部署模块,所述部署模块用于:

获取Ceph分布式存储系统组件的默认部署参数,所述默认参数至少包括对象存储网关参数、接口类参数、鉴权类参数、数据切分参数、对象存储单元参数、以及监控服务参数;

获取所述Ceph分布式存储系统的部署指令;

获取所述部署指令和所述部署参数,通过将所述部署指令以及所述部署参数通过固定格式组合生成相应的所述Ceph分布式存储系统资源的调度指令;

通过所述调度指令调取所述Ceph分布式存储系统的软件包资源和函数库资源;

通过选择所述Ceph分布式存储系统二进制模式传输,所述Ceph分布式存储系统调取Ceph分布式存储系统的软件包资源和函数库资源传送至目标K-UX操作系统;

设置所述Ceph分布式存储系统环境配置参数,通过所述Ceph分布式存储系统读取所述环境配置参数;

将所述环境配置参数部署至所述Ceph分布式存储系统;

实时监控并判断所述Ceph分布式存储系统资源和所述Ceph分布式存储系统资源的安装状态是否故障;

若所述Ceph分布式存储系统资源或所述Ceph分布式存储系统资源出现故障,则重置所述Ceph分布式存储系统资源的安装,以重新对所述Ceph分布式存储系统的安装部署。

为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:

一种计算机设备,其包括至少一个连接的处理器、存储器、输入输出单元,其中,所述存储器用于存储计算机可读指令,所述处理器用于调用所述存储器中的计算机可读指令来执行上述所述的视频数据存储方法的步骤。

为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述所述的视频数据存储方法的步骤。

与现有技术相比,本申请实施例主要有以下有益效果:

当有文件写入时,通过Ceph分布式存储系统存入已有的元数据信息,快速找到数据尾部的位置,将数据填充到当前的位置,获取所述数据块的存储池存储协议,根据所述存储池协议将剩下的数据按照分片规则将其切成1个或则多个数据块存入后端存储,然后将写入数据的位置信息的元数据保存,以分散数据的存储,提高数据的读写效率,并增加数据的可靠性。标准的对象存储是每一次上传都会覆盖上一次的数据,而追加写入颠覆了这一束缚,他以增加操作类型和追加位置等方式,通过重新填充和组织数据,让数据可以和历史数据拼接在一起。

附图说明

为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请可以应用于其中的示例性系统架构图;

图2-1根据本申请的视频数据存储方法的一个实施例的流程图;

图2-2根据本申请的视频数据存储方法的多副本协议的流程图;

图2-3根据本申请的视频数据存储方法的纠删码协议的流程图;

图3是根据本申请的视频数据存储装置的一个实施例的结构示意图;

图4是根据本申请的计算机设备的一个实施例的结构示意图。

具体实施方式

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。

需要说明的是,本申请实施例所提供的视频数据存储方法一般由服务器/终端设备执行,相应地,视频数据存储装置一般设置于服务器/终端设备中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

继续参考图2,示出了根据本申请的视频数据存储的方法的一个实施例的流程图。所述的视频数据存储方法,包括以下步骤:

步骤201,获取待上传文件。

在本实施例中,设定上限阈值和下限阈值,若待上传文件根据实时统计其被访问频率高于上限阈值则判断为高频数据;若待上传文件根据实时统计其被访问频率低于下限数据阈值则判断为低频数据;若待上传文件根据实时统计其被访问频率介于下限数据阈值和上限阈值之间则判断为中频数据。

步骤202,根据所述待上传文件生成对应的文件数据。

在本实施例中,所述文件数据至少包括存储池协议、对象标识I D号、存储池I D号、桶名、待上传文件的文件类型、校验码以及密码。

步骤203,根据所述文件数据判断所述待上传文件是否为可追加对象。

在本实施例中,判断是否是追加写请求和追加的方式,如果是普通上传模式则采取普通的上传模式直接存储。如果是追加写流程则获取存在存储后端的带追加对象的元信息,里面包含了本次追加的位置(也就是当前对象的大小,追加写统一要求从对象尾部进行追加)和对象在后端存储中分片的规则。

步骤204,若判断所述待上传文件是可追加对象,则获取所述文件数据的存储协议以及所述待上传的文件的追加模式。

在本实施例中,追加策略包含两种模式,按照指定位置进行追加和不指定位置进行追加两种模式,如果是指定位置进行追加的模式需要判断追加的位置是否在文件的末尾。而对于不指定位置的模式则追加到末尾即可。

步骤205,根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据块标识。

在本实施例中,接收到待上传文件时,根据获取集群对该bucket设置的存储池存储协议。若判断待上传文件是可追加对象,则服务器获取所述元数据的存储池存储协议以及所述待上传的文件的追加模式。其中,所述存储池存储协议包括多副本协议以及纠删码协议,所述追加模式包括指定位置追加以及不指定位置追加。

步骤206,创建文件数据存储池以及数据块存储池。

在本实施例中,服务器创建文件数据存储池以及数据块存储池。所述文件数据存储池用于存储元数据。所述数据块存储池用于存储数据块。

步骤207,通过Ceph分布式存储系统将所述文件数据存储到所述文件数据存储池。

在本实施例中,当用户调用所述元数据时,通过调用在所述元数据存储池中找到对应的元数据,提供给用户使用,使得所述元数据可以保存在磁盘空间中。

步骤208,根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池。

本实施例中,例如,以视频直播场景中的一个直播间为例,当直播的数据要发送给用户时,会将一定时长的数据(以1分钟视频数据为例)放到对象存储当中。在普通对象存储的场景下,每一次数据上传都会覆盖历史数据,所以直播平台要为该直播间做许多文件进行列表以及做文件管理,以防止文件的丢失。假设该主播直播了6小时,那传统方法上,该主播上传文件的次数达到6*60=360次,就是该次直播产生了360个文件,长期以往加上直播平台大量的主播,导致这样的文件可能是千亿级别的。通过上述实施方式,可以完成同文件名的持续上传,就是一个主播在一个直播时间只产生一个文件,每次产生的文件都在同一个文件后不断追加。当直播完毕后,当用户需要播放某个特定的时间点的视频时,将通过进度条换算成对应的文件的位置,使得用户可以快速读取该文件。

在本实施例中,当有文件写入时,通过Ceph分布式存储系统存入已有的元数据信息,快速找到数据尾部的位置,将数据填充到当前的位置,获取所述数据块的存储池存储协议,根据所述存储池协议将剩下的数据按照分片规则将其切成1个或则多个数据块存入后端存储,然后将写入数据的位置信息的元数据保存,以分散数据的存储,提高数据的读写效率,并增加数据的可靠性。标准的对象存储是每一次上传都会覆盖上一次的数据,而追加写入颠覆了这一束缚,他以增加操作类型和追加位置等方式,通过重新填充和组织数据,让数据可以和历史数据拼接在一起。

在一些可选的实现方式中,所述根据所述文件数据判断所述待上传文件是否为可追加对象的步骤具体包括:

读取所述文件数据;

将所述文件数据中的文件标识与预置标识进行匹配,所述文件标识用于指示文件类型,所述预置标识包括可追加标识以及不可追加标识;

当所述文件标识与所述预置可追加标识匹配时,则确定待上传文件为可追加对象;

当文件标识与所述预置不可追加标识匹配时,则确定待上传文件为不可追加对象。

上述实施方式中,判断是否是追加写请求和追加的方式,如果是普通上传模式则采取普通的上传模式直接存储。如果是追加写流程则获取存在存储后端的带追加对象的元信息,里面包含了本次追加的位置(也就是当前对象的大小,追加写统一要求从对象尾部进行追加)和对象在后端存储中分片的规则。

在一些可选的实现方式中,所述文件数据至少包括文件数据标识号,所述根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据标识的步骤具体包括:

若所述文件数据的存储协议为多副本协议,则将所述待上传的文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识;

或者,若所述文件数据的存储协议为纠删码EC协议,则补齐所述待上传的文件的末尾至EC对齐,得到目标待上传文件;

将所述目标待上传文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识。

上述实施方式中,多副本模式为:当有文件写入时,通过存入已有的元信息,找到尾部的stripe,将数据填充到当前的stripe,如果有将剩下的数据按照stripe的分片规则将其切成1个或则多个stripe存入后端存储,然后将写入数据的位置信息的元数据保存,以便后续读取与追加数据。如图2-2所示,比如:依次向My_object.data中三次追加写入数据分别是4M,12.2M,7.8M,将会在后端存储5个stripe。纠删码模式为:纠删码模式区别与多副本模式而言,需要在每次IO的尾部stripe进行补零操作,因为EC协议需要条带对齐,不然会发生数据覆盖的问题。所以这里存在将存储池中的EC冗余比计算出需要补零的字节数,将末尾补零存入后端存储。读写数据的原理和多副本一致。如图2-3所示。

在一些可选的实现方式中,所述根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池的步骤具体包括:

获取所述数据块存储池的标识号;

通过Ceph分布式存储系统对所述数据块标识号做哈希运算并取模,得到对象标识object_ID;

通过Ceph分布式存储系统对所述数据块存储池的标识号做哈希运算,以得到存储池标识Pool_ID;

合并所述Pool_ID以及所述object_ID,得到PG_ID;

通过所述PG_ID为每个所述不超过阈值的数据块以及文件数据分配存储池。

上述实施方式中,例如通过ceph osd pool create ssd-pool 1024 1024的命令自动生成一个存储池pool。

所述PG_ID的数学表达式如下:

存储标识PG_ID=hash(Pool_id)+hash(object_ID号)%PG_number

若需要调用某个数据块,则要找到要调用数据块所在存储池的磁盘空间,则寻找OSD通过以下公式进行:

磁盘空间标识OSD_id=CRUSH(PG_ID,CLUSTER_MAP,CURSH_RULES)。

在一些可选的实现方式中,所述获取待上传文件的步骤之后,还包括:

在存储池中定义CGroup层级规则;

判断所述Ceph分布式存储系统进程是否启动,若所述Ceph分布式存储系统进程启动,则加载所述CGroup层级规则,并启动所述Ceph分布式存储系统进程的所述CGroup层级规则;

判断所述Ceph分布式存储系统进程是否关闭,若所述Ceph分布式存储系统进程已关闭,则清除所述CGroup层级规则;

通过将存储池挂载在所述CGgroup中,通过所述CGroup进行系统资源的调控,以分配资源给所述Ceph分布式存储系统。

上述实施方式中,所述CGroup是指control groups,通过CGroup可以配置物理资源的调配,如CPU使用率,内存占用,磁盘IO速率;

在一些可选的实现方式中,所述创建文件数据存储池以及数据块存储池的步骤之后,还包括:

当接收到重启指令时,通过所述重启指令停止接收所述待上传的文件并生成卸载信息;

通过所述卸载信息卸载所述Ceph分式存储系统的radosgw挂载点;

当所有所述fuse挂载点被卸载后,停止所述Ceph分布式存储系统的文件系统服务并生成重定向信息;

将所述重启指令重定向至重启服务,以重启所述Ceph分布式存储系统。

上述实施方式中,当检查到ceph中挂载点存在问题,则停止启动,终止Ceph的多个服务,转移至重新启动。

在一些可选的实现方式中,所述获取待上传文件的步骤之前,还包括:

获取Ceph分布式存储系统组件的默认部署参数,所述默认参数至少包括对象存储网关参数、接口类参数、鉴权类参数、数据切分参数、对象存储单元参数、以及监控服务参数;

获取所述Ceph分布式存储系统的部署指令;

获取所述部署指令和所述部署参数,通过将所述部署指令以及所述部署参数通过固定格式组合生成相应的所述Ceph分布式存储系统资源的调度指令;

通过所述调度指令调取所述Ceph分布式存储系统的软件包资源和函数库资源;

通过选择所述Ceph分布式存储系统二进制模式传输,所述Ceph分布式存储系统调取Ceph分布式存储系统的软件包资源和函数库资源传送至目标K-UX操作系统;

设置所述Ceph分布式存储系统环境配置参数,通过所述Ceph分布式存储系统读取所述环境配置参数;

将所述环境配置参数部署至所述Ceph分布式存储系统;

实时监控并判断所述Ceph分布式存储系统资源和所述Ceph分布式存储系统资源的安装状态是否故障;

若所述Ceph分布式存储系统资源或所述Ceph分布式存储系统资源出现故障,则重置所述Ceph分布式存储系统资源的安装,以重新对所述Ceph分布式存储系统的安装部署。

上述实施方式中,通过上述方式完成了Ceph分布系统的环境参数的布置以及部署。

本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

进一步参考图3,作为对上述图2所示方法的实现,本申请提供了一种视频数据存储装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图3所示,本实施例所述的视频数据存储装置300包括:文件获取模块301、文件数据生成模块302、追加判断模块303、协议获取模块304、文件分割模块305、存储池创建模块306、文件数据存储模块307以及数据块存储模块308。其中:

文件获取模块301用于获取待上传文件;

文件数据生成模块302用于根据所述待上传文件生成对应的文件数据;

追加判断模块303用于根据所述文件数据判断所述待上传文件是否为可追加对象;

协议获取模块304用于若判断所述待上传文件是可追加对象,则获取所述文件数据的存储协议以及所述待上传的文件的追加模式;

文件分割模块305用于根据文件数据的存储协议分割所述待上传的文件,并生成至少一个存储空间不超过阈值的数据块以及对应的数据块标识;

存储池创建模块306用于创建文件数据存储池以及数据块存储池;

文件数据存储模块307用于通过Ceph分布式存储系统将所述文件数据存储到所述文件数据存储池;

数据块存储模块308用于根据所述数据标识为所述存储空间不超过阈值的数据块分配相应的所述数据块存储池。

进一步的,所述追加判断模块303,还用于:

读取所述文件数据;

将所述文件数据中的文件标识与预置标识进行匹配,所述文件标识用于指示文件类型,所述预置标识包括可追加标识以及不可追加标识;

当所述文件标识与所述预置可追加标识匹配时,则确定待上传文件为可追加对象;

当文件标识与所述预置不可追加标识匹配时,则确定待上传文件为不可追加对象。

进一步的,所述文件分割模块305,还用于:

若所述文件数据的存储协议为多副本协议,则将所述待上传的文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识;

或者,若所述文件数据的存储协议为纠删码EC协议,则补齐所述待上传的文件的末尾至EC对齐,得到目标待上传文件;

将所述目标待上传文件分割生成至少一个存储空间不超过阈值的数据块;

根据所述文件数据标识号以及与所述数据块对应的分片号为每一个所述数据块生成数据块标识。

进一步的,所述数据块存储模块308,还用于:

获取所述数据块存储池的标识号;

通过Ceph分布式存储系统对所述数据块标识号做哈希运算并取模,得到对象标识object_ID;

通过Ceph分布式存储系统对所述数据块存储池的标识号做哈希运算,以得到存储池标识Pool_ID;

合并所述Pool_ID以及所述object_ID,得到PG_ID;

通过所述PG_ID为每个所述不超过阈值的数据块以及文件数据分配存储池。

进一步的,所述视频数据存储装置还包括规则加载模块,所述规则加载模块用于:

在存储池中定义CGroup层级规则;

判断所述Ceph分布式存储系统进程是否启动,若所述Ceph分布式存储系统进程启动,则加载所述CGroup层级规则,并启动所述Ceph分布式存储系统进程的所述CGroup层级规则;

判断所述Ceph分布式存储系统进程是否关闭,若所述Ceph分布式存储系统进程已关闭,则清除所述CGroup层级规则;

通过将存储池挂载在所述CGgroup中,通过所述CGroup进行系统资源的调控,以分配资源给所述Ceph分布式存储系统。

进一步的,所述视频数据存储装置还包括重启模块,所述重启模块用于:

当接收到重启指令时,通过所述重启指令停止接收所述待上传的文件并生成卸载信息;

通过所述卸载信息卸载所述Ceph分式存储系统的radosgw挂载点;

当所有所述fuse挂载点被卸载后,停止所述Ceph分布式存储系统的文件系统服务并生成重定向信息;

将所述重启指令重定向至重启服务,以重启所述Ceph分布式存储系统。

进一步的,所述视频数据存储装置还包括部署模块,所述部署模块用于:

获取Ceph分布式存储系统组件的默认部署参数,所述默认参数至少包括对象存储网关参数、接口类参数、鉴权类参数、数据切分参数、对象存储单元参数、以及监控服务参数;

获取所述Ceph分布式存储系统的部署指令;

获取所述部署指令和所述部署参数,通过将所述部署指令以及所述部署参数通过固定格式组合生成相应的所述Ceph分布式存储系统资源的调度指令;

通过所述调度指令调取所述Ceph分布式存储系统的软件包资源和函数库资源;

通过选择所述Ceph分布式存储系统二进制模式传输,所述Ceph分布式存储系统调取Ceph分布式存储系统的软件包资源和函数库资源传送至目标K-UX操作系统;

设置所述Ceph分布式存储系统环境配置参数,通过所述Ceph分布式存储系统读取所述环境配置参数;

将所述环境配置参数部署至所述Ceph分布式存储系统;

实时监控并判断所述Ceph分布式存储系统资源和所述Ceph分布式存储系统资源的安装状态是否故障;

若所述Ceph分布式存储系统资源或所述Ceph分布式存储系统资源出现故障,则重置所述Ceph分布式存储系统资源的安装,以重新对所述Ceph分布式存储系统的安装部署。

为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。

所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件41-43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。

所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如视频数据存储方法的计算机可读指令等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的计算机可读指令或者处理数据,例如运行所述视频数据存储方法的计算机可读指令。

所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。

本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的视频数据存储方法的步骤。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。

显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:数据迁移方法、网卡设备、服务器及数据迁移系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类