语音大数据在磁盘冗余阵列上的快速存储和访问修改方法与流程

文档序号:18755506发布日期:2019-09-24 22:14阅读:324来源:国知局
本发明属于人工智能
技术领域
,涉及一种语音数据管理方法,具体涉及一种语音大数据在磁盘冗余阵列上的快速存储和访问修改方法。
背景技术
:语音文件是连续的对于数字信号的记录,语音文件存储是数字信号记录以文件格式的形式在硬盘等介质上的一种存储方式,在硬盘上存储文件往往不是物理介质上连续的存放,而是分散于磁盘的不同分区和不同物理扇区。数据存储有很多种方法,通常的存储方式是将构成完整文件的不同部分分散到不同的物理地址。在当下的主流大容量系统的备份和大数据管理体系中,通常使用磁盘冗余阵列系统和方法。语音数据的识别依赖于人工智能神经网络的反复持续训练,需要海量的语音数据,语音数据通常根据不同发音者,发音时间,采集距离等进行分类,对于这些语音数据信息的管理需要充分考虑存储架构在空间上的复杂度,因为大数据领域空间存储的大小,处理相同的数据使用的存储空间越大,维护成本越高,访问数据调度时间也越长,造成数据成本的单位存储介质综合价格也越高昂。技术实现要素:为克服现有技术存在的技术缺陷,本发明公开了一种语音大数据在磁盘冗余阵列上的快速存储和访问修改方法。本发明所述。采用本发明所述的语音大数据在磁盘冗余阵列上的快速存储和访问修改方法,采用4k对齐和双向冒泡算法,分别对存储区域进行优化和数据命名进行整理,从两方面提高了数据读写和识别速度,利于快速调用和管理。同时,进一步采用数据筛选管理,可以识别出经常被更新替换的用于语音训练的数据,并针对其进行上述改进的数据管理措施,提高了资源使用效率。具体实施方式下面对本发明的具体实施方式作进一步的详细说明。本发明所述语音大数据在磁盘冗余阵列上的快速存储和访问修改方法,包括如下步骤:筛选出语音数据,对语音数据及其占用的存储器做如下处理:对存储器进行4k对齐;对语音数据按照双向冒泡算法进行排序;对语音数据按照命名进行统计和管理,所述管理包括访问修改操作。其中,对数据的筛选根据数据的存储时间,设定一个存储时间长度的门限值,例如7天,当存储时间超过门限值时则丧失优先权,系统优先筛选出存储时间不超过门限值的新增数据进行优化处理。数据筛选针对于较短时间周期的数据批次,针对训练需要使用的较新数据可以做必要的修复,修复后同步回退原始的数据仓库。存储较短时间的数据修复优先级也较高,修复并同步至原始的数据仓库,而较长时间存放的数据在几轮迭代周期后可以缓慢的同步并回退原始的数据仓库。对于语音数据,训练和更新时间较快,和系统数据或其他常用软件数据更新速度很慢,本发明中由于频繁调用读取的是新存储的语音数据,因此根据存储时间长度进行筛选。筛选出的数据对数据本身和数据占用的存储器进行以下优化处理。首先对存储器进行4k对齐,4k对齐就是让操作系统的最小分配单元和闪存页对应起来,这样写入4kb数据时就能一次完成。语音训练数据通常是由多个零散小文件组成的较大文件,存储时各个小文件分散存储在不同的硬盘分区,这种数据格式使用4k对齐对硬盘数据读写速度有较为明显的提升。例如在重要的文件复制数据方面,分别测试相同硬盘和不同硬盘下大文件和零散小文件的测试,大文件约为20个gb数据归档类型数据,零散小文件为20万个不大于2m的文件,通过测试对比可以发现,在数据复制方面,采用4k对齐的硬盘性能有明显的提升,特别是在零散小文件方面,速度提高近一倍。实测发现,在使用固态硬盘作为临时存储介质时,在临时性交换区域做快速的数据交换,实际使用中绝对性的处理4kb随机读写的效率最高。对存储器进行处理后,对数据按照双向冒泡算法进行排序,双向冒泡算法是传统冒泡排序的双向进行,先让气泡排序由左向右进行,再来让气泡排序由右往左进行,如此完成一次排序的动作。具体的双向冒泡排序的原理是针对于需要排序的两列序列进行两层循环遍历。正方向让序列中较小的数据能够较快地移动到数组的顶部,反方向,即相对正方向的另一相对方向让序列中较大的数据能够较快地移动到数组的底部,从而当两层循环结束时排序即可完成,相对单向冒泡,双向冒泡算法时间复杂度较小。采用双向冒泡算法优选对于文件的命名进行排序,对于海量数据的读写调用,改善数据文件的命名方式利于快速识别调用。例如对于某一语音数据d1,其关联的参数ci包括c1发音者,c2采集时间,c3采音距离,c4发音者性别,c5发音者年龄段。假设该语音数据采集时的状态如下表:发音者姓名采集时间采音距离发音者性别发音者年龄段d1张三(zs)白天(day)0.5米男(ma)10-18d2张三(zs)夜晚(ngt)1米男(ma)10-18d3李四(ls)白天(day)1米男(ma)18-30d4王五(ww)夜晚(ngt)3米女(fem)40-50其中d1和d2语音数据对应的文本为:打开空调。其中d3和d4语音数据对应的文本为:打开电视。则对语音数据d1至d4的命名可以如下所示:zs-day-05m-ma-1018;zs-ngt-1m-ma-1018;ls-day-1m-ma-1830;ww-ngt-3m-fem-4050;与文本数据的对应关系为:打开空调-zs-day-05m-ma-1018;打开空调-zs-ngt-1m-ma-1018;打开电视-ls-day-1m-ma-1830;打开电视-ww-ngt-3m-fem-4050;直接按照上述命名规则存储和调用数据,存储空间大,调用速度慢。利用双向冒泡算法,制定规则对文件名进行排序,例如按照字母表顺序a-z进行排序,字母相同则比较下一字母,则以下四个文件名:zs-day-05m-ma-1018zs-ngt-1m-ma-1018ls-day-1m-ma-1830ww-ngt-3m-fem-4050;进行排序后的顺序为:ls-day-1m-ma-1830;ww-ngt-3m-fem-4050;zs-day-05m-ma-1018;zs-ngt-1m-ma-1018;利用双向冒泡算法对各个命名进行排序后,各个关联数据存储区域更加集中,调用时发现识别速度更快。并可以对每一语音数据的命名建立索引库,依次以每一参数为索引,分层建立多层索引。例如zs-day-05m-ma-1018,各个信息分别对应:发音者姓名,发音时间,发音距离,发音者性别,发音者年龄;如以发音者姓名为第一层索引:语音数据的索引信息为:《zs》day-05m-ma-1018;ngt-1m-ma-1018;《ls》day-1m-ma-1830;《ww》ngt-3m-fem-4050;在《zs》的第一层索引下,以发音时间作为第二层索引;《zs》-《day》05m-ma-1018;《zs》-《ngt》05m-ma-1018;以此类推。如以发音距离为第一层索引:语音数据的索引信息则为《05m》zs-day-ma-1018;《1m》zs-ngt-ma-1018;ls-day-ma-1830;《3m》ww-ngt-fem-4050;次级索引以此类推。采用上述层次化的索引方式,在组织数和整理数据时,可以完全依据每一语音数据关联的一个或多个参数属性定义,选取有关的数据内容。例如在语音识别训练中,需要只选择近场数据做训练前的准备工作,只使用发音距离的0.5和1m的数据内容,那么符合这个条件的数据在索引数据库的引导下,进入某个训练前数据准备的工作目录做前期的处理,这时数据相应的只保留了数量较少的一部分,相对于原始的数据总量存储空间减小。按照上述命名索引规则,存储空间减少。文件命名更加简单,从使用,读取,整理和调度等一系列操作上更加直观,易于维护和便于操作。就文件命名上来说也更贴近实际使用,文件存储空间更小,利于数据的整体维护。例如要在以下数据中删除发音距离1米的数据:zs-day-05m;zs-ngt-1m;ls-day-1m;ww-ngt-3m;则对应删除索引发音距离=1m的全部数据即可,删除后剩余数据如下所示:zs-day-05m;ww-ngt-3m;上述文件命名方式,有效降低了文件命名和进行数据管理所需要的存储空间大小,数据的搜索和调用更加快速,同时,对海量数据的批量化新增、修改和删除也更加方便快捷。例如对上例中的1m数据的修改:由1m批量改为3m。首先检索出所有含有1m的命名,随后修改。修改后的数据库为zs-day-05m;zs-ngt-3m;ls-day-3m;ww-ngt-3m;在一种优选命名方式中,所述参数ci中至少一个参数ck,其关联有唯一的其他参数,则语音数据命名中省略关联的其他参数,对于未关联参数,以其关联的每一参数为索引,分层建立对文本数据的多层索引;对于被关联的参数,以其关联的每一参数为索引,分层建议对参数ck的多层索引。例如,发音者姓名与发音者年龄,发音者性别对应,此时在命名中可以只保留发音者姓名,而省略发音者年龄和性别,例如前述对语音数据d1至d4的命名:zs-day-05m-ma-1018;zs-ngt-1m-ma-1018;ls-day-1m-ma-1830;ww-ngt-3m-fem-4050;发音者姓名为zs的发音者为15岁男性,ls为20岁男性,ww为45岁女性,则上述命名可以进一步简化为,zs-day-05m;zs-ngt-1m;ls-day-1m;ww-ngt-3m;进一步对未关联参数如发音时间,发音距离等,以其关联的每一参数为索引,分层建立多层索引;如《zs》day-05m;ngt-1m;《ls》day-1m;《ww》ngt-3m;在《zs》的第一层索引下,以发音时间作为第二层索引;《zs》-《day》05m;《zs》-《ngt》05m;由于每一发音者的性别年龄唯一确定,可以以性别和年龄为不同层次索引,建立对于发音者姓名的索引,方便根据发音者姓名和年龄调取数据;例如《ma》1018-zs;1830-ls;《fem》4050-ww;上述实施方式进一步简化了命名的存储空间。层次化索引不仅方便快速检索,也方便删除和修改某类数据,例如发现某个发音者姓名输入错误,直接将发音者姓名索引修改即可,而不用每个文件一一修改,删除某类文件也是如此,例如要删除发音距离3米,发音时间是晚上的数据,则对应删除同时在索引发音距离3m和发音时间ngt下的全部数据即可。采用4k对齐和双向冒泡算法,分别对存储区域进行优化和数据命名进行整理,从两方面提高了数据读写和识别速度,利于快速调用和管理。同时,进一步采用数据筛选管理,可以识别出经常被更新替换的用于语音训练的数据,并针对其进行上述改进的数据管理措施,提高了资源使用效率。前文所述的为本发明的各个优选实施例,各个优选实施例中的优选实施方式如果不是明显自相矛盾或以某一优选实施方式为前提,各个优选实施方式都可以任意叠加组合使用,所述实施例以及实施例中的具体参数仅是为了清楚表述发明人的发明验证过程,并非用以限制本发明的专利保护范围,本发明的专利保护范围仍然以其权利要求书为准,凡是运用本发明的说明书内容所作的等同结构变化,同理均应包含在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1