This is the ninth day of my participation in the August More Text Challenge. For details, see “August More Text Challenge”.

SmartCache is a performance improvement technology independently developed by Huawei. The SmartCache pool is composed of one or more SSDS. The system collects real-time statistics on the access frequency of data blocks. The SmartCache pool dynamically caches frequently accessed data (hotspot data) from traditional mechanical disks. The fast access speed of SSDS improves the read performance and access efficiency of hosts.

The working principle of

The performance improvement of SmartCache for hotspot data is measured by LUN. After the SmartCache pool is created and the SmartCache function is enabled for the LUN, the system creates a mapping relationship between the LUN and the SmartCache pool. To do this, all the data on the LUN is divided into blocks according to a data unit. The current size is 1MB. Traffic statistics are collected every 30 minutes in a certain period of time. After a statistical period ends, all 1MB data blocks on the LUN are sorted according to the access frequency. The data that is accessed frequently is confirmed as hotspot data.

SmartCache is a read Cache service module in the storage system. It uses SSDS to expand the RAM Cache in the storage system. It can Cache clean hotspot data that cannot be stored in the RAM Cache. Similar to virtual snapshot, SmartCache also has a resource pool, which is called SmartCache pool. Customers can dynamically add or remove SSDS from the SmartCache pool based on service requirements. Note that only SSDS added to the SmartCache pool can be used to cache hotspot data.

Logical architecture

SmartCache improves hotspot data performance by LUN/ file system.

  1. After the SmartCache function is enabled for a LUN or file system, the RAM Cache delivers hotspot data to the SmartCache.

  2. SmartCache maps data to SSDS in the memory and saves the data to SSDS.

  3. When a new I/O reads the storage device again, it will preferentially attempt a hit in the RAM Cache.

    A. If the SmartCache does not match the SmartCache, try again.

    B. If a match is found, data is read from the SSD and returned to the host. When the amount of cached data in SmartCache reaches the capacity limit, the SmartCache selects the Least Recently accessed cache blocks according to the Least Recently Used (LRU) algorithm, clears mapping entries in the lookup table and eliminates data. Data writing and data elimination process is a cyclic and repeated process. This ensures that the SmartCache stores relatively hot data.

Application scenarios

SmartCache is suitable for any random read I/O intensive services with hotspot access areas, such as databases, OLTP applications, WEB services, and file service applications.

Thank you very much