- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
阿里云Cassandra直播-阿里云Cassandra技术架构及内核的实现
展开查看详情
1 .
2 .
3 .
4 .
5 .
6 .
7 .
8 .
9 . 0-25 76-100 26-50 51-75
10 . 10.0.0.1 client 00-25 76-100 51-75 A 10.0.0.4 10.0.0.2 76-100 26-50 51-75 00-25 Node Primary replica replica 26-50 76-100 10.0.0.1 00-25 76-100 51-75 D 10.0.0.2 26-50 00-25 76-100 B 10.0.0.3 51-57 26-50 00-25 10.0.0.4 76-100 51-75 26-50 10.0.0.3 51-75 26-50 00-25 C
11 . 0-25 • Hint-handoff Gossip • Read-repair Gossip • Repair 76-100 26-50 X 51-75
12 .• bootstrapping • random token, seed gossips • resharding gossips tokens
13 .Node1 Node1 Node1 node8 Node2 node3 node4 node7 node3 Node6 node4 Node2 Node2 Node5
14 .
15 .
16 .• Cql • • ,SASI • • UDF/UDA • (CAS) • counter • CDC • TTL • Batch • Online schema change
17 .• • Select * from from users where id=? • •
18 . cql antlr Modification mutation Statement ParsedState prepair Prepared ment statement SelectState readCommd ment
19 .
20 . Header offset1 … offsetN entry1 … entryN Summary.db partitionKey Index_file_ position RowIndexEntry RowIndexEntry …… RowIndexEntry …… RowIndexEntry Index.db key_length partitionKey dataFilePositi size headerLength deletionTime columnsIndex IndexInfo1 … offset1 … on _size firstClustering lastClustering startPosition delta_width end_open_marker end_open_marker? (firstClustering _present datafile position) ParitionKey1 partitionKey2 …… partitionKeyN Data.db clustering1 …. clusteringN
21 .• • User_id1 FR … … User_id2 US … … User_id4 US … … User_id7 FR … … User_id5 US … … FR User_id1 User_id7 … US User_id4 User_id5 … US User_id2 … …
22 .
23 .
24 .
25 .• UDF/UDA definition coordinate • coordinator UDF CREATE/ALTER • UDF java, coordinator Eclipse ECJ compiler • UDF js, javax.script.ScriptEngine • coordinator • coordinator classloader udf • udf • The coordinator schema change • UDF query
26 .
27 .basic-paxos Epaxos
28 .
29 . mv Commitlog segment cdc_raw_directory commitLog