Latihan 1 dari materi Choosing Your Database di System Design — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Implementasikan pickDatabase(workload) yang mengembalikan salah satu: "SQL", "KV", "Document", "Graph", atau "TimeSeries".
workload adalah object dengan properti:
shape: "relational" | "document" | "graph" | "timeseries" | "keyvalue"writesPerSec: numberneedsAcidTransactions: booleanqueryPattern: "joins" | "lookup" | "traversal" | "range-scan" | "aggregate"Aturan (cek berurutan, yang pertama match menang):
shape === "timeseries" atau queryPattern === "range-scan" dengan writesPerSec > 10000 → "TimeSeries"shape === "graph" atau queryPattern === "traversal" → "Graph"needsAcidTransactions === true atau queryPattern === "joins" → "SQL"shape === "document" → "Document""KV"