本文是《YunTable开发日记》的第五篇。
虽然进度比我之前预想的慢了很多,但是经过最近几天的coding,终于完成YunTable的0.01版,虽然在支持的功能和之前预期的相比简单了很多,如果大家对这个0.01版感兴趣的话,可以通过这个链接下载。下面是关于0.01版的综述,使用教程和计划。
综述
在功能方面,0.01版的YunTable还远算不上是一个BigTable的克隆,但基本实现了对数据的持久化存储,而且底层储存格式也是基于简化版的Google SSTable格式,在接口方面,则提供了insert和show(也就是Select *)这两个接口,而且0.01版自带一个Table,所以无需创建新的Table。
使用教程
下面是具体的使用教程:
- 下载YunTable0.01版,(备用链接)。
- 解压这个zip包。
- 编译YunTable,执行”make“。
- 清空已经生成的table,执行”make clean”。
- 添加第一行数据,执行“./yuncli insert row:me1 name:ike sex:male”,row是关键词,用以表明冒号后面的是rowkey,在这里就是me1,而name和sex则是column的名字,可以自取。
- 添加第二行数据,执行“./yuncli insert row:me2 name:wu sex:male”。
- 显示已输入的数据,执行”./yuncli show”。
计划
虽然0.01版在功能方面比较有限,但可贵的是收获一个还算不错的codebase,虽然其在Memory管理方面还有很多的瑕疵。在今后的几天,我会通过深入研究HBase的codebase来理清一个BigTable的实现机制,并对YunTable进行更新。还有,关于有些网友想参与YunTable的想法,我个人非常欣赏,也希望能早日有一个还算稳定的codebase来让大家一起协作开发,我会往这方面努力的。
预告:“人云亦云”今后不仅将继续给大家提供丰富的云计算材料,而且从下周开始还会通过总结一些来自于其它博客的文章来介绍一些著名软件产品的架构,比如Memcache和Oracle的Exadata等,敬请期待。