[sheepdog] [RFC PATCH 0/3] Introduce a new journal mechanism
Liu Yuan
namei.unix at gmail.com
Mon Nov 5 08:39:34 CET 2012
On 11/05/2012 03:22 PM, MORITA Kazutaka wrote:
> I'd like to have an option to enable O_DIRECT for backend I/Os even if
> journaling is enabled. We want to save memory to run as many VMs as
> possible.
>
I haven't test this scenario, I'd expect a performance degradation due
to extra journal write if we use external mode (around 20~40% I guess).
For internal mode, it would be even worse. I am not sure for this scene,
if journaling is really worth of it. But it is okay for us to provide an
option for it.
>> > ======================================================================
>> > Work remains:
>> > Besides the code, I want to hear more comment on how the interface should be
>> > programmed.
>> >
>> > I think of following interface:
>> > -j internal,size=256 # which enables journaling and log updates on the same disk
>> > with the log device size 256M bytes
>> > -j external=/path/to/directory # which enables journaling and log updates on
>> > external device with the default size 512M
>> > -j external=/path/to/directory,skip # like above but skip journal recovery at startup
> I have a patch in my queue to refine sheep command option handling
> like collie. With the patch, sheep option syntax is as follows:
>
> -<ch> <name>[:<key>=<value>,<key>=<value>,....]
>
> Key and value pairs are optional. E.g.
>
> -p 7001
> -c zookeeper:servers=xx.xx.xx.xx,yy.yy.yy.yy
> -w object:size=100M,nopagecache=true
>
> Can we use this syntax for journal options too?
>
> -j internal:size=256M
> -j external:file=/path/to/directory
> -j external:file=/path/to/directory,skip=true
>
With a second thought, 'internal' and 'external' can be omitted.
-j {dir=..., skip, size=...} is sufficient.
>> >
>> > I am not sure if we should enable journaling as default because this journaling run
>> > almost the same perf even as internal journal device.
> I think we should add this feature as an optional one at first. I'd
> like to see how it works on my and other's environment before enabling
> it by default.
Looks okay to me.
Thanks,
Yuan
More information about the sheepdog
mailing list