[发明专利]一种面向医疗大数据处理的固态磁盘存储方法有效
申请号: | 201610887788.1 | 申请日: | 2016-10-12 |
公开(公告)号: | CN106503427B | 公开(公告)日: | 2019-01-29 |
发明(设计)人: | 朱旭东;董祖琰;方宝林;高春蓉;余小益;苏寿海 | 申请(专利权)人: | 创业软件股份有限公司 |
主分类号: | G16H10/60 | 分类号: | G16H10/60;G06F3/06 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 杜军 |
地址: | 310013 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种面向医疗大数据处理的固态磁盘存储方法。本发明将医疗数据分块分别映射到固态磁盘的不同存储单元,每次更新某一数据块时,检查该数据块所在的存储单元其最新一次迁移后的更新次数是否超过设定的更新阈值;如果超过,则跟固态磁盘上相对更新次数较少的存储单元,进行数据对换;同时为了防止数据对换产生的抖动,本发明设定了最小时间窗口;并限制相对更新次数较少的存储单元从文本数据文件交换给媒体文件;文本数据文件在排序操作时根据存储单元的剩余更新次数进行强制更新。本发明通将被频繁访问的数据总被动态放置到具有较低擦写次数的存储单元,从而提高整个固态磁盘的寿命,并且避免了长时间的批量迁移过程。 | ||
搜索关键词: | 一种 面向 医疗 数据处理 固态 磁盘 存储 方法 | ||
【主权项】:
1.一种面向医疗大数据处理的固态磁盘存储方法,其特征在于:将医疗数据分块分别映射到固态磁盘的不同存储单元,每次更新某一数据块时,检查该数据块所在的存储单元其最新一次迁移后的更新次数是否超过设定的更新阈值;如果超过,则跟固态磁盘上相对更新次数较少的存储单元,进行数据对换;同时为了防止数据对换产生的抖动,设定了最小时间窗口;并限制相对更新次数较少的存储单元从文本数据文件交换给媒体文件;文本数据文件在排序操作时根据存储单元的剩余更新次数进行强制更新;具体实现如下:(1)将固态磁盘构成的存储系统均分为n个存储单元,记为0,1,2,...n‑1,每个存储单元的大小均为b;且将所有病例数据的文本数据文件table和多媒体数据文件Media也分别均分成大小为b的数据块;同时在固态磁盘构成的存储系统中设置两个索引表:映射表Map[]和存储单元管理表Unit[];所述的文本数据文件table只有一个,而多媒体数据文件Media则是有多个;其中映射表Map[],包括文件名filename、文件内块号f_index、存储单元号unit_index、最后迁移时间move_time和迁移后的更新次数renew_count;存储单元管理表Unit[],包括存储单元号Unit_index、所属文件filename、最后迁移时间Move_time和剩余可擦写次数Remain_count;(2)将数据访问描述为三元组,其中FN表示更新的数据所属文件filename,BN表示更新的数据在文件内块号f_index,OP表示访问操作,且访问操作包括读、写、排序三种;设置时间窗口大小为window_t,设置最大更新阈值th;所述且访问操作的具体实现如下:步骤1.判断数据访问的操作类型,如果访问操作OP为读操作,则直接结束本算法;步骤2.数据访问前期操作具体如下:2‑1.获取当前时间t,初始化i=0;2‑2.如果映射表的第i项的文件名map[i].filename与访问数据三元组中的FN相等,并且映射表的第i项的文件内块号map[i].f_index与访问数据三元组中的BN相等,直接执行步骤2‑4;2‑3.对参数i重新赋值并进行判断,即i=i+1,然后判断如果i大于等于m,则直接结束本算法;否则返回步骤2‑2;2‑4.对映射表的第i项迁移后的更新次数map[i].renew_count进行重新赋值,即:map[i].renew_count=map[i].renew_count+1;并初始化p=0;定义当前访问的数据块所在的存储单元号INDEX=map[i].unit_index;定义当前访问的数据块所在的最后迁移时间Time=map[i].move_time;定义当前访问的数据块所在的迁移后的更新次数Count=map[i].renew_count;2‑5.如果在存储单元管理表中第p项的存储单元号unit[p].unit_index等于INDEX,则对当前访问的数据块所在的存储单元的剩余可擦写次数remain_count进行重新赋值,unit[p].remain_count=unit[p]..remain_count–1;否则对p重新赋值;2‑6. p=p+1,然后判断p是否小于n,如果小于n,则重新执行步骤2‑5,否则直接结束本算法;步骤3.对数据访问操作OP进行判断,如果访问操作OP为写操作,则进入步骤4;如果访问操作OP为排序操作,则进入步骤5;步骤4.如果当前时间与最后迁移时间Time的差值小于window_t或Count小于th,直接结束本算法;步骤5.对存储单元管理表Unit[]的所有项按照remain_count进行降序排序,并初始化j=0;步骤6.如果unit[j].filename不等于table,跳转到步骤8;否则对j进行重新赋值,j=j+1;步骤7.对变量j进行判断,如果j大于等于n,直接结束本算法;否则返回步骤6;步骤8.初始化k=0,并判断:如果map[k].unit_index等于unit[j].unit_index,则跳转到步骤10.步骤9.否则对k进行重新赋值;k=k+1,并判断:如果k大于等于m,直接结束本算法,否则跳转到步骤8,对map[k].unit_index等于unit[j].unit_index重新判断;步骤10.交换map表第i项和第k项的存储单元号,即交换map[i].unit_index和map[k].unit_index;并重新初始化操作如下:map[i].move_time赋值为当前时间t,map[k].move_time赋值为当前时间t;map[i].renew_count赋值为0,map[k].renew_count赋值为0;步骤11.交换存储单元管理表中第j项和p项的文件名,即交换unit[j].filename和unit[p].filename;并重新初始化操作如下:unti[j].move_time赋值为当前时间t,unit[p].move_time赋值为当前时间t;步骤12.互相交换交换编号为map[i].unit_index和map[k].unit_index的存储单元中的数据块。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创业软件股份有限公司,未经创业软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610887788.1/,转载请声明来源钻瓜专利网。
- 上一篇:食材加工机
- 下一篇:原汁机用的压榨机构以及原汁机