会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
行远自迩 登高自卑
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
···
11
下一页
2025年1月2日
CMU_15445_P3_Part2
摘要: Aggregation & Join Executors 实现 AggregationExecutor 的实现 AggregationExecutor 的实现需要关注 AggregationExecutor.h 和 AggregationPlanNode, 以理解其支持的 SQL 语句及其执行方式.
阅读全文
posted @ 2025-01-02 16:27 虾野百鹤
阅读(68)
评论(0)
推荐(0)
2024年12月27日
JVM内存布局与 JNA 调用本地方法原理详解
摘要: JVM 内存布局与 JNA 调用本地方法原理详解 JVM 内存布局详解 JVM 内存布局随着 JDK 版本不同而不同, 但是大致布局以及运行原理相同, 我们选择 JDK1.8 的内存布局解释. 下图是JDK 1.8 的内存布局的示意图: 程序计数器(PC) 这个是当前线程正在执行的字节码行号指示器,
阅读全文
posted @ 2024-12-27 11:23 虾野百鹤
阅读(304)
评论(0)
推荐(0)
2024年12月21日
CPP虚函数详解与实例
摘要: CPP虚函数详解与实例 在 CMU_15445 的Project3 中大量使用了虚函数,抽象类的方法 主要在 Expression(表达式) 以及 Executor(Plan_Node的执行) 中, 在完成 Part1 的时候仅关注了功能的实现, 还没有完全搞清楚为什么要使用虚函数以及抽象类, 以及
阅读全文
posted @ 2024-12-21 11:35 虾野百鹤
阅读(168)
评论(0)
推荐(0)
2024年12月16日
CMU_15445_P3_Part1
摘要: CMU_15445_P3_Part1 这部分主要是实现一些基本的 Plan_Node 的 Executor, 我们可以首先通过一个列子来看, 就是 Projection Plan_Node 的例子. 我们使用一个简单的 EXPLAIN 的例子引入 PlanNode 的执行流程: -- 在控制台使用
阅读全文
posted @ 2024-12-16 15:53 虾野百鹤
阅读(118)
评论(0)
推荐(0)
2024年12月7日
CMU_15445_P3_BUSTUB_Query_Execution导读
摘要: BUSTUB中SQL语句的Plan Execution 导读 Project3 中主要讲述的是SQL语言的Query Executor过程, 实际步骤中包含Query Optimization的过程, 下图是一个 Query 在数据库中 Execute 的整体流程. 在 关系数据库 Query Ex
阅读全文
posted @ 2024-12-07 17:13 虾野百鹤
阅读(82)
评论(0)
推荐(0)
2024年12月2日
CMU_15445_P3_bustub_事务与锁管理机制
摘要: CMU_15445_P3_bustub_事务并发控制算法(MVCC) BUSTUB 数据库引擎采用多版本并发控制协议 multi-version concurrency control (MVOCC) 来实现事务的并发控制管理. 数据引擎的并发控制 从数据库引擎的角度应该如何看待以及处理事务呢? 事
阅读全文
posted @ 2024-12-02 10:18 虾野百鹤
阅读(117)
评论(0)
推荐(0)
2024年11月28日
CMU_15445_P3_数据库在内存中存储的形式
摘要: 数据库在内存的存储形式 我们将从小到大介绍一下在 bustub 框架中数据库在内存中的存储形式. 在 bustub 中所有数据的存储单元是 Page, 而管理内存中的 Page 的是 BufferPoolManager, 这部分在前面的 Project1 已经介绍过了, 这部分是前面部分的延申, 具
阅读全文
posted @ 2024-11-28 16:44 虾野百鹤
阅读(113)
评论(0)
推荐(0)
2024年11月12日
关系数据库 Query_Execution
摘要: 关系数据库 Query Execution 的流程 你是否也和我一样很好奇, 当我们在数据库的控制台输入一条 SQL 语句的时候, 后台发生了哪些事情呢, DBMS 就像 OS 一样, 只是 DBMS 是对数据操作的抽象, 不像操作系统, 是对整个计算机的抽象. DBMS Query Executi
阅读全文
posted @ 2024-11-12 08:31 虾野百鹤
阅读(112)
评论(0)
推荐(0)
2024年11月7日
CMU_15445_P2_PageGuard
摘要: CMU_15445_P2_PageGuard 我将页面守护部分与多线程调用部分放在一起写在这篇博客中了, 页面守卫的本质是更加优雅方便的使用内存中的页(Pages). 我们知道Buffer_Pool_Manager实际上是管理页面, BPM 管理的是页面在内存中的组织形式与磁盘交互等, PageGu
阅读全文
posted @ 2024-11-07 21:14 虾野百鹤
阅读(266)
评论(0)
推荐(0)
2024年11月6日
CMU_15445_P2_Extendible_Hash_Table
摘要: 到Project2, 我们依然在处理数据库存储相关的部分, 从 Project1 中我们应该Get到两个概念: 数据库底层数据操作的基本单元是 Page. buffer_pool_manager 是管理以及组织数据单元Page的工具, 在Project2的第一部分, 我们还新增了页面守护(PageG
阅读全文
posted @ 2024-11-06 10:13 虾野百鹤
阅读(218)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
···
11
下一页
公告