Skip to content

feat: Add a userspace filesystem backed by OpenDAL #3411

@Inokinoki

Description

@Inokinoki

Personally, I was working on a prototype of userspace filesystem (DalFs) based on fuser.
This fs can leverage the data access capabilities of OpenDAL, to mount a OpenDAL service as a local filesystem.

It is a standalone application. The process keeps blocking, which receives the filesystem access request from the kernel, and replies with the file/dir information or content from OpenDAL.
It consists of a simple inode management module from Netfuse project, and the actual callbacks implemented in fuser Filesystem trait.

It is glad for me to improve it and try to integrate it with upstream OpenDAL.
There are several feasibilities:

  1. Integrate the application as a subcommand of oli, which could act like the executable of DalFs (blocking and serving the kernel).
  2. Integrate it as another executable, that can be integrated to the distributions and mounted using mount subcommand (promising).

As for the functionality, DalFs now is able to provide basic filesystem operations.
However, there are still a few improvements, like IO performance, permission (ideally can cooperate with OpenDAL by adding some ACLs from the services). We can create more sub-issues further.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions