L2ARC drive selection

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

danwood82

Member
Feb 23, 2013
66
0
6
Hi all,

What are your thoughts on priorities when selecting L2ARC drives?

I'm unclear whether multiple L2ARC devices will effectively stripe for faster performance, or will just act as a plain span.
So, would it typically be better to have say, two 240GB drives instead of a single 480GB?

Also, how much difference would low latency play in L2ARC? (Considering my workload is heavily very-large-file based) I'm looking at the Seagate 600/600-Pro series. It seems that raw transfer rates are pretty similar, but the 600-Pro drives have class-leading latency. Would that be of any benefit, or would it be better to put the extra money into larger/more drives?

Or finally, would it be better just to go for the largest possible cheap consumer SSD, and have as large a L2ARC as I can get for the money? Does size trump performance for this application?
(Edit: eg. The Crucial M500 480GB is pretty much identical price to the Seagate 600 Pro 240GB, and not much more than the Intel S3700 100GB)
 
Last edited:

mrkrad

Well-Known Member
Oct 13, 2012
1,244
52
48
IIRC You need to have sufficient bandwidth to not choke the bandwidth of the # of disks behind it. In the case of a large raid-5 (say XSAN/AFP) this would be of great concern , but honestly the L2ARC isn't designed for large file access? I thought it was for non-linear caching of smaller reads like metadata?

That's the bit i've been trying to work out myself, how much minimum protected bandwidth is necessary for each step of ZFS ? Is there a calculator available that tells you what level of raid protection and what level of disk iops you need to not choke each step of caching?
 

danwood82

Member
Feb 23, 2013
66
0
6
Hmm, I was under the impression that the ARC tended to keep metadata and such cached in RAM, and the L2ARC would just fill up with as much frequently-accessed data as capacity would allow, that didn't fit into RAM. I suppose even a fairly high-end SSD would be given a run for its money by a large array of magnetic storage for large sequential file transfers.
That's why I wondered about the benefits of multiple L2ARC drives, whether you can get comperable performance benefits to a SSDs in RAID-0 for commonly/recently accessed data.
 

dba

Moderator
Feb 20, 2012
1,477
184
63
San Francisco Bay Area, California, USA
Hi all,

What are your thoughts on priorities when selecting L2ARC drives?

I'm unclear whether multiple L2ARC devices will effectively stripe for faster performance, or will just act as a plain span.
So, would it typically be better to have say, two 240GB drives instead of a single 480GB?

Also, how much difference would low latency play in L2ARC? (Considering my workload is heavily very-large-file based) I'm looking at the Seagate 600/600-Pro series. It seems that raw transfer rates are pretty similar, but the 600-Pro drives have class-leading latency. Would that be of any benefit, or would it be better to put the extra money into larger/more drives?

Or finally, would it be better just to go for the largest possible cheap consumer SSD, and have as large a L2ARC as I can get for the money? Does size trump performance for this application?
(Edit: eg. The Crucial M500 480GB is pretty much identical price to the Seagate 600 Pro 240GB, and not much more than the Intel S3700 100GB)
I'm am not familiar with the internals, but in real life adding multiple L2ARC devices does dramatically improve random read IOPS, even when there is a single thread reading. My guess, therefore, is that the L2ARC spreads cached data over the multiple cache devices in relatively small chunks, effectively striping it. It's not traditional RAID striping, since you can add and subtract cache devices at will, but it gives the effect of striping.
 

dswartz

Active Member
Jul 14, 2011
610
79
28
As I recall, L2ARC holds anything spilled from ARC. So, frex, you can't put metadata only in ARC but data in L2ARC. Adding multiple cache devices round robins...