opendal icon indicating copy to clipboard operation
opendal copied to clipboard

GSoC Ideas: ofs, OpenDAL File System via FUSE

Open Xuanwo opened this issue 1 year ago • 14 comments

Background

OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. ofs can expose OpenDAL power in fuse way that allow users to mount storage services locally.

Objectives

Implement ofs, allowing users to mount storage services locally for read and write.

Features

In Scope:

  • Continuous reading
  • Continuous writing
  • Random reading
  • List dir
  • Stat file

Out Scope:

  • Random Write
  • Xattrs
  • Permissions

Tasks

  • Implement features that in scope
  • Implement tests suite

Recommended Skills

  • Familiar with Rust
  • Familiar with basic ideas of file system and fuse
  • Familiar with OpenDAL Rust Core

Mentor

Mailing List: [email protected] Mentor: junouyang, Apache OpenDAL PMC Member, [email protected] Please leave comments if you want to be a mentor


Cross posted at https://issues.apache.org/jira/browse/GSOC-255

Xuanwo avatar Feb 02 '24 11:02 Xuanwo

Can I mentor this GSOC project? And we have done some work for it before, but I am not sure if this project for GSOC is reasonable.

oowl avatar Feb 03 '24 07:02 oowl

I interested in.Whether we discuss it before, we do the linux fuse or fuse3 first, and then consider the S3 support? @oowl

bokket avatar Feb 04 '24 02:02 bokket

we do the linux fuse or fuse3 first, and then consider the S3 support? @oowl

we do not need to implement all these fuse libraries, just choose one of them.

I interested in

Welcome, but we need to wait for the nomination process of GSOC.

oowl avatar Feb 04 '24 02:02 oowl

Welcome, but we need to wait for the nomination process of Gsoc.

The website shows that the organizations are announced on February 21st.

bokket avatar Feb 04 '24 03:02 bokket

Will ofs (opendal-fs?) be a library or a CLI tool?

simonsan avatar Feb 06 '24 11:02 simonsan

Will ofs (opendal-fs?) be a library or a CLI tool?

I expect to have both lib and cli, but that depends on the code owner's decision.

Xuanwo avatar Feb 06 '24 12:02 Xuanwo

Will ofs (opendal-fs?) be a library or a CLI tool?

I expect to have both lib and cli, but that depends on the code owner's decision.

Ok, I think it is a good way to separate these concerns for modularity and would be also helpful to link against it, when other projects, want to pull in that code. Not affiliated with it in any way, but I find it good, how abscissa applies that when initializing a new project, it's a good way to quickly start. So just leaving it here.

simonsan avatar Feb 06 '24 13:02 simonsan

I'm familiar with the fuse before. I would like to be one of the mentor for this idea

Zheaoli avatar Feb 19 '24 16:02 Zheaoli

I think we should update the goals of this idea, the goals listed above seems be implemented in https://github.com/apache/opendal/pull/4179

ho-229 avatar Feb 22 '24 14:02 ho-229

I think we should update the goals of this idea, the goals listed above seems be implemented in https://github.com/apache/opendal/pull/4179

Agreed, I will update the goals.

Xuanwo avatar Feb 22 '24 15:02 Xuanwo

It seems to be a local mapping of cloud storage. It looks like switching out Datenlord's metadata engine, etcd, for a local SQLite should do the trick.

Rather than the data layer stuff, I'm more intersted about some decisions regarding metadata

xiaguan avatar Feb 28 '24 12:02 xiaguan

Based on the existing ofs code, it seems. This idea would require implementing a reader and writer to handle prefetch and concurrent asynchronous write-backs, while also managing a certain amount of memory usage. There are also some things to consider on the metadata level. It looks like my previous page_cache repo might be of some help.

xiaguan avatar Feb 28 '24 12:02 xiaguan

we discussed in discord.but not clear.

bokket avatar Feb 28 '24 14:02 bokket

I want to support Windows by implementing CloudFilter for ofs, I will write proposal later

ho-229 avatar Mar 21 '24 08:03 ho-229