[发明专利]一种优化的SSD数据更新方法有效
| 申请号: | 201510458844.5 | 申请日: | 2015-07-30 |
| 公开(公告)号: | CN105117415B | 公开(公告)日: | 2018-07-03 |
| 发明(设计)人: | 段章峰;伍卫国;崔金华 | 申请(专利权)人: | 西安交通大学 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 西安智大知识产权代理事务所 61215 | 代理人: | 贺建斌 |
| 地址: | 710049*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 一种优化的SSD数据更新方法,针对SSD上存储的字符类型的数据,结合使用线段树和B树两种数据结构,在保证查询效率的同时,减少索引结构所占空间,在对字符数据进行更新时,利用集合交并运算特点,将两个数据块中相同key的不同value进行更新,其他数据则原样写回,通过采用基于线段B树的LSM方法,将对于SSD上字符数据的随机更新转化为数据的顺序写入,有效避免了SSD的写入放大问题,加快了SSD的写入数据速度,提高了数据库操作效率。 | ||
| 搜索关键词: | 数据更新 字符数据 更新 写入 线段 数据库操作 查询效率 数据结构 索引结构 写入数据 字符类型 数据块 线段树 写回 运算 优化 存储 放大 集合 转化 保证 | ||
【主权项】:
1.一种优化的SSD数据更新方法,其特征在于,包括以下步骤:第一步,建立线段B树结构:在内存数据库中,先利用字符串数据的共享前缀信息,将共享相同前缀的字符串组成一个字符串区间;然后将这个区间数据利用B树结构写入算法插入到线段B树中;最后,整个数据结构的逻辑视图为一颗B树,B树的节点存储着关键字字符串区间信息;第二步,使用pLSM方法完成数据的更新操作,多组件间的pLSM方法的合并过程和两组件的pLSM方法的合并过程步骤相同,两组件的pLSM方法的合并过程如下:1)从常驻内存C0中读入未合并的叶子节点数据,填入合并块中;2)从常驻磁盘C1中读入未合并的叶子节点数据,填入合并块中;3)对合并块中的数据进行归并排序,若遇到相等的关键字时,以常驻内存C0中的数据为最新数据,进行更新操作;4)重复步骤1)、2)、3),当合并块满时,追加的写回磁盘,然后重新读取常驻内存C0和常驻磁盘C1中未合并的叶子节点数据;5)当常驻内存C0和常驻磁盘C1的所有叶子节点都进行了合并操作后,表示一个合并过程结束,常驻内存C0中的更新操作数据被合并到磁盘中;通过上述合并步骤,对于SSD盘上数据的更新,先写入内存中结构,然后采用逐级合并的策略写回SSD,在写回过程中,不直接对SSD中的数据进行修改,而是通过合并过程来产生更新后的数据,并且追加写入新文件中,当合并完成后,删除旧文件;第三步,使用线段B树结构对SSD盘上的数据提供索引:使用pLSM方法后,由于SSD盘中存储有多个数据文件,对于数据的查找操作,先在位于内存中的常驻内存C0结构中查找,如果没有找到,那么逐级在磁盘结构中查找,从常驻磁盘C1,C2一直到Ck,直到找到为止;在查找过程中,如果同一数据字段在多个结构中同时出现,pLSM方法保证每次读取中都能取回最新且正确的数据,在查找操作中,如果在内存中没有找到所需数据,就从磁盘中读取数据;当在SSD盘中的索引结构中查找时,关键字的比较转化为测试待查找数据是否在区间内,如果找到包含待查找数据的区间信息,则读取其在数据文件中的偏移量,通过文件偏移量访问数据文件,得到待查找key对应的value,将一次访问中的整个区间数据缓存在内存中,组成一个缓冲区,当下次的同一区间内部的数据访问到来时,则直接在内存中进行操作,缓冲的组织采用双向链表组织,并且通过LRU方法来淘汰不常用的缓冲数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510458844.5/,转载请声明来源钻瓜专利网。
- 上一篇:一种横机用的导纱装置
- 下一篇:一种高楼逃生器





