[Sheepdog] [PATCH 2/2] object cache: introduce async flush
MORITA Kazutaka
morita.kazutaka at gmail.com
Thu Apr 5 17:09:55 CEST 2012
At Wed, 04 Apr 2012 01:19:10 +0800,
Liu Yuan wrote:
>
> On 04/04/2012 01:00 AM, MORITA Kazutaka wrote:
> > At Mon, 2 Apr 2012 16:21:11 +0800,
> > Liu Yuan wrote:
> >>
> >> From: Liu Yuan <tailai.ly at taobao.com>
> >>
> >> We async flush dirty object as default to achieve the best performance.
> >> If users prefer strong consistency over performance, users can launch
> >> sheep with -S or --sync option.
> >>
> >> We need async flush because:
> >> 1) some APP are responsive time sensitive, the writeback of dirty bits in
> >> the guest will mostly hurt RT because guest need to await its completion.
> >> This is a considerably long operation in the sheep cluster.
> >> 2) some APP are just memory and CPU intensive, has little of concern of disk
> >> data. (For e.g, just use disk to store logs of APP)
> >> 3) People simply prefer performance over consistency.
> >
> > Sheepdog is a block device storage. This kind of feature must NOT be
> > default. In addition, we had better show a warning about a risk of
> > reading old data, which could cause a filesystem corruption, when
> > users enable this feature.
> >
>
> Okay, I'll submit a patch to make it optional.
>
> But in which way we'll risk to read stale data? Guests always try to read objects from
> cache with cache enabled, IMO.
If the gateway node fails, the flushed data would be lost.
Thanks,
Kazutaka
More information about the sheepdog
mailing list