嵌入式图形数据库 kuzu
这个数据库与duckdb的架构非常相似。
Use StringView to make DataFusion faster
コンテンツなし
cmu15445 并发控制理论实现-两阶段锁
本文介绍了并发控制理论的实现方式之一:两阶段锁。通过锁来保护数据库对象,包括共享锁和排他锁。同时介绍了锁的粒度、意向锁、锁升级等相关概念,以及死锁检测和预防的方法。最后,提到了并发控制的另一种实现方式:时间戳排序。
cmu 15445 并发控制理论 -ACID
本文介绍了CMU 15445并发控制理论中的ACID,包括隔离性方法、冲突操作、交错执行的异常、可串行化、持久性等概念,以及基于冲突和基于观察的可串行化判断方法。此外,文章还提到了ACID的重要性和数据库事务功能的建议使用。
如何使用 clion 调试 stonedb
本文介绍了如何使用CLion调试stonedb,包括初始化、启动、关闭、开客户端调试、断点建议、查密码、改密码等步骤。同时还介绍了VSCode debug和Clion的配置方法,以及测试语句和效果展示。
cmu15445 查询执行- 下 并行
本文讨论了数据库的多用户和并发场景,介绍了并行和分布式数据库管理系统的区别,以及进程模型、执行并行性和I/O并行性的内容。其中,执行并行性包括查询内部和查询之间的并发处理,而I/O并行性则包括多磁盘并行和分库分表等技术。最后,本文总结了三种不同的并行执行模型。
cmu15445 查询优化- 下
这篇文章介绍了数据库查询优化的相关知识,包括选择率、等宽直方图、等深直方图、草图、采样、动态规划和遗传算法等。文章详细讲解了如何通过这些技术来优化查询计划,以及如何从候选计划中选择最优计划。
cmu15445 查询优化- 上
本文介绍了查询优化的相关内容,包括关系代数等价、谓词下推、逻辑查询优化、嵌套子查询、表达式重写和基于成本的查询规划等。通过使用静态规则和启发式方法来优化查询计划,以及使用成本模型来帮助执行更高级的查询优化,可以提高数据库的性能。
cmu15445 查询执行- 上
该文章介绍了数据库查询执行的三种处理模型:迭代模型、物化模型和向量批处理模型,以及访问方法:顺序扫描和索引扫描。此外,还讨论了修改查询和表达式求值。
两条道路:查询编译和向量化
本文介绍了查询编译和向量化这两种强大的优化技术,以及它们如何整合使用。同时,还提到了对于新硬件的考虑。
sqlrs 分析使用 Arrow 类型
SQL: AST到Plan 简单样例
该文章介绍了将SQL查询语句转换为执行计划的过程,包括词法分析、语法分析、AST、逻辑计划和物理计划等步骤。通过示例代码演示了如何将一个SELECT查询语句解析成AST,并将AST转换成一个执行计划。文章还提供了一些相关库的参考。
重新认识 SI 隔离级别
本文介绍了快照隔离级别的概念、特点、优缺点以及存在的问题,包括丢失更新、写倾斜和幻读。同时还介绍了实现可串行化的三种方法:字面意义上的串行执行、两阶段锁和可串行化快照隔离(SSI)。
DuckDB 综述
该文介绍了DuckDB的综述,包括对其进行测试的结果、TPC-C基准测试、Buffer Manager、是否支持binlog、嵌入应用等。DuckDB是一款嵌入式数据库,不需要启动数据库服务器,也不需要使用客户端连接服务器。它还具有高速数据传输和处理外部数据的优势。
WHAT IS KipSQL
The KipSQL database project requires an SQL layer that includes a user interface, parser, optimizer, and executor. The parser must include semantic analysis to validate the legality of the abstract syntax tree. The optimizer must quickly find the most efficient query execution plan based on the cost model. The executor must execute the physical plan by sending read and write requests to the underlying kv storage. Future research includes processing a table to key-value mapping relationship and implementing a push-based execution vector execution model similar to DUCKDB.
cmu15445 Extendible Hashing
可扩展哈希是一种动态哈希技术,随着哈希表的大小增加,哈希函数会被修改。它通常用于数据库系统中实现索引。在可扩展哈希中,每个桶可以存储多个记录,每个桶由一个本地目录标识。全局目录跟踪本地目录,并在桶的数量增加时进行扩展。插入数据的过程包括哈希、桶满时的目录扩容、局部深度和全局深度的比较、局部深度增加和桶拆分等步骤。