Jump to content

I don't understand the cache behavior


WCTschumy

Recommended Posts

Hi all,

 

I'm in the process of setting up my first Unraid server - thus far, I think I like it, but I'm confused by the cache behavior.

 

I've got 4 SSDs and 12 HDDs - I'm using this as a converged system between a couple servers and a NAS device.  I'd thought this would behave similar to tiered storage where the contents of the caching layer are automatically flushed from the SSDs to the HDDs as the SSDs fill up.

 

As I've been migrating the data, I keep getting out of space warnings from both the file copy and from Unraid when the cache layer tops out.  I've turned on Mover to run each hour and I've installed the Mover Tuning plugin.  That said, this seems like it should be unnecessary.  Am I just doing this wrong?

 

FWIW, the cache seems to roughly double the network transfer speeds, so I'd really like to figure this out...

 

Thanks! Will.

Link to comment

The cache setup is quite clear once you understand the logic behind it, but it sure is not easy at first.

 

You can have a look at the documentation, the section on the mover behavior should help a bit :

https://wiki.unraid.net/UnRAID_6/Storage_Management#Share_Management

 

Maybe you can share your diagnostics (Tools/Diagnostics) so we can have a look at your shares settings and/or a screenshot of the shares page.

if needed I can go into more details, but I am at work sooo.  ;) 

Link to comment
4 hours ago, WCTschumy said:

I've turned on Mover to run each hour and I've installed the Mover Tuning plugin.  That said, this seems like it should be unnecessary.

Except that it's not unnecessary because that's how the cache works.  The mover runs as scheduled to clear the cache drives as configured.

 

You're thinking of Unraid's cache drive in the same way as an SSD's cache where it's automatically written to memory from the cache as a simultaneous process.....  that's not what Unraid is or does.  The cache drives aren't meant, per se, to be used during a data transfer migration that would constantly fill them up. The faster transfer speeds are nice but your result is what happens..    The cache drives are mainly for faster data storage when your array is up and running where you want things on the speedier SSDs... VMs, docker data, transcoding, etc... 

 

For an initial data load you should have your cache turned off and write directly to the array.  It's a slower transfer speed but you don't have the problems of full cache drives... and if you consider it, what is the actual time savings?  When you fill up the cache you have to stop everything, and then run the mover to clear the cache drives -- a second write process, time consuming also.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...