------------------------------------重要说明------------------------------------

以下部分内容来网络,部分自华为存储官方教材

具体教材内容请移步华为存储官网进行教材下载

    网络引用内容无法找到原创,如有侵权请通知

------------------------------------重要说明------------------------------------

SmartCache特性使用SSD硬盘作为缓存,提高存储系统中读热点数据的访问效率,可用于存在热点数据且以读操作为主的随机小I/O场景

① 定义

华为技术有限公司开发的SmartCache特性又叫智能数据缓存特性

利用SSD盘对随机小I/O读取速度快的特点,将SSD盘组成智能缓存池,将访问频率高的随机小I/O读热点数据从传统的机械硬盘移动到由SSD盘组成的高速智能缓存池中。由于SSD盘的数据读取速度远远高于机械硬盘,所以SmartCache特性可以缩短热点数据的响应时间,从而提升系统的性能。

SmartCache将智能缓存池划分成多个分区,为业务提供细粒度的SSD缓存资源,不同的业务可以共享同一个分区,也可以分别使用不同的分区,各个分区之间互不影响。从而向关键应用提供更多的缓存资源,保障关键应用的性能。应用SmartCache特性不会中断现有业务,也不会影响数据的可靠性。

利用SSD盘较短的响应时间和较高的IOPS( Input/Output Operations Per Second),SmartCache特性可以提高业务的读性能。尤其是存在热点数据,且读操作多于写操作的随机小I/O业务场景。例如: OLTP( Online Transaction Processing )应用、数据库、Web服务、文件服务应用等。

②  相关概念

SmartCache是一种采用SSD作为介质提供读缓存的特性,与RAM Cache配合实现了对LUN和文件系统读加速,同时也作为内部重删元数据的读缓存,提高整个存储系统性能;

18、【华为HCIE-Storage】--Smart Cache_第1张图片

对LUN或文件系统配置好SmartCache之后,主机对LUN或文件系统进行读写时,SmartCache可以提供读加速功能,提升系统性能。

18、【华为HCIE-Storage】--Smart Cache_第2张图片

系统在每个控制器上默认生成SmartCache池,用户只需要往SmartCache池中添加SSD盘,系统在每个控制器对(引擎)上缺省生成一个默认SmartCache分区,用户还可以根据需要创建自定义分区,每个引擎上最多支持创建8个自定义分区,可以在需要的时候向SmartCache池添加新SSD盘来实现扩容。

a.  SmartCache池

负责管理SSD盘,为SmartCache分区提供粗粒度的SSD资源分配与回收。责为业务提供细粒度( 4KB~128KB)的SSD缓存资源,不同的业务可以共享同一个SmartCache分区,也可以分别使用不同的SmartCache分区,各个SmartCache分区之间互不影响。

智能缓存池由SSD盘组成,可以作为普通缓存资源RAM Cache的扩充,用于存储热点数据,也可以作为内部元数据的读缓存。

– 智能缓存池管理本控制器的所有SSD盘,用以保证每个智能缓存分区的资源来自不同SSD盘,从而避免不同SSD盘负载不均衡。

– 存储系统默认在每个控制器上生成一个智能缓存池。


18、【华为HCIE-Storage】--Smart Cache_第3张图片

b.  SmartCache分区

SmartCache特性将智能缓存池划分成多个分区,不同的业务可以共享同一个分区,也可以分别使用不同的分区,各个分区之间互不影响。从而向关键应用提供更多的缓存资源,保障关键应用的性能。

– SmartCache分区负责为业务提供细粒度( 4KB、 8KB、 16KB、 32KB、64KB、 128KB,与前端I/O自适应,即根据前端下发的I/O大小申请不同粒度的SSD缓存资源)的SSD缓存资源。

– 在存储系统上,自动为A、 B控制器创建一个默认分区, C、 D控制器创建一个默认分区。除默认分区外,每双控还最多支持创建8个用户自定义分区。

– SmartCache分区与待加速的LUN或文件系统必须归属于同一个引擎。


18、【华为HCIE-Storage】--Smart Cache_第4张图片

③  数据读取流程

a.  数据读命中Smart Cache流程


18、【华为HCIE-Storage】--Smart Cache_第5张图片

① 应用服务器读I/O访问LUN时,先访问RAM Cache。

② 在RAM Cache未命中, RAM Cache将读I/O请求发至智能缓存池。

③ 在智能缓存池中命中时,下发读SSD盘的请求,读SSD盘完成后,将数据返回给RAM Cache。

④ RAM Cache将数据返回给应用服务器。

b.  数据读未命中Smart Cache流程


18、【华为HCIE-Storage】--Smart Cache_第6张图片

1. 应用服务器读I/O访问LUN或文件系统时,先访问RAM Cache。

2. 在RAM Cache未命中, RAM Cache将读I/O请求发到智能缓存池。

3. 智能缓存池中也未命中时,将结果返回给RAM Cache。

4. RAM Cache下发I/O至后端机械硬盘。

5. 机械硬盘将数据返回给RAM Cache。

6. RAM Cache将数据返回给应用服务器,同时RAM Cache将该数据同步到智能缓存池中。 当智能缓存池容量不够时,则智能缓存池根据时间顺序释放旧数据,释放数据内存,完成旧数据的淘汰。

④  应用场景

SmartCache特性适用于存在热点数据且以读操作为主的随机小I/O场景。应用SmartCache特性可以大幅提升系统的读性能。

利用SSD盘较短的响应时间和较高的IOPS, SmartCache特性可以提高业务的读性能。尤其是存在热点数据,且读操作多于写操作的随机小I/O业务场景。

例如:数据库应用、 OLTP应用、 Web服务、文件服务应用等。 SmartCache特性的典型应用场景

18、【华为HCIE-Storage】--Smart Cache_第7张图片

⑤ 配置流程


18、【华为HCIE-Storage】--Smart Cache_第8张图片

 

a.  检查 License 信息

步骤1 登录DeviceManager。

步骤2 选择“ 设置 > License管理”。

步骤3 浏览已激活License信息。

1. 在左侧导航中,选择“已激活License”节点。

2. 在中间信息展示区,浏览存储设备已激活的License文件信息。

b.  添加 SSD

SmartCache即智能缓存,一种管理智能缓存资源的技术。使用该技术,用户可根据需求增加或者移除SSD盘来管理智能缓存的资源。 SSD盘与智能缓存池关系如下:

存储系统的每个控制器都配置了一个智能缓存池,每个智能缓存池管理本引擎的所有SSD盘。建议同一引擎下的两个智能缓存池配置相同容量和数量的SSD盘。

向智能缓存池中增加SSD盘,不会中断业务,也不会造成系统性能降低。加入智能缓存池的SSD盘必须为空闲盘且不是保险箱盘,同时待增加的SSD盘单盘容量不能超过2TB

步骤1 登录DeviceManager。

选择“ 资源分配 > 资源调优 > SmartCache > 智能缓存池”。

步骤3 进入“增加SSD”对话框。

1. 在左侧信息展示区上侧,选中需要添加SSD的智能缓存池。

2. 单击“增加SSD”。系统弹出“增加SSD”对话框。

步骤4 选择增加的SSD。

在“可选SSD”列表中,选择需要为智能缓存池增加的SSD,单击“向右箭头”,增加

SSD到“已选SSD”列表中。

步骤5 确认增加SSD的操作。

1. 单击“确定”。系统弹出“执行结果”提示框,提示操作成功。

2. 单击“关闭”。

c.  创建分区

SmartCache Partition即分区,智能缓存的属性之一。 SmartCache在对SSD资源进行管理上,分为智能缓存池和分区两部分。两者的作用和关系如下:

存储系统默认在每个控制器上生成一个智能缓存池。智能缓存池管理本引擎的所有SSD盘,用以保证每个分区的资源来自不同SSD盘,从而避免不同SSD盘负载不均衡。

分区负责对智能缓存池中的SSD资源进行分配,以便实现缓存资源隔离。 LUN或文件系统用指定的分区进行读加速。

存储系统在每个引擎上创建一个默认分区。除了默认分区外,每个引擎最多支持创建8个用户自定义分区。

分区与待加速的LUN或文件系统必须归属于同一个引擎。

步骤1 登录DeviceManager。

步骤2 选择“ 资源分配 > 资源调优 > SmartCache > 分区”。

步骤3 单击“创建”。系统弹出“创建分区向导”对话框。

步骤4 在“名称”和“描述”文本框中输入分区的名称及相关描述。


18、【华为HCIE-Storage】--Smart Cache_第9张图片

步骤5 为分区设置相关属性。

1. 在“设置名称”页面,单击“下一步”。系统进入“设置属性”界面。

2. 为新创建的分区设置“引擎”、“期许容量”。


18、【华为HCIE-Storage】--Smart Cache_第10张图片

步骤6 可选: 单击“下一步”,在弹出的“选择LUN”页面选择应用分区对应的LUN。

步骤7 可选: 单击“下一步”,在弹出的“选择文件系统”页面选择应用分区对应的文件系统。

步骤8 确认创建分区操作。

1. 单击“下一步”。系统进入“信息汇总”页面。

2. 确认分区信息。

– 如果创建的分区信息正确,单击“完成”。

系统弹出“执行结果”提示框,提示创建分区成功,单击“关闭”。

– 如果创建的分区信息错误,单击“上一步”重新进行设置。