Beruflich Dokumente
Kultur Dokumente
owned by Controller 1.
Controller 1 Failure
At this point Controller 2 will take over ownership of Controller 1s aggregates through high
availability, it will then copy the pending writes into system memory from NVRAM.
Controller 2 copies NVRAM to System Memory
They will then be written down to the aggregates in the next consistency point.
Consistency Point from Controller 2
At that point we will flush the NVRAM on Controller 2 and we start the process again.
Flush NVRAM on Controller 2
WAFL The Write Anywhere File Layout
This is a good time to talk about WAFL, the Write Anywhere File Layout. WAFL is optimized
for writes.
As you saw in the previous example it writes many operations to disk at once in a single
sequential consistency point. This improves write performance because it doesnt do separate
writes to disk and then send an acknowledgement for each individual client request.
The reason WAFL is called the Write Anywhere File Layout is because all data can be written
anywhere on disk. It doesnt have to write metadata to fixed locations like many other file
systems do (metadata is data about other data, for example date created and file size). This
reduces the number of disk seek operations and improves performance.
Lets see how that works. Here were looking at a disk thats being used by another file system
which has got fixed locations on the disk for metadata.
Other File Systems
Weve got some existing data on there, so you can see weve got our metadata in the metadata
section, and our normal data on the other section.
Other File Systems Existing Data
If we then write some new data to that disk, we need to seek to the metadata section for the
metadata and then the normal section for our normal data. The disk head is going to be moving
between those sections. Whenever were doing disk seeks it takes time and decreases the
performance.
Other File Systems New Data
With WAFL we dont have fixed locations on disk, all data can be written anywhere.
WAFL Write Anywhere File Layout
Here were looking at our existing data with WAFL.
WAFL Existing Data
We can write new data sequentially so we dont have to seek between different sections, which
improves our write performance.
WAFL New Data
Direct Data Access Writes (Continued)
Okay, this is where we last left off when we were looking at how our writes worked on our
Controllers. We had just completed a consistency point in Controller 1 and flushed NVRAM on
both Controllers.
Direct Data Access Writes (Continued)
Next lets say we have another write request, this time for blue data.