openebs / spdk-rs

Enables building safer SPDK-based Rust applications
Apache License 2.0
58 stars 19 forks source link

feature: Add blob and blobfs support #53

Open Xuanwo opened 9 months ago

Xuanwo commented 9 months ago

Is your feature request related to a problem? Please describe.

I want to build something around SDPK blobstore. But spdk-rs doesn't support neither blob or blobfs API.

Describe the solution you'd like

I plan to expose blob and blobfs APIs in spdk-rs

Describe alternatives you've considered

Nope.

Additional context

Nope.

tiagolobocastro commented 8 months ago

@Xuanwo just to confirm you mean to say you'll be raising a PR to add this functionality?

Xuanwo commented 8 months ago

@Xuanwo just to confirm you mean to say you'll be raising a PR to add this functionality?

Yes. I'm willing to implement this feature if it looks good to you.

orville-wright commented 8 months ago

This feels like something that would be very useful. Especially BlobFS.

tiagolobocastro commented 8 months ago

@Xuanwo just to confirm you mean to say you'll be raising a PR to add this functionality?

Yes. I'm willing to implement this feature if it looks good to you.

Sounds good @Xuanwo

orville-wright commented 8 months ago

Hey @Xuanwo - There are a couple of SPDK related projects that utilize BlockFS and have an API for integration. ROcksDB , Fuse3 and EVFS are 3 that I know of....

RocksBD has only integrated the db_bench benchmarking tool with BlobFS. RocksDB may be a good example to review as they have clearly done some good SPDK BlobFS work.

FUSE3 also has some support for BlobFS, but its seems to not be very well documented.

IBM Research in Tokyo did a great SPDK based project called: EvFS: User-level, Event-Driven File System for Non-Volatile Memory. I cant find the code, so I don't think its public.

Xuanwo commented 8 months ago

Thanks @orville-wright for providing the nice summary!

I'm from the Apache OpenDAL community, and we're exploring this field to see if we can create something cool. I believe we can provide support for blobfs too.

orville-wright commented 8 months ago

Great to know. Thx and it's awesome to meet you ! 😄

I wasn't aware of OpenDAL. Wow, that is a very big and bold project with a lot of complex data/storage layers all integrated together with some very modern data-centric language bindings. - Nice.

It's obvious that you guys at OpenDAL would definitely have a need / use for BlobFS.

I am 'Head of Product Mgmt & Strategy' at DataCore and for OpenEBS. DataCore is a key company sponsoring OpenEBS and it provides a lot of eng/dev resources for the project & community. I have a long history designing, developing & bringing to market Storage and Data platforms.

I think there is a good intersection between OpenDAL and OpenEBS. - Your BlobFS API work will definitely be useful in both projects. I support that and can help with your efforts in our community and project.