专利汇可以提供同时适应磁盘与固态硬盘读写特性的海量数据存储方法专利检索,专利查询,专利分析的服务。并且一种同时适应磁盘与固态 硬盘 读写特性的海量数据存储方法,将一个 块 中的记录的完全排序改为部分部序,在每个块的尾部加上布隆 过滤器 ,包括建立称为Log‑Structured Append‑Tree树,树中每个块存储的数据量达到 阈值 时,将块内的数据直接追加到相应孩子块内时,孩子块的数据由若干个排序序列组成,而不是通过归并排序的方式实现块内完全排序;树中每一个块保存着布隆过滤器。依照本 发明 ,在不牺牲任何其他性能的情况下,使得写放大大大降低,大大增加了随机写效率,而且,对固态硬盘寿命起到了更好的保护和延长。在读写混合的场景中,随机读性能也有所增强,具有重要的市场价值。,下面是同时适应磁盘与固态硬盘读写特性的海量数据存储方法专利的具体信息内容。
1.一种同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:将一个块中的记录的完全排序改为部分排序,再在每个块的尾部加上布隆过滤器,实现方式如下,内存中包括可变内存缓存和不可变内存缓存、树的元数据信息,内存中的块采用全排序结构,分为可变内存缓存和不可变内存缓存两种,前者是未达到块存储容量阈值的块,用户的记录能直接插入,后者大小达到阈值,只能被读取不能再被改变;树的元数据信息描述了树中每个块的元信息,块的元信息包括块的范围、所属的层、块中间的空闲空洞的大小,以及被追加的次数;
建立称为Log-Structured Append-Tree树的结构,磁盘中的数据采用Log-Structured Append-Tree结构组织,设该树分为n层,第i层中至少ti个块最多ti+1个块,1≤i≤n-1,参数t为相邻两层块数阈值的倍数,最后一层小于等于tn个块;每个块有一个键的范围,当每个块存储的数据量达到相应阈值时,将块内的数据刷入下一层中在范围上有覆盖重叠关系的块中,将要刷的数据直接追加到相应的块内时,某一块的数据由若干个排序序列组成,而不是通过归并排序的方式实现块内完全排序;树中每一个块保存着布隆过滤器;
后台线程对Log-Structured Append-Tree树中的块的操作分为三类,包括下刷、分裂和合并;所有操作都只对非最后一层的块发起;将当前层的某一块与下层的一个或多个块在键上的覆盖重叠关系称为父子关系,当前层的该块称为父亲块,下一层的一个或多个块称为孩子块;
下刷操作是将块内的数据下移至下一层中,但该块的范围仍保留,该块所在层的块的数目不发生变化;
下刷操作的触发条件为,该块存储的数据量达到存储阈值且该块的孩子块数目小于
2t;
触发后,需要在下面两个执行条件均满足后进行下刷,
条件1,下层的块的数目小于ti+1+1且i+1
分裂操作是将块拆分成两个,以使新生成的两个块的孩子块数目相等;
分裂操作的触发条件为,该块存储的数据量达到存储阈值且该块的孩子块数目大于
2t;
该操作需满足的执行条件为,该块所在层的块的数目小于ti+1;
合并操作是将块内的数据下移至下一层中,在下刷后该块的范围被删除,以使得该块所在层的块的数目减1;
合并操作的触发条件为,该块所在层的块数目等于ti+1;
该操作需要满足下面两个执行条件,
i+1 n
条件1,下层的块的数目小于t +1且i+1
2.根据权利要求1所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:当用户线程插入记录时,有以下三种情况,
1)若可变内存缓存未达到容量阈值,将记录追加进用户日志,再将记录插入可变内存缓存;
2)若可变内存缓存达到容量阈值且不可变内存缓存不存在,先将其重命名为不可变内存缓存,再新建一个可变内存缓存插入记录;
3)若可变内存缓存达到容量阈值且不可变内存缓存存在,等待后台线程将不可变内存缓存写入磁盘后销毁,用户线程再按照2)进行处理。
3.根据权利要求2所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:基于Log-Structured Append-Tree树,后台线程将不可变内存缓存写入磁盘包括以下步骤,
步骤1.1,若最后一层的块的数目等于tn,则令n=n+1,并新建一层,新建的层为新的最后一层;
步骤1.2,选取要处理的任务,每个任务包括选择要处理的块和该块上将要执行的操作,将不可变内存缓存也看作一种特殊的块;本选取操作设有三种优先级,从高到低依次如下,
优先级1:不可变内存缓存的下刷操作,若不满足下刷的执行条件,则继续判断优先级2条件;
优先级2:对于非最后一层,从上层开始判断是否存在块数等于ti+1且下层块数小于ti+1+1且i+1
若不存在这样的层,则继续判断优先级3条件;
优先级3:从上层到下层依次判断是否存在存储的数据量达到存储阈值的块,若存在则选取遍历过程所遇到的第一个块;若该块的孩子块的数目小于2t,则将对该块执行下刷操作;若该块的孩子块数目大于等于2t,则将对该块执行分裂操作;
若选取的块将进行的是下刷操作,但因为该块存在已经到达存储阈值的孩子块而使得该操作的执行条件不满足,则改为选择该孩子块进行下刷或分裂操作,依次类推进行递归查找,直至最终选择到第一个满足下刷或分裂执行条件的块;
若最终未选择到任何目标块和操作,则在用户继续插入数据时,从步骤1.1开始重新执行;
步骤1.3,根据获得的任务执行实际的磁盘操作,包括下刷操作、合并操作或分裂操作;
步骤1.4,申请一个排它锁,申请成功后,将执行的实际的磁盘操作所修改的树的结构信息写入树元数据变化日志,并根据此信息更新内存中的树的元信息;
步骤1.5,若处理的是不可变内存缓存的下移操作,销毁不可变内存缓存;若有用户线程正睡眠,则唤醒用户线程;将本线程所获取的所有锁解锁,本线程从步骤1.1继续开始执行。
4.根据权利要求3所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:当用户需读取数据时,执行的步骤如下:
步骤2.1,读可变内存缓存,若读取到所需要的记录即返回;
步骤2.2,读不可变内存缓存,若读取到所需要的记录即返回;
步骤2.3,依次读第1层到第n层,找到即返回,若到最后一层没找到,则说明数据库中不存在对应记录。
5.根据权利要求3所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:步骤1.3中,若任务为下刷操作,分为3种情况,
情况1,若待下刷的块不存在孩子块,则直接进入步骤1.4修改该块的元信息以实现下移;当前层的被下移的块的范围保留;
情况2,若待下刷的块存在孩子块且下一层为最后一层,
对于落在最后一层中的某一块的范围内的记录,直接修改该块;
对于落在最后一层所有块的范围之外的记录,选择距离与待插入记录的键的距离最小的孩子块进行修改,并修改孩子块的键范围;
修改最后一层孩子块的具体操作为,若该块存储的数据未达到阈值,则进行追加操作;
若达到,则将待写入的数据与原有的数据进行归并排序生成若干个新的块;
情况3,若待下刷的块存在孩子块且下一层为非最后一层,
对于落在下一层某一块的范围内的记录,直接将数据追加到该块;
对于落在所有块的范围之外的记录,选择与待插入记录的键的距离最小的孩子块进行追加,并改变孩子块的键范围;当前层的被下移的块的范围保留。
6.根据权利要求5所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:若任务为合并操作,和下刷操作采用同样方式将块内的数据下移至下一层中,下刷后该块的范围被删除,以使得该块所在层的块的数目减1。
7.根据权利要求1或2或3或4或5或6所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:块中存储的数据有索引数据、布隆过滤器和用户记录,索引数据和布隆过滤器存储在块的末尾,用户记录存储在块的前端。
8.根据权利要求7所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:当块中间的空闲空洞存储不下本次要写的所有数据但存储得下索引数据和布隆过滤器时,将索引数据和布隆过滤器存储在块的后端,将用户记录追加到块的尾部。
9.根据权利要求7所述同时适应磁盘与固态硬盘读写特性的海量数据存储方法,其特征在于:当块中间的空闲空洞存储不下本次要写的数据的索引数据和布隆过滤器时,将要写的数据和原有的数据归并排序,生成一个新的块;或者,通过将索引数据、布隆过滤器和用户记录都追加到块的尾部,替代进行归并排序。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
一种拼接影像楼面缺陷检测的故障定位方法及系统 | 2020-05-08 | 446 |
一种自动生成核电站风阀钣金零部件展开图的方法及系统 | 2020-05-11 | 949 |
内存分配方法、装置、存储介质及电子设备 | 2020-05-11 | 955 |
基于代数规约的Web服务测试执行方法 | 2020-05-11 | 174 |
胶囊内窥镜检查报告文本结构化方法、设备及介质 | 2020-05-12 | 343 |
一种基于专家系统知识库的渗透测试方法 | 2020-05-12 | 903 |
一种多层级发电厂实时对标优化方法 | 2020-05-11 | 830 |
快应用的调试方法及装置、介质 | 2020-05-12 | 183 |
数据获取方法、装置、数据处理设备及存储介质 | 2020-05-08 | 818 |
一种包装条码生成方法及系统 | 2020-05-11 | 926 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。