this was held in Monday at the Xiaomi company . China Linux Storage and File system workshop meetings. The conference focuses on the relevant storage technologies in Linux, such as file systems and RAID Technologies , which communicate more or file system technologies. On behalf of Memblaze at this meeting, I did a technical exchange from the industry, focusing on the demand for all-flash arrays, and proposed Some optimization requirements for Linux. At the request of friends, here to make a brief introduction to the report, play a little role.
Speaking of the All-flash array, this is a revolutionary product and the mainstream trend of the future. We have reason to believe that the primary form of a future storage product is a full-flash array. Speaking of all-flash arrays, we have to mention traditional disk arrays. The traditional disk array is the main storage product form, but because of the change of industry demand and the iteration of new technology, the problem of traditional disk array becomes more and more outstanding, and it can't meet the application demand very well. The all-flash array can solve the problem of traditional disk array, and meet the demand of the growing and complex application of the future data.
For a brief list, the full flash array has the following technical advantages:
650) this.width=650; "title=" 1.jpg "src=" Http://s3.51cto.com/wyfs02/M02/4D/15/wKioL1RKfHLT4gU4AAFRynBkOeQ889.jpg " alt= "Wkiol1rkfhlt4gu4aafrynbkoeq889.jpg"/>
The technology of the all-flash array is very complex. If you simply replace a disk in a traditional disk array with a flash drive, this "so-called All-flash array" is not a true full-flash array. This is because the software in the traditional disk array is designed for disk, including file systems and RAID. Disk-oriented software will take into account some of the problems of the disk itself, such as how to avoid disk jitter, so that storage performance is better? Many of the issues considered in traditional disk array software do not exist on flash, and some flash memory problems are not considered in traditional storage software. Therefore, if you simply replace the traditional disk with a flash drive, then the entire system will face a lot of problems, not to make the ssd/ flash memory performance best. So, a true all-flash array will be a system for optimized design for ssd/Flash, and some of the technologies involved include:
650) this.width=650; "title=" 2.jpg "src=" Http://s3.51cto.com/wyfs02/M00/4D/14/wKiom1RKfD2T0DGqAAGxgEvvL9I864.jpg " alt= "Wkiom1rkfd2t0dgqaagxgevvl9i864.jpg"/>
in the process of all-flash array development, Linux the optimization of the system is a very critical and important step. When we learn computer architecture, we all know that there is a "price scissors". This "price scissors" is the difference between CPU performance and IO performance. As the semiconductor process continues to evolve,CPU performance is dramatically increased, butIO performance is growing very slowly, resulting in CPU and The performance gap between IO is getting larger.
IO the bottleneck of performance is disk. The main reason is that the disk is a mechanical part, so the performance is very difficult to be greatly improved. The emergence of non-volatile semiconductor memory components has made this phenomenon better. In particular, the development of flash technology, so that back-end storage is no longer a bottleneck point. The bottleneck of overall performance has shifted from IO to CPU and front-end network, which is a very significant change. Really because of this change, we need to think more about CPU and front-end network performance bottleneck optimization When we are developing a full-flash array.
Another problem is the operating system. In traditional storage systems, the operating system is not a problem at all. Traditional storage mainly considers how to optimize the order of io , so that the disk jitter is minimized, which improves io performance. And in traditional storage, the main optimization is bandwidth and IOPS, for Latency is difficult to achieve low latency. In flash storage, the optimization of the operating system becomes critical, as flash storage optimizes bandwidth and IOPS, and requires optimized latency. As a result,many parts of theLinux operating system require special optimizations to reduce latency jitter.
650) this.width=650; "title=" 3.jpg "src=" Http://s3.51cto.com/wyfs02/M01/4D/15/wKioL1RKfKeDflNUAAHjPSYByWQ171.jpg " alt= "Wkiol1rkfkedflnuaahjpsybywq171.jpg"/>
The development of all-flash array technology will Linux The operating system itself makes significant adjustments and optimizations, particularly in the context of low latency IO technology. This is a very meaningful thing for research and development, both in terms of technical challenges and technical value. At the Linux Storage Technology Conference,Memblaze also had a job at the scene.
650) this.width=650; "title=" 4.jpg "src=" Http://s3.51cto.com/wyfs02/M00/4D/14/wKiom1RKfG6z64oaAAFN3eeWLeU893.jpg " alt= "Wkiom1rkfg6z64oaaafn3eewleu893.jpg"/>
The future of society relies on big data; storage systems are the home of data; Flash memory is the brick that builds the future storage system. The entire industry chain has been linked together, including hardware, storage software, and the OS, closely surrounding flash storage and building tomorrow's "data" homes.
This article is from the "Save the Way" blog, make sure to keep this source http://alanwu.blog.51cto.com/3652632/1567762
Why does Linux need special optimizations for all-flash arrays?