write cost = (total bytes read and written)/write new
= (read segs + write live + write new)/ write new
= (N + N*u + N*(1-u)) / (N * (1-u))
= 2/(1-u)
= 2N / (N * (1-u))
= 2 / (1-u)
```
"write amplification"
If utilization goes up?
many policies:
- segregate on age, file size etc.
...
...
@@ -94,12 +93,16 @@ many policies:
# Comments from students
- most interesting is crash recover (fast!)
- couldn't work today because not enough memory to cache
- how deal w/ SSD's? (answer: log still gives: aggregation and fault tolerance)
- sprite LFS "Outperform Unix in all cases but one (files read sequentially after being written randomly)." How often does this happen and why does Sprite fail here?
- what happens with the write request when there is actually not enough space in disk (force clean) (does really crappy when near full)
- turn immutable by skipping the cleaner!
- a bit similar to virtual memory - yancheng
- overstated performance gains, large cache a vulnerability - dev
- how async writes combined to one ? Also, balance w/ disaster recovery - minwei
- FFS vs LFS picture a bit unclear
- likes the discussion of "log as truth" and compaction in DBs - armaan
- informal tone
- log-structuring and defrag, temporal locality - olivia
- should have looked at read performance, data integrity