An overview of where databases came from, why they exist and why databases designed when the Internet had 20 nodes struggle to handle modern database workloads.
Weeks Months execute typical instruction 1 fetch from L1 cache memory 0.5 branch misprediction 5 fetch from L2 cache memory 7 Mutex lock/unlock 25 fetch from main memory 1.67 send 2K bytes over 1Gbps network 6 read 1MB sequentially from memory 7 fetch from new disk location (seek) 3 read 1MB sequentially from disk 8
key lookup • Very fast single key lookup • Not so hot for “reverse lookups” Key Value 12345 4567.3456787 12346 { addr1 : “The Grange”, addr2: “Dublin” } 12347 “top secret password” 12358 “Shopping basket value : 24560” 12787 12345
Date 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973
ID Name Salary Start Date 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973 Joe D Peter J Phil G $24000 $28000 $23000 1/Jun/1970 1/Feb/1972 1/Jan/1973