Storage
Understanding what storage you need
This simple guide can help you decide on good practices regarding storage for your Coreix services.
What is RaID?
...And why use it?
RAID is simply the concept of putting disks together to make a single array. Nothing more and nothing less - Nevertheless, the benefits of such technology are obvious; you can increase capacity and speed at a minimal cost.
RAID is extremely useful if you require a high availability environment i.e. cannot afford a second of downtime, this is due to the fact that certain RAID levels add an element of redundancy to the solution. This in effect means that if a drive fails the solution can continue to work without issues.
Let's look at the alternative scenarios. We have a single server with a single drive and this drive fails - If we have no backups, then naturally this is catastrophic. If backups are present, they could be a number of GB or TB and could take hours to restore, all that time the solution is offline, this is still not ideal.
In a RAID environment, due to the fact you have multiple drives, should one fail, the solution continues to work while the drive is replaced and the array rebuilds and brings back the resiliency the solution had previously - In this scenario, there is no downtime.
RAID is not an alternative to backups - RAID is designed to keep you online, it is a way to achieve high availability and business continuity.
The key advice which we give to all our clients when discussing RAID, backups, business continuity and disaster recovery is that:
RAID should be used in conjunction with a comprehensive backup plan thus giving you high availability, business continuity and disaster recovery.
RAID 0
Striping
RAID 0 is the concept of taking multiple disks and merging them into one single volume. Naturally, this will increase speed since you can read and write from multiple disks at a time i.e. the speed and capacity of the drives combine.
RAID 0 is not resilient, if you lose any single disk, all data is lost. This makes RAID 0 less resilient than just having a single server with a single disk.
It is rarely used as a RAID level on its own but does have applications where data loss is not important such as data caches.
Coreix strongly advise against using RAID 0 unless you are intentionally attempting to achieve rapid ephemeral storage.
RAID 1
Mirroring
RAID 1 is simple, we take 2 identical disks and mirror the data equally across the drives. RAID 1 is primarily for redundancy.
In the event of drive failure, the drive is replaced and rebuilt. Reading data is slightly quicker since there are two drives to read from, but write latency is slightly increased since the data needs to be written to two drives.
RAID 1 is capable of some very complicated configurations however 99.999% of cases we see simple mirroring which is what we recommend to the majority of clients.
Coreix strongly recommends that clients, at minimum, adopt RAID 1 within their servers.
RAID 10
RAID 10 combines RAID 1 and RAID 0 which in turn increases speed and redundancy.
The major benefit of RAID 10 is that a disk can fail which can be replaced and the array rebuilt with zero downtime. In addition, RAID10 is significantly faster due to the striping but without risk due to the mirroring. The only downside is that the usable space is half of the combined size of the disks. If the above disks were 1TB each, the maximum is 4TB, therefore 2TB is usable. Naturally the above can be scaled up in pairs of drives.
Coreix strongly recommends that clients, at minimum, adopt RAID 1 within their servers.
OTHER RAID Levels
We understand that there are other RAID levels, this includes RAID 5, 6, 50, 60, 100 et al. The reality is that we can support whatever you require, however, this does not necessarily mean we recommend the use of them in this day and age.
Nevertheless, client requirements vary from case to case and we can work with clients to achieve the desired solution they require.
Types of drives
RAID is just one way of potentially increasing the performance of the solution. The alternative way is to change the disk technologies. Nevertheless, different types of storage will have an impact on the types of disks you utilise. We often find clients tier storage to help reduce costs, increase performance where required and accomplish storage levels they require.
The following is a very basic explanation - The purpose of this document is to explain performance and cost, not the technical details:
SATA - Serial ATA - This standard replaces the old PATA standard. These are mechanical spinning disks with storage plates that use magnetism to store data. These drives are suitable for cost-effective larger storage arrays for backups or general data storage.
SATA SSD - SATA Solid State Drives - The next generation of devices is non-mechanical and uses NAND-based flash memory. The only thing holding back the performance is the SATA interface. These are suitable for running Operating Systems from and high-performance data storage.
NVMe - Non-Volatile Memory Express. The latest generation of devices uses an NVMe controller which is higher performance and lower latency. These are again suitable for running Operating Systems from or even higher-performance data storage.
SAS - Serial Attached SCSI - This is the next generation of SCSI (Small Computer Systems Interface). These are still mechanical spinning disks with storage plates that use magnetism to store data. In the same way, SCSI was better performing than P/ATA, SAS has better performance than SATA and is more reliable, nevertheless the cost is naturally higher as was with SCSI. These drives are suitable for more resilient storage arrays for backups or general data storage.
SAS SSD - Serial Attached SCSI Solid State Drives - The next generation of devices on the SAS interface is non-mechanical and uses NAND-based flash memory. These are suitable for running Operating Systems from and high-performance data storage.
Drive Type | Speed | Cost | Cost/Speed/Space Ratio |
SATA | Low | Low | Good |
SATA SSD | High | Medium | Good |
NVMe | Highest | High | Good |
SAS | Medium | High | Average |
SAS SSD | High | Highest | Poor |
Each drive type has a use case and we provide servers with all types of drives.
The above is not designed as a detailed guide but can be used in conjunction with other factors on this page to help you decide the right storage for your solution.
If you have any concerns or want to discuss storage with Coreix, feel free to contact us, we will be more than happy to help.
An Example
Realistically there are only three real qualifiers when it comes to storage.
- How much usable storage space do you require?
- How resilient does the storage need to be?
- How fast does the storage need to be?
Seems relatively simple right? We need 7TB of usable, fast and resilient storage. If you put that all together you could have 4 x 3.84TB SSD in RAID 10 which supplies 7.68TB of usable space which is fast due to RAID 10 and the fact they are SSD's. Nevertheless, when you start to add up the individual components, the solution can become cost-prohibitive since RAID10 requires a storage controller, in addition, enterprise SSD's of larger sizes can be expensive.
What the majority of customers fail to realise is that there are cost-effective ways to reduce operational expenditure by analysing true requirements.
Let's break down the above requirement in detail:
Space Required | Rationale | Details | Recommendations |
2TB | Operating Systems | Fast storage is required to run the base Operating Systems, this needs to be resilient and speed is the key | 2 x 3.84TB SATA SSD in RAID1 |
2TB | Storage for Operations | We store uploaded files in a central data store for our clients | 2 x 8TB SATA in RAID1 |
3TB | Local Backups | We back up all our data to a separate local disk |
The above is just one very simplistic example for demonstration's sake where we can break down complex data storage requirements and work with you to find the most cost-effective solution for your business. No requirement is too big or too small, feel free to contact Coreix for further information.