Author Archives: Eagle Fan

About Eagle Fan

oracle dba

Couchbase和CouchDB的区别

简单的说,couchbase=couchDB+Membase. CouchDB是Apache的一个开源项目http://couchdb.apache.org/。其创始人Damien Katz后来创建了一家公司来提供商业支持。2011年,这家公司和另外一个开源key-value 数据库Membase 合作开发了CouchBase。Couchbase以Membase的代码为基础,用CouchDB的文档化代码部分替换了Membase的后端存储代码,并提供了索引和查询功能。所以Couchbase即保留了CouchDB的document database的特性,也充分利用了Membase的caching技术提高了读写的速度。同时Couchbase提供了Cluster内的多份copy复制,Data Balance等功能。 两者的功能对比如下图所示:

Posted in nosql | 9 Comments

Cassandra nodetool repair中的PR选项

Cassandra nodetool repair中的pr选项的官方解释是 Use -pr to repair only the first range returned by the partitioner. 那么什么时候用-pr选项,什么时候不用-pr呢?要解答这个问题首先要理解pr的意思 cassandra的数据可以有多份复制,比如说A,B,C,D四个节点,keyspace的replication factor为2 那么每份数据有两个copy,一个为primary,一个为replica A节点上有range (D,A)的primary数据,同时也有range(C,D)的replica数据。如果在A节点上跑 nodetool repair -pr 那么会在A节点和B节点上同步range (D,A)的数据 如果是跑 nodetool repair 不加pr选项,那么会在 1. A节点和B节点上同步range (D,A)的数据 2. A节点和D节点上同步range (C,D)的数据 所以,如果你是为了处理delete的问题进行的日常的repair,可以使用-pr选项,在每个节点上跑一次。如果不加pr选项在每个节点上跑一次的话,会多做了重复的工作。再比如说增大replication factor,也可以使用-pr选项,在每个节点上跑。 如果是某个节点做recover操作的话,应该在该节点上不加pr选项,这样不单是同步了master的数据段,同样也同步了replica的数据段。如果是某个节点down掉,nodetool rebuild应该更快 … Continue reading

Posted in nosql | 14 Comments

11203的parse count(total)中不包含softer soft parse

Jonathan Lewis在07年的一篇文章Parse Calls中详细介绍了parse相关的一些statistics. 在10g以及11202的oracle版本中parse count(total)是包含softer soft parse的(文章中提到),但是在11203中实验证明parse count(total)中不再包含softer soft parse。 我们来看实验结果: 首先是10g版本(11202的实验结果和10g是一样的) 我们执行一条很简单的SQL: select count(*) from temp; 然后通过另外一个session查看v$sesstat select a.name,b.value from v$statname a,v$sesstat b where a.STATISTIC#=b.STATISTIC# and b.sid=&&sid. and (a.name like ‘parse count%’ or a.name like ‘session cursor cache hits’); … Continue reading

39 Comments

11203的parse count(total)中不包含softer soft parse

Jonathan Lewis在07年的一篇文章Parse Calls中详细介绍了parse相关的一些statistics. 在10g以及11202的oracle版本中parse count(total)是包含softer soft parse的(文章中提到),但是在11203中实验证明parse count(total)中不再包含softer soft parse。 我们来看实验结果: 首先是10g版本(11202的实验结果和10g是一样的) 我们执行一条很简单的SQL: select count(*) from temp; 然后通过另外一个session查看v$sesstat select a.name,b.value from v$statname a,v$sesstat b where a.STATISTIC#=b.STATISTIC# and b.sid=&&sid. and (a.name like ‘parse count%’ or a.name like ‘session cursor cache hits’); … Continue reading

Posted in oracle 11g | 450 Comments

mongodb sharding keynote

在公司内部做的一个简单的关于mongodb sharding的介绍 Mongodb sharding View more presentations from xiangrong.

Posted in nosql | 444 Comments