Hi, Jun Ouyang and Xuanwo. I updated some parts of my proposal. Thanks Jun Ouyang's advise and I hope you can mentor me in this project.
Best Feihan Huang On 2024/03/25 13:34:01 Jun Ouyang wrote: > Hi Feihan, > Thank you for your proposal, Your proposal most of looks good to me. > The only concern is that I think we need more details about our > implementation scopes. > In our original ofs topic description, we have defined in-scope and > out-scope. https://github.com/apache/opendal/issues/4130 > Windows cloudfilter API has many features we need to implement > https://learn.microsoft.com/en-us/windows/win32/api/cfapi/ , I think > we could not implement all of these things (due to technical > limitations or time limitations), So in my opinion, it will be better > if we define what we need to implement and what we do not need to do > in the current task. > Also, I think we need to change our task issues and Jira ticket > descriptions. cc @xuanwo > > On Mon, Mar 25, 2024 at 7:56 PM Ho 229 <[email protected]> wrote: > > > > Hi Xuanwo. > > > > I hope to join the GSoC 2024 project in Apache OpenDAL as a candidate and have the opportunity to be mentored by you. > > > > I will attached my proposal below, have a nice day! > > > > -- > GPG public key: 4A6D297E6F74638E4D5F8E99152AC7B5F7608B26 > Thanks, > Jun Ouyang >
# Apache OpenDAL Ofs via CloudFilter Project Proposal ## Contributor information - Name: Feihan Huang - Email: <[email protected]> - GitHub: <https://github.com/ho-229> - Location: Tianjin, China (GMT+8:00) ## Project information - Name: OpenDAL Ofs via CloudFilter - Related Issues: <https://github.com/apache/opendal/issues/4130> - Project Mentors: Xuanwo <[email protected]> Jun Ouyang <[email protected]> - Project Community: Apache OpenDAL - Project Size: Medium, ~175 hours ## Project abstract OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. currently `ofs` can expose OpenDAL power in a `fuse` way that allow users to mount storage services locally. But `fuse` is only support Linux and some UNIX platforms which limits the usage scenarios of `ofs`. So we need to support other popular platform i.e. Windows to extend its usage scenarios. Windows has a number of options that allow user-mode applications to project hierarchical data from the backing data store into the file system, such as `ProjFs` and `CloudFilter`. Considering `ofs` are majorly used in cloud storage, we need to support `CloudFilter` as well. ## Goals ### In scope - fetch data - cancel fetch data - validate data - fetch placeholders (directory entries) - cancel fetch placeholders - open, close, delete, rename ### Out scope - dehydrate (deprecate local cache) ## Timeline #### Before April 30 - Familiarize `CloudFilter` and its APIs.. - Investigate existing `CloudFilter` Rust bindings, and get in touch with the bindings maintainer if needed. - Determine specific goals to implement. #### May 1 - May 26 - Work closely with `CloudFilter` Rust bindings, make sure it can be used in `ofs`. #### May 27 - June 20 - Write the major implementation of `ofs` via `CloudFilter`. #### June 21 - June 30 - Test the implementation of `ofs` via `CloudFilter`. - Update docs of `ofs` - Prepare midterm evaluation with mentor. #### July 1 - July 19 - Complete tests and fix bugs. - Prepare final evaluation with mentor.
