CN104969197A - 数据集合复用度改变设备、服务器和数据集合复用度改变方法 - Google Patents

数据集合复用度改变设备、服务器和数据集合复用度改变方法 Download PDF

Info

Publication number
CN104969197A
CN104969197A CN201480007396.0A CN201480007396A CN104969197A CN 104969197 A CN104969197 A CN 104969197A CN 201480007396 A CN201480007396 A CN 201480007396A CN 104969197 A CN104969197 A CN 104969197A
Authority
CN
China
Prior art keywords
data acquisition
reusing degree
information
priority level
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201480007396.0A
Other languages
English (en)
Inventor
渡边岳大
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN104969197A publication Critical patent/CN104969197A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/783Distributed allocation of resources, e.g. bandwidth brokers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

为了在开始工作之后尽可能增加对将对其复用度进行管理的数据集合的存取的效率,此数据集合复用度改变设备可以改变数据集合的数目(复用度)。此数据集合复用度改变设备包含:优先级计算单元,其基于包括与在由多个节点执行的并行处理中参考的数据集合的利用相关的信息的数据集合利用相关信息计算指示数据集合将被存储在其中的所述多个节点的顺序的优先级信息;以及复用度管理单元,其基于优先级信息和指示将数据集合保持在存储区中的特定节点的数据集合部署信息执行用于改变其中的至少一个或多个以分布式方式保持在所述多个节点中的数据集合的数目的复用度改变处理。

Description

数据集合复用度改变设备、服务器和数据集合复用度改变方法
技术领域
本发明涉及例如在使用信息处理设备(计算机)的分布式并行处理系统中的数据管理技术。更具体地说,本发明涉及数据集合的复用管理中的复用度(multiplicity)改变技术。
背景技术
批处理是用于通过使用诸如服务器的信息处理设备在预定定时开始处理并且对给定的输入数据重复执行相同的处理从而获得处理结果的技术。近年来,在批处理中,处理对象数据量增加,并且需要减少处理时间。使用通过使用多个服务器(节点)实现的分布式并行处理的技术被广泛地用作用于提高批处理的速度的技术。在下文中,将参考图2和图4来对这样的分布式并行批处理系统的示例进行说明。
图2是示出包括作为现有技术的分布式并行批处理系统的通信环境的示例的配置图。图4是示出作为现有技术的分布式并行批处理系统中的分布式数据存储中的数据布置的示例的图。图2和图4是在根据本发明的第二示例性实施例的说明中使用的附图,但是在该情况下,将使用图2和图4来对作为现有技术的一般分布式并行批处理系统的配置和操作进行说明。
如图2中所示,分布式并行批处理系统1包括三个节点20至22、分布式并行批处理服务器10、主数据服务器100、客户端500和连接它们的通信网络(在下文中简称为“网络”)1000。
三个节点20至22可以以并行方式(也可以被表达为“同时方式”,这也适用于下面的说明)在每个节点中执行由分布式并行批处理服务器10分割的批处理。如图4中所示,节点20至22中的每一个包括存储器40至42和磁盘50至52。
分布式并行批处理服务器10通过控制三个节点20至22来执行这样的批处理。
客户端500请求分布式并行批处理服务器10来执行批处理。
主数据服务器100向分布式并行批处理服务器10提供主数据集合120,主数据集合120包括输入数据集合和参考数据集合,输入数据集合包括作为批处理中的处理对象的多个输入数据,参考数据集合包括在处理期间参考的数据组。在数据库110中预先设置主数据集合120。
分布式并行批处理服务器10、节点20至22、主数据服务器100和客户端500是通过程序控制进行操作的一般计算机。
在这种情况下,将对该分布式并行批处理系统中的前提(或这也可以被称为假设)进行说明。
首先,批处理是指连续执行“工作”,工作中的每一个是最小处理单元。然而,为了简化说明,在下面的说明中批处理被认为包括单个工作。
随后,即使在工作处理完成之后,也在节点20和22的磁盘50至52和存储器40至42中按原样保持诸如先前由节点20至22执行的工作所使用的输入数据集合和参考数据集合的文件,直到需要删除该文件。如果有必要,则可以在后续工作的执行中重新使用这些数据集合组。这是因为,在分布式并行批处理系统中,可以连续执行使用类似数据集合的多个工作。这样的多个工作的示例包括商品的订单接收处理、对订单的订单签发处理、订购商品的装运处理等。
作为最后的前提,描述应用程序(其为描述工作的处理内容的计算机程序)的文件被预先存储在分布式并行批处理服务器10的磁盘(未示出)中。
随后,将对根据现有技术的分布式并行批处理系统进行说明。
在图2中,首先,客户端500请求分布式并行批处理服务器10执行工作。在工作的执行请求中,客户端500指定作为工作的处理程序的应用程序名称以及执行工作所需要的各种定义信息。各种定义信息包括指示工作的处理对象的数据的输入数据集合名称和指示在处理期间参考的数据组的参考数据集合名称。例如,输入数据集合是任何给定商店的交易(订单等)数据的聚合。例如,参考数据集合是诸如包括关于每个商品的信息的数据或定义一周中的每一天的每个商品的折扣率的数据的聚合。
随后,已经接收到工作的执行请求的分布式并行批处理服务器10将在工作的执行请求中所指定的输入数据集合分割成与节点20至22的数目一样多的三个输入数据集合A至C。然后,分布式并行批处理服务器10将所分割的输入数据集合A至C分别指派给三个节点20至22,作为各个节点的处理对象。通常,当分割输入数据集合时,分布式并行批处理服务器10分割输入数据集合,使得各个分割的输入数据集合A到C的处理时间变得尽可能相等。分布式并行批处理服务器10还基于所读取的数据集合的布置来将所分割的输入数据集合A到C指派给节点20至22的磁盘50至52和存储器40至42(图4)。在这种情况下,分布式并行批处理服务器10仅选择保持输入数据集合A至C的处理所需的数据集合的节点,并且指派所分割的输入数据集合A至C。
随后,分布式并行批处理服务器10从分布式并行批处理服务器10的磁盘获得与工作的执行请求中所指定的应用程序名称相关联的文件,并且此后,通过三个节点20至22开始包括在文件中的程序。在节点20至22中执行描述工作的处理的程序的处理实体在下文中将被称为“任务”。更具体地,由节点20至22的任务30至32分别执行的处理(图4)仅在要处理的输入数据集合的内容上有所不同,并且使用相同的处理(程序)。
随后,当节点20至22的磁盘50至52或存储器40至42中不存在工作处理所需要的数据集合时,每个节点执行以下处理。更具体地,每个节点经由主数据服务器100将丢失的数据集合从主数据集合120复制到节点20至22的磁盘50至52或存储器40至42。在所需要的数据集合的复制完成之后,各个任务30至32在节点20至22中开始处理。
如上所述,分布式并行批处理服务器10将输入数据集合分割成三个部分,并且此后,所分割的输入数据集合A至C由三个节点20至22的任务以并行方式进行处理,并且因此,可以减少整个工作的处理时间。
通常,分布式并行批处理系统1进一步执行称为“分布式数据存储”的管理,以合并节点20至22的存储设备,使得提高节点20至22的任务30至32对各种数据集合的存取效率。这里所引用的“数据存储”是指用于保持数据的目的地(存储器或磁盘)的通用术语,可以响应于分别来自节点20至22的任务30至32的请求和来自分布式并行批处理服务器10的请求,来对该数据执行诸如数据文件的产生、读取、更新和删除的操作。
如图4中所示,在各个节点20至22中,分布式数据存储2包括存储器40至42、磁盘50至52、输入和输出管理单元60至62以及用于管理整个分布式数据存储2的管理单元(未示出)。通常,用于管理整个分布式数据存储2的管理单元被设置在分布式并行批处理服务器10中。
在分布式数据存储2中,包括相对高速度的存储器40至42的部分被称为存储器上类型数据存储3。另一方面,在分布式数据存储2中,包括相对低速度的磁盘50至52的部分被称为磁盘类型数据存储4。为了简化说明,根据本示例的分布式数据存储2仅包括在节点20至22中本地设置的存储设备,但是还可以包括由可以经由网络1000使用的远程计算机所执行的文件系统和数据库。
在节点20至22中操作的任务30至32经由设置在节点20至22中的输入和输出管理单元60至62来存取存储在分布式数据存储2中的数据。输入和输出管理单元60至62提供下述功能:该功能允许任务30至32透明地使用分布式数据存储2中的数据,而不论数据的存储目的地是哪个节点的哪个存储设备(磁盘或存储器)。
例如,假设节点20中的任务30请求读取在节点20的存储器40和磁盘50中都不存在的数据集合X2。节点20的输入和输出管理单元60基于请求经由节点21的输入和输出管理单元61或节点22的输入和输出管理单元62来获得存储在节点21的存储器41或节点22的存储器42中的数据集合X2,并且此后,向任务30提供数据集合X2的数据。更具体地,任务30根据与在将数据集合X2存储在所讨论的节点20中的情况下使用的方法相同的存取方法,来存取节点21或节点22上的数据集合X2。此外,利用该功能,各个节点20至22不需要包括用于处理的所有数据集合。
通常,任务30存取数据集合的速度在数据集合存在于其他节点21至22的存储器41至42中的情况下比在数据集合存在于所讨论的节点20的磁盘50中的情况下快得多。对分布式数据存储2中的各个保存位置的数据集合的存取速度取决于系统配置,但是通常具有使用不等号的以下关系。
(所讨论的节点的存储器)>(另一节点的存储器上类型数据存储)>>(所讨论的节点的磁盘)>(另一节点的磁盘类型数据存储)
更具体地,对所讨论的节点的存储器的存取速度是最高速度,并且对另一节点的磁盘类型数据存储的存取速度是最低速度。
为了在连续执行多个工作时提高存取处理所需要的数据集合组的存取效率,由于上面说明的分布式数据存储2的性质而导致任务尽可能减少磁盘存取是有效的。更具体地,为了提高存取效率,期望将处理所需要的数据集合中的尽可能多的数据集合存储在存储器上类型数据存储3中。
然而,近年来,在处理中处理的数据量正在增加。为此,包括由半导体存储器设备等实现的存储器40至42的存储器上类型数据存储3不必存储要处理的所有数据集合。另一方面,通常,由硬盘设备等实现的节点的磁盘50至52具有比存储器上类型数据存储3大10到10000倍的存储容量,并且因此,节点的磁盘50至52更有可能能够存储要处理的所有数据。因此,通常,存储器上类型数据存储3始终存储多个工作更有可能常用的一些数据集合。然后,当切换到后续工作时,分布式并行批处理服务器10根据此时存储器上类型数据存储3中的数据集合的布置情况来向节点20至22分配处理。
此外,在存储器上类型数据存储3中,在多个节点20至22的存储器40至42中保持始终存储的数据集合的副本。在该情况下,将相同内容的数据集合存储在多个节点20至22中主要有两个目的。
第一个目的是为当例如文件损坏或节点故障的问题发生时无法存取存储在特定节点的存储器中的数据集合的情况做准备,并且提高数据维护的可靠性。更具体地,当上述这样的问题发生时,任务不存取存储在磁盘中的(替代)数据集合,而替代地,允许任务存取存在于另一节点的存储器中的另一数据集合。因此,即使问题发生,任务也不需要存取比对存储器上类型数据存储3的存取的速度低极多的磁盘。因此,当任务存取处理对象数据集合时,防止存取性能极度降低。
第二目的是,当多个任务需要相同的数据时,每个任务存取以分布式方式布置在多个节点的存储器中的多个数据集合,使得防止由于存取集中而导致的性能降低。换言之,这防止每个任务存取单个数据集合,从而防止存取集中。
在以下的说明中,用于如上所述以分布式方式将相同内容的数据集合的副本保持到包括在存储器上类型分布式数据存储3中的多个节点20至22的存储器40至42的管理方法将被称为“复用度管理”。在以下的说明中,作为复用度管理的对象的数据集合将被称为“复用度管理对象数据集合”。另外,在以下的说明中,在存储器上类型分布式数据存储3中提供的数据集合的副本的数目由指标“复用度M”来表示。例如,当存储器上类型分布式数据存储3中存在同一数据集合的两个副本时,复用度M是2。
图4图示了在上述分布式并行批处理服务器10使用节点20至22上的任务30至32开始并行处理时的时间点处分布式数据存储2中的数据集合的布置状态的示例。在图4中,两个数据集合X1和X2是复用度管理对象数据集合。复用度M是2。在本示例中,将相同的复用度M的值应用于所有的复用度管理对象数据集合,以简化复用度管理。
当参考图4时,总共两个的数据集合X1始终被保持在节点20的存储器40和节点21的存储器41中。总共两个的数据集合X2始终被存储在节点21的存储器41和节点22的存储器42中。
数据集合Y1至Y4,即不是复用度管理对象(在下文中称为“非管理对象”)的数据集合,被分别存储在节点20至22的磁盘50至52中。根据由分布式并行批处理服务器10定义的分配来布置分割成三个部分,即输入数据集合A至C,的输入数据集合。更具体地,输入数据集合A、输入数据集合B和输入数据集合C分别被存储在磁盘50、磁盘51和磁盘52中。在本示例中,输入数据集合A至C是非管理对象。
操作节点20至22中的每一个的操作系统(OS)控制对存储器的非管理对象的数据集合的读取。更具体地,响应于来自任务30至32的存取请求,OS根据需要将非管理对象的数据集合读取到存储器上类型数据存储3中的空闲存储区域(更具体地,没有被占用以存储复用度管理对象数据集合的存储区域)中。
应该注意,通过OS对存储器的公知的控制方法包括LRU(最近最少使用)算法。基本上,在LRU中,在当新的数据被读取到小容量的高速存储设备中时空闲容量不足的情况下,扩展空闲容量。在该情况下,在LRU中,将高速存储设备中没有被使用最长时间的数据收回(移动)到大容量低速存储设备,使得空闲容量被扩展。在本例中,“小容量高速存储设备”和“大容量低速存储设备”对应于“存储器上类型数据存储3”和“磁盘类型数据存储4”。因此,当存在任务的处理所需要的非管理对象的许多数据集合时,LRU非常频繁执行到磁盘的数据收回,并且结果,任务的处理性能可能会降低。
在当执行新的工作时上述问题可能发生的情况下,分布式并行批处理服务器10可以降低(减小、削减)复用度M,由此进行调整以增加存储器上类型数据存储3的空闲区域。相反,当分布式并行批处理服务器10预测存储器上类型数据存储3的空闲区域中有足够的空间时,与当前值相比,分布式并行批处理服务器10可以提高(增加)复用度M,由此执行调整以增加数据维护的可靠性。
在正常情况下,在执行每个节点上的任务的处理之前,分布式并行批处理服务器10在准备阶段如上所述执行复用度M的改变,并且一旦在开始任务的处理之后,分布式并行批处理服务器10不执行复用度M的改变。
在本申请之前存在的现有技术的示例包括以下PTL 1。
更具体地,PTL 1公开了一种用于针对要复制的文件自动确定从每一个都具有不同的优点和缺点的若干文件复制方法当中选择的适用于每个文件的各种特性(文件的存储位置、文件类型等)的复制方法的机制。
在PTL 2中,在分布式系统环境中,批工作查询服务器基于请求对象的批工作的资源使用特性(各种资源的使用率)和以定期间隔从每个工作执行服务器获得的资源负载情况来确定被请求以执行批工作的处理的服务器。
在PTL 3中,当用于管理数据的布置和工作的执行的计算器执行工作时,计算器根据布置在执行工作的每个计算器中的分布式数据的记录的数目的比率来确定到计算器的复制的布置。然后,当任何给定的计算器中的工作的执行中存在故障时,执行管理的计算器请求具有布置在故障发生的计算器中的分布式数据的副本的计算器再次请求工作的执行。
引文列表
专利文献
[PTL 1]日本国家阶段专利申请公开No.2009-526312
[PTL 2]日本专利申请公开No.H10-334057
[PTL 3]日本专利申请公开No.2012-073975
发明内容
技术问题
然而,在分布式并行批处理系统的操作中,改变复用度管理对象数据集合的复用度M的请求可以在工作的执行中间发生。
例如,在开始工作之后,处理速度降低,并且因此,可以预期工作在用户预期的预期结束时间没有完成。通常,如上所述,分布式并行批处理系统中的批处理(工作)被操作为在任何预定的定时开始处理。更具体地,预期工作在预期时间之前完成,使得可以按期开始后续处理。当工作被延迟时,原因可能是任务的处理所需要的非管理对象的数据集合的大小和数目超过先前预期的原因。在该情况下,在发现延迟之后执行的对策中,增加存储器上数据存储3的空闲区域是有效的。更具体地,分布式并行批处理系统在工作的中间减小复用度管理对象数据集合的复用度M。因此,如果后续工作的处理速度可以增加,则工作可以早于初始预期而完成。
另一方面,在开始工作之后,可以预期工作的处理比预期早很多完成。在该情况下,在确定工作将更早地完成之后,增加复用度管理对象数据集合的复用度M,以提高数据维护的可靠性,并且在该情况下,后续工作的执行变得更加可靠。
在其他情况下,不论工作本身的进度如何,用户可能突然想要减少存储器的使用量,以使正在执行工作的节点执行另一处理。
如上所述,由于各种原因,改变复用度M的请求可以在开始工作之后发生。
然而,当用户在处理的中间改变复用度时,难以适当地选择尽可能多地抑制存取复用度管理对象数据集合的存取效率的降低的数据布置。
例如,在图4中,存在用于将复用度M从2减小为1的四种方法。更具体地,第一种方法是用于留下节点20的数据集合X1和节点21的数据集合X2的方法。第二种方法是用于留下节点20的数据集合1和节点22的数据集合X2的方法。第三种方法是用于留下节点21的数据集合X1和节点23的数据集合X2的方法。第四种方法是用于留下节点21的数据集合X1和X2的方法。
在该情况下,例如,假设在对数据集合X1执行存取最大次数的任务正在其上进行操作的节点中,用户删除在所讨论的节点的存储器中的数据集合X1。结果,当任务随后参考数据集合X1时,任务必须在复用度M被改变之后存取另一节点中的存储器,即使任务此前正在存取所讨论的节点的存储器。更具体地,因为复用度M被改变,任务的处理性能大大降低,并且结果,整个工作到预期结束时间之前可能没有完成。如上所述,在当前情况下,存在一个问题,即用户无法确定上述四个复用度减小方法中的哪一个是能够尽可能多地避免存取复用度管理对象数据集合的存取效率降低的方法。
上述PTL 1-3没有提到用于解决上述问题的配置和方法。
本发明要提供一种能够解决上述问题的数据集合复用度改变设备和方法。更具体地,本发明的主要目的在于提供一种数据集合复用度改变设备和方法,该数据集合复用度改变设备和方法能够改变复用度管理对象数据集合的布置,以在复用度M在工作的处理期间被改变时尽可能多地避免存取效率的降低。
对问题的解决方案
为了实现上述目的,作为本发明的一个方面的数据集合复用度改变设备包括,
优先度计算装置,用于基于包括与在由多个节点执行的并行处理中所参考的数据集合的使用相关的信息的数据集合使用相关信息,来计算表示数据集合要被存储到其中的所述多个节点的顺序的优先度信息;以及
复用度管理装置,用于执行复用度改变处理以通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在多个节点中的至少一个或多个数据集合的数目,来改变数据集合的复用度。
作为本发明的一个方面的用于实现该目的的服务器包括,
包括上述配置的数据集合复用度改变设备,
其中,控制由多个节点执行的工作的并行处理。
作为本发明的一个方面的用于实现该目的的数据集合复用度改变方法,
基于包括与在由多个节点执行的并行处理中所参考的数据集合的使用相关的信息的数据集合使用相关信息,使用信息处理设备来计算表示数据集合要被存储到其中的多个节点的顺序的优先度信息,并且
执行复用度改变处理以通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息,改变以分布式方式保持在多个节点中的至少一个或多个数据集合的数目,使用信息处理设备改变数据集合的复用度,来改变数据集合的复用度。
此外,该目的还通过存储介质来实现,该存储器用于存储用于控制作为数据集合复用度改变设备进行操作的计算机的计算机程序,其中计算机程序使得计算机执行
优先度计算处理,用于基于包括与在由多个节点执行的并行处理中所参考的数据集合的使用相关的信息的数据集合使用相关信息,来计算表示数据集合要被存储到其中的多个节点的顺序的优先度信息;以及
执行复用度改变处理,用于通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在多个节点中的至少一个或多个数据集合的数目来改变数据集合的复用度。
本发明的有利效果
根据本发明,在开始工作之后,可以改变数据集合的数目(复用度M),使得存取复用度管理对象数据集合的存取效率变得尽可能的高。
附图说明
图1是示出包括根据本发明的第一示例性实施例的数据集合复用度改变设备的分布式并行批处理系统的配置的框图。
图2示出应用于本发明的第二示例性实施例的通信环境,并且是用于说明在分布式并行批处理系统中的通信环境的示例的配置图,该系统是相关技术。
图3是示出其中在包括如图2中所示的配置的通信环境中实现根据第二示例性实施例的分布式并行批处理系统的情况下的配置的框图。
图4示出用于说明本发明的第二示例性实施例的节点中的数据配置的示例,并且是用于说明分布式并行批处理系统中的分布式数据存储中的数据布置的示例的图,该系统是相关技术。
图5是示出根据本发明的第二示例性实施例的工作定义信息16的示例的图。
图6是示出根据本发明的第二示例性实施例的输入数据集合的示例的图。
图7是示出参考数据集合X1的示例的图,参考数据集合X1是本发明的第二示例性实施例中的复用度管理对象。
图8是示出根据本发明的第二示例性实施例不在那里执行复用度管理的参考数据集合Y1的示例的图。
图9是示出由根据本发明的第二示例性实施例的分布式并行批处理系统执行的从工作配备(job deposition)处理到工作执行处理的操作的流程图。
图10是示出根据本发明的第二示例性实施例的应用分析处理的细节的流程图。
图11是示出根据本发明的第二示例性实施例的分布式并行批处理系统中的复用度改变的操作的流程图。
图12是示出指示通过根据本发明的第二示例性实施例的应用分析获得的每个数据集合的存取次数的信息的示例的图。
图13是示出根据本发明的第二示例性实施例的优先度信息18的示例的图。
图14是示出在根据本发明的第二示例性实施例的复用度改变之后分布式数据存储的数据布置的示例的图。
图15是示出可以应用于根据本发明的每个示例性实施例及其修改的分布式并行批处理系统的计算机(信息处理设备)的配置的示例的图。
具体实施方式
随后,将参考附图来详细说明本发明的示例性实施例。
<第一示例性实施例>
图1是示出包括根据本发明的第一示例性实施例的数据集合复用度改变设备的分布式并行处理系统的配置的框图。如图1中所示,分布式并行处理系统包括数据集合复用度改变设备300和多个节点320。
多个节点320可以以并行的方式执行通过将工作分割为任务获得的每个处理。在工作开始之前,每个节点320可以将包括在处理期间由任务参考的数据组的数据集合322的部分或全部存储到存储器(存储区域)321。分布式并行处理系统可以将由指标“复用度M”定义的数据集合322的副本的数目以分布式方式存储到包括在系统中的多个节点320的存储器321(执行复用度管理)。更具体地,数据集合322是复用度管理对象的数据集合。在下面的示例性实施例中,“数据集合的数目”也可以被理解为数据集合的“量(数量)”。从将其视为指标(参数)“复用度M”的角度看,“数据集合的数目”也可以理解为“数值(数值)”。
目前,一般的技术可以用作工作的分割方法和每个节点根据其来以并行方式执行所分割的工作的技术,如在上述的相关技术中说明。因此,将在本示例性实施例中省略关于此点的重复说明。
数据集合复用度改变设备300包括优先度计算单元301和复用度管理单元302。
优先度计算单元301获得数据集合使用相关信息330。然后,优先度计算单元301使用数据集合使用相关信息330来计算表示将根据其来存储数据的节点的指定顺序的优先度信息311,即将数据集合322以适当的顺序存储到节点320的存储器321所需的信息。
在这种情况下,数据集合使用相关信息330是指示与数据集合322也就是复用度管理对象相关的信息的通用术语。数据集合使用相关信息330包括(例如)关于例如对数据集合322执行的参考、副本产生、传送等操作所需的时间的信息或者与性能相关的信息。数据集合使用相关信息330可以包括关于在工作的执行之前从外部给定的设置的信息,或关于可以通过执行与工作处理内容相关的分析获得的处理执行的次数的信息。数据集合使用相关信息330可以包括关于可以在工作执行期间获得的数据传送速度的测量值的信息。
数据集合使用相关信息330的具体示例被认为是每个节点320上的任务操作存取数据集合322的预期存取次数、数据集合322的数据从任何给定节点320传送到另一个节点320的数据传送速度、数据集合322的文件大小等。数据集合使用相关信息330可以是根据工作的性质和操作环境的信息,并且可以包括指示当在节点320上操作的任务参考数据集合322时对存取效率产生的影响的级别(程度)的信息。
优先度计算单元301针对每个数据集合322通过使用如以下表达式(1)中所示的函数f计算每个节点320中的优先度信息311。
f(x1,x2,...,xn)=a1x1+a2x2+...+anxn...(1)
在表达式(1)中,数据集合使用相关信息330的类型的数目被表示为“n”,并且x1,x2,...,xn表示数据集合使用相关信息330的类型的值。变量a1,a2,...,an表示数据集合使用相关信息330的类型的系数。更具体地,用于确定优先度信息311的函数f是各类型的数据集合使用相关信息330的值和针对该类型的系数的乘积的总和。因此,优先度计算单元301可以通过使用一种或多种类型的数据集合使用相关信息330来计算优先度信息311。值得注意的是,存在用于计算优先度311的各种模式的计算表达式,并且计算表达式不限于上述示例。优先度计算单元301可以使用计算表达式的结果的数值作为优先度信息311。因为它是。或者,优先度计算单元301可以用指示数值的大小的顺序的值替换它(即,按照数值的递减顺序使之成为1,2,3...),并且采用其作为优先度信息311。当优先度信息311的数值较大(或较小)时,这表示与其相关联的节点320的优先度较高(或较低)。
复用度管理单元302可以参考包括指示哪个数据集合322存储在每个节点320的存储器321中的信息的数据集合布置信息312。
当复用度管理单元302在工作开始之后从用户等接收到改变数据集合322的副本的数目(复用度M)的请求时,复用度管理单元302使用优先度信息311和数据集合布置信息312来确定被采用作为复用度改变的操作对象的节点320。当存在多个数据集合322作为复用度管理对象时,复用度管理单元302针对每个数据集合322分别执行以下处理。
将更具体地对此进行说明。当接收到减小(降低)复用度M的请求时,首先,复用度管理单元302使用数据集合布置信息312,以找到数据集合322的副本所存在的节点320。随后,复用度管理单元302从数据集合的副本存在于其中的节点320中选择其优先度在优先度信息311中是最低的节点320,并且确定节点320作为用于删除数据集合322的副本的对象。
另一方面,当接收到增加复用度的请求时,首先,复用度管理单元302使用数据集合布置信息312,以找到不保持数据集合322的副本的节点320。随后,复用度管理单元302从不保持数据集合的副本的节点320中选择其优先度在优先度信息311中是最高的节点320,并且确定节点320作为用于添加数据集合322的副本的对象。
最后,复用度管理单元302对被确定为复用度改变的对象的节点320中的存储器321执行复用度改变操作。更具体地,复用度管理单元302执行数据集合的副本从存储器321或向存储器321的减少或添加。
如上所述,根据本示例性实施例,在开始工作之后,数据集合复用度改变设备300可以改变复用度,使得存取数据集合322也就是复用度管理对象的存取效率变得尽可能高。这是因为,复用度管理单元302可以基于由优先度计算单元301基于数据集合使用相关信息330计算的关于每个节点320的优先度信息确定被采用作为复用度改变的操作对象的节点320。
此外,根据本示例性实施例,即使当在开始工作之后从用户等接收到对复用度改变的请求时,也存在数据集合复用度改变设备300可以快速实施复用度改变的优点。这是因为,优先度计算单元301预先计算优先度信息311,并且相应地,当复用度管理单元302接收到改变请求时,复用度管理单元302可以通过使用优先度信息311快速确定被采用作为复用度改变的操作对象的节点320。
<第二示例性实施例>
随后,将参考图2到图14对基于上面说明的第一示例性实施例的第二示例性实施例进行说明。值得注意的是,本示例性实施例也是其中使用包括被说明为相关技术的分布式并行批处理系统1的通信环境(图2、图4)的示例。更具体地,在本示例性实施例中,假设分布式并行批处理系统的一般组成部分,例如与相关技术相同的假设、分布式数据存储的结构和使用分布式并行批处理系统的任务对工作的并行执行,被认为与相关技术相同。
在以下的说明中,将主要参考图2和图4对第二示例性实施例的不同部分进行说明,并且关于被说明为相关技术的分布式并行批处理系统的一般操作的详细说明将不再重复说明。
图2是示出根据本发明的第二示例性实施例的分布式并行批处理系统中的通信环境的示例的配置图。如图2中所示,本示例性实施例包括包括三个节点20至22和分布式并行批处理服务器10的分布式并行批处理系统1、主数据服务器100、客户端500和网络1000。在这种情况下,节点20至22与第一示例性实施例的多个节点320相关联。
本示例性实施例的分布式并行批处理服务器10、节点20至22、主数据服务器100和客户端500中的每一者可以包括与程序控制一起操作的通用计算机(信息处理设备),或可以包括专用硬件电路。后面将参考图15对其中分布式并行批处理服务器10由计算机实现的情况下的硬件配置的示例进行说明。
分布式并行批处理服务器10、节点20至22、主数据服务器100以及客户端500可以经由网络(通信网络)1000诸如因特网和LAN(局域网)彼此进行通信。
客户端500向分布式并行批处理服务器10发送用于请求准备工作的执行的工作配备请求和用于请求工作的执行的开始的工作执行请求。在分布式并行批处理系统1中的工作的处理开始之后,客户端500根据需要向分布式并行批处理服务器10发送用于请求复用度管理对象数据集合的复用度M的增加或减小的复用度改变请求。
将参考图3和图4对第二示例性实施例的分布式并行批处理服务器10、节点20至22和主数据服务器100的配置进行说明。图3是示出其中在包括如图2中所示的配置的通信环境中实现根据第二示例性实施例的分布式并行批处理系统的情况下的不同配置的框图。如图3和图4中所示,三个节点20至22中的每一者包括任务30至32、存储器(存储区域)40至42、磁盘50到52、输入和输出管理单元60至62。
任务30至32是以并行的方式执行描述工作(其为工作执行请求的执行对象)的处理的程序的处理实体。任务30至32的结构和操作与相关技术相同,并且因此,省略对其的详细说明。
存储器40至42由速度比后面说明的磁盘50至52高的半导体存储设备实现。存储器40至42可以存储工作的执行所需的数据集合。
磁盘50至52由速度比存储器40至42低的磁盘设备实现。磁盘50至52可以存储工作的执行所需的数据集合。
输入和输出管理单元60至62可以控制存储在节点的存储器40至42和磁盘50至52中的数据的输入和输出。
存储器40至42、磁盘50至52以及输入和输出管理单元60至62的结构和操作与相关技术的那些相同。更具体地,输入和输出管理单元60至62可以为任务30至32提供可以在不知道数据所存在的位置的情况下使用而不管数据的存储目的地是哪个节点的哪个存储设备的存取功能。如相关技术中说明,对节点20至22的存储设备进行管理,以使其相互结合,从而可以制成如图4中所示的分布式数据存储2。因此,本示例性实施例中的存储器上类型数据存储3包括例如节点20至22的存储器40至42。本示例性实施例中的磁盘类型数据存储4包括例如节点20至22的磁盘40至42。
如图3中所示,在采用如图2中所示的通信环境的本示例性实施例中,分布式并行批处理服务器10包括优先度计算单元11、工作控制单元12、分布式数据存储管理单元13和磁盘14。
值得注意的是,分布式并行批处理服务器10与第一示例性实施例的数据集合复用度改变设备300相关联(基于)。优先度计算单元11与第一示例性实施例的优先度计算单元301相关联(基于)。此外,分布式数据存储管理单元13与第一示例性实施例的复用度管理单元302相关联(基于)。
可以从优先度计算单元11和分布式数据存储管理单元13存取磁盘14。磁盘14可以存储应用程序15、工作定义信息16、数据集合布置信息17和优先度信息18。分布式并行批处理服务器10在客户端500发送工作配备请求之前将应用程序15、工作定义信息16和数据集合布置信息17存储到磁盘14。优先度信息18由优先度计算单元11产生。
应用程序15是描述工作的处理内容的计算机程序。
工作定义信息16是用于描述工作执行所需的各种定义的信息。更具体地,工作定义信息16包括指定作为工作的处理内容的应用程序15的名称、作为工作的处理对象的输入数据集合名称和在工作处理期间参考的参考数据集合名称。
数据集合布置信息17包括指示每个复用度管理对象数据集合的存储器上类型数据存储3中的布置的信息。更具体地,数据集合布置信息17是指示各自存储复用度管理对象数据集合的节点20至22的信息。值得注意的是,数据集合布置信息17可以包括作为非管理对象的数据集合的布置信息。数据集合布置信息17可以包括关于磁盘50至52的数据集合的布置信息。
优先度信息18是将复用度管理对象数据集合以适当的顺序存储到节点20至22的存储器40至42所需的信息,并且是表示将根据其来存储数据的节点的目的地顺序的信息。
首先,优先度计算单元11基于从工作定义信息16、应用程序15和主数据服务器100(后面说明)获得的关于输入数据集合的信息执行分析,从而获得关于每个数据集合的预测存取次数的信息(分析信息)。在本示例性实施例中,由优先度计算单元11计算的分析信息的示例是每个数据集合的预测存取次数,但是由优先度计算单元11计算的分析信息并不限于此。关于每个数据集合的预测存取次数的信息(在下文中称为“预测存取次数信息”)是指示当任务30至32执行工作的处理时存取每个复用度管理对象数据集合的预期次数的信息。
随后,优先度计算单元11通过使用这样获得的每个数据集合的预测存取次数信息计算优先度信息18。将计算出的优先度信息18存储到磁盘14。值得注意的是,每个数据集合的预测存取次数信息和优先度信息18与第一示例性实施例的数据集合使用相关信息330和优先度信息311相关联。
工作控制单元12从客户端500接收各种请求,并且根据所接收的请求控制分布式并行批处理服务器10和节点20至22中的各单元。
分布式数据存储管理单元13集中管理关于保持在分布式数据存储2(图4)中的数据集合的信息。关于数据集合的信息包括例如每个数据集合的名称、指示存储位置的布置信息等。
分布式数据存储管理单元13根据由从客户端500接收到复用度改变请求的工作控制单元12给出的命令改变复用度管理对象数据集合的复用度M。更具体地,分布式数据存储管理单元13基于存储在磁盘14中的优先度信息18和数据集合布置信息17确定被采用作为每个复用度管理数据集合的数据的添加或删除的对象的节点20至22(节点20至22中的一个或多个)。然后,分布式数据存储管理单元13经由每个节点的输入和输出管理单元60执行每个复用度管理对象数据集合在节点20至22的所确定的存储器40至42中的添加或删除。当复用度管理对象数据集合被添加或删除时,分布式数据存储管理单元13还更新数据集合布置信息17。
如图3中所示,主数据服务器100包括数据库110和主数据管理单元130。
数据库110可以存储主数据集合120。
主数据集合120包括包括多个输入数据的输入数据集合,该输入数据集合是工作的处理对象,和包括在处理期间参考的数据组的参考数据集合。
数据库110以及主数据集合120的结构和内容与相关技术的那些相同,因此,详细的解释就不重复说明。
主数据管理单元130可以根据来自分布式并行批处理服务器10和节点20至22的请求提供包括在主数据集合120中的数据集合。主数据管理单元130也可以根据来自分布式并行批处理服务器10和节点20至22的请求提供关于存储在主数据集合120中的数据集合的信息。信息是包括在数据集合中的数据的数目、数据大小等。
随后,几乎如下所述操作包括上述配置的根据本示例性实施例的分布式并行批处理系统。
更具体地,根据本示例性实施例的分布式并行批处理服务器10中的工作控制单元12以对应于由分布式并行批处理服务器10执行的程序的工作的执行程序来执行处理。另一方面,在工作的执行开始之前的步骤中,优先度计算单元11计算优先度信息18,并且将优先度信息18存储到磁盘14。当在工作的处理期间向客户端500请求复用度改变时,分布式数据存储管理单元13经由工作控制单元12接收请求。此外,作为答复所述请求的响应结果,分布式数据存储管理单元13在接收到请求时的时间点基于存储在磁盘14中的优先度信息18以及数据集合布置信息17改变复用度。
接着,将参考图9对由分布式并行批处理服务器10中的优先度计算单元11和工作控制单元12执行的从工作的放置(执行的准备)到工作的执行的处理的细节进行说明。图9是示出由根据本发明的第二示例性实施例的分布式并行批处理系统执行的从工作配备处理到工作执行处理的操作的流程图。
如上所述,根据本示例性实施例的前提事项与相关技术的分布式并行批处理系统的前提事项相同。更具体地,在节点20至22中,在先前执行的工作处理中使用的文件例如输入数据集合、参考数据集合等如其在分布式数据存储2中那样保持。因此,假设在根据本示例性实施例的操作开始时的时间点数据集合布置信息17的内容被认为与在此时保持在分布式数据存储2中的数据集合的布置情况一致。
首先,客户端500向分布式并行批处理服务器10发送对工作的放置请求(步骤S100)。在工作的放置请求中,客户端500指定包括工作的执行所需的各种定义信息的工作定义信息16。图5是根据本发明的第二示例性实施例的工作定义信息16的示例。
如图5中所示,工作定义信息16的记录包括指示定义信息的类型的“键”列和指示定义信息的内容的“值”列。在这种情况下,在“键”列是“工作名称(jobName)”(在下文中表示为键“工作名称”)的记录的“值”列中,指定指示描述工作的处理内容的应用程序15的应用程序名称。根据本示例性实施例的应用程序名称是“工作1(job1)”。在包括键“工作1.输入数据(job1.inputData)”的记录的“值”列中,指定作为工作的处理对象的输入数据集合的名称。根据本示例性实施例的输入数据集合的名称为“host1/port1/db1/input_table1”。在包括键“工作1.参考数据(job1.refData)”的记录的“值”列中,指定在工作处理期间参考的参考数据集合的名称。根据本示例性实施例的参考数据集合的名称使用六个字符串例如“host1/port1/db1/ref_table1-X1”等描述六个参考数据集合的名称。
在下面的说明中,例如,使用最后两个字符将数据集合“host1/port1/db1/ref_table1-X1”表示为“数据集合X1”。以相同的方式描述其他参考数据集合。更具体地,根据本示例性实施例的参考数据集合是六个数据集合,即,数据集合X1、X2、Y1、Y2、Y3和Y4。
工作定义信息16可以包括除上述以外的信息。例如,在本示例性实施例中,在包括键“工作1.数据库存取(job1.databaseAccess)”的记录中,指定工作的处理结果的输出目的地。
在本示例性实施例中,复用度管理对象数据集合是用于处理的数据集合中的两个数据集合(输入数据集合和参考数据集合),更具体地,是数据集合X1和数据集合X2。复用度M是2。更具体地,在下面说明的操作开始时的时间点,数据集合X1和X2是以分布式方式布置的状态,以这样的方式,它们中的每一者的两个数据集合分别布置在提供在节点20至22中的存储器40至42中的两者中。更具体地,如图4中所示,数据集合X1布置在节点20和节点21中。数据集合X2布置在节点21和节点22中。
在这种情况下,将参考图6到图8对用于根据本示例性实施例的工作的处理的数据集合的具体示例和处理内容进行说明。图6是根据本发明的第二示例性实施例的输入数据集合的示例。图7是参考数据集合X1的示例,参考数据集合X1是根据本发明的第二示例性实施例的复用度管理对象。图8是根据本发明的第二示例性实施例不对其执行复用度管理的参考数据集合Y1的示例。
根据本示例性实施例的输入数据集合的内容是指示任何给定的商店的交易(订单)的输入数据集合。如图6中所示,输入数据包括“交易编号”列、“商品编号”列、“件数”列和“日期和时间”列。“交易数”列包括唯一地识别店里的每一笔交易的编号。“商品编号”列包括指示订购商品的编号。“件数”列包括订购商品的数目。“日期和时间”列包括订购商品时的日期。假设有3000个输入数据包括在输入数据集合“host1/port1/db1/input_table1”中。
根据本示例性实施例的参考数据集合的内容包括两种类型:商品数据,即关于商品的信息(数据集合Xn,n=1~2);以及一个星期中的一天的商品价格的折扣率数据(数据集合Yn,n=1~4)。如图7中所示,数据集合X1中所包括的商品数据包括“商品编号”列、“商品名称称”列和“价格”列。“商品编号”列包括唯一地识别商品的编号。“商品名称”列包括商品的名称。“价格”列包括商品的单价。数据集合X2包括与数据集合X1相同的结构,但是在与数据集合X1不相同的商品编号段中包括商品数据。例如,数据集合X1包括第1到第999个商品数据。另一方面,数据集合X2包括第1000到第1999个商品数据。
如图8中所示,包括在数据集合Y1中的折扣率数据包括“一个星期中的一天”列和“折扣率”列。“一个星期中的一天”列指示当折扣应用于商品时的一个星期中的一天。“折扣率”列指示应用于商品的折扣率的百分比值。数据集合Y2至Y4与数据集合Y1的结构相同,但是包括应用于不同于数据集合Y1的条件的交易的折扣率数据。例如,这两个数据集合Y1和Y2应用于商品编号为01到999的商品的交易。另一方面,数据集合Y2仅应用于交易总价格等于或超过1万日元的交易。同样,数据集合Y3到Y4也有这种差别,因为应用折扣率的商品编号段和总价格条件是不同的。
在以下的说明中,将使用对如图6中所示的输入数据集合的第一输入数据(交易编号“00001”、商品编号“01”、件数“3”以及日期和时间“5月17日”)执行的处理的示例来对根据本示例性实施例的工作名称“工作1”的处理内容(即,应用程序“工作1”)进行说明。在这种情况下,“5月17日”是星期天。
执行应用程序“工作1”的任务(在下文中称为任务30J)从输入数据集合逐一读取输入数据,并且输出由如此读取的每个输入数据指示的交易的销售量。更具体地,任务30J存取包括商品编号“01”的商品数据的参考数据集合X1,由此获得与其相关联的价格“100”日元。随后,任务30J基于获得的价格和输入数据的价格的数目计算总价格(100日元*3个价格=300日元)。随后,任务30J存取包括与计算出的总价格“300”日元相关联的折扣率数据的参考数据集合Y1,从而获得应用于日期和时间“5月17日”(星期天)的折扣率“3%”。最后,作为处理结果,任务30J输出通过将获得的折扣率“3%”应用于总价格“300”日元而获得的“291”日元的销售量。更具体地,在应用程序“工作1”的处理中,对于单个输入数据,针对数据集合Xn中的任一者和数据集合Yn中的任一者中的每一者发生单次存取。在下文中,将进一步详细说明用于执行这种任务的分布式并行批处理中的工作的放置处理。
将再次参考图9对解释进行说明。
在分布式并行批处理服务器10中,工作控制单元12接收对工作的放置请求(步骤S101)。然后,工作控制单元12从在工作的放置请求中指定的工作定义信息16获得输入数据集合的名称。更具体地,工作控制单元12获得存储在与工作定义信息16中的键“工作1.输入数据”相关联的“值”列中的字符串“host1/port1/db1/input_table1”作为输入数据集合的名称(图5)。
随后,工作控制单元12根据节点20至22的数目将所指定的输入数据集合分割为三个输入数据集合A至C(步骤S102)。在这种情况下,输入数据集合的分割方法是(例如)用于基于包括在输入数据集合中的输入数据的数目对输入数据集合进行分割的方法。更具体地,首先,工作控制单元12请求主数据服务器100的主数据管理单元130发送包括在输入数据集合“host1/port1/db1/input_table1”中的数据的总数,并且获得数据的数目(3000个)作为对其的响应。然后,工作控制单元12将(3000个)输入数据一分为三,以将输入数据制成每一者包括1000个输入数据的输入数据集合A至C。
随后,工作控制单元12将所分割的输入数据集合A至C分别分配(指定)给三个节点20至22作为节点的处理对象。然后,工作控制单元12命令三个节点20至22激活任务(步骤S103)。像相关技术中说明的工作的执行程序那样,工作控制单元12分配所分割的输入数据集合A至C,以便有效地使用已经布置在分布式数据存储3中的数据集合。更具体地,工作控制单元12基于从工作定义信息16获得的参考数据集合的名称和从数据集合布置信息17或分布式数据存储管理单元13获得的数据集合的布置信息确定向其分配输入数据集合A至C的节点。在这种情况下,假设工作控制单元12分别将输入数据集合A分配给节点20,将输入数据集合B分配给节点21,并且将输入数据集合C分配给节点22。
被命令激活任务的节点20至22分别激活节点上的任务30至32(步骤S106)。
此后,任务30至32经由输入和输出管理单元60从主数据服务器100读取缺少的数据集合(步骤S107)。更具体地,任务30至32获得尚未被从连接到主数据服务器100的数据库110读取到分布式数据存储3中的参考数据集合和输入数据集合A至C。任务30至32等待直到在已经读取所需要的数据集合之后给出工作开始的命令。
在步骤S107完成时的时间点分布式数据存储2中的数据集合的布置状态如图4中所示的那样。更具体地,在根据本示例性实施例的工作执行开始之前分布式数据存储2的状态与相关技术的相同。
另一方面,在工作控制单元12在分布式并行批处理服务器10中执行步骤S103中描述的处理之后,优先度计算单元11执行应用分析(步骤S104)。
根据本示例性实施例的应用分析处理对应于第一示例性实施例的处理,其中优先度计算单元301获得数据集合使用相关信息330。在这种情况下,将参考图10对优先度计算单元11的应用分析处理(步骤S104)的细节进行说明。图10是示出根据本发明的第二示例性实施例的应用分析处理的细节的流程图。
首先,优先度计算单元11从工作定义信息16获得应用程序名称、输入数据集合的名称、参考数据集合的名称。此外,优先度计算单元11从工作控制单元12获得关于被分配给节点20至22的输入数据集合A至C的信息。然后,优先度计算单元11基于获得的信息分析由应用程序名称所指定的应用程序15(应用程序“工作1”)对输入数据集合执行哪种处理。
在本示例性实施例中,例如,优先度计算单元11分析在那里对输入数据集合执行处理的应用程序15的部分,并且预测在处理期间实施的对每个复用度管理对象数据集合的存取的次数。更具体地,作为应用分析的结果,优先度计算单元11获得(计算)每个复用度管理对象数据集合的预测存取次数信息(在下文中称为“每个数据集合的预期存取次数信息”)。“每个数据集合的预测存取次数信息”指示在应用程序15的执行期间对对每个数据集合的存取的需要程度(必要程度),并且因此,如上所述,“每个数据集合的预测存取次数信息”与根据第一示例性实施例的数据集合使用相关信息330相关联。
为进行分析,优先度计算单元11从主数据管理单元130获得关于应用程序15的处理所使用的数据集合(输入数据集合和参考数据集合)的信息,并且可以将该信息用于分析。
更具体地,优先度计算单元11分析应用程序15,并且找出针对包括与每个输入数据中的“商品编号”列相关联的商品数据的数据集合Xn中的每一者发生单次存取(步骤S200)。随后,优先度计算单元11从主数据管理单元130关于输入数据集合A获得其“商品编号”列是1到999的输入数据的数目。更具体地,优先度计算单元11请求主数据管理单元130发送关于输入数据集合A的信息(步骤S201)。随后,主数据管理单元130基于请求搜索关于输入数据集合A的信息(步骤S202)。然后,主数据管理单元130将搜索到的输入数据集合A发送到优先度计算单元11(步骤S203)。优先度计算单元11采用所获得的输入数据集合A的数据的总数(1000个数据)作为在输入数据集合A的处理(即,输入数据集合A被分配到的节点20的处理)中用于存取数据集合X1的预期存取的数目。另外,优先度计算单元11采用通过从数据集合A的数据的总数(1000)减去用于存取数据集合X1的预期存取的数目(1000)获得的数目(零)作为用于存取数据集合X2的预期存取的数目(步骤S204)。
同样,优先度计算单元11还关于输入数据集合B和输入数据集合C(即,节点21和节点22)计算用于存取数据集合Xn的预期存取的数目。
在本示例性实施例中,假设优先度计算单元11已经被通知例如与数据集合Xn相关联的商品编号的范围并且复用度管理对象数据集合包括数据集合X1和数据集合X2。这样的应用分析的结果的示例示于图12中(图12的细节将在后面说明)。
将再次参考图9对该操作进行说明。
优先度计算单元11基于通过应用分析获得的“每个数据集合的预测存取次数信息”计算每个复用度管理对象数据集合的优先度信息18(步骤S105)。按照通过以下优先度计算表达式(表达式(2))计算的结果的值(在下文中称为“临时度”)的递减顺序根据用于给予与较高临时度相关联的节点较高优先度的方法确定根据本示例性实施例的每个数据集合的优先度信息。
f(x)=a1x1...(2)
在这种情况下,作为每种类型的数据集合使用相关信息330的值的“x1”是“每个数据集合的预测存取次数”。另一方面,作为每种类型的数据集合使用相关信息330的系数的“a1”是“1”。更具体地,在本示例性实施例中,优先度计算单元11按照每个数据集合的预测存取次数的递减顺序给出更高的优先度。
将参考图12对优先度的具体计算处理进行说明。图12是指示在根据本发明的第二示例性实施例的应用分析中获得的每个数据集合的预测存取次数的信息的示例。
首先,优先度计算单元11关于数据集合X1计算节点20至22中的每一者的临时度。如图12中所述,数据集合X1的临时度为:节点20至22分别是1000、500、200。随后,优先度计算单元11按照临时度的值的递减顺序给予节点优先度,例如1,2,3...。更具体地,关于数据集合X1的优先度为:节点20至22分别是“1”、“2”、“3”。同样,关于数据集合X2,优先度计算单元11也计算节点20至22的优先度。数据集合X2的优先度为:节点20至22分别是“3”、“2”、“1”。
优先度计算单元11将关于这样计算出的关于每个复用度管理对象数据集合的优先度的信息作为优先度信息18存储到磁盘14。图13是根据本发明的第二示例性实施例的优先度信息18的示例。
由分布式并行批处理服务器10执行工作配备处理在上面完成。在这种情况下,工作控制单元12可以通知客户端500工作配备处理的完成。
随后,在客户端500接收到工作配备处理的结束通知之后或在自从工作配备处理请求以来过去足够的时间之后,客户端500向分布式并行批处理服务器10发送被采用作为工作配备请求中的对象的工作的执行请求(步骤S110)。
在分布式并行批处理服务器10中,工作控制单元12接收工作的执行请求(步骤S111)。然后,工作控制单元12命令在节点20至22中等待的任务30至32开始工作(步骤S112)。
被命令开始工作的任务30至32开始工作的处理(步骤S113)。
以上所描述的是在分布式并行批处理服务器10中从工作的放置(执行的准备)到工作的执行的处理。
随后,将参考图11对数据集合的复用度改变处理的细节进行说明。数据集合的复用度改变处理由分布式并行批处理服务器10中的工作控制单元12和分布式数据存储管理单元13执行。图11是示出根据本发明的第二示例性实施例的分布式并行批处理系统的复用度改变的操作的流程图。
如在步骤S107中说明,在这个时间点数据集合布置信息17的内容与如图4中所示的存储器上类型数据存储3中的数据集合X1和数据集合X2的布置一致。更具体地,数据集合X1存在于节点20和节点21中。数据集合X2存在于节点21和节点22中。复用度M为“2”。然而,在这个时间点上作为非管理对象的参考数据集合Y1至Y4和输入数据集合A至C的布置可能与图4的不同。更具体地,作为非管理对象的数据集合组可能已根据任务30至32的处理被读取到存储器上类型数据存储3中。
首先,在分布式并行批处理系统中,当客户端500在工作的处理继续时的任何给定时间点确定改变复用度管理对象数据集合的复用度时,客户端500向分布式并行批处理服务器10发送复用度改变请求(步骤S300)。客户端500在复用度改变请求中指定复用度M的改变内容。
在这种情况下,首先,将对其中客户端500命令将复用度减小1的情况下的操作进行说明。将在对减小操作进行说明之后对其中命令复用度的增加的情况下的操作进行说明。指定复用度M的改变内容的指定方法也可以是其他的方法,例如在改变之后指定复用度数值。
存在客户端500根据其来确定复用度管理对象数据集合的复用度改变的各种方法。例如,当批处理或用于管理批处理的进度情况的外部功能(未示出)的用户检测到批处理的进度的延迟(提前)时,外部功能可以经由客户端500发送用于减小(增加)复用度的改变请求。
在已经接收到复用度改变请求的分布式并行批处理服务器10中,分布式数据存储管理单元13经由工作控制单元12接收复用度改变请求(步骤S301)。
随后,分布式数据存储管理单元13使用数据集合布置信息17和在步骤S105(图9)中由优先度计算单元11计算的优先度信息18针对每个复用度管理对象数据集合确定被采用作为改变布置的对象的节点20至22(步骤S302)。
当在复用度改变请求中命令复用度M的减小时,分布式数据存储管理单元13从当前存储复用度管理对象数据集合的节点中选择优先级较低的节点,并且采用该节点作为布置改变(删除)对象。更具体地,首先,分布式数据存储管理单元13基于数据集合布置信息17识别出数据集合X1存在于节点20和节点21中。随后,分布式数据存储管理单元13基于优先度信息18(图13)识别出在数据集合X1的优先度中,节点21的优先度(优先度为“2”)比节点20的优先度(优先度为“1”)低。因此,分布式数据存储管理单元13确定节点21是数据集合X1的改变(删除)对象。根据类似的方法,分布式数据存储管理单元13确定节点21是数据集合X2的改变(删除)对象。
随后,分布式数据存储管理单元13命令作为改变对象的节点20至22的输入和输出管理单元60至62针对每个复用度管理对象数据集合执行特定复用度管理对象数据集合的布置改变(添加或删除)(步骤S303)。更具体地,分布式数据存储管理单元13命令节点21的输入和输出管理单元61删除数据集合X1。同样,分布式数据存储管理单元13命令节点21的输入和输出管理单元61删除数据集合X2。
在被命令执行数据集合的布置改变的节点20至22中,输入和输出管理单元60至62在节点的存储器40至42中根据命令内容实施复用度管理对象数据集合的布置改变(步骤S310)。
更具体地,当命令内容是删除复用度管理对象数据集合时,输入和输出管理单元60至62删除所指定的复用度管理对象数据集合(步骤S311)。更具体地,节点21的输入和输出管理单元61根据数据集合X1的删除命令从存储器41删除数据集合X1。输入和输出管理单元61根据数据集合X2的删除命令从存储器41删除数据集合X2。
在步骤S311结束时的时间点分布式数据存储2中数据集合的布置状态如图14中所示的那样。图14是示出在根据本发明的第二示例性实施例的复用度改变之后分布式数据存储的数据布置的示例的图。如图14中所示,作为复用度管理对象数据集合的数据集合X1和数据集合X2分别存储在节点20和节点22中。更具体地,根据复用度改变请求(减小),将复用度M从“2”减小为“1”。值得注意的是,作为非管理对象的参考数据集合Y1至Y4和输入数据集合A至C的布置可能与图14不同。
另一方面,在分布式并行批处理服务器10中,分布式数据存储管理单元13执行步骤S303中描述的处理,并且此后,更新数据集合布置信息17以反映输入和输出管理单元60至62被命令执行的数据集合的布置改变(步骤S304)。更具体地,分布式数据存储管理单元13更新数据集合布置信息17,以便与如图14中所示的存储器上类型数据存储3中的数据集合X1和数据集合X2的布置一致。
如上所述,分布式并行批处理服务器中10的工作控制单元12和分布式数据存储管理单元13根据来自客户端500的复用度改变请求(减小)减小复用度M。
随后,将使用步骤S300中的其中客户端500将复用度M从“1”增加为“2”的情况的示例对其中命令将复用度增加1的情况下的操作进行说明。假设数据集合布置信息17和存储器上类型数据存储3在这个时候的状态与图14相关联。
在已经接收到复用度改变请求的分布式并行批处理服务器10中,分布式数据存储管理单元13经由工作控制单元12接收复用度改变请求(步骤S301)。
随后,分布式数据存储管理单元13使用数据集合布置信息17和由优先度计算单元11计算的优先度信息18针对每个复用度管理对象数据集合确定被采用作为改变布置的对象的节点20至22(步骤S302)。
当在复用度改变请求中命令复用度M的添加时,分布式数据存储管理单元13从当前存储复用度管理对象数据集合的节点中选择优先级较高的节点,并且采用该节点作为布置改变(添加)对象。更具体地,首先,分布式数据存储管理单元13基于数据集合布置信息17识别出数据集合X1不存储在节点20和节点21中。随后,分布式数据存储管理单元13基于优先度信息18(图13)识别出在数据集合X1的优先度中,节点21的优先度(优先度为“2”)比节点22的优先度(优先度为“3”)高。因此,分布式数据存储管理单元13确定节点21是数据集合X1的改变(添加)对象。根据类似的方法,分布式数据存储管理单元13确定节点21是数据集合X2的改变(添加)对象。
随后,分布式数据存储管理单元13命令作为改变对象的节点20至22的输入和输出管理单元60至62针对每个复用度管理对象数据集合执行特定复用度管理对象数据集合的布置改变(添加或删除)(步骤S303)。更具体地,分布式数据存储管理单元13命令节点21的输入和输出管理单元61添加数据集合X1。同样,分布式数据存储管理单元13命令节点21的输入和输出管理单元61添加数据集合X2。
在被命令执行数据集合的布置改变的节点20至22中,输入和输出管理单元60至62在节点的存储器40至42中根据命令内容实施复用度管理对象数据集合的布置改变(步骤S310)。
更具体地,当命令内容是添加复用度管理对象数据集合时,输入和输出管理单元60至62从其他节点中的存储器40至42等读取所指定的复用度管理对象数据集合,并且将对象数据集合的副本添加到所讨论的节点的存储器40至42(步骤S312)。更具体地,节点21的输入和输出管理单元61响应于数据集合X1的添加命令而将数据集合X1从存储器40复制到数据集合41。输入和输出管理单元61响应于数据集合X2的添加命令而将数据集合X2从存储器42复制到存储器41。
在步骤S312结束时的时间点分布式数据存储2中数据集合的布置状态如图14中所示的那样。如上所述,参考图4,数据集合X1存在于节点20和节点21中。数据集合X2存在于节点21和节点22中。更具体地,响应于复用度改变请求(增加),将复用度M从“1”增加为“2”。值得注意的是,作为非管理对象的参考数据集合Y1至Y4和输入数据集合A至C的布置可能与图14不同。
另一方面,在分布式并行批处理服务器10中,在已执行步骤S303中描述的处理之后,分布式数据存储管理单元13更新数据集合布置信息17以反映输入和输出管理单元60至62被命令执行的数据集合的布置改变(步骤S304)。这与复用度改变请求(删除)的情况相同。
如上所述,分布式并行批处理服务器中10的工作控制单元12和分布式数据存储管理单元13根据来自客户端500的复用度改变请求(增加)增加复用度M。
上文已经对关于其中降低和增加复用度M的情况下的复用度改变处理的说明进行了说明。
在这种情况下,为了指示本示例性实施例的效果,将使用图4中的用于将复用度M从2减小为1的四种方法的示例来比较每种减小方法中的复用度管理对象数据集合对存取性能造成的影响。这四种方法是相关技术中也进行了说明的减小方法。
首先,在图4中,有四种方法用于将复用度M从2减小为1。更具体地,第一种方法是用于留下节点20的数据集合X1和节点21的数据集合X2的方法。第二种方法是用于留下节点20的数据集合1和节点22的数据集合X2的方法。第三种方法是用于留下节点21的数据集合X1和节点23的数据集合X2的方法。第四种方法是用于留下节点21的数据集合X1和X2的方法。
在本示例性实施例中,当减小复用度M时实施的减小方法是第二种方法。
在这四种减小方法中,将比较对每个复用度管理对象数据集合的存取时间的总和。在其中根据所选择的减小方法的存取性能受到最大影响的情况的示例中,复用度改变(减小)被认为在工作执行之后立即执行。
对复用度管理对象数据集合的存取时间的总和是通过将在所有节点20至22的处理期间用于存取数据集合X1和数据集合X2的存取时间相加获得的值。根据以下表达式(3)来计算用于存取数据集合的存取时间,该存取时间指示在单个节点中在工作处理期间用于存取特定数据集合的时间。
(用于存取数据集合的存取时间)=(存取速度)*(存取次数)...(3)
在这种情况下,用于存取在所讨论的节点的存储器中的数据集合的存取速度被认为是“1”,用于存取其他节点的存取速度被认为是“5”。这是因为,通常,根据下面的顺序,存取数据集合的存取速度变得较高:(所讨论的节点的存储器)>(另一个节点的存储器上类型数据存储)。存取的数目使用如图12中所示的每个数据集合的预测存取次数信息。
用于存取复用度管理对象数据集合的存取时间的总和是系统中的所有节点存取复用度管理对象数据集合的时间的总和。因此,当存取时间的总和的数值较小时,存取所需的时间可以较少(效率更好)。
首先,关于上述第一种方法,计算对每个复用度管理对象数据集合的存取时间的总和。如图12中所示,节点20的任务30(在下文中简称为“节点20”)存取数据集合X1100次,但不存取数据集合X2。因此,在第一种方法中,节点20存取在所讨论的节点20(在下文中简称为“节点20”)的存储器40中的数据集合X11000次。节点20存取复用度管理对象数据集合的存取时间为如下。更具体地,存取时间如下。
[节点20的存取时间](1*1000)=1000
节点21存取数据集合X1500次,并且存取数据集合X2500次。根据第一种方法,节点21不包括数据集合X1,并且因此,节点21存取另一个节点(即,节点20)中的数据集合X1。因此,节点21存取复用度管理对象数据集合的存取时间为如下。更具体地,如下。
[节点21的存取时间](5*500)+(1*500)=3000
同样,节点22存取复用度管理对象数据集合的存取时间为如下。更具体地,如下。
[节点22的存取时间](5*200)+(5*800)=5000
根据第一种方法对每个复用度管理对象数据集合的存取时间的总和(在下文中简称为“根据第一种方法的总存取时间”)将在下面被描述为将节点20至22的存取时间相加的结果。更具体地,如下。
[总存取时间]1000+3000+5000=9000
随后,也将根据第二到第四种方法计算存取每个复用度管理对象数据集合的总存取时间。计算方法与上述相同,并且因此,将在下面只描述示出计算过程的表达式。
下面描述的是用于根据上述第二种方法计算总存取时间的计算表达式。更具体地,如下。
[节点20的存取时间](1*1000)=1000
[节点21的存取时间](5*500)+(5*500)=5000
[节点22的存取时间](5*200)+(1*800)=1800
因此,
[总存取时间]1000+5000+1800=7800
下面描述的是用于根据上述第三种方法计算总存取时间的计算表达式。更具体地,如下。
[节点20的存取时间](5*1000)=5000
[节点21的存取时间](1*500)+(5*500)=3000
[节点22的存取时间](5*200)+(1*800)=1800
因此,
[总存取时间]5000+3000+18000=9800
下面描述的是用于根据上述第四种方法计算总存取时间的计算表达式。更具体地,如下。
[节点20的存取时间](5*1000)=5000
[节点21的存取时间](1*500)+(1*500)=1000
[节点22的存取时间](5*200)+(5*800)=5000
因此,[总存取时间]5000+1000+5000=11000
如上所述,当比较根据四种减小方法的总存取时间的数值时,最小总存取时间是第二种方法(在本示例性实施例中实施的减小方法)。更具体地,根据本示例性实施例,当在工作的处理中间改变复用度M时,复用度M可以被改变来实现数据集合的布置,以尽可能避免存取复用度管理对象数据集合的存取效率的降低。
这是因为,优先度计算单元11基于数据集合使用相关信息计算优先度信息18,数据集合使用相关信息是指示对存取复用度管理对象数据集合的存取效率产生的影响的程度的信息。此外,分布式数据存储管理单元13基于优先度信息18针对每个复用度管理对象数据集合选择被采用作为复用度M的改变对象的节点。更具体地,优先度计算单元11基于存取预测数据计算优先度信息18,存取预测数据是指示对复用度管理对象数据集合的存取的必要程度的信息。此外,这是因为分布式数据存储管理单元13可以基于优先度信息18针对每个复用度管理对象数据集合选择被采用作为用于改变布置的对象的节点。
根据本示例性实施例,可以在任何给定时间点快速完成在工作的处理中间对复用度M的改变。这是因为分布式数据存储管理单元13可以快速选择改变对象节点,因为基于预先计算的优先度信息18针对每个多个管理对象数据集合确定被采用作为复用度M的改变对象的节点。因此,当(例如)分布式数据存储管理单元13连续执行工作处理时,照原来样子使用针对先前工作的数据集合的布置,从而减少工作执行准备周期。此外,这使得以下操作更简单:仅当工作的进度出现问题时,分布式数据存储管理单元13才尝试通过改变复用度M来调整进度。
在本示例性实施例中,在工作控制单元后12实施用于向节点分配任务(步骤S103)的处理之后,优先度计算单元11执行应用分析处理(步骤S104)和优先度计算处理(步骤S105)。这些处理顺序可以改变。例如,步骤S102之后,优先度计算单元11预先执行应用分析处理(步骤S104)和优先度计算处理(步骤S105)。此后,工作控制单元12可以鉴于计算出的优先度信息18来执行用于向节点分配任务(步骤S103)的处理。
在这种情况下,当节点20至22被采用作为应用分析处理和优先度计算处理中的对象时,优先度计算单元11不计算存取预测数目和优先度信息,而是,当处理输入数据集合A至C的任务A至C被采用作为临时计算对象时,优先度计算单元11执行以上计算处理。然后,在用于将最后的任务分配给节点的分配处理期间,工作控制单元12分别将临时任务A至C以及输入数据集合A至C分配给节点20至22。
优先度计算单元11计算优先度信息18时的时间点可以是在客户端发送复用度改变请求之前的任何时间点。此外,优先度计算单元11可以在工作的处理执行期间的任何给定时间更新优先度信息18。
分布式并行批处理服务器10中的每个功能单元和存储在磁盘14中的各种数据组不需要一定放在与节点20至22和主数据服务器100不同的信息处理设备上。此外,如果可以根据需要完成所需的相互通信和信息的共享,那么分布式并行批处理服务器10的每个功能单元和存储在磁盘14中的每一条数据不需要提供在单个信息处理设备中。
(第二示例性实施例的修改)
注意,以下修改可被认为是本示例性实施例的修改。
例如,在本示例性实施例中,批处理被认为包括单个工作,但本示例性实施例也可以应用于其中批处理包括多个工作的情况。这个修改是基于存在多个工作的假设(即,在存在多个应用程序15的情况下)。用于将本示例性实施例应用于这种情况的方法中的一种被认为是用于在包括在批处理中的所有工作被采用作为对象时计算一条优先度信息18的方法。然而,当包括在每个工作中的处理内容存在很大区别时,这种优先度信息18可能与许多工作不兼容。因此,当改变复用度M时,处理效率可能会在基于这种优先度信息18确定的复用度管理对象数据集合的布置中降低。
因此,分布式并行批处理服务器10可以提供多条优先度信息18,用于连续执行多个工作的批处理。更具体地,在步骤S104中,优先度计算单元11基于与多个工作相关联的应用程序15的对象执行应用分析。因此,优先度计算单元11计算对于每个应用程序15来说不相同的优先度信息18(在下文中描述为“针对每个工作的优先度信息18”)。然后,优先度计算单元11将针对每个工作的优先度信息18保持到磁盘14中。当工作控制单元12在工作的执行开始之后从客户端接收到复用度改变请求时,工作控制单元12向分布式数据存储管理单元13提供关于复用度改变请求的信息以及关于在那时正在执行的工作的信息。分布式数据存储管理单元13基于与正在执行的工作相关联的“针对每个工作的优先度信息18”确定被采用作为复用度M的改变对象的节点20至22(步骤S302)。
如上所述,分布式并行批处理服务器10包括关于连续执行多个工作的批处理的针对工作的多条优先度信息18,以便向批处理中包括的每个工作提供与本示例性实施例相同的效果。
在另一个修改中,可以根据复用度M的“减小”和“增加”的复用度改变的类型使用不同的优先度信息18。例如,当增加复用度M时,节点20至22从其他节点中的存储器40至42等读取所指定的复用度管理对象数据集合,并且将其副本添加到所讨论的节点的存储器40至42(步骤S312)。
更具体地,直到实现复用度M的增加,需要时间来完成节点20至22中的复用度管理对象数据集合的传送(复制)。出于这个原因,当分布式数据存储管理单元13命令其数据传送速度特别慢的节点添加复用度管理对象数据集合时,与其中命令到另一个节点的添加的情况相比,可能需要更多的时间来执行复用度M的增加处理。因此,在用于计算每个复用度管理对象数据集合的优先度信息(步骤S105)的处理中,优先度计算单元11可以使用节点之间的数据传送速度作为优先度计算表达式中的第二数据集合使用相关信息330。
假设在步骤S105之前,优先度计算单元11从预先存储在磁盘14中的文件、系统的外部等获得关于节点之间的数据传送速度的信息。这个时候的优先度计算表达式如下面的表达式(4)中所示。更具体地,
f(x)=a1x1+a2x2...(4)
在这种情况下,和本示例性实施例一样,“x1”是“每个数据集合的预测存取次数”。“x2”指示“基于计算对象的节点与另一个节点之间的数据传送速度的数值”。另一方面,根据系统的情况采用适合对“每个数据集合的预测存取次数”和“基于计算对象的节点与另一个节点之间的数据传送速度的数值”进行加权的值作为“a1”和“a2”,“a1”和“a2”是数据集合使用相关信息330的类型的系数。优先度计算单元11使用基于这两条数据集合使用相关信息330计算出的第二优先度信息18,以使分布式数据存储管理单元13可以降低需要更多时间来执行复制的节点的优先度。因此,分布式数据存储管理单元13可以选择在其中可以在较短的时间内完成复用度M的增加的布置。
然而,当在本变形例中减小复用度M时,已经从分布式数据存储管理单元13接收到数据集合的布置改变命令的节点删除所指定的复用度管理对象数据集合(步骤S311),但是不参考其他节点中的数据集合。因此,通常,节点之间的数据传送速度不影响复用度M的减小的完成的时间。因此,在增加复用度M的情况下,分布式数据存储管理单元13应用第二优先度信息18,并且在另一方面,在减小复用度M的情况下,例如,可以应用在第二示例性实施例中计算的优先度信息18。如上所述,分布式并行批处理服务器10根据复用度改变请求的内容(减小或增加)使用多条优先度信息18。因此,在本修改中,能够实现适合于复用度改变请求的内容的复用度改变方法。
上面说明的每个示例性实施例及其修改(在下文中可简称为“每个示例性实施例等”)中的图1到图3中所示的每个单元可以被理解为软件程序功能(处理)单元(软件模块)。然而,在这些附图中所示的每个单元的划分是为了解释的配置,并且在实际的实现中,可以考虑各种配置。在下文中,将参考图15对这种情况下的硬件环境的示例进行说明。
图15是示出可以应用于根据本发明的每个示例性实施例及其修改的分布式并行批处理系统的计算机(信息处理设备)的配置的示例的图。更具体地,图15是能够实现根据上述每个示例性实施例等的分布式并行批处理服务器10、节点20至22、主数据服务器100、数据库110、数据集合复用度改变设备300、节点320、客户端500中的至少一者的计算机的配置,并且示出了可以实现上文说明的示例性实施例等的每个功能的硬件环境。
如图15中所示的计算机900包括包括CPU(中央处理单元)901、ROM(只读存储器)902、RAM(随机存取存储器)903、通信接口(I/F)904、显示器905和硬盘设备(HDD)906的配置,并且这些经由总线907相连。如图15中所示的计算机用作分布式并行批处理服务器10、节点20至22、主数据服务器100、数据库110、数据集合复用度改变设备300和节点320中的任一项。然而,不必在任何时候都提供显示器905。通信接口904是用于经由网络1000实现计算机900和外部设备之间的通信的一般通信装置。硬盘设备906存储程序组906A和各种存储信息906B。
例如,程序组906A是用于实现与如上面说明的图1到图3中所示的每个块(每个单元)相关联的功能的计算机程序。例如,各种类型的存储信息906B是图1和图3中所示的优先度信息18、311、数据集合布置信息17、312、数据集合70、80、322、图3中所示的应用程序15和工作定义信息16、如图2和图3中所示的主数据集合120等。在这种硬件配置中,CPU 901控制整个计算机900的操作。
通过提供能够实现在关于每个示例性实施例等的说明中提到的框配置图(图1到图3)或流程图(图9到图11)的功能的计算机程序并且此后将计算机程序读取到硬件的CPU 901并执行该计算机程序来实现使用上述示例性实施例等作为示例说明的本发明。可以将提供到计算机中的计算机程序存储到非易失性存储设备(存储介质)例如可读写临时存储器903或硬盘设备106。
例如,在记录介质记录用于操作为数据集合复用度改变设备的计算机的操作控制的计算机程序的情况下,永久记录使计算机执行后续处理的程序。首先,该处理是用于基于数据集合使用相关信息计算表示将存储数据集合的多个节点的顺序的优先度信息的优先度计算处理,数据集合使用相关信息是与在由多个节点执行的并行处理中参考的数据集合的使用相关的信息。其次,该处理是用于通过基于优先度信息和指示将数据集合保持在存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在多个节点中的至少一个或多个数据集合的数目来改变数据集合的复用度的复用度改变处理。
在上述情况下,目前的一般程序可以用作将计算机程序提供到每个设备中的方法。一般的程序包括用于经由各种记录介质例如CD-ROM将计算机程序安装到设备中的方法和用于经由通信电路1000例如因特网从外部下载计算机程序的方法。在这种情况下,本发明可以被理解为包括包括代码的这样的计算机程序的或用于存储这种代码的计算机可读存储介质。
在本发明中,上述示例性实施例及其修改中的部分或全部可如以下补充说明中所示描述,但不限于以下补充说明。
(补充说明1)
一种数据集合复用度改变设备,包括:
优先度计算装置,用于基于包括与在由多个节点执行的并行处理中参考的数据集合的使用相关的信息的数据集合使用相关信息计算表示数据集合将被存储到其中的所述多个节点的顺序的优先度信息;以及
复用度管理装置,用于执行复用度改变处理以通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目来改变数据集合的复用度。
(补充说明2)
根据补充说明1所述的数据集合复用度改变设备,其中,优先度计算装置基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息产生数据集合使用相关信息的至少一部分。
(补充说明3)
根据补充说明1或2所述的数据集合复用度改变设备,其中,数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
(补充说明4)
根据补充说明1至3中任一项所述的数据集合复用度改变设备,其中
当所述并行处理包括用于连续执行多个工作的处理时,
优先度计算装置针对每个工作计算与所述多个工作相关联的优先度信息,并且
复用度管理装置基于与当实施复用度改变处理时由节点执行的工作相关联的优先度信息实施复用度改变处理。
(补充说明5)
根据补充说明1至4中任一项所述的数据集合复用度改变设备,其中
优先度计算装置计算与用于减小以复用方式保持的数据集合的数目的复用度减小相关联的第一优先度信息和与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联的第二优先度信息,并且
当在复用度改变处理中执行复用度减小时,复用度管理装置基于第一优先度信息实施复用度改变处理,并且当执行复用度增加时,复用度管理装置基于第二优先度信息实施复用度改变处理。
(补充说明6)
根据补充说明5所述的数据集合复用度改变设备,其中优先度计算装置
在计算第一优先度信息时,将每个数据集合的预测存取次数信息包含在数据集合使用相关信息中,并且
在计算第二优先度信息时,将每个数据集合的预测存取次数信息和关于节点之间的数据传送速度的信息包含在数据集合使用相关信息中。
(补充说明7)
一种服务器,包括:
根据补充说明1至6中任一项所述的数据集合复用度改变设备,其中,控制由所述多个节点执行的工作的并行处理。
(补充说明8)
一种数据集合复用度改变方法,包括:
使用信息处理设备基于包括与在由多个节点执行的并行处理中参考的数据集合的使用相关的信息的数据集合使用相关信息计算表示数据集合将被存储到其中的所述多个节点的顺序的优先度信息,以及
执行复用度改变处理以通过通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目而使用所述信息处理设备改变数据集合的复用度来改变数据集合的复用度。
(补充说明9)
根据补充说明8所述的数据集合复用度改变方法,其中,当计算优先度信息时,基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息产生数据集合使用相关信息的至少一部分。
(补充说明10)
根据补充说明8或9所述的数据集合复用度改变方法,其中,数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
(补充说明11)
根据补充说明8至10中任一项所述的数据集合复用度改变方法,其中
当所述并行处理包括用于连续执行多个工作的处理时,
在计算优先度信息时,针对每个工作计算与所述多个工作相关联的优先度信息,并且
基于与当实施复用度改变处理时由节点执行的工作相关联的优先度信息实施复用度改变处理。
(补充说明12)
根据补充说明8至11中任一项所述的数据集合复用度改变方法,其中
当计算优先度信息时,
计算与用于减小以复用方式保持的数据集合的数目的复用度减小相关联的第一优先度信息和与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联的第二优先度信息,并且
当实施复用度改变处理时,
在执行复用度减小时,基于第一优先度信息实施复用度改变处理,并且
在执行复用度增加时,基于第二优先度信息实施复用度改变处理。
(补充说明13)
根据补充说明12所述的数据集合复用度改变方法,其中
当计算第一优先度信息时,将每个数据集合的预测存取次数信息包含在数据集合使用相关信息中,并且
当计算第二优先度信息时,将每个数据集合的预测存取次数信息和关于节点之间的数据传送速度的信息包含在数据集合使用相关信息中。
(补充说明14)
一种用于存储用于控制操作为数据集合复用度改变设备的计算机的计算机程序的存储介质,
其中,所述计算机程序使所述计算机执行
优先度计算处理,用于基于包括与在由多个节点执行的并行处理中参考的数据集合的使用相关的信息的数据集合使用相关信息计算表示数据集合将被存储到其中的所述多个节点的顺序的优先度信息;以及
执行复用度改变处理以通过基于优先度信息和指示将数据集合保持在其存储区域中的特定节点的数据集合布置信息改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目来改变数据集合的复用度。
(补充说明15)
根据补充说明14所述的用于存储计算机程序的存储介质,其中,优先度计算处理基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息产生数据集合使用相关信息的至少一部分。
(补充说明16)
根据补充说明14或15所述的用于存储计算机程序的存储介质,其中,数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
(补充说明17)
根据补充说明14至16中任一项所述的用于存储计算机程序的存储介质,其中,当所述并行处理包括用于连续执行多个工作的处理时,
优先度计算处理针对每个工作计算与所述多个工作相关联的优先度信息,并且
复用度管理处理基于与由节点执行的工作相关联的优先度信息改变数据集合的复用度。
(补充说明18)
根据补充说明14至17中任一项所述的用于存储计算机程序的存储介质,其中,优先度计算处理计算与用于减小以复用方式保持的数据集合的数目的复用度减小相关联的第一优先度信息和与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联的第二优先度信息,并且
当执行复用度减小时,复用度管理处理基于第一优先度信息改变数据集合的复用度,并且当执行复用度增加时,复用度改变处理基于第二优先度信息改变数据集合的复用度。
(补充说明19)
根据补充说明18所述的用于存储计算机程序的存储介质,其中,优先度计算处理
在计算第一优先度信息时,将每个数据集合的预测存取次数信息包含在数据集合使用相关信息中,并且
在计算第二优先度信息时,将每个数据集合的预测存取次数信息和关于节点之间的数据传送速度的信息包含在数据集合使用相关信息中。
已经参考上述示例性实施例等对本申请的发明进行了说明,但是本申请的发明不限于上述示例性实施例。可以在本申请的发明的范围之内以本领域技术人员可以理解的各种方式改变本申请的发明的配置和细节。
上文已经使用上述示例性实施例作为典型示例对本发明进行了说明。然而,本发明不限于上述示例性实施例。更具体地,可以在本发明的范围之内将本领域技术人员可以理解的各种方面应用于本发明。
本申请要求基于申请日为2013年2月4日的日本专利申请No.2013-019403的优先权,并且其全部公开内容以通过参考并入本文。
附图标记列表
1   分布式并行批处理系统
2   分布式数据存储
3   存储器上类型数据存储
4   磁盘类型数据存储
10  分布式并行批处理服务器
11  优先度计算单元
12  工作控制单元
13  分布式数据存储管理单元
14  磁盘
15  应用程序
16  工作定义信息
17  数据集合布置信息
18  优先度信息
20至22    节点
30至32    任务
40至42    存储器(存储区域)
50至52    磁盘
60至62    输入和输出管理单元
70至72、80至82 数据集合
100  主数据服务器
110  数据库
120  主数据集合
130  主数据管理单元
200  工作
300  数据集合复用度改变设备
301  优先度计算单元
302  复用度管理单元
311  优先度信息
312  数据集合布置信息
320  节点
321  存储器(存储区域)
322  数据集合
330  数据集合使用相关信息
500  客户端
900  信息处理设备(计算机)
901  CPU
902  ROM
903  RAM
904  通信接口(I/F)
905  显示器
906  硬盘设备(HDD)
906A   程序组
906B   各种存储信息
907  总线
1000   网络(通信网络)

Claims (19)

1.一种数据集合复用度改变设备,包括:
优先度计算装置,所述优先度计算装置用于基于数据集合使用相关信息来计算优先度信息,所述优先度信息表示数据集合要被存储到多个节点的顺序,所述数据集合使用相关信息包括与在由所述多个节点执行的并行处理中所参考的数据集合的使用相关的信息;以及
复用度管理装置,所述复用度管理装置用于执行复用度改变处理,以通过基于所述优先度信息和数据集合布置信息改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目,来改变数据集合的复用度,所述数据集合布置信息指示将所述数据集合保持在其存储区域中的特定节点。
2.根据权利要求1所述的数据集合复用度改变设备,其中,所述优先度计算装置基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息来生成所述数据集合使用相关信息的至少一部分。
3.根据权利要求1或2所述的数据集合复用度改变设备,其中,所述数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
4.根据权利要求1至3中任一项所述的数据集合复用度改变设备,其中,
当所述并行处理包括用于连续执行多个工作的处理时,
所述优先度计算装置针对每个工作计算与所述多个工作相关联的优先度信息,并且
所述复用度管理装置基于与当执行所述复用度改变处理时由所述节点执行的工作相关联的优先度信息来执行所述复用度改变处理。
5.根据权利要求1至4中任一项所述的数据集合复用度改变设备,其中,
所述优先度计算装置计算第一优先度信息和第二优先度信息,所述第一优先度信息与用于减小以复用方式保持的所述数据集合的数目的复用度减小相关联,所述第二优先度信息与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联,并且
当在所述复用度改变处理中执行所述复用度减小时,所述复用度管理装置基于所述第一优先度信息来执行所述复用度改变处理,并且当执行所述复用度增加时,所述复用度管理装置基于所述第二优先度信息来执行所述复用度改变处理。
6.根据权利要求5所述的数据集合复用度改变设备,其中,所述优先度计算装置
在计算所述第一优先度信息时,将每个数据集合的所述预测存取次数信息包含在所述数据集合使用相关信息中,并且
在计算所述第二优先度信息时,将每个数据集合的所述预测存取次数信息和关于节点之间的数据传送速度的信息包含在所述数据集合使用相关信息中。
7.一种服务器,包括:
根据权利要求1至6中任一项所述的数据集合复用度改变设备,
其中,控制由所述多个节点执行的所述工作的并行处理。
8.一种数据集合复用度改变方法,包括:
基于数据集合使用相关信息使用信息处理设备来计算优先度信息,所述优先度信息表示数据集合要被存储到多个节点的顺序,所述数据集合使用相关信息包括与在由所述多个节点执行的并行处理中所参考的数据集合的使用相关的信息,以及
使用所述信息处理设备来执行复用度改变处理以通过下述来改变所述数据集合的复用度:通过基于所述优先度信息和数据集合布置信息改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目,来改变数据集合的复用度,所述数据集合布置信息指示将所述数据集合保持在其存储区域中的特定节点。
9.根据权利要求8所述的数据集合复用度改变方法,其中,当计算所述优先度信息时,基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息,来生成所述数据集合使用相关信息的至少一部分。
10.根据权利要求8或9所述的数据集合复用度改变方法,其中,所述数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
11.根据权利要求8至10中任一项所述的数据集合复用度改变方法,其中,
当所述并行处理包括用于连续执行多个工作的处理时,
在计算所述优先度信息时,针对每个工作计算与所述多个工作相关联的优先度信息,并且
在执行所述复用度改变处理时,基于与由所述节点执行的工作相关联的所述优先度信息,来执行所述复用度改变处理。
12.根据权利要求8至11中任一项所述的数据集合复用度改变方法,其中,
当计算所述优先度信息时,
计算第一优先度信息和第二优先度信息,所述第一优先度信息与用于减小以复用方式保持的所述数据集合的数目的复用度减小相关联,所述第二优先度信息与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联,并且
当执行所述复用度改变处理时,
在执行所述复用度减小时,基于所述第一优先度信息执行所述复用度改变处理,并且
在执行所述复用度增加时,基于所述第二优先度信息执行所述复用度改变处理。
13.根据权利要求12所述的数据集合复用度改变方法,其中,
在计算所述第一优先度信息时,将每个数据集合的所述预测存取次数信息包含在所述数据集合使用相关信息中,并且
在计算所述第二优先度信息时,将每个数据集合的所述预测存取次数信息和关于节点之间的数据传送速度的信息包含在所述数据集合使用相关信息中。
14.一种用于存储计算机程序的存储介质,所述计算机程序用于控制作为数据集合复用度改变设备进行操作的计算机,
其中,所述计算机程序使得所述计算机执行:
优先度计算处理,用于基于数据集合使用相关信息使用信息处理设备来计算优先度信息,所述优先度信息表示数据集合要被存储到多个节点的顺序,所述数据集合使用相关信息包括与在由所述多个节点执行的并行处理中所参考的数据集合的使用相关的信息;以及
执行复用度改变处理以通过下述来改变所述数据集合的复用度:基于所述优先度信息和数据集合布置信息来改变以分布式方式保持在所述多个节点中的至少一个或多个数据集合的数目,所述数据集合布置信息指示将所述数据集合保持在其存储区域中的特定节点。
15.根据权利要求14所述的用于存储计算机程序的存储介质,其中,所述优先度计算处理基于描述所述并行处理的处理内容的应用程序和关于在所述并行处理中使用的数据集合的信息,来生成所述数据集合使用相关信息的至少一部分。
16.根据权利要求14或15所述的用于存储计算机程序的存储介质,其中,所述数据集合使用相关信息包括表示当所述多个节点执行所述并行处理时对数据集合的参考次数的每个数据集合的预测存取次数信息。
17.根据权利要求14至16中任一项所述的用于存储计算机程序的存储介质,其中,当所述并行处理包括用于连续执行多个工作的处理时,
所述优先度计算处理针对每个工作计算与所述多个工作相关联的优先度信息,并且
所述复用度管理处理基于与由所述节点执行的工作相关联的所述优先度信息,来改变所述数据集合的复用度。
18.根据权利要求14至17中任一项所述的用于存储计算机程序的存储介质,其中,所述优先度计算处理计算第一优先度信息和第二优先度信息,所述第一优先度信息与用于减小以复用方式保持的所述数据集合的数目的复用度减小相关联,所述第二优先度信息与用于增加保持在其中的至少一个或多个数据集合的数目的复用度增加相关联,并且
当执行所述复用度减小时,所述复用度管理处理基于所述第一优先度信息来改变所述数据集合的复用度,并且当执行所述复用度增加时,所述复用度改变处理基于所述第二优先度信息来改变所述数据集合的复用度。
19.根据权利要求18所述的用于存储计算机程序的存储介质,其中,所述优先度计算处理
在计算所述第一优先度信息时,将每个数据集合的所述预测存取次数信息包含在所述数据集合使用相关信息中,并且
在计算所述第二优先度信息时,将每个数据集合的所述预测存取次数信息和关于节点之间的数据传送速度的信息包含在所述数据集合使用相关信息中。
CN201480007396.0A 2013-02-04 2014-01-27 数据集合复用度改变设备、服务器和数据集合复用度改变方法 Pending CN104969197A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013019403 2013-02-04
JP2013-019403 2013-02-04
PCT/JP2014/000374 WO2014119269A1 (ja) 2013-02-04 2014-01-27 データセット多重度変更装置、サーバ、およびデータセット多重度変更方法

Publications (1)

Publication Number Publication Date
CN104969197A true CN104969197A (zh) 2015-10-07

Family

ID=51261987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480007396.0A Pending CN104969197A (zh) 2013-02-04 2014-01-27 数据集合复用度改变设备、服务器和数据集合复用度改变方法

Country Status (4)

Country Link
US (1) US20150381520A1 (zh)
JP (1) JP6115575B2 (zh)
CN (1) CN104969197A (zh)
WO (1) WO2014119269A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI701557B (zh) * 2019-05-24 2020-08-11 威聯通科技股份有限公司 多複製資料源系統的資料讀取方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10153979B2 (en) * 2014-03-31 2018-12-11 Hewlett Packard Enterprise Development Lp Prioritization of network traffic in a distributed processing system
US10642801B2 (en) * 2017-08-29 2020-05-05 Bank Of America Corporation System for determining the impact to databases, tables and views by batch processing
JP7283875B2 (ja) * 2018-09-10 2023-05-30 ファナック株式会社 数値制御装置
US11327665B2 (en) * 2019-09-20 2022-05-10 International Business Machines Corporation Managing data on volumes

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100153337A1 (en) * 2008-12-16 2010-06-17 Fujitsu Limited Computer-readable recording medium storing data processing program, server apparatus, and data processing method
CN102567120A (zh) * 2012-02-13 2012-07-11 北京星网锐捷网络技术有限公司 一种节点调度优先级确定方法及装置
CN102571974A (zh) * 2012-02-02 2012-07-11 清华大学 分布式数据中心数据冗余消除方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046352A (ja) * 2002-07-09 2004-02-12 Mitsubishi Electric Corp データ格納装置及び方法並びにプログラム
US8116326B2 (en) * 2005-06-28 2012-02-14 Oracle International Corporation Revenue management system and method
EP1938193A4 (en) * 2005-07-28 2010-08-04 Oracle Int Corp SYSTEM AND METHOD FOR MANAGING RECIPES
JP5691306B2 (ja) * 2010-09-03 2015-04-01 日本電気株式会社 情報処理システム
JP5760350B2 (ja) * 2010-09-03 2015-08-12 日本電気株式会社 情報処理システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100153337A1 (en) * 2008-12-16 2010-06-17 Fujitsu Limited Computer-readable recording medium storing data processing program, server apparatus, and data processing method
CN102571974A (zh) * 2012-02-02 2012-07-11 清华大学 分布式数据中心数据冗余消除方法
CN102567120A (zh) * 2012-02-13 2012-07-11 北京星网锐捷网络技术有限公司 一种节点调度优先级确定方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI701557B (zh) * 2019-05-24 2020-08-11 威聯通科技股份有限公司 多複製資料源系統的資料讀取方法

Also Published As

Publication number Publication date
JP6115575B2 (ja) 2017-04-19
US20150381520A1 (en) 2015-12-31
JPWO2014119269A1 (ja) 2017-01-26
WO2014119269A1 (ja) 2014-08-07

Similar Documents

Publication Publication Date Title
CN102254246B (zh) 一种工作流管理方法及其系统
Wu et al. Tree-based search algorithm for web service composition in SaaS
CN104969197A (zh) 数据集合复用度改变设备、服务器和数据集合复用度改变方法
CN109240946A (zh) 数据的多级缓存方法及终端设备
CN108090225A (zh) 数据库实例的运行方法、装置、系统及计算机可读存储介质
CN109510852B (zh) 灰度发布的方法及装置
Arredondo et al. Learning and adaptation of a policy for dynamic order acceptance in make-to-order manufacturing
US20220300323A1 (en) Job Scheduling Method and Job Scheduling Apparatus
Scerri et al. Why the elf acted autonomously: Towards a theory of adjustable autonomy
CN100485640C (zh) 用于企业软件系统的高速缓存
WO2001020480A2 (en) Binary trees for detecting inventory problems in an enterprise model
US6233572B1 (en) Computer implemented system and method for high level controlled searching through a problem space
CN104239520A (zh) 一种基于历史信息的hdfs数据块放置策略
KR20210036086A (ko) 인공지능 기반의 포장용기 재고 처리 장치
Dziurzanski et al. Hard real-time guarantee of automotive applications during mode changes
Braune et al. Applying genetic algorithms to the optimization of production planning in a real-world manufacturing environment
EP3550421B1 (en) Storage controller and io request processing method
CN109614386A (zh) 数据处理方法、装置、服务器及计算机可读存储介质
US20170323248A1 (en) System and Method of Parallelizing Order-By-Order Planning
CA2341331A1 (en) Computational data processing system and computational process implemented by means of such a system
US12014061B2 (en) Capacity and performance optimization in non-homogeneous storage
Kress et al. Introducing executable product models for the service industry
Chamkoori et al. Cost optimization of replicas in tree network of data grid with QoS and bandwidth constraints
Tomas Reducing Tail Latency In Cassandra Cluster Using Regression Based Replica Selection Algorithm
JP2953876B2 (ja) 生産スケジュール立案処理方式

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151007