Re: OSD-Based Object Stubs

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

 



I guess it should be something like sam designed in
CDS(https://wiki.ceph.com/Planning/Blueprints/Infernalis/osd%3A_Tiering_II_(Warm-%3ECold))

On Wed, May 27, 2015 at 4:39 PM, Marcel Lauhoff <ml@xxxxxxxx> wrote:
> Hi,
>
> I wrote a prototype for an OSD-based object stub feature. An object stub
> being an object with it's data moved /elsewhere/. I hope to get some
> feedback, especially whether I'm on the right path here and if it
> is a feature you are interested in.
>
>
>
> Code is in my "osd-stubs" branch:
>  https://github.com/ceph/ceph/compare/master...irq0:osd-stubs
>  https://github.com/irq0/ceph/tree/osd-stubs
>
>  Tools to toy around with osd-stubs + web server to send stubs to:
>  https://github.com/irq0/ceph_osd-stub_tools
>
>
>
> Related:
> - https://wiki.ceph.com/Planning/Blueprints/%3CSIDEBOARD%3E/osd:_tiering:_object_redirects
>
>
>
> Implementation:
>
> Adds two new OSD OPs:
> - STUB :: Move data away; Save location in xattr; Set
>           object_info_t::stub_state to 'remote'
> - UNSTUB :: Get data back; Remove xattr; Set object_info_t::stub_state
>             to 'local'
>
>
> STUB is meant to be called by an external archive agent. UNSTUB
> implicitly when OPs come in that need the object's data. Operations are
> classified as "may_use_obj_data" similar to how op->may_{write,read,cache} work.
>
> The implicit UNSUB is implemented by prepending an UNSTUB operation to the
> incoming OP list if "may_use_obj_data() and stub_state == REMOTE".
> This sadly causes a waring in the client saying that
> the reply doesn't match the request. He is of course right, but I found
> it to be the simplest way to try that feature.
>
> External storage in the prototype is just simple HTTP: PUT on STUB;
> GET+DELETE on UNSTUB.
>
> The Operations implement a kind of converter: STUB reads from the
> primary OSD, store the object on the remote and then issue TRUNCATE(0)
> and SETXATTR OPs. Similar UNSTUB retrieves the object, then does
> WRITEFULL and RMXATTR.
>
>
> ~marcel
>
> --
> Marcel Lauhoff
> Mail/XMPP: ml@xxxxxxxx
> http://irq0.org
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Best Regards,

Wheat
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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