Skip to content

feat: Add gcs and azblob support by OpenDAL#70

Merged
bigbigxu merged 5 commits intoCurvineIO:mainfrom
Xuanwo:add-gcs-and-azblob-support-by-opendal
Jul 30, 2025
Merged

feat: Add gcs and azblob support by OpenDAL#70
bigbigxu merged 5 commits intoCurvineIO:mainfrom
Xuanwo:add-gcs-and-azblob-support-by-opendal

Conversation

@Xuanwo
Copy link
Copy Markdown
Contributor

@Xuanwo Xuanwo commented Jul 29, 2025

This PR adds GCS and AzBlob support via OpenDAL. It primarily serves as a demonstration of how OpenDAL can work with Curvine.

  • More features like logging, trace, metrics, retry could be added in the future.
  • More services like cos, obs could be added in the future too.

Signed-off-by: Xuanwo <github@xuanwo.io>
@lzjqsdd
Copy link
Copy Markdown
Member

lzjqsdd commented Jul 29, 2025

great integration 👍

@bigbigxu
Copy link
Copy Markdown
Contributor

Hi, thanks for submitting your code. I'm having an issue with the previous Filesystem interface, which was implemented using the async trait and had some performance issues and incomplete functionality.
The new interface, implemented using a macro and impl Future , offers better performance. The trait is defined in curvine_common::fs::FileSystem .

@Xuanwo
Copy link
Copy Markdown
Contributor Author

Xuanwo commented Jul 29, 2025

The new interface, implemented using a macro and impl Future , offers better performance. The trait is defined in curvine_common::fs::FileSystem .

Thank you for the guidance. I'll give it a try.


Out of curiosity, could you elaborate a bit more on the performance issues? The difference in dynamic dispatch should be almost unnoticeable compared to IO.

Xuanwo added 4 commits July 29, 2025 23:46
Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
@bigbigxu bigbigxu merged commit afc076f into CurvineIO:main Jul 30, 2025
@lzjqsdd lzjqsdd added the enhancement New feature or request label Sep 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants