归档
11
21
开发工具使用之 Cmake 开发工具使用之 Cmake
0、通用的 CMakeLists 模板目前在 linux 下使用的 cmake 版本为 3.16,而在 windows 下使用的版本为 3.20 # 指定 cmake 所需的最小版本 cmake_minimum_required(VERSI
2023-11-21
02
12
CMU 15-445 08-Index Concurrency CMU 15-445 08-Index Concurrency
Observation前面的操作中,都假设只有一个线程去操作数据结构,但实际操作中是有多个线程同时操作数据库的 因此需要研究多线程如何安全的执行查询 并且在实现线程安全的同时,也要注意如何优化磁盘IO 存在一些只支持单线程的数据库(比如
2023-02-12
01
19
CMU 15-445 14-Query Planning Optimization Part II CMU 15-445 14-Query Planning Optimization Part II
Backround上节课说的是基于规则的优化器,而本节课要说的就是基于代价模型的优化器 基于代价模型,估计每个计划的好坏 然后从众多执行计划中,选取一个性价比最高的执行计划 Cost model components代价估算的三
2023-01-19
19
CMU 15-445 13-Query Planning Optimization Part I CMU 15-445 13-Query Planning Optimization Part I
Query optimization为什么会有优化器的存在? SQL是声明式的,它只说明了需要的数据(答案)是什么,但没有说明要以什么方式去获取数据 因此DBMS可以对语句进行优化,从而以最小的成本获取相同的数据 因此有了众多SQL优
2023-01-19