新闻中心
联系我们
Contact us
Contact us
- 总部电话010-51727811
- 客服热线400 779 6696
- 更多联系信息
集成在智能存储子系统中的处理能力(三)
时间:2012-10-09 09:31 来源:飞客数据恢复 作者:飞客数据恢复工程师
3.在一个设备上共享数据的处理要求
接下来,分析在上述的磁盘驱动器中需要多大的处理能力。首先,磁盘驱动器需要支持同时与4个系统进行通信。即使在某一个时刻只有一个服务器进行登录,与进行磁盘I/O操作所耗用的时间相比,登录过程也是非常快的。这意味着磁盘需要频繁地改变它的登录通信伙伴,并对它们发出的命令进行排队。通过采用双端口磁盘等措施,可以提高与多个系统进行并发通信的能力。但是,在该例子中为了简化模型,并不采用这些措施。
每一个系统的I/O操作可能需要几次登录,而多个会话中的每个会话可能都需要多个登录,因此磁盘驱动器需要实现某些通信的管理,以独立跟踪每一个系统的操作。这会引起一个十分复杂而又重要的问题:因为磁盘向多个系统提供服务,所以它需要实现一个智能的出错恢复机制,以便能为每个系统连接尽快地恢复数据或会话。一个可使与所有系统通信都失败的错误,肯定会对网络造成负面的性能影响。与一个简单的主机或依附主机的出错和警告机制相比,这种多系统的出错恢复机制要求在磁盘驱动器中具有更多的处理能力。
既然可以访问这个磁盘,并且可以由该磁盘自己管理这些访问,那么可能需要某种形式的安全访问机制。也许,在系统A、B、C和D访问这个磁盘时,可能需要限制别的系统访问它。显然,这需要高级的智能来支持不同的安全机制—从简单的密码安全到复杂的加密和验证机制。
在解决可靠和安全通信的问题后,还需要考虑性能的问题。毫无疑问,采用缓存可以给这样的驱动器带来很大的好处,正如缓存能给大多数驱动器带来好处一样。在这里,缓存的作用显而易见,问题只是如何分配它和采用哪一种形式的缓存。数据访问需要的是最常用的,还是预先读的缓存?在写的那一端,它需要的是回写,还是透写缓存?
使用驱动器的不同系统,可能对缓存的选择也具有不同的要求。对于一个磁盘驱动器,需要考虑的问题是,怎样才能更好地照顾到每一种不同应用的不同需求。一种解决方案是,提供不同的独立虚拟缓存,这种独立的虚拟缓存可以由缓存控制器管理为单个的内存资源。
将缓存管理为单个的共享资源,主要基于如下考虑:在一个较短的时间内,4个系统均等访问磁盘的概率不大,而1个或2个系统决定I/O操作的可能性比较大。不过,在一个较长的时间内,如几秒内,可能有多个系统都进行I/O操作。怎样才能使设备缓存适应这种类型的访问,确实是一个富有挑战性的问题。这很可能需要相当大的处理能力进行管理。以后,不同智能存储设备和子系统之间的差别,可能在于它们缓存有效性的不同。
所以,可以得出如下结论:在像磁盘驱动器那样简单的器件上提供数据共享时,比任何在一个服务器上的磁盘驱动器都需要更多的处理能力。除了处理能力外,数据共享也会增加内存的需求,如增加缓存的需求。虽然在一个磁盘驱动器上进行数据共享并不是不可能的,但是这在经济上不一定可行。因此,采用一个存储子系统进行数据共享才是一种更可行的方法,因为存储子系统拥有更多可用的物理空间和资源。另外,如果在大规模的程度上进行数据共享,那么可能需要使用大型的智能后端存储子系统,它除了能提供所需的处理能力外,还可以满足存储和内存的需求。