联系方式:400-803-6006

电信平台

电信产业目前正处在一个历史转变的过程当中,互联网、VOIP、流媒体、以及其他新的技术正在快速地、戏剧性地改变着这个竞争激烈的市场。电信系统运转过程中产生的海量数据也给存储系统带来了越来越大的压力,决策分析CRM等应用所需要的庞大的数据仓库不仅要求存储系统能够在第一时间完成对这些数据的传输、保存过程,而且任何小小的存储偏差和故障都不被允许。结合原有核心电信业务/运营支撑系统的优化、改造,传统电信运营商如何合理地规划和建设新一代数据存储系统,已经受到广泛关注。

挑战-

规模不断扩大
电信运营商的网络规模、客户规模及业务种类的不断扩大,产生的信息量急速增长。电信运营商为了数据挖掘分析及提升客户服务质量、保证数据安全的需要,通常采取信息永久保存、在线保存时间至少为半年(如客户的详单数据)等数据存储策略。诸多因素使得电信运营商的存储容量逐年成倍增长。
信息重要性突出
在企业进行精细化运营管理的进程中,各类信息已成为企业不可或缺的宝贵财富。
应用环境复杂
转型时代的电信综合业务支撑系统(OSS/BSS)将计费、营业、客服三种基本业务系统融合在一起,使得电信企业的信息技术环境变得越来越复杂,如Windows、Linux、Unix。
业务连续性需求高
面临日益加剧的市场竞争,24×7小时服务被运营商当作了一个最基本的服务措施,所有与存储相关的工作都要在系统不间断运行状态下完成。

LoongStore解决方案 -

按业务需求灵活扩展
LoongStore存储系统支持动态在线扩容,可以动态的添加单块磁盘或单台智能存储服务节点,扩展过程中无须终止当前业务,新增容量即插即用。扩容之后,管理员可以在适当的时机启动负载均衡,使数据平均分配到各个智能存储服务节点;负载均衡过程同时兼顾数据的活跃性,使得负载均衡结束后热点数据也能够均衡的分布在各个智能存储服务节点上,提高系统的整体效率,达到性能线性增长的效果。
提高业务连续性
LoongStore存储系统采用了全系统规模数据高可用技术,彻底消除存储系统中的单点故障,确保用户的应用持续稳定地运行。写入文件时,系统会对文件按照某个粒度进行切片,文件切片根据一定的算法分布的存放在不同的智能存储服务节点上,提高数据访问的并发粒度;LoongStore采取了全局冗余机制,用户可以将指定的数据设置相应的冗余度,冗余数据存放在不同的节点上将确保出现存储节点宕机时数据不会丢失,也不会出现服务中断的现象。LoongStore系统内置了自动故障探测机制,可以动态探测不同的故障,并自动启动数据的恢复流程。我们的集群存储系统正常运行时间超过99.999%,在无须额外花费、牺牲性能和空间的情况下,使整个存储系统具备高可用特性。
兼容异构应用平台
LoongStore集群存储系统的客户机端可以支持常用的各种操作系统,包括Windows全系列,Linux和Unix的常用版本;在各种操作系统平台间实现异构数据共享,不但加强了协作,同时减少了延迟。LoongStore集群存储系统提供单点管理监控,管理人员可以很轻松的管理PB级的数据。
统一管理海量数据
作为基础的存储架构,不管应用如何变化,LoongStore存储系统都能够提供极高的性能。高增长业务带来的数据爆炸性增长可以灵活的将LoongStore集群存储系统在单一文件系统下扩展到64PB,扩展之后不但得到容量的扩大而且性能也会呈线性增长。单一的文件系统降低了管理维护的复杂度,提高了生产效率、效果。
加快数据交付
LoongStore集群存储系统可以帮助电信运营商消除信息孤岛,所有的数据都存放在单一的文件系统下面,对外提供极高稳定的访问速度。LoongStore集群存储系统采用了带外的元数据管理方式,并且利用分布式的存储和分布式的访问技术,所有存储节点能够以同时提供并发访问,计算节点到存储节点之间使用的是高效率的LeoFS协议,系统所提供的数据IO性能几乎就是每台存储节点性能相加的总和,可提供高达100GB/s的IO带宽。

案例-

上海移动

其他行业解决方案 -

高性能计算
电信平台
媒资平台
虚拟化平台
渲染平台
非编平台
互联网
IPTV平台
医疗影像
视频监控
金融影像
高校存储

RAID

RAID简介

RAID是独立冗余磁盘阵列。冗余磁盘阵列技术诞生于1987年,由美国加州大学伯克利分校提出。简单地解释,就是将N块硬盘通过RAID 结合成虚拟单台大容量的硬盘使用。RAID的采用为存储系统(或者服务器的内置存储)带来巨大利益,其中提高传输速率和提供容错功能是最大的优点。其特色是N台硬盘同时读取速度加快及提供容错性,所以RAID是当成平时主要访问数据的存储速度问题(Storage)不是备份问题(Backup Solution)。
简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。组成磁盘阵列的不同方式成为RAID级别(RAID Levels)。

EDAP   

在RAID有一基本概念称为EDAP(Extended Data Availability and Protection),其强调扩充性及容错机制,包括在不须停机情况下可处理以下动作:

1.RAID 磁盘阵列支援自动检测故障硬盘;

2.RAID 磁盘阵列支援重建硬盘坏轨的资料;

3.RAID 磁盘阵列支援支持不须停机的硬盘备援;

4.RAID 磁盘阵列支援支持不须停机的硬盘替换;

5.RAID 磁盘阵列支援扩充硬盘容量等。

RAID 的种类

基于不同的架构,RAID 的种类又可以分为: 软件RAID (软件RAID) ,硬件RAID (硬件RAID) ,外置RAID (External RAID) 。

软件RAID很多情况下已经包含在系统之中,并成为其中一个功能,如 Windows、Netware及Linux。软件RAID中的所有操作皆由中央处理器负责,所以系统资源的利用率会很高,从而使系统性能降低。软件RAID是不需要另外添加任何硬件设备,因为它是靠你的系统—主要是中央处理器的功能—提供所有现成的资源。 硬件RAID通常是一张PCI卡,你会看到在这卡上会有处理器及内存。因为这卡上的处理器已经可以提供一切RAID所需要的资源,所以不会占用系统资源,从而令系统的表现可以大大提升。

硬件RAID的应用之一是可以连接内置硬盘、热插拔背板或外置存储设备。无论连接何种硬盘,控制权都是在RAID卡上,亦即是由系统所操控。 在系统里,硬件RAID PCI卡通常都需要安驱动程序,否则系统会拒绝支持。 磁盘阵列可以在安装系统之前或之后产生,系统会视之为一个(大型)硬盘,而它具有容错及冗余的功能。磁盘阵列不单只可以加入一个现成的系统,它更可以支持容量扩展,方法也很简单,只需要加入一个新的硬盘并执行一些简单的指令,系统便可以实时利用这新加的容量。

外置式RAID也是属于硬件RAID的一种,区别在于RAID卡不会安装在系统里,而是安装在外置的存储设备内。而这个外置的储存设备则会连接到系统的SCSI卡上。系统没有任何的RAID功能, 因为它只有一张SCSI卡;所有的RAID功能将会移到这个外置存储里。好处是外置的存储往往可以连接更多的硬盘,不会受系统机箱的大小所影响。而一些高级的技术,如双机容错,是需要多个服务器外连到一个外置储存上,以提供容错能力.外置式RAID的应用之一是可以安装任何的操作系统,因此是与操作系统无关的。因为在系统里只存在一张SCSI卡,并不是RAID卡。而对于这个系统及这张SCSI卡来说,这个外置式的RAID只是一个大型硬盘,并不是什么特别的设备,所以这个外置式的RAID可以安装任何的操作系统。唯一的要求就是你用的这张SCSI卡在这个操作系统要安装驱动程序。

RAID按照实现原理的不同分为不同的级别,不同的级别之间工作模式是有区别的。整个的RAID结构是一些磁盘结构,通过对磁盘进行组合达到提高效率,减少错误的目的。为了便于说明,下面示意图中的每个方块代表一个磁盘,竖的叫块或磁盘阵列,横称之为带区。RAID的主要分类包括:RAID 0无差错控制的带区组、RAID 1镜象结构、RAID2带海明码校验、RAID3带奇偶校验码的并行传送、RAID4带奇偶校验码的独立磁盘结构、RAID5分布式奇偶校验的独立磁盘结构、RAID6两种存储的奇偶校验码的磁盘结构、RAID7优化的高速数据传送磁盘结构、RAID10/01高可靠性与高效磁盘结构、RAID 50:被称为分布奇偶位阵列条带。

RAID的主要优点有:

1.RAID的采用为存储系统(或者服务器的内置存储)带来巨大利益,其中提高传输速率和提供容错功能是最大的优点。

2.RAID通过同时使用多个磁盘,提高了传输速率。RAID通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量。在RAID中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID可以达到单个磁盘驱动器几倍、几十倍甚至上百倍的速率。这也是RAID最初想要解决的问题。因为当时CPU的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。RAID最后成功了。

3.通过数据校验,RAID可以提供容错功能。这是使用RAID的第二个原因,因为普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的CRC(循环冗余校验)码的话。RAID容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。在很多RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接相互的镜像备份,从而大大提高了RAID系统的容错度,提高了系统的稳定冗余性。

NFS

NFS简介

网络文件系统(NFS)是文件系统之上的一个网络抽象,允许远程客户端以与本地文件系统类似的方式,来通过网络进行访问。目前它已经发展并演变成 UNIX/Linux系统中最强大最广泛使用的网络文件系统。NFS 允许在多个用户之间共享公共文件系统,并提供数据集中的优势,来最小化所需的存储空间。从 1984 年问世以来持续演变,并已成为分布式文件系统的基础。当前,NFS(通过 pNFS 扩展)通过网络对分布的文件提供可扩展的访问。

NFS 的发展历程   

NFS 是第一个现代网络文件系统(构建于 IP 协议之上)。在 20 世纪 80 年代,它首先作为实验文件系统,由 Sun Microsystems 在内部完成开发。NFS 协议已归档为 Request for Comments(RFC)标准,并演化为大家熟知的 NFSv2。作为一个标准,由于 NFS 与其他客户端和服务器的互操作能力而发展快速。标准持续地演化为 NFSv3,在 RFC 1813 中有定义。这一新的协议比以前的版本具有更好的可扩展性,支持大文件(超过2GB),异步写入,以及将TCP作为传输协议,为文件系统在更广泛的网络中使用铺平了道路。在 2000 年,RFC 3010(由 RFC 3530 修订)将 NFS 带入企业设置。Sun 引入了具有较高安全性,带有状态协议的 NFSv4(NFS 之前的版本都是无状态的)。今天,NFS 是版本 4.1(由 RFC 5661 定义),它增加了对跨越分布式服务器的并行访问的支持(称为 pNFS extension)。

  

NFS 的时间表,包括记录其特性的特定 RFC ,都在图 1 中有展示。

NFS 已经历了近30年的开发。它代表了一个非常稳定的(及可移植)网络文件系统,它可扩展、高性能、并达到企业级质量。由于网络速度的增加和延迟的降低,NFS 一直是通过网络提供文件系统服务具有吸引力的选择。甚至在本地网络设置中,虚拟化驱动存储进入网络,来支持更多的移动虚拟机。NFS 甚至支持最新的计算模型,来优化虚拟的基础设施。

NFS 允许计算的客户 — 服务器模型(见图 2)。服务器实施共享文件系统,以及客户端所连接的存储。客户端实施用户接口来共享文件系统,并加载到本地文件空间当中。
图 2. NFS 的客户端 — 服务器架构

在 Linux中,虚拟文件系统交换(VFS)提供在一个主机上支持多个并发文件系统的方法(比如 CD-ROM 上的 International Organization for Standardization [ISO] 9660,以及本地硬盘上的 ext3fs )。VFS 确定需求倾向于哪个存储,然后使用哪些文件系统来满足需求。由于这一原因,NFS 是与其他文件系统类似的可插拔文件系统。对于 NFS 来说,唯一的区别是输入/输出(I/O)需求无法在本地满足,而是需要跨越网络来完成。

一旦发现了为 NFS 指定的需求,VFS 会将其传递给内核中的 NFS 实例。 NFS 解释 I/O 请求并将其翻译为 NFS 程序(OPEN、ACCESS、CREATE、READ、CLOSE、REMOVE 等等)。这些程序,归档在特定 NFS RFC 中,指定了 NFS 协议中的行为。一旦从 I/O 请求中选择了程序,它会在远程程序调用(RPC)层中执行。正如其名称所暗示的,RPC 提供了在系统间执行程序调用的方法。它将封送 NFS 请求,并伴有参数,管理将它们发送到合适的远程对等级,然后管理并追踪响应,提供给合适的请求者。

进一步来说,RPC 包括重要的互操作层,称为外部数据表示(XDR),它确保当涉及到数据类型时,所有 NFS 参与者使用相同的语言。当给定架构执行请求时,数据类型表示可能不同于满足需求的目标主机上的数据类型。XDR 负责将类型转换为公共表示(XDR),便于所有架构能够与共享文件系统互操作。XDR 指定类型字节格式(比如 float)和类型的字节排序(比如修复可变长数组)。虽然 XDR 以其在 NFS 中的使用而闻名,当您在公共应用程序设置中处理多个架构时,它是一个有用的规范。

一旦 XDR 将数据转换为公共表示,需求就通过网络传输给出传输层协议。早期 NFS 采用 Universal Datagram Protocol(UDP),但是,今天 TCP 因为其优越的可靠性而更加通用。在服务器端,NFS 以相似的风格运行。需求到达网络协议栈,通过 RPC/XDR(将数据类型转换为服务器架构) 然后到达 NFS 服务器。NFS 服务器负责满足需求。需求向上提交给 NFS 守护进程,它为需求标示出目标文件系统树,并且 VFS 再次用于在本地存储中获取文件系统。整个流程在图 3 中有展示。注意,服务器中的本地文件系统是典型的 Linux 文件系统(比如 ext4fs)。因此,NFS 不是传统意义上的文件系统,而是访问远程文件系统的协议。
图 3. 客户端和服务器 NFS 堆栈

对于高延迟网络,NFSv4 实现称为 compound procedure 的程序。这一程序从本质上允许在单个请求中嵌入多个 RPC 调用,来最小化通过网络请求的 transfer tax。它还为响应实现回调模式。

NFS 协议

从客户端的角度来说,NFS 中的第一个操作称为 mount。 Mount 代表将远程文件系统加载到本地文件系统空间中。该流程以对 mount(Linux 系统调用)的调用开始,它通过 VFS 路由到 NFS 组件。确认了加载端口号之后(通过 get_port 请求对远程服务器 RPC 调用),客户端执行 RPC mount 请求。这一请求发生在客户端和负责 mount 协议(rpc.mountd)的特定守护进程之间。这一守护进程基于服务器当前导出文件系统来检查客户端请求;如果所请求的文件系统存在,并且客户端已经访问了,一个 RPC mount 响应为文件系统建立了文件句柄。客户端这边存储具有本地加载点的远程加载信息,并建立执行 I/O 请求的能力。这一协议表示一个潜在的安全问题;因此,NFSv4 用内部 RPC 调用替换这一辅助 mount 协议,来管理加载点。

要读取一个文件,文件必须首先被打开。在 RPC 内没有 OPEN 程序;反之,客户端仅检查目录和文件是否存在于所加载的文件系统中。客户端以对目录的 GETATTR RPC 请求开始,其结果是一个具有目录属性或者目录不存在指示的响应。接下来,客户端发出 LOOKUP RPC 请求来查看所请求的文件是否存在。如果是,会为所请求的文件发出 GETATTR RPC 请求,为文件返回属性。基于以上成功的 GETATTRs 和 LOOKUPs,客户端创建文件句柄,为用户的未来需求而提供的。

利用在远程文件系统中指定的文件,客户端能够触发 READ RPC 请求。READ 包含文件句柄、状态、偏移、和读取计数。客户端采用状态来确定操作是否可执行(那就是,文件是否被锁定)。偏移指出是否开始读取,而计数指出所读取字节的数量。服务器可能返回或不返回所请求字节的数量,但是会指出在 READ RPC 回复中所返回(随着数据)字节的数量。

NFS 中的变革

在 NFSv4 之前,存在一定数量的辅助协议用于加载、锁定、和文件管理中的其他元素。NFSv4 将这一流程简化为一个协议,并将对 UDP 协议的支持作为传输协议移除。NFSv4 还集成支持 UNIX 和基于 Windows的文件访问语义,将本地集成 NFS 扩展到其他操作系统中。

NFSv4.1 介绍针对更高扩展性和更高性能的并行 NFS(pNFS)的概念。 要支持更高的可扩展性,NFSv4.1 具有脚本,与集群化文件系统风格类似的拆分数据/元数据架构。如 图 4 所展示的,pNFS 将生态系统拆分为三个部分:客户端、服务器和存储。您可看到存在两个路径:一个用于数据,另一个用于控制。pNFS 将数据布局与数据本身拆分,允许双路径架构。当客户想要访问文件时,服务器以布局响应。布局描述了文件到存储设备的映射。当客户端具有布局时,它能够直接访问存储,而不必通过服务器(这实现了更大的灵活性和更优的性能)。当客户端完成文件操作时,它会提交数据(变更)和布局。如果需要,服务器能够请求从客户端返回布局。

NFS 实施多个新协议操作来支持这一行为。LayoutGet 和 LayoutReturn 分别从服务器获取发布和布局,而 LayoutCommit 将来自客户端的数据提交到存储库,以便于其他用户使用。服务器采用 LayoutRecall 从客户端回调布局。布局跨多个存储设备展开,来支持并行访问和更高的性能。图 4. NFSv4.1 的 pNFS 架构

数据和元数据都存储在存储区域中。客户端可能执行直接 I/O ,给出布局的回执,而 NFSv4.1 服务器处理元数据管理和存储。虽然这一行为不一定是新的,pNFS 增加功能来支持对存储的多访问方法。当前,pNFS 支持采用基于块的协议(光纤通道),基于对象的协议,和 NFS 本身(甚至以非 pNFS 形式)。

通过 2010 年 9 月发布的对 NFSv2 的请求,继续开展 NFS 工作。其中以新的提升定位了虚拟环境中存储的变化。例如,数据复制与在虚拟机环境中非常类似(很多操作系统读取/写入和缓存相同的数据)。由于这一原因,存储系统从整体上理解复制发生在哪里是很可取的。这将在客户端保留缓存空间,并在存储端保存容量。NFSv4.2 建议用共享块来处理这一问题。因为存储系统已经开始在后端集成处理功能,所以服务器端复制被引入,当服务器可以高效地在存储后端自己解决数据复制时,就能减轻内部存储网络的负荷。其他创新出现了,包括针对 flash 存储的子文件缓存,以及针对 I/O 的客户端提示 (潜在地采用 mapadvise 作为路径)。