Repository navigation
Replies: 5 comments
|
Different small files will not be compacted together |
|
Hey @jiefenghuang. I think you should have considered this issue before closing it without providing a clear explication on why this isn't or won't be supported. Compacting small files together is the only way to make general data in the cloud fast. Right now, if I want to use JuiceFS to backup github repos, etc... It is plain slow and not a suitable solution. Anyhow, sad to see the lack of consideration for fundamental issue with the project. |
|
You can refer to our official documentation for more information. In your scenario, you can utilize writeback caching for acceleration, along with adjusting other parameters for optimization. Additionally, the issue of massive amounts of small files is a fundamental challenge in object storage, which is typically addressed by most cloud service providers offering object storage solutions. |
|
Hey @jiefenghuang. I referred to the docs. I was just curious why this wasn't something worth exploring. writeback helps accelerating write a little bit but nothing life changing. Also, it doesn't solve the issue. Small files are still not compacted. Ideally, I could specify writeback delay of 5 or 10 seconds, and all the files written during that time could be compacted together. Furthermore, even N seconds, files could be re-compacted to accelerate overall performance of the filesystem.
I know. I built LitData (https://github.com/Lightning-AI/litdata) to solve this for ML model training in the cloud. But I was hoping to find a mount solution tackling this for any sizes. I hope it was JuiceFS but it turns out it isn't. Anyhow thanks. |
|
This is not a common scenario. Including this would result in heavy logic garbage collection of data in object storage, and the merge strategy would also add significant complexity. These issues contradict the current architecture of the community edition of JuiceFS, which separates data storage into object storage. Addressing this matter directly within the object storage is more straightforward, and most cloud object storage services have already implemented numerous optimizations. Therefore, this is indeed not a priority issue. I will move the issue to question board for further discussion. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
What happened:
I have started a JuiceFS filesystem
I was writing a lot of very tiny files to it.
But it seems the files aren't compacted.
What you expected to happen:
I want to be able to specify a minimum block size, so files gets compacted together, not just splitted if they are larger than the block size.
So I can read those files back and get the gain of fetching the full block size.
Ideally, I would like to control the compaction to ensure things are closely grouped together.
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?
Environment:
juicefs --version) or Hadoop Java SDK version:cat /etc/os-release):uname -a):All reactions