一种云计算系统中虚拟云盘实现方法

文档序号:9631360阅读:501来源:国知局
一种云计算系统中虚拟云盘实现方法
【技术领域】
[0001] 本发明涉及云计算技术领域,尤其涉及一种云计算系统中虚拟云盘实现方法。
【背景技术】
[0002] 在云计算系统中,使用虚拟化技术将硬盘进行虚拟映射,也就是物理上云计算集 群系统会有很多个硬盘,但是对于云计算系统来说,会把这些物理硬盘看成一个超大硬盘 来使用,这种方式就是云计算硬盘虚拟化,其实现方式是:在物理硬盘中设硬盘管理区,用 于存储着硬盘的使用情况和数据存储索引信息。索引信息包括存储的数据内容、大小、位 置、时间。将每个物理硬盘管理区进行统一的映射到一个云计算的硬盘统一管理区中,对硬 盘进行统一的管理。也就是说,在一个云计算虚拟硬盘系统中,虚拟硬盘会生成一个总的硬 盘管理表,包括每个硬盘的子管理表,当数据需要存储时,按照一定规律存储数据。当一个 硬盘的一块扇区被分配给此数据进行存储时,数据开始进行物理写入,当此物理扇区被写 满,但是此数据没有被写完时,会按照一定规律读取另外一个物理扇区进行此数据的继续 存储。这种方法中,有个致命的缺陷就是:当一个硬盘出现物理故障时,如果该硬盘上的多 个物理数据扇区只存储一半数据,另外一半数据被存储在其他物理硬盘上,那么不仅该物 理硬盘上存储的一半数据无法使用,存储有另一半数据的其他物理硬盘上的数据同样会应 为该物理硬盘损坏而无法使用。虽然硬盘使用时出现物理故障的事故率非常低,但是如果 一旦出现,就会损失惨重。本发明动态对数据的存储类型进行统计,并预先分配合适的物理 扇区,使数据尽量被分配到一个物理硬盘上,从而降低此问题带来的严重后果。

【发明内容】

[0003] 本发明的目的是实现对硬盘进行有序的归类管理,将数据大小相近的数据放在一 个硬盘区域,当数据在删除一块区域时,由于此硬盘所存储的数据大小相仿,所以把此块区 域分配给新的申请存储数据时不会由于空间不足而将数据进行分割存储,改建了现有硬盘 管理中的无序管理方式,有序管理方式也就尽量避免了数据分割。
[0004] 为了实现所述目的,本发明提供了一种云计算系统中虚拟云盘实现方法,包括以 下步骤:
[0005] 在硬盘阵列中,将每个硬盘划分出多个容量相等存储空间,根据所述存储空间的 大小,确定该硬盘所属的硬盘类型;
[0006] 当将一个空白硬盘插入硬盘阵列中时,将硬盘阵列的第一类型硬盘权值与第二类 型硬盘权值根据预设算法进行比较,并根据比较结果确定该空白硬盘所属的硬盘类型;
[0007] 其中,所述硬盘类型包括小数据硬盘、中数据硬盘和大数据硬盘;
[0008] 所述第一类型硬盘权值包括第一小数据硬盘权值、第一中数据硬盘权值和第一大 数据硬盘权值;
[0009] 所述第二类型硬盘权值包括第二小数据硬盘权值、第二中数据硬盘权值和第二大 数据硬盘权值。
[0010] 进一步,所述根据所述存储空间的大小,确定该硬盘所属的硬盘类型的步骤包 括:
[0011] 如果一个硬盘被划分出多个容量为X的存储空间,则确定当前硬盘的硬盘类型为 小数据硬盘;
[0012] 如果一个硬盘被划分出多个容量为Y的存储空间,则确定当前硬盘的硬盘类型为 中数据硬盘;
[0013] 如果一个硬盘被划分出多个容量大于Y的存储空间,则确定当前硬盘的硬盘类型 为大数据硬盘;
[0014] 其中,X、Y表示两个不同的容量值,且Υ>Χ>0。
[0015] 进一步,所述X的取值范围为312兆字节一712兆字节;优选的,X取值为512兆 字;
[0016] 所述Y的取值范围为824兆字节一 1224兆字节;优选的,Y取值为1024兆字节。
[0017] 进一步,所述第一小数据硬盘权值,用于记录客户端用户在所述硬盘阵列中的空 间占用情况;
[0018] 所述第一中数据硬盘权值,用于记录服务器用户在所述硬盘阵列中的空间占用情 况;
[0019] 所述第一大数据硬盘权值,用于记录数据库用户在所述硬盘阵列中的空间占用情 况。
[0020] 所述第二小数据硬盘权值,为当前硬盘阵列中的小数据硬盘的数量;
[0021] 所述第二中数据硬盘权值,为当前硬盘阵列中的中数据硬盘的数量;
[0022] 所述第二大数据硬盘权值,为当前硬盘阵列中的大数据硬盘的数量。
[0023] 进一步,所述预设算法为:
[0024] 第一类型硬盘权值分别与相应的第二类型硬盘权值相减;
[0025] 将差值最大的权值所属的硬盘类型确定为所述空白硬盘的硬盘类型。
[0026] 进一步,所述第一类型硬盘权值分别与相应的第二类型硬盘权值相减的步骤包 括:
[0027] 第一小数据硬盘权值减去第二小数据硬盘权值,得到小数据硬盘的权值差;
[0028] 第一中数据硬盘权值减去第二中数据硬盘权值,得到中数据硬盘的权值差;
[0029] 第一大数据硬盘权值减去第二大数据硬盘权值,得到大数据硬盘的权值差。
[0030] 进一步,所述将差值最大的权值所属的硬盘类型确定为空白硬盘的硬盘类型的步 骤包括:
[0031] 比较得到的小数据硬盘的权值差、中数据硬盘的权值差和大数据硬盘的权值差;
[0032] 若所述小数据硬盘的权值差最大,则确定空白硬盘为小数据硬盘,并将该空白硬 盘划分成多个容量为X的存储空间;
[0033] 若所述中数据硬盘的权值差最大,则确定空白硬盘为中数据硬盘,并将该空白硬 盘划分成多个容量为Y的存储空间;
[0034] 若所述大数据硬盘的权值差最大,则确定空白硬盘为大数据硬盘,并将该空白硬 盘划分成多个容量大于Y的存储空间。
[0035] 进一步,还包括以下步骤:
[0036] 用户向硬盘阵列发出申请存储空间的请求;
[0037] 根据用户所请求的存储空间大小为其分配相应的硬盘类型以进行存储数据。
[0038] 进一步,所述根据用户所请求的存储空间大小为其分配相应的硬盘类型的步骤包 括:
[0039] 判断用户所请求的存储空间的大小;
[0040] 当用户请求的存储空间大小为[0,X],为其分配小数据硬盘进行存储;
[0041] 当用户请求的存储空间大小为(X,Y]时,为其分配中数据硬盘进行存储;
[0042] 当用户请求的存储空间大小为(Y,+ 0 )时,为其分配大数据硬盘进行存储。
[0043] 进一步,在所述根据用户所请求的存储空间大小为其分配相应的硬盘类型的步骤 之后,或与该步骤同时进行有以下步骤:
[0044] 根据用户的类型增/减第一类型硬盘权值;
[0045] 根据当前类型的用户所请求的存储空间大小增/减所述第一类型硬盘权值;
[0046] 其中,所述用户的类型包括客户端用户、服务器用户和数据库用户。
[0047] 进一步,所述根据用户的类型增/减所述第一类型硬盘权值的步骤包括:
[0048] 当用户注册为客户端用户时,在第一小数据硬盘权值加A;
[0049] 当客户端用户被注销时,在第一小数据硬盘权值减A;
[0050] 当用户注册为服务器用户时,第一中数据硬盘权值加B;
[0051] 当服务器用户被注销时,在第一小数据硬盘权值减B;
[0052] 当用户注册为数据库用户时,第一大数据硬盘权值加C;
[0053] 当数据库用户被注销时,在第一小数据硬盘权值减C;
[0054] 其中,A、B、C表示权值的加减量,且C>B>A>0。
[0055] 进一步,所述根据当前类型的用户所请求的存储空间大小增/减所述第一类型硬 盘权值的步骤包括:
[0056] 当客户端用户所请求的存储空间大小为[0,X]时,第一小数据硬盘权值加D,第一 中数据硬盘权值和第一大数据硬盘权值不变;
[0057] 当客户端用户所请求的存储空间大小为(X,Y]时,第一小数据硬盘权值减D,第一 中数据硬盘权值加D,第一大数据硬盘权值不变;
[0058] 当客户端用户所请求的存储空间大小为(Υ,+ 0 )时,第一小数据硬盘权值减D, 第一中数据硬盘权值不变,第一大数
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1