Jump to content
  • 0

SSD not emptying?


thepregnantgod

Question

I set aside 2 SSDs in a RAID0 configuration for my 80TB pool.  I moved the SSD Balancer to the top.

 

My past experience and understanding is that it acts as the landing zone for new files but once the activity stops (i.e. over night), it should move those files to the archive drives.  My concern is that the RAID0 is not safe and I don't want to lose files located on it when it breaks to find out that they didn't move to the archives.

 

Any thoughts?

Link to comment
Share on other sites

16 answers to this question

Recommended Posts

  • 0

Are you referring to the SSD Optimizer?  If so, one of the notes you might want to get clarification on is:

 

 

If you are using duplicated files, then you should specify multiple SDD disks or else the system will fall back to an Archive disk for one or more of the file parts.

 

Meaning, your RAID 0 setup is seen by DrivePool as a single drive, and if you have things duplicated, you probably aren't getting the functionality you're expecting.

 

Personally, I'd think SSDs would be fast enough you wouldn't need to mess around with the complexities of RAID, but another option might be RAID 1 instead of 0.

 

Another question I have about that plugin is, based on the note I quoted above, since I have duplication set at 3x for almost everything, would I need 3 SSDs to avoid "falling back" to an archive disk and negating the performance benefit I'm trying to get using SSDs?

Link to comment
Share on other sites

  • 0

Yes, I'm referring to the SSD Optimizer Balancing plug in.

 

If the Pool is seeing my SSD as a single drive (despite being RAID0) should not matter.  It would be as if it were a single SSD.  The functionality should be that new files are copied to the SSD (or RAID0) first, then after there is no activity, those files should be moved to the archive drives.

 

The first part is happening - all files go to the SSD/RAID0 first.  Problem is that some of those files are remaining on the SSD/RAID0 when they should be moved off.

 

Finally, there is never a "fast enough" disk.  Even if I added my RAM disk of 32gb to the pool (not smart), it would be still be slower than an equally sized RAM disk made of DDR4 memory instead of DDR3.  There is never something "fast enough."

 

 

Link to comment
Share on other sites

  • 0

Are you using File Placement Rules at all? 

ALso, what are the general balancing settings? 

 

The balancing settings are important, as this determines when the files get moved off of the drive.

If possible, at least temporarily, set it to "balancing immediately", and don't enable the "Not more often than every X hours" option.

Also, try adjusting the ratio slider (up to 100%), as this also determines if/when we need to move files. And make sure the "or if at least this much data needs to be moved" option is enabled, and set to a low number (like 10GBs).

 

If that's still not helping, then please grab the log files from the system:

http://wiki.covecube.com/StableBit_DrivePool_2.x_Log_Collection

 

 

 

 

And yeah, there is no such thing as fast enough. :)

Link to comment
Share on other sites

  • 0

Sorry, I missed it.

Another question I have about that plugin is, based on the note I quoted above, since I have duplication set at 3x for almost everything, would I need 3 SSDs to avoid "falling back" to an archive disk and negating the performance benefit I'm trying to get using SSDs?

Yes, you would need 3 "SSD" drives. 

 

Specifically, when realtime duplication is enabled, it writes to ALL of the disks in parallel. That means if you don't have enough disks, it will fall back onto an archive drive and reduce the speed.

And by "all" drives, I mean that all of the required drives to properly duplicate the files. 

 

You can bypass this by disabling realtime duplication, but we recommend against this. The reason is, that if you have files that are open all the time, we won't be able to duplicate those files. Open files are "locked" by the app (or by windows) so that you cannot access or modify the file until it's closed. So, until the file is closed and unlocked, we won't be able to duplicate the file.

 

This part also applies to balancing. if the files are constantly open, that could be why they're not balancing.

The Realtime duplication feature bypasses the file "locking" issues, so it's never affected by this.

Link to comment
Share on other sites

  • 0

Drashna, I'm glad we agree on that there's no such thing as fast enough!

 

I do have balancing set to immediately.

I have the entire pool duplicated x2.

I have the SSD optimizer prioritized to top, then followed by Scanner balancer.

 

I will check the other settings you requested when I get home.

 

As I understand it, though, my SSD/RAID0 of 256gb should take all files coming into the pool.  Wait until there is no activity and balancing triggers, then copy those files over to two separate archive disks (since I have duplication set to x2).

Link to comment
Share on other sites

  • 0

Drashna, I'm glad we agree on that there's no such thing as fast enough!

 

I do have balancing set to immediately.

I have the entire pool duplicated x2.

I have the SSD optimizer prioritized to top, then followed by Scanner balancer.

 

I will check the other settings you requested when I get home.

 

As I understand it, though, my SSD/RAID0 of 256gb should take all files coming into the pool.  Wait until there is no activity and balancing triggers, then copy those files over to two separate archive disks (since I have duplication set to x2).

Then could you grab the logs from the system?

http://wiki.covecube.com/StableBit_DrivePool_2.x_Log_Collection

 

And it doesn't necessarily wait for no activity, but for specific conditions, as dictated by the balancer settings. This includes the ratio falling below the specified threshold, or a specific amount of data to be moved.

This is why I recommended changes these settings, as it should help be more aggressive about balancing, in that case.

Link to comment
Share on other sites

  • 0

Drashna, how do you want me to send it to you?  It's 16.9mb so it won't let me attach it to this thread.

Use this:

http://wiki.covecube.com/StableBit_DrivePool_2.x_Log_Collection

Specifically, towards the bottom of the page is a Box.com upload widget. You may need to disable any script or ad blockers to see it, though.

This can handle large uploads (we use it for memory dumps as well). Just include a link to the thread in the comment.

Link to comment
Share on other sites

  • 0

I set aside 2 SSDs in a RAID0 configuration for my 80TB pool.  I moved the SSD Balancer to the top.

 

My past experience and understanding is that it acts as the landing zone for new files but once the activity stops (i.e. over night), it should move those files to the archive drives.  My concern is that the RAID0 is not safe and I don't want to lose files located on it when it breaks to find out that they didn't move to the archives.

 

Any thoughts?

 

from the looks of it, you ahve a very small amount of data on the SSD compared to the pool itself. And because of that, our calculation was ... well, effectively rounding up. 

 

We apologize for the issue, and the newest build should fix the issue:

http://dl.covecube.com/DrivePoolWindows/beta/download/StableBit.DrivePool_2.2.0.615_x64_BETA.exe

Also, on the ratio slider, make sure it is set to 100%, or you may not see any change in the behavior.

Link to comment
Share on other sites

  • 0

Thanks for submitting those logs.

 

I'd just like to describe here how the balancing process gets triggered:

  • Periodically, StableBit DrivePool calculates the balance ratio for each pool. This ratio, along with the actual count of bytes that need to be moved, are then used to determine if a full balancing pass is necessary.
    • The ratio calculation does not require any I/O and is therefore performed rather frequently.
    • The ratio is calculated every 5 minutes or if X number of bytes are processed by the pool (100 MB by default -- but this can be changed using advanced settings).
  • The ratio itself is a percentage from 0% to 100%.
    • 0% - All the data on the pool needs to be moved.
    • 100% - No data on the pool needs to be moved.
  • The SSD Optimizer always "wants" to move all of the data from the SSDs to the Archive drives, whenever the ratio is calculated. However, because the relative size of the data that needs to be moved, compared to the size of the pool itself, the overall balancing ratio may be very close to 100%, or actually be 100% because of the floating point calculation used.

This is really not ideal, so I've gone ahead and made a code change that will always force a balancing pass if the critical balance ratio is set to 100%. Maybe the plug-in itself should handle this better, I'll think about it.

 

The internal build with this change is available now: http://wiki.covecube.com/Downloads

 

So in short, in order to get the SSD Optimizer to move your files to the archive drives as soon as possible:

  • Under Balancing -> Settings, set If the balancing ratio falls below to 100%.
  • Make sure Balance immediately is selected.
  • Make sure that Not more often than every is not checked.

Just some more miscellany:

  • Balancing ratio calculations normally happen automatically, but can be directly forced by opening the balancing window and clicking Save. This is not really necessary, but just FYI.
  • StableBit DrivePool's balancing algorithm has a special "scrape" mode when emptying disks completely, this is what the SSD Optimizer triggers. The intention of the scrape mode is to get every last file off of that disk onto the archive disks. This is unlike the standard balancing algorithm which uses a "best effort" approach in order to decide which files to select for re-balancing (for performance reasons).
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  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.

Loading...
×
×
  • Create New...