随笔分类 -  数据库

摘要:当你发了一个query, 例如 select * from t where a=1; 那么他就会在a 这个field 上创建一个bitmap 的filter cache 用于记录a 这个field 的值是否为1, es 会维护这个cache, 对于符合a=1的document, bit 位会被设为... 阅读全文
posted @ 2015-01-20 11:09 zhifan 阅读(1346) 评论(0) 推荐(0)
摘要:一个ES index 包含有多个sharding, sharding 主要用于分布式。 一个sharding里面也可以包含多个segment. es 在indexing 的时候会产生很多的segments。 segments 太多会导致文件句柄浪费严重, 并且搜索性能底下。 ES 自己也会去做me... 阅读全文
posted @ 2015-01-19 11:00 zhifan 阅读(3283) 评论(0) 推荐(0)
摘要:Cassandra SizeTieredCompactionCassandra首先讲数据写入commit log, 然后memtable, 当达到一定条件后,会被flush 到磁盘上,成为SSTable, 当SSTable 达到一定条件后会合并。1. memtable flush 的条件:memta... 阅读全文
posted @ 2015-01-09 23:51 zhifan 阅读(639) 评论(0) 推荐(0)
摘要:### Cassandra 协议Cassandra 支持两种协议。 传统的thrift 协议和更强大的native 协议。 默认地它们分别侦听9160 端口和9042 端口。 要使用native 协议,需要设置 start_native_transport: true nat... 阅读全文
posted @ 2014-12-24 07:15 zhifan 阅读(2379) 评论(0) 推荐(0)
摘要:### 连接和基本表操作 >>> import pymongo >>> conn = pymongo.MongoReplicaSetClient('xxxx:27017', replicaSet='mongolog') # 建立连接Mongo Instance >>> db = ... 阅读全文
posted @ 2014-12-22 21:24 zhifan 阅读(538) 评论(0) 推荐(0)
摘要:### cassandra 写入cassandra 首先写入memtable, 与此同时写入commitlog. memtable 在内存,commitlog 在磁盘。 memtable 写完后会flush 到磁盘,成为SSTable. 同时对应的commitlog 会被删除。 之后对已经写入磁盘... 阅读全文
posted @ 2014-12-11 06:00 zhifan 阅读(826) 评论(0) 推荐(0)
摘要:###获得Cassandra 基本信息####key spaces describe keyspaces; describe keyspace {keyspace}; use {keyspace}; select * from system.schema_keyspaces;... 阅读全文
posted @ 2014-12-11 05:14 zhifan 阅读(1892) 评论(0) 推荐(0)
摘要:因为MongoDB 复杂的数据结构, 所以查询修改的语法要比RDBMS 的单表操作要复杂一些。 下面记录一些常见的Update 操作。db.collection.update( , , { upsert: , multi: })在MongoDB 2.6, 又多支持了一个选项 wr... 阅读全文
posted @ 2014-11-03 10:36 zhifan 阅读(953) 评论(0) 推荐(1)