【系統設計】系統設計中經常使用的20個高階資料結構和演算法

Tech In Pieces發表於2020-12-16

Refer link
1 Consistent Hash
2 Bloom filter A space-effcient query returns either “possibly in set” or “definitely not”
3 hyerloglog for count-distinct problem Estimation: the count of unique values with relatively high accuracy(98%)
4 Reservoir Sampling
5 Merkle Tree
6 LPM(Longest Prefix Match)
7 Frugal Streaming
8 Gossip Propagate cluster status
9 Vector Clocks/Version Vectors
10 Lossy Counting
11 Skip list
12 CRDTs (Conflict-Free Replicated Data Types)
13 choice-of-2 in load balancer
14 Range-based query
15 SSTable (Sorted Strings Table)
16 MemTable
17 LSM (Log Structured Merge Trees)
18 Two-phase commit/Three-phase commit Github: link
19 Paxos and raft protocol
20 Ring buffer
21 cuckoo hashing Resolve hash collisions with worst-case constant lookup time
22 snappy/lzss Fast data compression and decompression
23 S2 Geometry Build geographic database in a better way
24 geohash
25 Quadtree
26 DHT – distributed hash table

相關文章