摘要:
从整体上梳理STONEDB的架构设计, 细分到具体的类级别, 但是不深入具体的函数逻辑的层次。
目的在于建立整体的抽象和最高层的视角, 用来为下一步各个模块的突破。
整体模块架构:
宏观架构(取自infobright)

关键概念:
- 插件式引擎
- 知识网格: Knowledge Node
- DP: DATA Pack
- DPN: DATA Pack Node
顶层引擎代码目录模块:

代码目录模块说明:
- async: 异步包装, 封装协程概念. (未启用)
- base: 基础模块
- core:系统接口相关, 包含线程封装,文件IO, 缓存模块等
- fmt: 格式化字符串相关
- net: 网络socket相关
- util: 常用工具模块, 包含日志, 以及其他常用的工具,例如参数解析和元组包装
- common: 常用模块, 包含日期模块,以及异常接口模块
- compress: 压缩mok, 包含一些压缩算法的实现
- core: 核心功能模块, 包含主要核心业务功能, 是引擎的核心