Start a Conversation

Unsolved

This post is more than 5 years old

1217

June 4th, 2015 07:00

Could help explain scaleIO read and write operation

Hello experts
Could you help explain ScaleIO read and write process? or is there some doc about it?

for example one IO operation how from sdc to one sds to volume to disk

June 4th, 2015 07:00

SDC appears to the application as a file system on a block device.

When a write IO is issued the SDC sends that IO over the ScaleIO protocol to the SDS where it's primary copy is located, the SDS then sends the write to a local device (drive) and at the same time sends it to the MDM where the secondary copy resides. When the write is acknowledged from both SDS the write is acknowledged back to the SDC.

So a write IO from an application will generate two IO on the network and backend disks.

The SDC knows where to direct writes based on a simple table it keeps in RAM, so it doesn't need to ask where to send writes.

Hope this helps!

522 Posts

June 4th, 2015 11:00

Just to add to the response above in terms of reads (per your question). A read involves an action between the SDC and one SDS where the network bandwidth is that of the size of the read. Each SDC has a mapping-table held in memory that holds the information on what SDS to get their read from.  If for some failure reason the SDS contacted no longer has the most recent copy of data being requested, it will reject the SDC's request, force the SDC to contact the MDM to update its mapping tables, and then the SDC will re-issue the I/O request to the new SDS identified that is holding the chunk.

HTH

No Events found!

Top