Information Technology Reference
In-Depth Information
Answer: Under the update in place approach, we can only return when
everything is written, while under the transactional approach, we
can return once the commit is complete. So, we have compara-
ble times: 134 s for update in place and 100 s for transactions.
One way to reduce transaction overheads for large writes is to add a level of
indirection: write the sequential data to a free area of the disk, but not in the
circular log where it would have to be reclaimed later. Then, the update in the
log just needs to be a reference to that data rather than the data itself. Finally,
after the transaction commits, perform the writeback by updating a pointer in
the original data structure to point to the new data.
14.1.4
Transactions and file systems
transactions+filesystems
[[motivation]]
loggingv.journalingv.update-inplace
write-anywherefilesystemsrevisited
Application-level transactions
applicationuseoftransactions
--log+replay
--intentions,update
--
cautionarytail--"sync"buriedinlibrary
theoneplaceyoudoseeitisapplicationlevel--savenewfile,
rename
e.g.,emacslookingfor#emacs#file
"intentionstoavoidscanningislikewriteaheadlog"
Search WWH ::




Custom Search