SSD use in freenas

gcmovies

Cadet
Joined
Jun 16, 2020
Messages
3
Hi everyone,
First i would like to apologize for my English wich is not my mother tongue, French is.
In a near futur i would like to built a freenas server to be able to gather movies for my plex media server. Last night i realize (when we were 2-3 person watching different movies through 1 hdd) that my hdd was in lot of use (the head of the hdd was moving backward and forward a lot). So i asked myself : what if we weren't 3 people watching different movies but let say 10 i will be limitted by the number of iops of my futur raidz2 nas. So an idea came to me but i haven't been able to find on internet waht i was looking for. So here is my idea why not use an ssd for his many iops. When playing a movie through plex it reads progessively the movie file during the entire movie through the hdd. Why not copy the entire file to an ssd when we start the movie and then plex will read the file from the ssd, this will deacrase activity from the nas and we could watch as many movies the ssd can stored at the time. So i'm not talking about l2arc cache but something different i believe.

I would like to know if you ever heard of someting similar or if you could help me.

thanks for futur answers

gcmovies
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,700
I would like to know if you ever heard of someting similar or if you could help me.
There's nothing in FreeNAS itself to help you with that specifically... even in TrueNAS Core 12 when it is released, the new options to allow special VDEVs will not automatically move files from a HDD VDEV to SSD temporarily (because it doesn't know which file you want to watch).

You would need this solution to come from Plex, which would be pointed at a temporary location where a file could be copied in order to be streamed/played/transcoded... which is partially there already in terms of transcode temporary location which is able to be set, but would need to be a feature request to Plex to have exactly what you ask for.

You could try to use a large amount of RAM and an SSD for L2ARC which may assist if the same movie is played more than once in a reasonably short amount of time (depends on how big your L2ARC will be... which depends on how much RAM you will have).

The most reasonable option that you have control over is to properly provision your pool for the intended amount of IOPS, which may mean a lot of smaller (1-2TB) HDDs in Mirrors to deliver about 100 IOPS per mirrored pair... better than the 100 IOPS per RAIDZ2 VDEV, but more wasteful with capacity.
 

gcmovies

Cadet
Joined
Jun 16, 2020
Messages
3
Thank you too bad it doesn't exist ;),
i have a question for l2arc and ram used, i planned 64 go ram for 8*8to ironwolf hdd how large can i go without compromising performance ? And i am not sure if it's realy nescessary for plex because i keep original quality of my bluray which are over 40GB so for a 1 tb nvme it's 20 movies stored in l2arc over so many. I'm not sure statistically speaking if we will ever see a use of l2arc.

Nice thinking of plex and his temporary location file like transcode, i will also look at this side. In fact i thought what not use a script to separate media scan directory and media player dirctory but i'm not good at script and your idea to get the same expectation of transcode temporary is better. I thought also about smb protocol is there a way to forced download file before access it ?

To seperate raiz2 in multi mirror one is an effective way to have better security and iops but like you said it's too pricy for me.

Have you some expertise in scripts ?
i'm looking forward to read you
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,700
I thought also about smb protocol is there a way to forced download file before access it ?
Not really, that would again be a choice made by the player/streaming server. If enough of your clients are android devices, Exoplayer seems to have a pre-cache/download function which may help.

i have a question for l2arc and ram used, i planned 64 go ram for 8*8to ironwolf hdd how large can i go without compromising performance ?
That's a good amount of RAM. You could go even bigger disks with no problem.

a 1 tb nvme it's 20 movies stored in l2arc over so many. I'm not sure statistically speaking if we will ever see a use of l2arc.
Agreed, you may not see a benefit unless everybody only watches recently added movies.

Have you some expertise in scripts ?
I am OK with scripting in a few different languages, but not really for this purpose.


Depending on exactly which type of devices and how many users you will have, perhaps the best answer is to create "optimized versions" of your movies for the mobile/remote devices with a much smaller size (aim for maximum 2GB per film), then your server will not need to store too much extra (about 5%) and your pool should have no problem serving 10 or more streams (assuming your network can handle it). Plex will do the conversions and create the additional version in the background, but I guess will take a long time to do that if your library is large and 40GB per film now.
 

gcmovies

Cadet
Joined
Jun 16, 2020
Messages
3
Thanks for all your advices,
5% for optimized files seems reasonable i will consider it when needed. But i hope plex will implement the temporary file location in the futur.
I think we can close this thread thanks again for your time and your ideas.
 
Top