分类 原理分析 中的文章

Spark原理-解析过程和Catalog

逻辑计划扩展,注入点。TreeNode的两个子类:Expression,QueryPlan。而 QueryPlan。而QueryPlan的子类是:LogicalPlan、SparkPlan。并将规则分为Batch。 CatalogV2Util#loadTable会解析:库、表、列信息,ResolveReferences。内置的一堆优化规则。查询下推、join下推。SPark的catalog体系,主要拷贝各种SupportRead、Wirte、Dialect,各种数据源的Catalog扩展如HiveCatalog。SessionCatalog 会使用hive 的meta-store走老的catalog路线。自定义函数下推,继承UnboundFunction、ScalarFunction、AggregateFunction,使用Spark的线程上下文classloader 机制加载类,也是用 新Catalog扩展如MyCatalog去执行loadFunction、functionExists

阅读全文

LevelDB 公开的接口

LevelDB 的 src/include目录下的公开接口、跨平台的移植(对文件读写、线程、锁做了简单封装方便了跨平台迁移),读写流程的大致流程等

阅读全文

MySQL的并发

MVCC的基本概念,读已提交、可重复读隔离级别下的ReadView,MVCC的purage;锁的基本类型,X/S/IX/IS锁;record lock、gap lock、next-key lock、insert intention lock、隐式锁;各种隔离级别下的加锁过程,SHOW ENGINE INNODB STATUS 分析加锁过程,死锁的分析

阅读全文

MySQL的恢复

redo log的格式(逻辑+物理混合格式)、Mini-Transaction、redo log写入过程,写入page cache,log_sys结构、redo log的文件格式,如何刷新到磁盘上的,checkpoint过程,恢复过程; undo log的格式(逻辑格式)、undo log的组织、回滚段、系统表空间的5号page,多个回滚段、rollback的过程;以及源码中的redo log定义、undo log定义

阅读全文