将数据分配给网络中的存储的方法和系统的制作方法

文档序号:8398178阅读:228来源:国知局
将数据分配给网络中的存储的方法和系统的制作方法
【技术领域】
[0001 ] 本发明一般涉及计算技术,尤其涉及网络中的数据存储。
【背景技术】
[0002]数据中心可以被配置处理大量或多卷数据。例如,可以将服务器与可以存储作为处理的一部分所需的数据的节点或队列耦合。存储在节点中的数据可以是“热”或“超热”数据一可以是服务器频繁和在短访问时间内需要的数据,以便让服务器执行分配给它的所有任务和功能。就这一点而言,该节点可以用作服务器数据的高速缓存。相反,可以将服务器不频繁需要或不迅速需要的数据(所谓的“冷”数据)存储在远离服务器的地点上。
[0003]在处理数据的背景下,与数据的可用性有关的问题可能成为网络性能的瓶颈。例如,在服务器接收的请求或任务的速率高的情况下,不降低性能地为来自节点/高速缓存的那些请求服务是不切实际的。

【发明内容】

[0004]实施例包括将数据分配给网络中的存储的方法、系统、和计算机程序产品。识别网络中的服务器访问的数据项。控制器根据如下的至少一种分类所识别数据项:服务器对数据项的访问请求的频率和与一旦服务器请求数据项就向服务器提供数据项有关的访问时间。根据数据项的分类为存储数据项选择网络中的交换机的存储器。该控制器使数据项存储在交换机的存储器中,服务器根据请求从其访问数据项。
【附图说明】
[0005]作为本说明书的结论,在权利要求书中具体指出并明确要求保护被当作实施例的主题。该实施例的前述和其它特征和优点可从结合附图所作的如下详细描述中明显看出,在附图中:
[0006]图1描绘了依照实施例的计算系统环境;
[0007]图2描绘了依照实施例处理工作负载的过程流;以及
[0008]图3描绘了依照实施例的计算系统环境。
【具体实施方式】
[0009]依照一个或多个实施例,描述将频繁访问数据存储在网络交换机(例如,层2或3网络交换机)的存储层中的系统、装置和方法。控制器与多层存储访问系统协调管理和控制网络交换机中的存储层。该控制器识别频繁访问数据,选择存储数据的交换机,并与网络的其它控制器协调。存储在网络交换机中的数据从是可用数据的唯一实例的意义上来讲是独特的。换句话说,存储在网络交换机中的数据不是简单地用作存储在另一个地点上的数据的备份或副本。
[0010]现在转到图1,其中一般性地示出了计算系统100。可以将系统100与像数据网络102、管理网络104等那样的一种或多种网络相联系。可以使网络相互耦合。
[0011]系统100可以包括许多不同类型的计算设备。为了使例示简单和易于说明起见,系统100被显示成包括许多服务器114和许多交换机122。每个服务器114可以与一个或多个节点128相联系或耦合。节点128可以起为服务器114存储数据的高速缓存的作用。
[0012]在一些实施例中,可以使交换机122相互耦合。例如,数据可以横穿作为多跳路径的一部分的一台或多台交换机122、和潜在地,一个或多个服务器114。交换机122可以是可以支持一种或多种可编程功能或配置的软件定义网络(SDN)使能交换机。
[0013]交换机122可以包括存储器136。存储器136可以用于存储数据。在一些情况下,如下进一步所述,可以将与服务器114相联系的数据存储在存储器136中,潜在地与将这样的数据存储到与服务器114相联系的节点128中完全不同。
[0014]系统100可以包括像硬盘驱动器那样的另外存储设备。在一些实施例中,硬盘驱动器156可以用于存储与服务器114有关的“冷”数据。节点128可以用于存储与服务器114有关的“热”数据。交换机122的存储器136可以用于存储与服务器114有关的“超热”数据。
[0015]术语“冷”、“热”、和“超热”与温度评定尺度有关,仅仅代表根据访问频率和访问数据所需的时间分类数据的一种技术。可以使用任何其它类型的分类技术。例如,可以使用这样的数字评定尺度,其中,例如,“10”代表需要频繁访问和在短访问时间内的数据,以及“ I ”代表不频繁访问和访问时间可以相对较长的数据。
[0016]管理网络104可以包括控制器164。控制器164可以对应于服务器(例如,服务器114),或处在服务器(例如,服务器114)上。控制器164可以经由一条或多条链路(例如,安全通信链路)与交换机122耦合。控制器164可以负责依照所选分类技术分类给定一个或一项数据。就这一点而言,控制器164可以管理数据在可用在系统中的存储(例如,节点128、存储器136、和硬盘驱动器156)之间的分配。
[0017]虽然在图1中示出了单个控制器164,但在一些实施例中,可以使用多个控制器164。控制器164可以相互通信,以便共享管理网络102的任务/负担。
[0018]转到图2,所示的是方法200的流程图。方法200可以由像本文所述的那些那样的一个或多个系统、设备或组件执行。方法200可以用于将服务器所需的数据分配给一个或多个存储设备。
[0019]在方框202中,可以识别一个或一项数据。例如,可以根据一个或多个标签识别数据。每个标签可以是唯一的,使得在给定网络或系统中可以将第一项数据与其它数据项区分开。
[0020]在方框204中,可以将方框202的数据项分类成一个或多个类别。该分类可以基于如何频繁(或不频繁)需要数据项。该分类可以基于一旦服务器请求数据项,需要数据项可如何迅速(或缓慢)地被服务器获得。
[0021]在方框206中,可以选择存储数据项的存储设备。存储设备的选择可以基于方框204的分类。
[0022]在方框208中,可以将数据项存储到在方框206中选择的存储设备中。
[0023]方法200是例示性的。在一些实施例中,一个或多个方框或其一部分可以是可选的。在一些实施例中,可以包括未不出的另外方框或操作。在一些实施例中,这些方框可以按与图2所示不同的次序或顺序执行。
[0024]可以对给定数据项不止一次地执行方法200。例如,可以周期性地执行方法200,以计及系统行为随时间的变化。因此,可以在第一时刻将分类成,例如,“超热”的数据项存储在第一存储设备中,然后可以在第二时刻将其(重新)分类成“热”的。数据项的重新分类可以使数据项在第二时刻存储在不同存储设备(例如,第二存储设备)中;在那一点上可能释放与该数据项相联系的第一存储设备的存储单元,这可以使该存储单元被盖写。
[0025]参照图3,所示的是示范性计算系统300。系统300被显示成包括存储器302。存储器302可以存储可执行指令。可执行指令可以像结合一种或多种应用、进程、例程、方法等那样,以任何方式和在任何抽象水平上存储或组织。作为一个例子,在图3中将指令的至少一部分显示成与第一程序304a和第二程序304b相联系。
[0026]存储在存储器302中的指令可以由像处理器306那样的一个或多个处理器执行。处理器306可以与一个或多个输入/输出(I/O)设备308耦合。在一些实施例中,I/O设备308可以包括键盘或小键盘、触摸屏或触摸面板、显示屏、麦克风、扬声器、鼠标、按钮、遥控器、操纵杆、打印机等的一种或多种。I/O设备308可以被配置成提供使用户可以与系统300交互的界面。
[0027]处理器306可以包括一个或多个硬盘驱动器310。硬盘驱动器310可以用于存储数据。
[0028]系统300是例示性的。在一些实施例中,一个或多个实体可以是可选的。在一些实施例中,可以包括未示出的另外实体。例如,在一些实施例中,系统300可以与一种或多种网络相联系。在一些实施例中,这些实体可以以不同于图3所示的方式安排或组织。在一些实施例中,系统300的至少一部分可以与像控制器或服务器那样的计算设备相联系。
[0029]本公开的各个方面可以结合一种或多种环境来应用。例如,本公开的各个方面可以结合NoSQL系统和数据库来应用。NoSQL系统可以称为“不只SQL”,以强调它们可以允许使用SQL类查询语言。
[0030]技术效果和好处包括通过为频繁访问或
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1