Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: new architecture of cubefs in the cloud #3088

Open
bladehliu opened this issue Feb 12, 2024 · 6 comments
Open

[Feature]: new architecture of cubefs in the cloud #3088

bladehliu opened this issue Feb 12, 2024 · 6 comments
Assignees
Labels
enhancement New feature or request

Comments

@bladehliu
Copy link
Member

bladehliu commented Feb 12, 2024

design the new architecture of running CubeFS in the cloud

Goal: "Achieving Compute-Storage Separation without Performance Degradation in the Cloud"

  • leverage the object storage like S3 as the cold data store
  • benefit from read caching and moreover, optimize write performance, e.g., a particular case is that the WAL appending should be fast enough for database workload
  • work together with the k8s cluster in the cloud, as the shared storage solution to support compute-storage separation for the upper layer databases.

Describe the solution

cubefs cloud = its metadata layer (RAM) + its hot data layer (SSD) + the cold data layer in S3,

note the hot data layer = the newly written data (such as the recent WALs) + the frequently accessed data (such as a file just open and read); the cold data layer = the file extents swapped out from the hot data layer

591708149657_ pic

Describe an alternate solution.

compared with direct read/write from/to S3 (and other filesystems on top of it), cubefs cloud has its very own metadata store and hot data layer for better performance to power the compute-storage separation for online database systems.

Anything else?

note by adding this feature, cubefs will become a hybrid cloud storage solution. #2994

related work: open-source filesystems on top of S3

@bladehliu bladehliu added the enhancement New feature or request label Feb 12, 2024
@Zorlin
Copy link

Zorlin commented Feb 13, 2024

Please don't abandon the local storage use case. I don't want to use cloud storage, I want to build cloud storage, and the current architecture of CubeFS is great for me.

Otherwise, I fully support this. Check out JuiceFS, it does something similar.

@xiaochunhe
Copy link
Contributor

Please don't abandon the local storage use case. I don't want to use cloud storage, I want to build cloud storage, and the current architecture of CubeFS is great for me.

Otherwise, I fully support this. Check out JuiceFS, it does something similar.

local storage will not be abandoned, it will continue to be optimized

@Zorlin
Copy link

Zorlin commented Feb 17, 2024

Please don't abandon the local storage use case. I don't want to use cloud storage, I want to build cloud storage, and the current architecture of CubeFS is great for me.
Otherwise, I fully support this. Check out JuiceFS, it does something similar.

local storage will not be abandoned, it will continue to be optimized

Perfect :) Then I fully support this. Let's make CubeFS more flexible 👯

@awzhgw
Copy link
Member

awzhgw commented Feb 22, 2024

that is a good idea. The need for file-level lifecycle management functions is crucial for cost considerations.

@fengjiannan2010
Copy link

正在开发的功能在哪个分支上?

@true1064
Copy link
Contributor

正在开发的功能在哪个分支上?

https://github.com/cubefs/cubefs/tree/develop-hybridcloud-lifecycle

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

No branches or pull requests

8 participants