Re: Load-balancing mirrors w/ asymmetric performance

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 12, 2009 at 7:33 PM, Mike Snitzer <snitzer@xxxxxxxxx> wrote:
> On Mon, Oct 12, 2009 at 11:00 AM, Chris Worley <worleys@xxxxxxxxx> wrote:
>> On Mon, Oct 12, 2009 at 8:22 AM, Mike Snitzer <snitzer@xxxxxxxxx> wrote:
>>> On Sun, Oct 4, 2009 at 3:40 PM, Chris Worley <worleys@xxxxxxxxx> wrote:
>>>> When you mirror two devices, they may not have the same performance.
>>>> For example, if one device is local and the other remote.
>>>>
>>>> There's nothing you can do about writes, as everything needs written.
>>>>
>>>> But, reads shouldn't be split 50/50: they should be balanced depending
>>>> relative performance of each mirror to optimize overall read
>>>> performance.
>>>
>>> And MD already has the ability to flag the slow paths as write-mostly, see:
>>>
>>> mdadm ... --write-mostly
>>>
>>> There is also '--write-behind' support for devices that have been
>>> tagged as 'write-mostly'.
>>
>> Will "write-mostly" optimize the "read", such that both devices will
>> be accessed in proportion to their performance?
>>
>> The man page says:
>>
>> "...and means that the ’md’ driver will avoid reading from these
>> devices if at all possible."
>>
>> Even a slow device can take some of the load and increase performance.
>
> AFAIK, with current MD raid1, reads are only balanced across all
> non-'write-mostly' drives. Having raid1's reads be issued proportional
> to each underlying devices' performance is not currently possible.
>
> I'd imagine that the per-bdi dirty-page accounting of each underlying
> device could be used to train raid1's reads (score each raid1 member
> over time) but I'm not aware of any effort toward that end.

Off the top of my head: the user could control this w/ a per-device
read queue depth.  Set it small for the remote and large for the
local.  Let the use optimize for their case.

Chris
>
> Mike
>
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux