Re: A suggest about Batch Read API

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

 



On Fri, 26 Oct 2018, 韦皓诚 wrote:
> Thank you~
> But for bluestore, does this mean that it still needs to be called
> many times, and the requests should be executed by bluestore one by
> one? Can we let bluestore execute multiple requests at a time?
> Maybe bluestore already has a batch read api, but I can find the
> read(offset, length) api .

Yes--currently these will be done sequentially at the OSD.  We don't yet 
have an async read interface at the ObjectStore layer.  There has been 
some prototyping work around this bug nothing that has been completed.  
As part of the seastar refactor we definitely want to enable this, but 
whether we also do it for the current code is an open question.

You might want to look at https://github.com/ceph/ceph/pull/19380 for an 
earlier attempt.

sage


> Sage Weil <sage@xxxxxxxxxxxx> 于2018年10月25日周四 下午10:05写道:
> >
> > On Thu, 25 Oct 2018, 韦皓诚 wrote:
> > > Hi,
> > >    We need to read multiple locations in a big object(4MB) at the same
> > > time with librados and each part is 16KB. If librados provides a batch
> > > read api(vector<pair<offset, length>>) and issue multiple requests to
> > > SSD, will there be any improvement in performance?
> >
> > For the C API, ty rados_create_read_op(), rados_read_op_read(..) for each
> > extent, and then rados[_aio]_read_op_operate() to do the compound
> > operation.  The interface varies a bit for the C++ and Python interfaces,
> > but the same capability is there.
> >
> > sage
> 
> 

[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux