Hi, I understand it depends widely on the usage, but I'm looking into some generic read/write speeds that one could expect.
Like are we talking 100/500/1000/mb/s, some sort of pointer.
What's "mb/s"? Megabits per second? Megabytes per second? Since this is a technology forum, it's necessary to disambiguate oneself when posting. Please see
We realize that new users have a lot to learn when they come to FreeNAS. There's a certain amount of confusion added to discussions when users pick random/approximate terms to describe things. I've spent a lot of time quietly trying to translate terms on the reader's side when reading posts...
www.truenas.com
I'm hearing that hardware RAID is faster on read, but slower on random for example, and since I have a hardware controller that could also be an option.
Where did you hear that? Certainly not here. Hardware RAID is fundamentally *incompatible* with TrueNAS. See
1) An HBA is a Host Bus Adapter. This is a controller that allows SAS and SATA devices to be attached to, and communicate directly with, a server. RAID controllers typically aggregate several disks into a Virtual Disk abstraction of some sort...
www.truenas.com
The tiny sucky CPU's on a RAID controller and the itty bitty amounts of cache that they might happen to have can kill your performance, that is, right up until something happens where the RAID controller barfs and messes up your virtual disks.
the fact that sequential write is higher than read that I can't get my head around.
Why? It makes perfect sense. When you're writing, you are writing to the ZFS "write cache", which is actually called a "transaction group" or txg. This is in your system's main memory, and under optimal conditions, which you are probably close to if the system is relatively new, writes come in from the network, placed in memory, and then in a few seconds are staged out to disk, while a new txg is opened and begins filling. This effectively means that writes happen as fast as ZFS can write your stuff to memory. Reads, on the other hand, have to be fulfilled from disk, by going out to the pool, seeking, reading the data in from disk, and then copying that back to the client over the network. This can still happen pretty fast for sequential data, but seeks will impact the read speeds possible.