[源码和文档分享]C++实现的基于NSM的简易数据库

1 引言

1.1 实验目的

  • 深入掌握数据库系统的原理和技术,进而从事数据库管理软件和工具的开发

  • 深入了解数据库系统的内部结构,以开发出高效的数据库应用系统

1.2 实验要求

实验的总体要求是:利用C++作为编程,使用Microsoft Visual Studio 2010实现基于NSM的简易数据库的设计,实现基于NSM的简易数据库。

2 程序设计说明

2.1 功能概述

该基于NSM的简易数据库,实现的功能有:

  • 从文件中读取模式信息,并显示出来

  • 插入一条、多条元组到关系表中

  • 将TPC-H产生的Customer与Order表数据自动导入到相应文件

  • 在DBMS中对单表进行选择、投影操作

  • Customer与Order表进行连接算法实现。选择三者之一实现:块嵌套循环连接算法、Hash连接算法、归并排序连接算法

  • 索引快速定位

2.2 NSM的具体构造及解释

NSM(N-ary Storage Model):Traditionally, database systems use the N-ary storage model (NSM), a page-based storage layout in which tuples (or rows) are stored contiguously in pages. NSM may waste disk and memory bandwidth if only a small fraction of each row is needed.

变长记录的页面组织(page organization for variable-length record),每个槽slot<偏移record offset,记录程度record length>

NSM的一条记录实例:All fields of record stored together + slots

 

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1305.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值