UDS 协议详解 UDS 协议详解
在 dcm 中的服务,与 dem 相关的主要是 0x19 和 0x85;其中 ap 支持的 19 服务,为 17/18/19 0x14(cleardiagnosticInformation) 需要传入 groupDTC(三个字节),删除该组
2024-07-21
开发工具使用之 Catch2 开发工具使用之 Catch2
介绍目前使用的测试框架,好处就是只有头文件,方便无论是新人还是老人进行开发(gtest 需要编译成 静态库,使用上有点难度) CHECK 和 REQUIRECHECK 和 REQUIRE 用于检测当前括号中的表达式是否为真,常用于校验函数的
2024-05-04
开发工具使用之 Git 开发工具使用之 Git
Git 常用指令add# 将某个文件的修改提交到暂存区 git add filename # 将所有发生过修改的,以及新增的文件都添加到暂存区中 git add . branch# 创建分支 git branch branch_n
2024-05-04
一些 cpp 的编码规范 一些 cpp 的编码规范
什么时候使用前置声明为了防止循环引用的情况发生 避免头文件的使用者引入过多的无用的头文件(希望屏蔽底层的实现细节) 是否需要有 assertassert 只在 debug 的模式下才会生效,而 debug 模式并不会是生产模式下
2024-03-17
开发工具使用之 Cmake 开发工具使用之 Cmake
0、通用的 CMakeLists 模板目前在 linux 下使用的 cmake 版本为 3.16,而在 windows 下使用的版本为 3.20 # 指定 cmake 所需的最小版本 cmake_minimum_required(VERSI
2023-11-21
CMU 15-445 08-Index Concurrency CMU 15-445 08-Index Concurrency
Observation前面的操作中,都假设只有一个线程去操作数据结构,但实际操作中是有多个线程同时操作数据库的 因此需要研究多线程如何安全的执行查询 并且在实现线程安全的同时,也要注意如何优化磁盘IO 存在一些只支持单线程的数据库(比如
2023-02-12
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
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
CMU 15-445 12-Query Execution Part II CMU 15-445 12-Query Execution Part II
Why care about parallel execution上节课讨论的都是单个SQL语句是如何执行的,但是实际上我们很多时候都是多线程执行SQL语句 为什么要多线程并发执行 从单条语句看,能够提高响应时间(单独运行的情况下需要
2022-12-29
CMU 15-445 11-Query Execution Part I CMU 15-445 11-Query Execution Part I
Processing model执行模型有哪些,执行计划是如何运作的 DBMS的执行模型规定了系统是如何执行查询计划的 根据不同的工作负载(TP or AP),在执行计划上有不同的权衡 Approach 1 iterator mod
2022-12-29
CMU 15-445 10-Join Algorithms CMU 15-445 10-Join Algorithms
Why do we need to join因为数据在关系型数据库中的存储,是按照数据模型间的连接关系分开的 所以,如果想要获取一连串相关联的数据,就需要用join连表查询 本节主要研究的是内连接,用相等谓词连接的算法 在进行join的时候
2022-12-26
CMU 15-445 09-Sorting,Aggregations CMU 15-445 09-Sorting,Aggregations
Course status接下来的几节课里面,主要讲述以下内容: Operator Algorithms(具体的算子,比如join,sort是如何执行的) Query Processing Models(用什么方案执行查询,比如火山模型)
2022-12-26
1 / 3