• CMU15-445笔记6——B plus tree

    一、B+树和B树b+树是一个自平衡树,当我们插入数据时,其会保证数据的有效性;b+树插入、删除和查询的算法复杂度为O(log n)。 介绍B+树和B树的概念以及查询、插入、删除操作:https://segmentfault.com/a/119000...
  • CMU15-445笔记5——Hash Table

    Hash Tablehash table或者b+树等数据结构在数据库中的作用: 内部元数据(meta internal data):page表或者page目录 核心数据存储(core data storage):此时数据结构的值就是tuple,me...
  • CMU15-445笔记4——Buffer Pools

    1. Buffer Pool Manager1.1 Buffer Pool Organization我们为buffer pool分配一块大的内存,并将我们从磁盘中读取到的所有page放入里面。这段内存是由数据库系统来控制的,而不是操作系统。我们将bu...
  • MIT6.824笔记1——Introduction

    Introduction分布式系统的特点: parallelism fault tolerance physical security / isolated 分布式系统面临的挑战: concurrency partial fa...
  • CMU15-445笔记3——Database Storage

    1. 数据库系统设计数据库系统设计目标:给应用程序一个错觉,即我们能提供足够的内存将整个数据库存入内存中。 1.1 整体的设计架构: 图1:简单数据库的整体架构 在硬盘中有数据库文件,其由目录和页(也可以说是块)组成;在内存中有一个缓存池,用来缓存...
  • CMU15-445笔记2——Advanced SQL

    Relational Languages Data Manipulation Language:数据操作语言,例如insert、update、delete和select这些命令来操作存在于数据库中的数据。 Data Definition Langua...
  • CMU15-445笔记1——Introduction

    1. 为什么需要数据库如果使用csv file而不使用数据库 1.1 数据一致性 多个csv文件中相关联的多条数据之间不冲突 对于csv文件中字段进行非法的字符修改 我们如何能够存储多个内容到一个字段(比如书的作者可能有多个,我们要存储所有这些作者名...
  • nfs环境搭建

    nfs环境搭建我启动两台qemu虚拟机(linux kernel),一台作为服务器端,一台作为客户端搭建了NFS环境,并尝试进行了使用。 在服务器端和客户端操作:安装nfs-server包(同时包括了客户端软件和服务器端软件) 1apt-get i...
  • 内核编译、启动以及gdb内核调试环境构建

    1. 相关软件包环境以及目录结构Qemu:QEMU emulator version 6.2.0 (Debian 1:6.2+dfsg-2ubuntu6) GDB:GNU gdb (Ubuntu 12.0.90-0ubuntu1) 12.0.90 提...
  • gdb入门系列5

    GDB入门系列5改变程序的执行一旦使用GDB挂上被调试程序,当程序运行起来后,你可以根据自己的调试思路来动态地在GDB中更改当前被调试程序的运行线路或是其变量的值,这个强大的功能能够让你更好的调试你的程序,比如,你可以在程序的一次运行中走遍程序的所有...