DOC PREVIEW
UT CS 372 - File Systems - Consistency Issues

This preview shows page 1-2-3-4 out of 12 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Slide 1File Systems: Consistency IssuesWhat about Multiple Updates?Which is a metadata consistency problem?Consistency: Unix ApproachConsistency: Unix Approach (Cont’d.)TransactionsImplementing TransactionsTransactions in File SystemsVista writing its journalWhere on the disk would you put the journal for a journaling file system?Transactions in File Systems: A more complete way1File Systems:Consistency Issues2File Systems: Consistency IssuesFile systems maintains many data structuresFree list/bit vectorDirectoriesFile headers and inode structuresData blocksAll data structures are cached for better performanceWorks great for read operations… but what about writes?If modified data is in cache, and the system crashes  all modified data can be lostIf data is written in wrong order, data structure invariants might be violated (this is very bad, as data or file system might not be consistent)Solutions: Write-through caches: Write changes synchronously  consistency at the expense of poor performanceWrite-back caches: Delayed writes  higher performance but the risk of loosing data3What about Multiple Updates?Several file system operations update multiple data structuresExamples:Move a file between directoriesDelete file from old directoryAdd file to new directoryCreate a new fileAllocate space on disk for file header and dataWrite new header to diskAdd new file to a directoryWhat if the system crashes in the middle?Even with write-through, we have a problem!!The consistency problem: The state of memory+disk might not be the same as just disk. Worse, just disk (without memory) might be inconsistent.4Which is a metadata consistency problem?A. Null double indirect pointerB. File created before a crash is missingC. Free block bitmap contains a file data block that is pointed to by an inodeD. Directory contains corrupt file name5Consistency: Unix ApproachMeta-data consistencySynchronous write-through for meta-dataMultiple updates are performed in a specific orderWhen crash occurs:Run “fsck” to scan entire disk for consistencyCheck for “in progress” operations and fix up problemsExample: file created but not in any directory  delete file; block allocated but not reflected in the bit map  update bit mapIssues: Poor performance (due to synchronous writes)Slow recovery from crashes6Consistency: Unix Approach (Cont’d.)Data consistencyAsynchronous write-back for user dataWrite-back forced after fixed time intervals (e.g., 30 sec.)Can lose data written within time intervalMaintain new version of data in temporary files; replace older version only when user commitsWhat if we want multiple file operations to occur as a unit?Example: Transfer money from one account to another  need to update two account files as a unitSolution: Transactions7TransactionsGroup actions together such that they areAtomic: either happens or does notConsistent: maintain system invariantsIsolated (or serializable): transactions appear to happen one after another. Don’t see another tx in progress.Durable: once completed, effects are persistentCritical sections are atomic, consistent and isolated, but not durableTwo more concepts:Commit: when transaction is completedRollback: recover from an uncommitted transaction8Implementing TransactionsKey idea:Turn multiple disk updates into a single disk write!Example:Begin Transactionx = x + 1 y = y – 1CommitSequence of steps:Write an entry in the write-ahead log containing old and new values of x and y, transaction ID, and commitWrite x to diskWrite y to diskReclaim space on the logIn the event of a crash, either “undo” or “redo” transactionCreate a write-ahead log for the transaction9Transactions in File SystemsWrite-ahead logging  journaling file systemWrite all file system changes (e.g., update directory, allocate blocks, etc.) in a transaction log“Create file”, “Delete file”, “Move file” --- are transactionsEliminates the need to “fsck” after a crashIn the event of a crashRead logIf log is not committed, ignore the logIf log is committed, apply all changes to diskAdvantages:ReliabilityGroup commit for write-back, also written as logDisadvantage:All data is written twice!! (often, only log meta-data)10Vista writing its journal11Where on the disk would you put the journal for a journaling file system?1. Anywhere2. Outer rim3. Inner rim4. Middle5. Wherever the inodes are12Transactions in File Systems: A more complete wayLog-structured file systemsWrite data only once by having the log be the only copy of data and meta-data on diskChallenge: How do we find data and meta-data in log?Data blocks  no problem due to index blocksMeta-data blocks  need to maintain an index of meta-data blocks also! This should fit in memory.Benefits:All writes are sequential; improvement in write performance is important (why?)Disadvantage:Requires garbage collection from logs (segment


View Full Document

UT CS 372 - File Systems - Consistency Issues

Documents in this Course
MapReduce

MapReduce

17 pages

Processes

Processes

19 pages

MapReduce

MapReduce

17 pages

Load more
Download File Systems - Consistency Issues
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view File Systems - Consistency Issues and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view File Systems - Consistency Issues 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?