yiguolei opened a new issue #385: refactor BE to support more file format and 
clear lock usage
URL: https://github.com/apache/incubator-doris/issues/385
 
 
   # 几项工作及约束
   1. 类名和文件名尽量一致,看代码的时候比较方便。
   2. 逻辑上分层,理论上只能从上往下调用,不能从下往上调用,明确每个层次的作用。
   3. 划分概念,现在是乱的,看了类名不知道意思。
   4. 写好注释,看懂了的代码就加上注释,新来的同学看代码比较容易一些,如果英文不行就使用中文注释吧。
   5. 重构完之后,理论上各个模块应该可以单独测试。
   6. 本次不涉及功能裁剪,只是重新组合各个模块的功能让模块之间的职责划分更清晰,现在接口内部的行为的实现代码能不动就不动了。
   7. 不能改变对外的接口,这样能保证我们修改后的BE能够滚动升级,否则上线会比较麻烦。
   
   # 主要概念
   
   1. storageengine --> tablet --> rowset, storageengine 包含多个tablet, 
tablet包含多个rowset。 rowset下层的各个概念不在这里做细化。
   2. 将BE原来的table这个概念换成tablet,每个tablet 有唯一的tabletid和schema hash, rollup 和 
schema change都是产生不同的tablet。
   3. 
rowset相当于原来的一个版本,rowset可以是一个版本的数据,rowset也可以包含多个版本的数据。rowset的作用是抽象了一种文件存储格式,比如我们palo目前的orcfile是一种格式,未来的parquet也是一种文件存储格式,他们都可以实现rowset接口集成到palo中。
   4. version:只是代表一个版本号,version不能表示数据文件。
   5. Delta 特定指导入的一个批次,delta这个概念可能只是出现在我们的讨论中,不会出现在代码中。

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to