论文部分内容阅读
随着信息化技术的发展和Web2.0时代的到来,数据资源的类型和规模不断扩大,社会发展已经进入到大数据时代。大数据时代的来临,给索引技术和数据库系统的发展带来了巨大的机遇和挑战。B+树索引是一种索引有序数据的高效索引方式,其在文件系统和数据库系统建立索引等方面起着重要作用。然而,随着数据规模的不断扩大,B+树发生结点分裂时耗费大量时间,并且其内部结点空间利用率较低,严重地影响了应用系统的性能。因此,设计出高效合理的索引结构,以管理和组织这些日益增长的数据显得十分必要。本文首先介绍了常见的几种索引结构,包括线性表索引、顺序表索引、散列索引和树形索引,着重阐述了树形索引结构中的B-树索引和B+树索引。在比较分析B-树和B+树索引机制的优缺点的基础上,结合当前大数据时代的背景,针对经典B+树索引机制出现的查询性能下降和空间利用率低的问题,提出了一种基于动态结点流行度的B+树索引结构-DNCPB+-tree(Dynamic Node CachePopularity B+-tree)。该索引结构通过修改经典B+树的内部结点结构,提高其空间利用率;通过在叶子结点引入流行度参数和在内部结点动态缓存访问频率较高的叶子结点信息,提高其查询性能。最后实验采用SQLite开源数据库平台,分别就平均I/O开销和查询响应时间对DNCPB+-tree索引和经典B+-tree索引进行对比分析,以验证DNCPB+树索引机制的有效性。实验结果表明:与经典B+树索引机制相比,尽管DNCPB+-tree的查询操作会有额外的时间开销,但仍具有较好的查询效率,查询响应时间平均提高了18%,同时提高了空间利用率。