随笔分类 -  分布式存储

上一页 1 2

Cassandra Leveled Compaction源码阅读
摘要:笔记都是写给未来的自己看的。Cassandra为什么要有Compaction的机制Cassandra是BigTable的列族(Column Family)存储方式,这是一种非常灵活的存储模型,即使在同一个表中,不同的key也可以有不同的列,而且列不是对齐存储的,节省了空间。在Cassandra中,insert和update在底层都是追加的方式实现的,例如,数据key1对应column1,column2两列,要更新key1数据,更新内容为column2,c0lumn3。column1不变,column2更新,column是新加的。并且由于追加的方式,原数据和更新数据分别在两个sstable文件中 阅读全文

posted @ 2012-02-20 21:57 sing1ee 阅读(788) 评论(0) 推荐(0)

在eclipse中查看,修改cassandra的源码
摘要:cassandra的优化工作,进入代码实现的阶段了。用eclipse导入cassandra的源码很方便,cassandra源码中的build.xml已经包含了所有需要的构建项,按照如下步骤进行即可:svn checkout https://svn.apache.org/repos/asf/cassandra/trunk cassandra进入Cassandra目录执行antavro-generate执行antgen-thrift-java执行ant generate-eclipse-filesok!然后打开eclipse import即可。 阅读全文

posted @ 2011-12-29 14:44 sing1ee 阅读(319) 评论(0) 推荐(0)

kv存储引擎索引设计思考
摘要:Cassandra自从出了几次大的宕机的情况之后,很少有大公司在用了,我目前知道的,就是twitter的抓取服务使用的Cassandra来存储抓取数据元信息,而且,国内某搜索引擎公司,也是这么做的。我最近的工作之一,就是改进Cassandra,选它一方面是公司的要求,另一方面,学习空间、提速空间性能都比较大。 经过一段时间的调研,确认了三个改进方向(由于公司的原因,现在我只说第一个)。第一个就是索引压缩的改进,往大了说,就是要对Cassandra的索引进行重新设计。重新设计的思路,下面会慢慢讨论。 对于kv存储引擎的索引,根据key是否有序,分为两种:一种是key如果无序,则可以采用hash的 阅读全文

posted @ 2011-12-25 14:23 sing1ee 阅读(2227) 评论(0) 推荐(0)

上一页 1 2