23、数据库查询串讲

你好,我是王磊。 这一讲是我们课程的第三个答疑篇,我会和你一起回顾第16讲到22讲的主要内容,这部分内容是围绕着数据库的“查询”展开的。同时,我也会集中解答留给大家思考题,并回复一些大家关注的热点内容。 第16讲:慎用存储过程[第16讲],我首先分享...

22、想要读写快还是存储省

你好,我是王磊。 从第18讲,我们开始介绍查询过程中全部重要节点的相关技术,从并行框架到查询执行引擎,再从关联运算符到行式和列式存储。今天这一讲我们面临最后的一个步骤,直接和磁盘打交道,实现最终的数据存储,这就是存储引擎。 RUM猜想说到数据存储,我...

21、查询执行引擎:让聚合计算加速

你好,我是王磊。 在19、20两讲中,我已经介绍了计算引擎在海量数据查询下的一些优化策略,包括计算下推和更复杂的并行执行框架。这些策略对应了从查询请求输入到查询计划这个阶段的工作。那么,整体查询任务的下一个阶段就是查询计划的执行,承担这部分工作的组件...

20、关联查询:如何提升多表Join能力

你好,我是王磊,你也可以叫我Ivan。 今天,我们会继续学习查询场景中的处理技术。这一讲的关键词是“多表关联”,也就是数据库中常见的Join操作。无论是单体数据库还是分布式数据库,关联操作的语义始终没有变,一些经典算法也保持了很好的延续性。 关联算法...

19、查询性能优化:计算与存储分离架构下有哪些优化思路

你好,我是王磊,你也可以叫我Ivan。 我在[第4讲]介绍架构风格时曾经提到过,分布式数据库的主体架构是朝着计算和存储分离的方向发展的,这一点在NewSQL架构中体现得尤其明显。但是计算和存储是一个完整的过程,架构上的分离会带来一个问题:是应该将数据...