Missing storage systems and solutions
Storage systems on the market today have a number of universal problems. Generally, data enters from external interfaces, while the storage engine processes data. Each storage engine has its own characteristics and can be used for data applications, data compression, encryption, and ing. While the storage engine processes data, it also needs to respond and send the response to the high-level application. To achieve this, all storage systems adopt some write cache to respond as quickly as possible, so that applications can execute their respective tasks. In addition, data processing also produces a lot of metadata. Metadata processing for each I/O that enters the system is carried out in an arbitrary manner. Obviously, metadata storage is also required to assist in data processing. Therefore, these two types of load have become bottlenecks in the storage system: write buffer cache and metadata cache, which need to be solved urgently. 1.
Figure 1 bottlenecks in the existing storage system architecture
The main characteristics of these two types of load determine that all storage devices must have the highest possible performance to cope. The ideal goal is that both types of load can achieve the same performance as the top-level memory in Figure 2. At the same time, it is also expected that it has a non-volatile external memory as shown in the bottom layer of the figure to make up for the problem that data is easy to lose when there is a power failure in the inner. From the memory to the external storage level, we can see that the ideal storage required by these two types of load is between the external storage level and the memory level -- let alone: performance gaps in critical tasks (2 ).
Figure 2 Performance gaps
How can we deal with these challenges? The natural response may be: "Use SSD to solve it ." Looking back, this is exactly what most storage systems did a few years ago-using SSD as a write buffer and metadata cache. However, with the advancement of technology, flash memory has become the dominant storage media, and iops is gradually improved. SSD is no longer able to meet these performance requirements. The real challenge lies in the SSD write tolerance. Let's take a look at the write tolerance required by these loads. The vertical axis in Figure 3 shows the number of writes per day. The horizontal axis increases from left to right and iops from 50,000 to 1,000,000. The figure shows the number of writes required to maintain the iops level.
Figure 3 durability of flash memory
A few years ago, the 50 K iops system was still very high-end, but now it has not reached the entry level. Now we are facing a K or even higher system. Take a 100 k iops system as an example. If you plan to use a 400 gb ssd, which is shown in the Blue Line in 3, the durability required for 100 gbssd is times a day. This is obviously not achieved by flash memory. Even if the capacity is increased to double or even four times, the write resistance needs to be reduced to the range of 10 writes per day, SSD is barely enough to cope with, and the price of such SSD is very high. Looking into the future, the development trend is the Green Circle in the upper right corner. Obviously, due to write tolerance, flash memory is currently unable to cope with the increasing iops speed.
Since flash memory does not work, most people will turn back to dram. So can DRAM be competent? It is self-evident that DRAM is ideal in terms of performance, but its disadvantage is that it is vulnerable to power failure. Therefore, DRAM protection must be provided. The method to protect DRAM is usually to add an integrated UPS system or battery backup unit. However, the battery itself has a series of problems, such as poor reliability and shorter life cycle than the system, which leads to great difficulties in maintenance. In addition, battery occupies a large amount of space. In storage racks with battery backups, 1/4 of the locations are occupied by battery. Obviously, the space occupied by the battery can be fully utilized.
Looking at these problems, PMC has created a unique NVRAM accelerator card solution. This solution perfectly fills the gap between the memory layer and the SSD layer. The pmc nvram accelerator card has excellent performance, so it not only fills the gap, but also implements several unique functions.
Figure 4 PMC flashtec NVRAM accelerator card
First of all, from the hardware appearance, This is a standard-sized, half-height, half-length PCIe card. It is compact and can be placed on any server, which is basically compatible with all servers. In addition, PMC has made several innovations on the interface layer connected to the host. 4. The left side shows the native interfaces of the current application, all of which are based on blocks. Therefore, we provide an nvme interface, which is a native interface for applications that have been using block devices and is easy to integrate. This is also a Native Interface for both inbound and outbound data writing caches. In addition, we provide memory ing access. In this mode, the memory capacity is directly mapped to the virtual memory address space of the application. Therefore, when an application needs access, it can use the CPU load/storage command as the native memory, without consuming any storage cycle or hitting any software layer. For Metadata Applications, this method makes it very convenient to access the memory.
Figure 5 flashtec NVRAM Application Model
With these two interfaces: the block-based interface and the memory ing interface, a solution is found for the load problem of the write cache and metadata. What is the performance of this solution in Block Mode? The test results show that the NVRAM acceleration card can provide 1 million iops. Compared with SSD, the performance of this product is 10 times higher than that of SSD.
Figure 6 flashtec NVRAM provides 10 times the performance of SSD
Figure 5 shows the results of combining this product with an extremely advanced PCIe SSD. As we all know, SSD performance basically depends on flash memory. Flash memory performance may be high, but in terms of continuity, flash memory is not write-resistant, so the performance of flash memory is not balanced. In contrast, the pmc nvram accelerator continuously provides a balanced performance, up to 1 million iops read/write, and there is no durability problem.
Let's take a look at the memory ing interface. In the memory ing port, the performance of the card is far more than this value, random write of 64 B, can continue to provide 15 million iops. At the beginning of this article, we will talk about the metadata I/O for each data buffer to be processed. Therefore, to maintain 1 million write iops, you need to process multiple pieces of metadata. With 15 million random read/write iops, the performance of this solution is quite satisfactory.
Figure 7 random write iops of flashtech for 64 B data processing can reach 1.5 m
The last performance indicator is CPU usage. Compared with the memory-based solution, the core advantage of nvme driver is that it can perform DMA processing efficiently. The nvme protocol is incredibly efficient in this regard. Using nvme to move data from memory to NVRAM is four times more efficient than using CPU. This is crucial. Memory backup basically consumes the CPU cycle, and these times can be used for upper-layer application software processing, which is the most necessary place for CPU resources.
Figure 8 CPU usage is better than NV-DIMM
PMC's NVRAM accelerator creates a unique storage level-a high-performance storage level between DRAM and SSD. This product can provide tens of millions of write iops and millions of iops (4 K blocks), thus achieving the performance and write tolerance required by a variety of applications. This product uses industry-standard interfaces, PCIe interfaces, nvme interfaces, and Native memory ing access interfaces. Therefore, it can shorten the time to market and reduce the total cost of ownership. In addition, this design is designed for enterprise-class mission-critical applications with excellent reliability. Today's storage market is changing with each passing day, with diversified application scenarios and a wide range of data types. The release of the NVRAM accelerator card provides devices and data center users with a brand new option, which perfectly fills the gaps in the storage system.
Missing storage systems and solutions