TECHNOLOGY
Memory Flexibility
Choosing memory for an application depends on performance, reliability, scalability and cost requirements. An application in a large organization may need DRAM for the lower latency and higher IOPS. In a smaller organization, the same application may run very well from Flash.
Memory technologies are also constantly changing. Flash wasn’t interesting a few years ago, but price reductions and capacity increases now make it viable in the data center. In a few years, one of the newer memory technologies like Phase Change Memory or Memristors may become available and have even better characteristics than Flash.
Violin Switched Memory (VXM) is designed to support any memory technology. DRAM and Single Level Cell (SLC) Flash are the initially supported memory types. Other memories including MLC Flash are planned for the future.
Which is the right technology for your application?
The choice of memory requires an understanding of the applications and the latency, IOPS, block size, capacity and persistence required. The following table summarizes the differences:
| Memory type | DRAM | SLC Flash |
|---|---|---|
| Size |
500GB per 2U, |
4TB per 2U, |
|
Cost |
< $250/GB |
< $60 per GB |
|
Latency (Read) |
3 microseconds |
70–300 microseconds |
|
Latency (Write) |
3 microseconds |
> 200 microseconds |
|
IOPS (Random Write) |
100K–3Million |
10K–100K |
|
Block Size |
128 Bytes or greater |
4Kbytes or greater |
|
Persistence |
Needs software & UPS |
Inherent |
As a simpler rule of thumb:
DRAM is better for smaller databases with smaller objects (indices, metadata, and text) and very high performance requirements.
Flash is better for larger file systems and databases with larger objects (files, images, videos).
