本申请涉及网络存储领域,具体而言,涉及一种在级联存储服务器集群中存储数据的方法及相关设备。
背景技术:
各业务平台根据自身的网络流量及存储一般都有自己的存储方案。目前,级联存储服务器是一个被广泛使用的方案,也即,业务平台部署在n台服务器上,n台服务器上包括一台主服务器及n-1台级联存储服务器,级联存储服务器和主服务器共用一个数据库。主服务器作为访问入口,对外暴露端口及ip。所有用户操作产生的数据如视频的上传及大文件的存储,分别存储在各自的级联存储服务器上。
前述方案一定程度上解决了业务平台的卡顿、奔溃、存储爆满问题,但随之而来的问题是n-1台中的级联存储服务器有的级联存储服务器使用较多,有的级联存储服务器使用较少。尤其当某一台级联存储服务器内存使用殆尽的时候,只能在级联的基础上去手动增加硬盘来扩展某一级联存储服务器的存储空间,以保证主服务器的正常访问。这种靠手动增加硬盘的方式虽然能暂时解决问题,但是花费了大量的金钱和人力,业务平台仍然有发生崩溃和宕机的可能,系统稳定性和可靠性仍然无法保证。
技术实现要素:
根据本申请的一方面,提出一种在级联存储服务器集群中存储数据的方法及相关设备。级联存储服务器集群包括多个级联存储服务器,每台级联存储服务器之间通信连接,任意一台级联存储服务器与一个或多个数据生产设备关联,用于接收并存储关联的数据生产设备上传的数据。该方法应用于级联存储服务器集群中的第一级联存储服务器。
该方法可包括:判断第一级联存储服务器的存储空间使用率是否达到预设上限值。若是,则确定级联存储服务器集群中的第二级联存储服务器,其中第二级联存储服务器的存储空间使用率未达到预设上限值。向第二级联存储服务器发送第一数据生产设备的ip,以使得第二级联存储服务器与第一数据生产设备建立关联,接收并存储第一数据生产设备上传的数据,第一数据生产设备与第一级联存储服务器关联。断开第一级联存储服务器与第一数据生产设备关联。
根据本申请的一方面,提出一种在级联存储服务器集群中存储数据的方法。级联存储服务器集群包括多个级联存储服务器,每台级联存储服务器之间通信连接,任意一台级联存储服务器与一个或多个数据生产设备关联,用于接收并存储关联的数据生产设备上传的数据。该方法应用于级联存储服务器集群中存储空间使用率未达到预设上限值的第二级联存储服务器。
该方法可包括:在第一级联存储服务器的存储空间使用率达到预设上限值后,接收第一级联存储服务器发送的第一数据生产设备的ip,其中第一级联存储服务器与第一数据生产设备具有关联。与第一数据生产设备建立关联,以使得第一级联存储服务器断开与第一数据生产设备的关联。接收并存储第一数据生产设备上传的数据。
根据本申请的一个方面,提供了一种级联存储服务器集群。该级联存储服务器集群可包括:
多个级联存储服务器,每台级联存储服务器之间通信连接,任意一台级联存储服务器与一个或多个数据生产设备关联。
所述多个级联存储服务器包括:第一级联存储服务器,与第一数据生产设备关联,第一级联存储服务器在判断出第一级联存储服务器存储空间使用率是否达到预设上限值情况下,确定级联存储服务器集群中的第二级联存储服务器,向第二级联存储服务器发送第一数据生产设备的ip,断开与第一数据生产设备的关联;以及第二级联存储服务器,接收第一级联存储服务器发送的第一数据生产设备的ip,与第一数据生产设备关联,接收并存储第一数据生产设备上传的数据。
其中,第二级联存储服务器的存储空间使用率未达到预设上限值。
根据本申请的一方面,提出一种服务器。该服务器包括:一个或多个处理器和存储装置。存储装置用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本申请的一方面,提出一种计算机可读介质,其上存储有计算机程序,计算机程序被执行时实现如上文的方法。
根据本申请实施例,第一级联存储服务器与第一数据生产设备关联;当第一级联存储服务器存储空间达到上限值后,得到存储空间还未达上限的第二级联存储服务器ip,向第二级联存储服务器发送第一数据生产设备的ip,使第二级联存储服务器与第一数据生产设备关联,并且断开第一级联存储服务器与第一数据生产设备的关联,使得第二级联存储服务器接收并存储第一数据生产设备上传的数据。这样,避免了靠手动增加硬盘的方式扩展级联存储服务器的存储空间,节约了人力,降低了系统成本,同时提高了系统的稳定性和可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1a示出根据本申请示例实施例的级联存储服务器集群和数据生产设备网络服务系统的架构图;
图1b示出根据本申请示例实施例的级联存储服务器集群和数据生产设备的网络服务系统的架构图;
图2示出根据本申请示例实施例的一种在级联存储服务器集群中存储数据的方法流程图;
图3示出根据本申请示例实施例的一种在级联存储服务器集群中存储数据的方法流程图;
图4示出根据本申请示例实施例的主服务器作为级联存储服务器访问入口示意图;
图5示出根据本申请示例实施例的电子设备的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有这些特定细节中的一个或更多,或者可以采用其它的方式、组元、材料、装置或操作等。在这些情况下,将不详细示出或描述公知结构、方法、装置、实现、材料或者操作。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
根据本申请的技术构思,当级联存储服务器集群中的第一级联存储服务器的存储空间达到上限值后,通过比较所有级联存储服务器的运行数据,查找到存储空间使用率尚未达到上限值的第二级联存储服务器,并将与第一级联存储服务器具有关联关系的第一数据生产设备的ip发送给第二级联存储服务器,使得第一数据生产设备可以直接将上传数据上传给第二级联存储服务器,避免了靠手动增加硬盘的方式扩展第一级联存储服务器的存储空间,节约了人力,降低了系统成本,同时提高了系统的稳定性和可靠性。
本申请的实施例可运行于一种网络服务系统。该网络服务系统可以包括主服务器、监控服务器、路径服务器、多个级联存储服务器和多个数据生产设备。该网络服务系统可以是录播系统,用于存储录播主机录制的视频文件。级联存储服务器用于接收并存储关联的数据生产设备上传的数据。
根据本申请的实施例,数据生产设备与级联存储服务器之间既可以是一对一的关联关系,也可以是多对一的关联关系。
数据生产设备可配置为产生上传数据,并将数据上传到级联存储服务器。数据生产设备包括录播主机、视频生产设备、音频生产设备和/或动画制作主机等设备。
监控服务器可配置为存储级联存储服务器的运行数据。
路径服务器可配置为存储上传数据的存储路径。
主服务器可配置为级联存储服务器的访问入口。
根据本申请的一些实施例,主服务器、监控服务器、路径服务器和级联存储服务器可为同一个服务器。
根据本申请的一些示例实施例,多个级联存储服务器分别将各自的运行数据保存到监控服务器。运行数据包括级联存储服务器的ip、端口、存储空间使用率及cpu的运行状态信息。多个级联存储服务器分别判断各自的存储空间使用率。
当第一级联存储服务器的存储空间使用率达到上限值时,第一级联存储服务器获取第二级联存储服务器的ip,其中第二级联存储服务器的空间使用率尚未达到上限值。第一级联存储服务器向第二级联存储服务器发送与第一级联存储服务器相关联的第一数据生产设备的信息。
第二级联存储服务器接收第一数据生产设备的信息,并与第一数据生产设备相关联。例如第二级联存储服务器增加第二级联存储服务器与第一数据生产设备的关联存储关系;第二级联存储服务器向第一数据生产设备发送更改关联存储关系的指令,使得第一数据生产设备与第二级联存储服务器关联。第二级联存储服务器接收并存储来自第一数据生产设备的上传数据。第二级联存储服务器将上传数据的存储路径发送给路径服务器。
第一级联存储服务器断开与第一数据生产设备的关联。
下面将参照附图,对根据本申请实施例的用于级联存储服务器的操作方法和级联存储服务器、网络服务系统进行详细说明。
下面参照图1a和图1b对根据本申请实施例的网络服务系统进行详细说明。
图1a示出根据本申请示例实施例的级联存储服务器集群和数据生产设备网络服务系统的架构图。
图1b示出根据本申请示例实施例的级联存储服务器集群和数据生产设备的网络服务系统的架构图。
参照图1a和1b,网络服务系统包括数据库6、主服务器5、级联存储服务器1~4。主服务器以及级联存储服务器1-4之间通信连接。级联存储服务器用于接收并存储关联的数据生产设备上传的数据。
主服务器5与数据生产设备51和52相关联。级联存储服务器1与数据生产设备11和12相关联。级联存储服务器2与数据生产设备21和22相关联。级联存储服务器3与数据生产设备31和32相关联。级联存储服务器4与数据生产设备41和42相关联。
数据库服务器6存储的信息包括级联存储服务器1~4的运行数据和级联存储服务器1~4接收到的上传数据的路径信息。
主服务器5可作为级联存储服务器1~4的访问入口,兼具监控服务器和路径服务器功能,并和级联存储服务器1~4共用同一个数据库。参见图4,图4示出根据本申请一实施例的主服务器作为级联存储服务器访问入口示意图。主服务器对外暴露ip及端口,用户访问级联存储服务器可以通过主服务器的ip进行访问。主服务器也兼具级联存储服务器功能。
级联存储服务器1~4可以定时将自身的运行数据保存到数据库服务器。
假设图1a和1b中,级联存储服务器的存储空间使用率上限值为90%;级联存储服务器1的存储空间使用率是90%;级联存储服务器2的存储空间使用率是50%;级联存储服务器3的存储空间使用率是85%;级联存储服务器4的存储空间使用率是70%;主服务器的存储空间使用率是92%。
级联存储服务器1监控自身的存储空间使用率。级联存储服务器1判断出自身的存储空间使用率已经达到了预设的存储空间使用率上限值。例如,根据本申请的一些示例实施例,级联存储服务器1利用定时任务执行第一脚本文件,判断存储空间使用率是否达到预设的上限值。根据本申请的一些实施例,第一脚本文件包括shell脚本,用于级联存储服务器判断其存储空间使用率。
级联存储服务器1通过比较其他所有级联存储服务器的运行数据,确定存储空间使用率未达到预设上限值级联存储服务器2。
可选地,运行数据包括级联存储服务器的ip、存储空间使用率。可选地,运行数据还可以包括级联存储服务器的cpu的运行状态信息。例如,级联存储服务器1根据联服务器2、3、4以及主服务器5的运行数据确定评价指标,进而根据评价指标确定出级联存储服务器2为最优的级联存储服务器。
根据本申请的一些示例实施例,如果级联存储服务器1的存储空间使用率达到了设定的上限值,则通过执行第二脚本文件,获取所有级联存储服务器的运行数据。
根据本申请的一些实施例,级联存储服务器1还可以通过执行第二脚本文件,从监控服务器直接获取第二级联存储服务器的ip。监控服务器与级联存储服务器集群中的每个级联存储服务器通信连接,监控服务器根据存储的多个级联存储服务器的运行数据确定评价指标,基于评价指标来确定级联存储服务器集群中的级联存储服务器2。
根据本申请的一些实施例,第二脚本文件包括shell脚本,用于级联存储服务器1获取存储空间使用率尚未达到上限值的级联存储服务器2的ip。
级联存储服务器1将与其关联的数据生产设备11和12的ip信息发送给级联存储服务器2。
根据本申请的一些示例实施例,级联存储服务器1在获取到最优的第二级联存储服务器即级联存储服务器2后,执行第三脚本文件,将数据生产设备11和12的ip发送给级联存储服务器2。根据本申请的一些实施例,第三脚本文件包括shell脚本,用于和级联存储服务器2通信,将数据生产设备11和12的ip发送给级联存储服务器2。
级联存储服务器2和数据生产设备11和12建立关联,并接受和存储数据生产设备11和12上传的数据。例如,级联存储服务器2在其配置文件中增加与数据生产设备11和12的关联关系,并通知数据生产设备11和12修改各自的配置信息,从而建立与数据生产设备11和12的关联。数据生产设备11和12通过读取自身的配置信息,将上传数据发送给级联存储服务器2存储。
级联存储服务器2在接收完上传数据后,将上传数据的存储路径存储到数据库6中。
级联存储服务器1和数据生产设备11和12断开连接。
上述介绍了级联存储服务器1使相关联的数据生产设备11和12向级联存储服务器2上传数据的过程。相同地,主服务器3也在监控自身的存储空间使用率。主服务器3可通过类似的方式确定存储空间使用率未达到预设上限值的级联存储服务器4。主服务器3将与其关联的数据生产设备31和32的ip信息发送给级联存储服务器4。级联存储服务器4和数据生产设备31和32建立关联,并接受和存储数据生产设备31和32上传的数据。主服务器3和数据生产设备31和32断开连接。
根据本申请的一些示例实施例,级联存储服务器1还可以通过执行第二脚本文件,从监控服务器直接获取第二级联存储服务器的ip。监控服务器与级联存储服务器集群中的每个级联存储服务器通信连接,监控服务器根据存储的多个级联存储服务器的运行数据确定评价指标,并基于评价指标,查找到级联存储服务器集群中的第二级联存储服务器。
根据一些实施例,运行数据包括级联存储服务器的ip、存储空间使用率。可选地,运行数据还可以包括级联存储服务器的cpu的运行状态信息。根据本申请的一些实施例,第二脚本文件包括shell脚本,用于级联存储服务器1获取存储空间使用率尚未达到上限值的级联存储服务器2的ip。
根据本申请的一些示例实施例,级联存储服务器还可以周期性地将运行数据发送到监控服务器。运行数据包括第一级联存储服务器的ip和存储空间使用率。
根据本申请的一些示例实施例,级联存储服务器定时执行第四脚本文件,定时将自身的运行数据保存到监控服务器。根据本申请的一些实施例,第四脚本文件包括shell脚本,用于级联存储服务器上传自身的运行数据。
通过上述的技术方案,级联存储服务器集群中的第一级联存储服务器在自身存储空间使用率达到上限值后,可以获取的其他级联存储服务器的运行数据,从而确定存储空间使用率未达上限值的第二存储服务器。第一级联存储服务器将所关联的第一数据生产设备的ip发送到第二级联存储服务器,使第二级联存储服务器与第一数据生产设备关联,并接受和存储第一数据生产设备上传的数据。第一级联存储服务器断开与第一数据生产设备的关联。这样,不再需要人工去添加或者更换硬盘,而是系统自动地完成了数据存储的分配,节约了人力,降低了系统成本,同时提高了系统的稳定性和可靠性。
图2示出根据本申请示例实施例的一种在级联存储服务器集群中存储数据的方法流程图。
根据本申请的一些示例实施例,级联存储服务器集群包括多个级联存储服务器,每台级联存储服务器之间通信连接,任意一台级联存储服务器与一个或多个数据生产设备关联。如图2所示的方法应用于级联存储服务器集群中的第一级联存储服务器。
例如,如图1a、1b和图2所示,级联存储服务器集群包括多个级联存储服务器。每个级联存储服务器通信连接。联存储服务器1与数据生产设备11和12关联。
步骤101中,判断第一级联存储服务器的存储空间使用率是否达到预设的上限值。根据本申请的一些示例实施例,级联存储服务器1可以定时任务执行第一脚本文件,判断存储空间使用率是否达到预设上限值。根据本申请的一些实施例,第一脚本文件包括shell脚本,用于第一级联存储服务器判断其存储空间使用率。
若是,则步骤103中,确定预设上限值级联存储服务器集群中的第二级联存储服务器,其中第二级联存储服务器的存储空间使用率未达到预设的上限值。
根据本申请的一些示例实施例,在步骤103中,级联存储服务器1通过执行第二脚本文件,获取所有级联存储服务器的运行数据,确定多个级联存储服务器中评价指标最优的级联存储服务器作为第二级联存储服务器。
根据一些实施例,评价指标是根据运行数据确定的。运行数据可包括级联存储服务器的ip、存储空间使用率。可选地,运行数据还可以包括级联存储服务器的cpu的运行状态信息。例如,步骤103中,级联存储服务器1通过判断级存储联服务器2、3、4以及主服务器的空间使用率,进而确定出最优的级联存储服务器2。
又例如,步骤103中,级联存储服务器1通过判断级存储联服务器2、3、4以及主服务器的存储空间使用率和多个级联存储服务器的cpu的运行状态信息,进而确定出最优的级联存储服务器2。
步骤105中,向第二级联存储服务器发送第一数据生产设备的ip,以使得第二级联存储服务器与第一数据生产设备的ip建立关联,接收并存储第一数据生产设备上传的数据。例如,级联存储服务器1将相关联的数据生产设备11和12的ip发送给级联存储服务器2。级联存储服务器2与数据生产设备11和12建立关联,接收并存储数据生产设备11和12上传的数据。
根据本申请的一些示例实施例,级联存储服务器1在获取到最优的第二级联存储服务器即级联存储服务器2后,执行第三脚本文件,将数据生产设备11和12的ip发送给级联存储服务器2。根据本申请的一些实施例,第三脚本文件包括shell脚本,用于和级联存储服务器2通信,将数据生产设备11和12的ip发送给级联存储服务器2。
步骤107,断开预设上限值第一级联存储服务器与预设上限值第一数据生产设备关联。例如,级联存储服务器1与数据生产设备11和12断开关联。
通过上述的技术方案,级联存储服务器集群中的第一级联存储服务器在自身存储空间使用率达到上限值后,可以确定存储空间使用率未达上限值的第二存储服务器。第一级联存储服务器将所关联的第一数据生产设备的ip发送到第二级联存储服务器,使第二级联存储服务器与第一数据生产设备关联,接受和存储第一数据生产设备上传的数据。第一级联存储服务器断开与第一数据生产设备的关联。这样,不再需要人工去添加或者更换硬盘,而是系统自动地完成了数据存储的分配,节约了人力,降低了系统成本,同时提高了系统的稳定性和可靠性。
图3示出根据本申请示例实施例的一种在级联存储服务器集群中存储数据的方法流程图。
步骤s201和步骤s101类似,在此不再赘述。
步骤s2031中,从监控服务器获取多个级联存储服务器的运行数据。步骤s2032中,根据运行数据确定评价指标。步骤s2033中,基于评价指标,确定第二级联存储服务器。
根据本申请的一些示例实施例,级联存储服务器1还可以通过执行第二脚本文件,从监控服务器直接获取第二级联存储服务器的ip。监控服务器与级联存储服务器集群中的每个级联存储服务器通信连接,监控服务器根据存储的多个级联存储服务器的运行数据确定评价指标,基于评价指标,查找到级联存储服务器集群中的第二级联存储服务器。
根据一些实施例,评价指标是根据运行数据确定的。运行数据可包括级联存储服务器的ip、存储空间使用率。可选地,运行数据还可以包括级联存储服务器的cpu的运行状态信息。根据本申请的一些实施例,第二脚本文件包括shell脚本,用于级联存储服务器1获取存储空间使用率尚未达到上限值的级联存储服务器2的ip。
步骤s205中,级联存储服务器1向级联存储服务器2发送数据生产设备11和12的ip。
根据本申请的一些示例实施例,级联存储服务器1在获取到最优的第二级联存储服务器即级联存储服务器2后,执行第三脚本文件,将数据生产设备11和12的ip发送给级联存储服务器2。根据本申请的一些实施例,第三脚本文件包括shell脚本,用于和级联存储服务器2通信,将数据生产设备11和12的ip发送给级联存储服务器2。
根据本申请的一些示例实施例,在执行s201操作之前,还需要周期性地将所有级联存储服务器的运行数据发送到监控服务器。
根据本申请的一些示例实施例,级联存储服务器利用定时任务执行第四脚本文件,定时将自身的运行数据保存到监控服务器。根据本申请的一些实施例,第四脚本文件包括shell脚本,用于级联存储服务器上传自身的运行数据。
步骤s207中,级联存储服务器1与数据生产设备11和12断开关联。
通过以上技术方案,对于达到上限值第一级联存储服务器,通过从监控服务器获取其他级联存储服务器的运行数据,进而确定最优的第二存储服务器。然后,第一级联存储服务器将与其关联的第一数据生产设备ip信息发送给第二存储服务器。第二级联存储服务器接收和存储第一数据生产设备上传的数据。第一级联存储服务器则断开与第一数据生产设备的关联。这样,避免了在第一级联存储服务器存储空间已经不足的情况下,第一数据生产设备仍旧向其传送数据,提高了系统的稳定性和可靠性。
图5示出根据示例实施例的电子设备的框图。
下面参照图5来描述根据本申请的这种实施方式的电子设备200。图5显示的电子设备200仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。其中,存储单元存储有程序代码,程序代码可以被处理单元210执行,使得处理单元210执行本说明书描述的根据本申请各种示例性实施方式的方法。例如,处理单元210可以执行如图2和图3中所示的方法。
存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(rom)2203。
存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本申请实施方式的上述方法。
软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现前述功能。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本申请实施例的方法。
下面以一个场景为例,描述根据本申请实施例的具体应用。
假设一个学校部署了100台服务器,其中1台为主服务器,99台为级联存储服务器,级联存储服务器和主服务器统一连接主服务器数据库,用户通过主服务器访问级联存储服务器。每台服务器负责10个班级或10个录播设备的录播视频的上传。
一段时间后,某一台服务器存储满了,用户在访问主服务器的时候会出现卡顿现象。按照传统的解决方法,需要人工去检测出现问题的服务器,利用挂载新的硬盘解决该问题。
根据本申请提供的技术方案,可以事先在每台服务器部署前述所需的脚本文件和配置文件。相应的脚本文件会定时将所有服务器的运行状态信息存储到主服务器的数据库中。当某一台服务器存储达到自身90%后,会触发相应的脚本文件,脚本文件会获取所有服务器的运行数据,综合比较后寻找到最优的级联存储服务器。最优的级联存储服务器通知录播主机将录制的视频上传到最优的级联存储服务器,同时最优的级联存储服务器会将上传的视频的存储路径保存到主服务器的数据库中。在每学期结束后,将所有服务器保存的视频数据上传到云端,并在服务器中清除这些视频数据,以便这些服务器供下学期使用。通过采用本申请的技术方案,避免了花费大量的金钱去购买硬盘,也避免了主服务器的崩溃问题,提升了用户的满意度。
根据本申请的一些实施例,当某一级联存储服务器存储空间达到上限值后,通过比较所有级联存储服务器的运行数据,得到最优的级联存储服务器ip,避免了靠手动增加硬盘的方式扩展级联存储服务器的存储空间,节约了人力,降低了系统成本,同时提高了系统的稳定性和可靠性。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明仅用于帮助理解本申请的方法及其核心思想。同时,本领域技术人员依据本申请的思想,基于本申请的具体实施方式及应用范围上做出的改变或变形之处,都属于本申请保护的范围。综上,本说明书内容不应理解为对本申请的限制。
1.一种在级联存储服务器集群中存储数据的方法,其特征在于,所述级联存储服务器集群包括多个级联存储服务器,每台所述级联存储服务器之间通信连接,任意一台所述级联存储服务器与一个或多个数据生产设备关联,用于接收并存储关联的数据生产设备上传的数据;所述方法应用于所述级联存储服务器集群中的第一级联存储服务器,包括:
判断所述第一级联存储服务器的存储空间使用率是否达到预设上限值;
若是,则确定所述级联存储服务器集群中的第二级联存储服务器,其中所述第二级联存储服务器的存储空间使用率未达到所述预设上限值;
向所述第二级联存储服务器发送第一数据生产设备的ip,以使得所述第二级联存储服务器与所述第一数据生产设备建立关联,接收并存储所述第一数据生产设备上传的数据,所述第一数据生产设备与所述第一级联存储服务器关联;
断开所述第一级联存储服务器与所述第一数据生产设备关联。
2.根据权利要求1所述的方法,其特征在于,所述级联存储服务器集群包括监控服务器,所述监控服务器与每台所述级联存储服务器通信连接,用于接收并存储所述多个级联存储服务器发送的运行数据;所述运行数据包括级联存储服务器的ip和存储空间使用率;
所述确定所述级联存储服务器集群中的所述第二级联存储服务器包括:
从所述监控服务器获取所述多个级联存储服务器的运行数据;
根据所述运行数据确定评价指标;
基于所述评价指标,确定所述第二级联存储服务器。
3.根据权利要求1所述的方法,其特征在于,所述级联存储服务器集群包括监控服务器,所述监控服务器与所述级联存储服务器集群中的每台所述级联存储服务器通信连接,用于接收并存储所述多个级联存储服务器发送的运行数据;所述运行数据包括级联存储服务器的ip和存储空间使用率;
所述查找所述级联存储服务器集群中的所述第二级联存储服务器包括:
接收所述监控服务器发送的所述第二级联存储服务器的ip,其中,所述监控服务器根据评价指标确定所述第二级联存储服务器,所述评价指标是所述监控服务器所述运行数据确定的。
4.根据权利要求2或3所述的方法,其特征在于:
所述运行数据还包括级联存储服务器cpu的运行状态信息;
所述评价指标是根据存储空间使用率和cpu的运行状态信息确定的。
5.一种在级联存储服务器集群中存储数据的方法,其特征在于,所述级联存储服务器集群包括多个级联存储服务器,每台所述级联存储服务器之间通信连接,任意一台所述级联存储服务器与一个或多个数据生产设备关联,用于接收并存储关联的数据生产设备上传的数据;所述方法应用于所述级联存储服务器集群中存储空间使用率未达到预设上限值的第二级联存储服务器,包括:
在第一级联存储服务器的存储空间使用率达到预设上限值后,接收所述第一级联存储服务器发送的第一数据生产设备的ip,其中所述第一级联存储服务器与所述第一数据生产设备关联;
与所述第一数据生产设备建立关联,同时所述第一级联存储服务器断开与所述第一数据生产设备关联;
接收并存储所述第一数据生产设备上传的数据。
6.根据权利要求5所述的方法,其特征在于,所述级联存储服务器集群包括监控服务器,所述监控服务器与所述级联存储服务器集群中的每个级联存储服务器通信连接;
所述在第一级联存储服务器的存储空间使用率达到预设上限值后,接收所述第一级联存储服务器发送的第一数据生产设备的ip,之前还包括:
发送所述第二级联存储服务器的运行数据至所述监控服务器,以使所述监控服务器或所述第一级联存储服务器基于所述运行数据确定所述第二级联存储服务器;所述运行数据包括级联存储服务器的ip和存储空间使用率。
7.根据权利要求6所述的方法,其特征在于,
所述运行数据还包括级联存储服务器cpu的运行状态信息;
所述评价指标是根据存储空间使用率和cpu的运行状态信息确定的。
8.一种级联存储服务器集群,其特征在于,包括:
多个级联存储服务器,每台所述级联存储服务器之间通信连接,任意一台所述级联存储服务器与一个或多个数据生产设备关联;所述多个级联存储服务器包括:
第一级联存储服务器,与第一数据生产设备关联,所述第一级联存储服务器在判断出所述第一级联存储服务器存储空间使用率是否达到预设上限值情况下,确定所述级联存储服务器集群中的第二级联存储服务器,向所述第二级联存储服务器发送所述第一数据生产设备的ip,断开与所述第一数据生产设备的关联;
所述第二级联存储服务器,接收所述第一级联存储服务器发送的所述第一数据生产设备的ip,与所述第一数据生产设备关联,接收并存储所述第一数据生产设备上传的数据;
其中,所述第二级联存储服务器的存储空间使用率未达到预设上限值。
9.根据权利要求8所述的级联存储服务器集群,其特征在于,还包括:
监控服务器,与所述级联存储服务器集群中的每个级联存储服务器通信连接,接收并存储所述多个级联存储服务器发送的运行数据;所述运行数据包括级联存储服务器的ip和存储空间使用率;
所述第一级联存储服务器还用于从所述监控服务器获取所述多个级联存储服务器的运行数据,根据所述运行数据确定评价指标,基于所述评价指标,确定所述第二级联存储服务器。
10.根据权利要求8所述的级联存储服务器集群,其特征在于,还包括:
监控服务器,与所述级联存储服务器集群中的每个级联存储服务器通信连接,用于接收并存储所述多个级联存储服务器发送的运行数据,所述监控服务器根据所述运行数据确定评价指标,根据所述评价指标确定所述第二级联存储服务器,发送所述第二级联存储服务器的ip至所述第一级联存户服务器;所述运行数据包括级联存储服务器的ip和存储空间使用率;
所述第一级联存储服务器还用于接收所述监控服务器发送的所述第二级联存储服务器的ip。
11.一种服务器,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-7中任一所述的方法。
技术总结