开始新对话

未解决

此帖子已超过 5 年

359

2014年1月23日 19:00

OneFS操作系统软件概述之智能读取机制

​ ​
​ ​

​OneFS​​操作系统软件概述之智能读取机制​

​ ​
​ ​

​ ​

​转载请在文首保留原文出处:​​EMC​​中文支持论坛​​https://community.emc.com/go/chinese​

​ ​
​ ​

​介绍​

​ ​
​ ​

​ ​

​ ​

​在​​Isilon​​集群,数据、元数据和文件实体均匀分布在多个节点上,有些甚至会跨节点中的多个驱动器。在读取或写入数据到集群时,客户端连接的节点充当“数据收集者”的角色。在一个读操作时,“数据收集者”会汇总集群中各个节点的数据,然后发送给客户端。本文将介绍​​OneFS​​操作系统的智能读取机制。​

​ ​

​ ​

​ ​
​ ​

​更多信息​

​ ​
​ ​

​ ​

​ ​

​ ​

​ ​

​受益于采用成本优化的行业标准硬件,​​Isilon​​群集中每个节点都拥有大容量的高速缓存,并可以根据需要动态分配给读操作或者写操作。这种基于​​RAM​​的缓存可以统一的在跨群集中的所有节点实现一致性调配,从而让每个节点上的客户读取​​I/O​​请求时都可以受益。在低延迟​​InfiniBand​​背板的作用下,所有缓存块可以快速从任何节点进行读取,从而提供大型和高效的​​RAM​​缓存以加速文件读取的性能。随着集群规模的增加,这种缓存机制的优势将进一步体现。同时,​​Isilon​​集群中直接需要到磁盘中读取的​​I/O​​量相对传统平台的​​NAS​​设备会低很多,从而极大的减少了读操作的延时,为用户提供更佳的用户体验。​

​ ​

​ ​

​ ​

​对于接入模式是并发(​​concurrent​​)或者流(​​streaming​​)的文件,​​OneFS​​操作系统的​​SmartRead​​组件可以预先读取部分数据。​​SmartRead​​可以在​​L2​​缓存上创建一个数据通道,然后预读部分数据到“​​Captain​​”节点的​​L1​​缓存中,这里“​​Captain​​”节点是指客户端直接访问的节点。这种预读机制大大提高了所有协议的连续读写的性能,因为从​​RAM​​中读取的数据响应时间只有几毫秒。对于连续顺序的读操作,​​SmartRead​​被证明可以非常大的提高读操作响应时间。​

​ ​

​ ​

​ ​

​ ​

​ ​

​下图说明了​​SmartRead​​机制如何读取顺序存取,一个非缓存文件的读请求发送到​​3​​节点群集的节点​​1​​。​

​ ​

​ ​

​ ​

​1​​、节点​​1​​通过读取“元数据”查找存放文件的所有数据块。​

​ ​

​2​​、节点​​1​​同时检查自己​​L1​​缓存中是否有所请求的文件数据。​

​ ​

​3​​、节点​​1​​建立一个“读通道”,然后发送并发(​​concurrent​​)请求到存放文件数据的所有节点。​

​ ​

​4​​、每个节点将磁盘中的文件数据块读取到各自的​​L2​​缓存,并将文件数据传送给节点​​1.​

​ ​

​5​​、节点​​1​​将传入数据记录到​​L1​​缓存,同时响应客户端的读操作请求。同时,进行预读取过程。​

​ ​

​6​​、对于高度连续的文件,节点的​​L1​​缓存可以释放已读文件的缓存空间,用于其它​​L1​​或​​L2​​高速缓存请求。​

​ ​

​ ​

​ ​

untitled.png

​ ​

​ ​

​ ​
​ ​

​ ​

​ ​

​参考​

​ ​
​ ​

​ ​

​ ​

​文档《​​EMC Isilon OneFS: A Technical Overview​​》​

​ ​

​ ​

​ ​
​ ​

​应用于​

​ ​
​ ​

​ ​

​ ​

​了解​​OneFS​​操作系统的智能读取机制。​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​
没有回复!
找不到事件!

Top