������KV������������������ �����• �����������• ����� 1 ������• ���������Agenda• ���� KV ����• ���� KV ������• �����• �������KV�����2020 ��������• ��������������• Redis ��������������� TB �������• ��������• ������P999 ���• �� Key�� Key ��• ��������� QPSTB ������������• ������������ KV ��• �����������• �����• ����������• ����• ���������������� KV ���������� KV ����• ������✓ ���� 7s ��✓ ����• ���✓ Server ���✓ RocksDB � FIFO ����✓ Proxy ���• ��������✓ NoSQL ��, �� HBase✓ �� Redis �������• ��������ClientProxyServerServerServerServerServerGossip�������������������key���backup-read��������������������������������������������proxy����ServerreplicatorRocksdb����ETCDClientClient����: Client SDK�Proxy�KVServer�Replicator������������������������������Gossip ������: 30s -> 7s 0~node_timeout/2 ���� ������������� PING node_timeout ������ PFAIL 0~node_timeout/2 PFAIL �������, ������� PFAIL ���� FAIL���� ���������� 3s ���� �������������3s ������ PFAIL ������ PFAIL ��, �� PING ��� ID��� Master ���������, �� ���� 24 ������� failover, ������ 3s ���� PFAIL0~1 �������������������� ����������� �����������: ���������KVClientKVProxyKVServerslot 1~100��ReplicatorKVClientKVProxyKVServer��� slot 50~100��ReplicatorWALWAL����MasterMaster4. Ctrl cmd����1. �������������2. �� slot 50~100��3. Apply���IO��1IO��2IO��nReqworker��1ReqReq����worker��2worker��1worker��nMPSC ����ReqReqReqReqReqReqReqReqReq������������Rocksksdworker��2���������epoll���KVServer ���RocksDB � FIFO �� sst 1sst …sst n����� Size ������������ sstsst 1sst …sst nKey �������������������� Key ����� sstT0 - T1Ti - Ti+1Tn - Tn+1���������� Value ������ CV 1 CV 2sst …sst nData column familyIndex column familyKey -> TimestampKey:Timestamp -> Value���Proxy �������������� ���Proxy ����backup-read �����������1接收到的请求234567147102581136912Proxy将数据打散到不同的节点RedKVMasterRedKVSlaveRedKVMasterRedKVSlaveRedKVMasterRedKVSlave读请求读请求读请求超时则发送第二个读请求超时则发送第二个读请求超时则发送第二个读请求控制并发的backup-read数目���Proxy ����backup-read �������������:���Proxy ��������/���������������������������� HBaseRowKeyColumeKeyKey:TTLVersion�� format:� rowkey �� slotRowKeyColumeKeyTTLVersionSlotValue���������������RocksDB � mergeOperatorKey����Key + version?��value + versionMemtable��putMergeImmemtableL0L1L…L…CompactionFilterMergeOperatorDelete TTL key��������key, ��value���, ������Compaction���������������Hive-> RedKV��������Redis ���������HashZsetString……����KV��������� snapshot+binlog ����������������KVClientKVProxyKVServerRegion1��ReplicatorKVClientKVProxyKVServerRegion2��ReplicatorWALWAL����MasterMasterReplicator ����, ������PullApply�����������������������Agenda• ����KV����• ����KV������• �����• �������� KV �������������/�� PB ��2020 ���������� TB ����� QPSTB �������10 �� QPSTB �������2021 ��������RedKV����&��������� 70%��� TB ���� PB ���HBase ����: ���� 34%����������������������������� KV ����������������������������������������
发表评论取消回复