KSTORE底层学习

写在前面

由于历史原因,公司产品文档严重缺失,但公司产品规模较大,复杂度较高,文档缺失会导致学习代价较高,因此打算在学习的过程中,根据原有部分文档以及现有实现,倒推出部分文档,从而降低后续员工的学习代价。本文是产品KSTORE的底层部分学习文档,但为了便于理解,文档中的参考内容等,并不局限于底层。

软件设计说明书阅读(早期版本)

1. 定义、首字母缩写词和缩略语

2. 总体设计

2.1 功能描述及设计

KSTORE底层存储引擎主要包括以下几个部分:

2.2 设计概念和流程

2.2.1 存储结构设计

不同于神通数据库中的物理表,KSTORE表不再仅仅只负责数据的存储,同时还维护着数据表的各种模式信息、基本索引存储、辅助索引存储以及删除插入缓存等信息。这样将压缩、索引创建、选择、过滤和数据DML缓存等动作完全在存储引擎层封装,对上层更加透明,提高执行效率的同时也更易于与现有神童数据库架构兼容。 在KSTORE表的数据存储设计中底层主要可以分为两部分,首先是跟随数据表默认存在的数据以及基本索引存储部分,另外则是可由用户指定创建的辅助索引部分。 下图所示为KSTORE表的默认存储部分:

Table of Contents