WO2015052823A1 - クラウド管理装置、その管理方法、およびそのシステム - Google Patents

クラウド管理装置、その管理方法、およびそのシステム Download PDF

Info

Publication number
WO2015052823A1
WO2015052823A1 PCT/JP2013/077693 JP2013077693W WO2015052823A1 WO 2015052823 A1 WO2015052823 A1 WO 2015052823A1 JP 2013077693 W JP2013077693 W JP 2013077693W WO 2015052823 A1 WO2015052823 A1 WO 2015052823A1
Authority
WO
WIPO (PCT)
Prior art keywords
business
computer
data
terminal
job
Prior art date
Application number
PCT/JP2013/077693
Other languages
English (en)
French (fr)
Inventor
友隆 塩野谷
勝 康夫
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2013/077693 priority Critical patent/WO2015052823A1/ja
Publication of WO2015052823A1 publication Critical patent/WO2015052823A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to a cloud system management apparatus composed of a plurality of computers, and more particularly to an apparatus for changing the allocation of cloud computing resources in accordance with the usage status of a user and the state of business.
  • SaaS Software as a Service
  • a SaaS provider operates a computer cluster and network composed of a large number of computers, and provides an application usage environment to each user.
  • the value of such SaaS usage environment is one of the indicators of high service level, such as application responsiveness, but generally the problem that profitability declines when capital investment is made to improve service level There is.
  • Patent Document 1 discloses a transaction processing system including a mechanism for controlling a service level that can be used to solve such a problem relating to both maintenance of service level and profitability.
  • the technology described in Patent Document 1 improves the probability that the service levels of multiple services can be maintained more than required by controlling the order of the processes to be performed based on the SLA contract that has been concluded in advance and the arbitrarily assigned priority.
  • Patent Document 1 In the technology described in Patent Document 1, it is necessary to define a service level (allowable waiting time) for each service in advance. When the scale of the system increases, there is a problem that it is not known how much service level needs to be reset. In today's SaaS, the same service is often used by people, and the service level that is really required varies greatly depending on individual differences for each user. In the technique described in Patent Document 1, resources are excessively allocated in such a case, and surplus resources that can be provided for a service with a low required service level are used up, and the problem cannot be solved.
  • the present invention has been made in view of the above problems, Without the user setting the service level, the allocation of resources such as necessary bandwidth is estimated from the work being executed, and the service level such as data processing waiting time for the execution of the work is set to a certain level. It is an object of the present invention to provide a cloud management device that can be secured in a secure manner.
  • a typical example of the invention disclosed in the present application is as follows. That is, A monitoring unit that monitors the application of the terminal; A task switching time estimation unit that identifies the next task from the application used on the terminal and estimates a switching time to the next task; Corresponding to the application, a storage unit that holds information related to the business, the computer required for the business, and data as business correspondence information; Based on the next business identified by the business switching time estimation unit, A computer management unit for identifying a computer required for the next job and outputting a command for starting the computer required for the next job; Based on the next business identified by the business switching time estimation unit, A data prefetch processing unit that identifies data required for the next job and outputs a command to the external storage device so as to transmit the data required for the next job to the terminal; Switching time to the next business estimated by the business switching time estimation unit; And a network flow rate control unit for allocating a network bandwidth provided between the terminal and the storage based on a data amount of data necessary for the next job.
  • the allocation of resources such as a necessary bandwidth after that is estimated from the business being executed, and the waiting time of data processing for the execution of the business, etc.
  • Service level can be secured at a certain level.
  • the figure which shows the structural example of the cloud management apparatus by this invention The figure which shows the structural example of the database by this invention.
  • FIG. 1 shows a configuration example of the cloud management apparatus 1.
  • the cloud management device 1 is a device that includes a processor device 10, a memory device 12, a communication interface 14, a database 16, and a communication bus 18 that connects these components.
  • the communication interface 14 is a device for transmitting commands and data to other devices connected via the network 5 or receiving commands and data from the other devices.
  • the network 5 may be realized by a physical cable or may be realized by using a wireless technology. Further, it may be realized using a local area network, a wide area network, or the like.
  • One communication interface 14 is not necessarily provided in the cloud device, but when there are a wide variety of types of networks 5, a plurality of communication interfaces 14 corresponding to them may be mounted, and a dedicated network 5 is secured. For this purpose, a plurality of communication interfaces 14 may be connected to the same network 5. Thereafter, in the data transmission / reception between the simulator and other devices, unless otherwise specified, the transmission / reception is implicitly realized via the communication interface 14 and the network 5.
  • the processor device 10 is a device that executes a program stored in the memory device 12 or reads / writes data from / to the memory device 12.
  • a plurality of processor devices 10 may be mounted.
  • the memory device 12 is a device for storing processing means used by the device and storing information.
  • a general memory device 12 is a storage device that can be read and written at high speed, and is configured by a volatile memory such as Dynamic RAM. It may be a mass storage device such as a Hard Disk Drive or Solid State Disk, Alternatively, write-once media such as CD-Recordable may be used.
  • the memory device 12 is not necessarily composed of a single device, and a plurality of memory devices 12 and a plurality of types of memory devices 12 are arranged in parallel such as Redundant Arrays of Inexpensive Disks (RAID), or Just a Bunch Of Disks. It may be realized by connecting in a serial configuration such as (JBOD).
  • RAID Redundant Arrays of Inexpensive Disks
  • JBOD Just a Bunch Of Disks
  • the memory device 12 stores an application usage monitoring program 100, a network flow rate control program 102, a computer management program 104, a prefetching program 106, and a job switching time estimation program 108. These programs do not need to be always stored in the memory device 12, and may be loaded from another device connected via the network 5 when executed. In this case, the source file may be converted into native code that can be interpreted by the processor device 10 and placed in the memory device 12. In this embodiment, it is described that the program executes the function, but actually, the computer or CPU reads out and executes each program. Moreover, in order to execute each function and process, you may perform with a program and you may comprise as a process part which performs each function with hardware, such as a circuit, instead of a program. Each program stored in the memory device 12 will be described separately after the description of the components.
  • the database 16 is an apparatus provided with a means for managing a plurality of data as one set (record), managing the plurality of records as a table, and improving the searchability of records or data.
  • the database 16 is configured with a database management system stored in the secondary storage device or the memory device 12.
  • the data group stored in the database 16 is described as being organized into records having constraints and stored or referenced in units of tables. However, in actual implementation, meta information is added to each data. It may be a mechanism in which the target data can be obtained by mounting means such as giving only data satisfying a predetermined condition.
  • the database 16 itself does not have to be independent as a single device, and may be implemented using the processor device 10 and the memory device 12 or may be composed of a plurality of databases 16. .
  • the database 16 stores a data transfer amount history table 300, a used computer history table 302, and a job switching history table 304.
  • the data transfer amount history table 300 is a table for managing the history of data requested from the storage 4 by a job performed using a certain application program.
  • an application program name 400 and a business name 402 are used as a composite key for identifying a set of actually transferred data (data list 404) and its capacity 406.
  • the data transfer amount history table 300 is a table that holds the composite key, a set of actually transferred data (data list 404), and the capacity 406 as values.
  • the data list 404 may be expressed as a set of data requested by the same work recently performed, or may be expressed as a union of data requested in the past several implementations.
  • the elements constituting the data list 404 may be path names obtained via the file system, or may be a data range independent of the file system, such as the range of the address space of the storage 4.
  • the used computer history table 302 is a table for recording a computer 20 used as a calculation resource and a virtual computer 22 operating on the computer 20 by a task performed by utilizing a certain application program.
  • the job switching history table 304 is a table that records the time at which a job performed using an application program has changed, and the next job at that time. For convenience, each table is a separate table, but two or all tables may be merged and managed, or IDs are assigned to application program names 400, business names 402, etc., and managed as normalized tables. It doesn't matter.
  • the communication bus 18 is a device for realizing data transmission / reception between components in the device, and is configured by connecting an internal bus such as a CPU bus or an address bus and an expansion bus such as Serial ATA or PCI Express. Device.
  • the above is generally a wired communication bus 18, but may be configured with a wireless communication bus 18 for the purpose of simplifying wiring and the like. Thereafter, when there is no particular notice in the communication among the memory device 12, the processor device 10, and the communication interface 14, transmission / reception is implicitly performed via the communication bus 18.
  • the application usage monitoring program 100 is a program that monitors the state of an application program running on another computer 20 or the cloud management apparatus 1 and discloses it in response to a request from another program.
  • the state monitored by the application usage monitoring program 100 is, for example, an input of the user 30 to the application program, communication related to the target application program, or information stored in the memory.
  • the application usage monitoring program 100 may have a function of approving other programs for the purpose of ensuring security.
  • the network flow rate control program 102 is a program that determines the maximum bandwidth of the network 5 to be allocated to the computer 20 or application.
  • the computer management program 104 is a program for managing the power supply of the computers 20 constituting the computer cluster 2 (described later) or the virtual computer 22 operating on the computer 20.
  • the computer management program 104 includes, for example, a power-on function for turning on the power of the computer 20 or the virtual machine 22, a power-off function for turning off the power of the computer 20 or the virtual machine 22, and the power-on function and the power-off function.
  • the program includes a power supply scheduling function for scheduling and a power consumption monitoring function for monitoring the power consumption of the computer 20.
  • the prefetch program 106 refers to the application usage monitoring program 100 and the data transfer history table, and transfers the data to a device that can be accessed at a higher speed than the storage 4 device before the application program actually requests the storage 4 device. is there.
  • read-ahead refers to a function of transferring plausible data from a low-speed and large-capacity device such as an HDD or a tape to a high-speed and small-capacity device such as a volatile memory using the free time of the processor device 10.
  • the data transfer path between the storage 4 device and the terminal 3 that uses the data called from the storage 4 device is slower than the data read / write speed of the storage 4 device itself, so that prior transfer is required.
  • the task switching time estimation program 108 is a program that estimates the time when the task utilized by the user 30 ends and switches to the next task based on the monitoring result of the application usage monitoring program 100.
  • the end of the business may be that the application program is ended or, for example, a web application is changed to a different page.
  • the Web application is the target of the application monitoring program, and this Web application connects the data stored in the storage 4 connected to the network 5 to the network 5 as necessary. It is assumed that the program is transferred to the terminal 3. Of course, this assumption does not narrow the scope of the present invention.
  • FIG. 3 shows a realization example of SaaS using the cloud management apparatus 1 according to the present invention.
  • the cloud management device 1 the computer cluster 2 that operates the virtual computer 22 and provides the application program, the terminal 3 for the user 30 to execute the application program, the storage 4 that centrally manages data, and the above four configurations
  • This will be described below as a cloud system including the network 5 that connects the elements via the communication interface 14.
  • the computer cluster 2 is a collaborative calculation resource composed of one or more computers 20, and the computers 20 are generally connected by high-speed communication means. These computers 20 do not need to be physically located close to each other, and may be connected via the network 5.
  • the virtual computer 22 is a program that operates as if it is a single computer 20 on the computing resources of the computer 20.
  • the virtual computer 22 is realized as a function of dividing the calculation resource of one computer 20 or a function of handling the calculation resources of a plurality of computers 20 as one computer 20. Similar to the general computer 20, the virtual computer 22 has basic functions of processing, calculation, storage, input, and output.
  • the terminal 3 is a device for the user 30 to execute an application program running on the virtual machine 22.
  • a Web browser for executing a Web application is provided.
  • the storage 4 is a device that collects and records data used by each computer 20.
  • the storage 4 is not a mere storage device composed of a set of HDDs and optical media, but has a processor device 12, a communication interface 14, and a file system included in the cloud management device 1. It is assumed that the apparatus has a function of returning corresponding data in response to a data request via the network. This limitation does not narrow the scope of application of the present invention, but has a function that enables a program and an apparatus for accessing a storage to understand information recorded on the storage device and meta information meaning it, that is, a file system. Note that the storage 4 does not necessarily have a file system. Further, the database 4 may have a database 16 means as required. In FIG. 3, the database 16 provided in the cloud management device 1 is omitted.
  • the application usage monitoring program 100 monitors the terminal 3, monitors the application being used and the operation on the application, and identifies the business. Further, the computer management program 104 transmits a power control command to the computer cluster 2. The network flow rate control program 102 controls the maximum bandwidth allocated to each terminal 3 in the network 5. Then, the prefetch program 106 instructs the storage 4 to specify the data to be transferred and the transfer destination terminal 3.
  • FIG. 4 is a diagram illustrating a communication relationship between programs necessary for realizing the computer startup schedule determination process P1 of the cloud management device 1. In addition, the exchange of data between programs was also described.
  • the application usage monitoring program 100 is connected to the business switching time estimation program 108.
  • the job switching time estimation program 108 is connected to the computer management program 104 and the data prefetch program 106.
  • the data prefetching program 106 is connected to the computer management program 104 and the network flow rate control program 102.
  • the data prefetching program 106 issues a data transmission instruction to the storage 4.
  • the network flow rate control program 102 issues maximum bandwidth control to the network 5.
  • the computer management program 104 derives the required amount of computational resources for the computer cluster 2 from the two pieces of time information and business information transmitted from the business switching time estimation program 108 and the data prefetching program 106.
  • the computer startup schedule is determined so that the amount of calculation resources is aligned with the work start time, that is, the later of the two input times.
  • This behavior is determined by an objective function E10 that determines a computer startup interval 41s to be described later.
  • E10 which can suppress the peak power most is adopted, but the behavior can be changed by setting E10 such that the start-up is completed at the highest speed within a range where the peak power does not exceed the allowable power supply amount.
  • FIG. 5 is a sequence diagram of the computer startup schedule determination process P1 by the cloud management apparatus 1. Further, the reference numerals with parentheses added at the end of the sentence correspond to the processing in FIG.
  • the application usage monitoring program 100 monitors the terminal 3 and identifies a task from the operation to the application program and the application program operating on the virtual machine 22. Also, when the business is specified, the current time is recorded. (S100, S101) For example, if the word processor application is opened and characters are entered, the specified business may be meta information such as “document creation”. Information such as “using Web page ⁇ Title>” may be used using the title information of the page.
  • the business switching time estimation program 108 adds the business time 444 corresponding to the business and application specified in S101 in the business switching history table 304 of the database 16 to the business switching time recorded in S101. Estimated business switching estimated time 78 when the currently implemented business is switched.
  • the job switching time estimation program 108 notifies the network flow rate control program 102 and the computer management program 104 (S182), The next job is notified to the data prefetching program 106 and the computer management program 104, respectively.
  • the data prefetching program 106 refers to the data transfer amount history table 300, and obtains the data list 404 and the transfer amount 406 that have been used before in the execution of the next task notified from the task switching time estimation program 108.
  • the data prefetching program 106 notifies the network flow rate control program 102 of the referenced data transfer amount and information for identifying the terminal being monitored.
  • the network flow rate control program 102 collects the estimated task switching time 78 notified from the task switching time estimation program 108 and the data transfer amount notified from the data prefetching program 106 for each terminal 3.
  • the maximum bandwidth to be allocated is determined.
  • P2 The maximum bandwidth allocation determination process P2 will be described after the computer startup schedule determination process P1 is described.
  • the network flow rate control program 102 notifies the data prefetch program 106 of the bandwidth allocated at the current time 70.
  • the network 5 is actually controlled, and the maximum bandwidth of the network 5 that can be used by each terminal 3 is controlled.
  • the data prefetch program 106 sends information for identifying the terminal 3 to the storage and instructs the storage 4 to transfer data corresponding to the next job.
  • the computer management program 104 is notified of the estimated data transfer completion time 76 from the allocated bandwidth and data amount. (S163) This time can be calculated by dividing the data amount by the maximum bandwidth.
  • the computer management program 104 refers to the column 424 of the active computer and the column 426 of the active virtual computer in the used computer history table 302, and among the computers 20 necessary for the next task notified from the task switching time estimation program 108.
  • the computer 20 that is not currently standing up is identified. In this embodiment, a description will be given in a situation where a computer required for processing the next job is not started. In this example, it is assumed that additional startup of four computers 20 is necessary.
  • the computer management program 104 is late in the two times of the estimated task switching time 78 notified from the task switching time estimation program 108 and the estimated data transfer completion time 76 notified from the data prefetching program 106. Is set as the computer startup completion time 74.
  • FIG. 6 is a diagram illustrating the passage of time from left to right. The symbol drawn above from the center arrow is the time given from the outside world, and three times of the current time 70, the task switching estimated time 78, and the data transfer completion estimated time 76 are given. First, the latest data transfer completion estimated time 76 from the current time 70 is set as the computer startup completion time 74 by S141. Thereafter, the computer startup interval 41 is determined.
  • the time required for the startup of the computer 20 measured in advance is measured, and the startup of the final computer 20 is completed.
  • the computer startup time 42 is tr
  • the computer startup completion time 74 is Tp
  • the computer cluster 2 that has received the computer startup command 40 starts up the computer 20.
  • the computer 20 that has started up starts up the virtual computer 22 that the computer 20 has.
  • the computer management program 104 may separately issue a virtual computer 22 startup command.
  • an application program is launched, and this application program is utilized by the terminal 3 that has finished the previous job.
  • the application usage monitoring program 100 starts monitoring, and data prefetching and the computer 20 start-up are performed again according to business.
  • the timing of changing the computer startup interval 41 may be when a notification from the network flow rate control program 102 is received, or may be recalculated at the next startup of the computer 20.
  • the computer startup interval 41 is readjusted at the timing of the next computer startup, that is, at the timing when the computer startup interval 41 s has passed since the first computer startup command 40 is issued (FIG. 6). Will be described.
  • the job switching estimated time 78 is later.
  • the computer startup completion time 74 is not the data transfer completion estimated time 76 but the job switching estimated time 78. Thereafter, 3 which is the number of computers 20 that need to be started up, the computer startup time tr42, and Tp at the current time 70 are applied to E10, and the readjusted computer startup interval s'43 is derived.
  • the maximum bandwidth allocation determination process P2 is performed when both the notification of the data transfer amount D by the data prefetching program 106 (S161) and the notification of the task switching estimated time 78t by the task switching time estimation program 108 (S182) are performed, or This process is performed when one of the issuance of data D transfer completion notifications (S50) by the network 5 is triggered.
  • the task vector G (D, t) is registered in the task set S of the maximum bandwidth allocation determination process P2.
  • a task Gmin (D, tmin) having the smallest task switching estimated time 78 in S is scanned. (min represents the smallest in the set)
  • Each horizontal line represents a business, and an inverted triangle represents a business switching estimated time 78.
  • the rectangle below each horizontal line indicates the prefetched data (400-1, 400-2, 400-3) to be transferred, and the height in the vertical direction is the maximum bandwidth r (702-1, 702-2, 702-3). That is, the data amount D is expressed by the area.
  • the prefetch data (400-1, 400-2, 400-3) the prefetch data (400-1) scheduled to be transferred by the estimated task switching time 78-1 (next bandwidth update time) with the closest solid line. , 400-2, 400-3), and the dotted line indicates the data amount scheduled to be band-changed.
  • no new business is added here.
  • the lower diagram of FIG. 9 shows bandwidth allocation at the time when t1 has elapsed.
  • the job switching estimated times 78-2 and 78-3 indicate the job switching times of the jobs G2 and G3, respectively.
  • the maximum bandwidth allocation determination process P2 is issued again, and E20 is applied to G2 having the smallest t2 at the current time 70.
  • the amount of data that has already been transferred (t1 * ((R-r1) * (D2 / D2 + D3))) is subtracted from D2 and divided by t2.
  • the remaining r3 may be larger than r2.
  • the most greedy data ratios r2, r3 so that r3 does not exceed r2. May be determined.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

端末のアプリケーションを監視する監視し、端末で利用するアプリケーションから次の業務を特定し、次の業務への切り替わり時刻を推定する業務切り替わり時刻を推定し、次の業務が必要とする計算機を特定し、該次の業務に必要な計算機を立ち上げる指令を出力し、次の業務が必要とするデータを特定し、次の業務に必要なデータを前記端末に送信するように外部記憶装置に指令を出力し、 次の業務への切り替り推定時刻と、 前記端末が次の業務に必要なデータのデータ量に基づいて、前記端末と前記外部記憶装置との間に設けたネットワークの帯域を割り当てることにある。

Description

クラウド管理装置、その管理方法、およびそのシステム
 本発明は、複数の計算機で構成される、クラウドシステムの管理装置に係り、特に、ユーザの利用状況と業務の状態に併せて、クラウド計算資源の配分を変更する装置に関する。
 近年、設備投資費の低減を求める要求とネットワーク環境の整備に起因し、物理的な計算機を有さず、ネットワークで接続された外部の計算機上で稼働している、アプリケーションのみを利用する、クラウドコンピューティング、あるいはこれに基づくSaaS(Software as a Service)事業が注目されている。
SaaS事業者は多数の計算機から構成される計算機クラスタとネットワークを稼働させ、各ユーザにアプリケーション利用環境を提供する。
こうしたSaaS利用環境の価値としては、アプリケーションの即応性をはじめとする、サービスレベルの高さが一つの指標となるが、一般にサービスレベル向上のために設備投資をすると、採算性が低下するという問題がある。
 こうしたサービスレベルの維持と採算性の両立に関する問題の解決に利用可能なサービスレベルを制御する機構を備えた,トランザクション処理システムが特許文献1に記載されている。
特許文献1に記載の技術は、あらかじめ締結されたSLA契約と任意に割当てた優先度に基づき、実施するプロセスの順序を制御することで、複数サービスのサービスレベルを要求以上に保てる確率を向上させる技術である。
特許第4294879号
 特許文献1に記載の技術では、あらかじめ、サービスごとのサービスレベル(許容待ち時間)の定義が必要であり、実際運用してみないことには、顧客の満足する応答性能が分からなかったり、サービスのスケールが増加した際、どの程度のサービスレベルに設定し直す必要があるのか分からなかったりするという課題がある。
今日のSaaSは、同一のサービスを人が介して利用するケースが多く、ユーザごとの個体差によって、本当に要求されているサービスレベルが大きく変動する。
特許文献1に記載の技術では、こうしたケースにおいて過度にリソースを割り当ててしまい、要求サービスレベルの低いサービスに提供可能であった余剰リソースを使い果たしてしまい、課題を解決できない。
 本発明は、上記課題を鑑みて為されたものであって、
サービスレベルをユーザが設定をすることなく、実行中の業務から、その後に必要な帯域などのリソースの配分を推定し、業務の実行のためのデータ処理の待ち時間などのサービスレベルを一定のレベルに確保できるクラウド管理装置を提供することを、本発明の目的としている。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、
端末のアプリケーションを監視する監視部と、
前記端末で利用するアプリケーションから次の業務を特定し、次の業務への切り替わり時刻を推定する業務切り替わり時刻推定部と、
アプリケーションと対応して、業務および該業務に必要な計算機、並びにデータに関する情報を、業務対応情報として保持する記憶部と、
前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
次の業務が必要とする計算機を特定し、該次の業務に必要な計算機を立ち上げる指令を出力する計算機管理部と、
前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
次の業務が必要とするデータを特定し、次の業務に必要なデータを前記端末に送信するように外部記憶装置に指令を出力するデータ先読み処理部と、
前記業務切り替わり時刻推定部が推定をした次の業務への切り替り時刻と、
前記端末が次の業務に必要なデータのデータ量に基づいて、前記端末と前記ストレージとの間に設けたネットワークの帯域を割り当てるネットワーク流量制御部と、を有することを特徴とする。
 本発明によれば、サービスレベルをユーザが設定をすることなく、実行中の業務から、その後に必要な帯域などのリソースの配分を推定し、業務の実行のためのデータ処理の待ち時間などのサービスレベルを一定のレベルに確保できる。
本発明によるクラウド管理装置の構成例を示す図。 本発明によるデータベースの構成例を示す図。 本発明によるクラウドシステムの構成例を示す図。 本発明によるクラウド管理装置におけるプログラム同士の通信関係を示す図。 本発明による計算機立上スケジュール決定処理の一例を示す図。 本発明による計算機立上間隔決定処理の一例を示す図。 本発明による計算機立上間隔決定処理の一例を示す図。 本発明による最大帯域割当て決定処理の処理フローを示す図。 本発明による最大帯域割当て決定処理の一例を示す図。
 [装置の構成]
本明細書においては同一番号が割り当てられた構成要素は同一の構成要素を表す。
また、バリエーションがある構成要素に関しては、-a,-bのように、"-"とアルファベット一文字で同種だが異なる役割を果たす構成要素であることを表す。
図1にクラウド管理装置1の構成例を示す。
クラウド管理装置1は、プロセッサ装置10と、メモリ装置12と、通信インタフェース14と、データベース16と、これらの構成要素を接続する通信バス18と、から構成される装置である。
 通信インタフェース14は、ネットワーク5を介して接続された他の装置に対して、命令及びデータを送信、或いは当該他の装置からの命令及びデータを受信するための装置である。
このネットワーク5は、物理的なケーブルで実現してもよいし、無線技術を用いて実現してもよい。
また、Local Area NetworkやWide Area Networkなどを利用して実現してもよい。通信インタフェース14は、必ずしもクラウド装置に1つ設けるだけではなく、ネットワーク5の種類が多岐に渡る場合、それらに対応した通信インタフェース14を複数個搭載しても構わないし、専用のネットワーク5の確保などを目的として、同一ネットワーク5に複数の通信インタフェース14を接続しても構わない。以降、シミュレータと他の装置におけるデータの送受信において、特に断りが無い場合は、暗黙的に通信インタフェース14とネットワーク5を介して送受信を実現することとする。
 プロセッサ装置10はメモリ装置12に格納されているプログラムを実行、あるいはメモリ装置12に対するデータを読み書きする装置である。
プロセッサ装置10は複数台搭載されていても構わない。
メモリ装置12は、装置が使用する処理手段を格納および情報を記憶するための装置である。
一般的なメモリ装置12はDynamic RAMなどの揮発メモリによって構成される高速な読み書きが可能な記憶装置を指すが、アプリケーションが許すならば、
Hard Disk DriveやSolid State Diskなどの大容量記憶装置でもよいし、
または、CD-Recordableなどのライトワンスメディアでも構わない。
また、メモリ装置12は必ずしも単一の装置から構成されているわけではなく、複数台、複数種のメモリ装置12をRedundant Arrays of Inexpensive Disks(RAID)のような並列構成、あるいはJust a Bunch Of Disks(JBOD)のような直列構成に、接続して実現しても構わない。
 メモリ装置12には、アプリ利用監視プログラム100と、ネットワーク流量制御プログラム102と、計算機管理プログラム104と、先読みプログラム106と、業務切替り時刻推定プログラム108と、が格納されている。
これらのプログラムはメモリ装置12に常に格納されている必要はなく、実行する際にネットワーク5を介して接続された別の装置からロードしてきても構わないし、コンパイルモジュールを有する様態であれば、実行する際にプロセッサ装置10が解釈できるネイティブコードに、ソースファイルから変換して、メモリ装置12に配置しても構わない。
本実施例では、プログラムが、その機能を実行すると記載をしますが、実際には、コンピュータやCPUが各プログラムを読みだして実行させることになる。
また、各機能や処理を実行するために、プログラムで実行してもよいし、プログラムに代わり、回路などのハードウエアで各機能を実行する処理部として構成してもよい。メモリ装置12に格納されている各プログラムに関しては、構成要素の説明後、別途説明する。
 データベース16は、複数のデータを1つの集合(レコード)とし、複数のレコードをテーブルとして管理し、レコード、あるいはデータの検索性を高める手段を備えた装置である。
データベース16は、図示はしていないが、二次記憶装置もしくはメモリ装置12に格納したデータベースマネジメントシステムとともに構成する。
 一般には、レコードを構成するデータに一定の制約をかけたり、テーブル同士に関係性を持たせ、管理しやすくしている。
本明細書においても、データベース16に格納されたデータ群は,制約を有するレコードにまとめられ、テーブル単位に格納あるいは参照されるように記載するが、実際の実装においては、データそれぞれにメタ情報を付与するなどして、所定の条件を満たすデータのみを出力するようにするなどの実装手段によって、目的データを得られるような仕組みであっても構わない。
また、データベース16自体が一つの装置として独立している必要はなく、プロセッサ装置10と、メモリ装置12を用いて、実装されていても良いし、複数のデータベース16から構成されていても構わない。
データベース16には、データ転送量履歴テーブル300と、使用計算機履歴テーブル302と、業務切替履歴テーブル304と、が格納されている。
 各テーブルについて,図2を用いて説明する。
データ転送量履歴テーブル300は、あるアプリケーションプログラムを活用して行われた業務が、ストレージ4に要求したデータの履歴を管理するテーブルである。
データ転送量履歴テーブル300では、アプリケーションプログラム名400と業務名402を、実際に転送されたデータの集合(データリスト404)とその容量406を値を識別するための、複合キーとしている。データ転送量履歴テーブル300は、当該複合キーと、実際に転送されたデータの集合(データリスト404)とその容量406を値として保持するテーブルである。
データリスト404は、最近実施された同一業務が要求したデータの集合として表現してもよいし、過去数回の実施において要求したデータの和集合として表現してもよい。
また、データリスト404を構成する要素は、ファイルシステムを介して得られるパス名などでも良いし、ストレージ4のアドレス空間の範囲といった、ファイルシステムに依存しないデータ範囲であってもよい。
 使用計算機履歴テーブル302は、あるアプリケーションプログラムを活用して行われた業務が、計算資源として利用した計算機20とその計算機20上で動作していた仮想計算機22を記録するテーブルである。
業務切替履歴テーブル304は、あるアプリケーションプログラムを活用して行われた業務が、どの時刻で遷移したか、また、その際の次の業務を記録するテーブルである。
便宜上、各テーブルを別テーブルとしたが、2つないし全てのテーブルをマージして管理しても良いし、アプリケーションプログラム名400や業務名402などにIDを付与し、正規化したテーブルとして管理しても構わない。
 図1に戻って、残りの構成要素について説明する。
通信バス18は、装置内の構成要素間でのデータ送受信を実現するための装置であり、CPUバスやアドレスバスなどの内部バスとSerial ATAやPCI Expressなどの拡張バスを接続して構成される装置である。
上記は、一般的に有線の通信バス18であるが、配線の簡素化などを目的として無線の通信バス18で構成しても構わない。
以降、メモリ装置12、プロセッサ装置10及び通信インタフェース14間の通信において特に断りが無い場合は、暗黙的に通信バス18を介して送受信を実現する。
 <プログラムの説明>
メモリ装置12に格納されたプログラムについて説明する。
アプリ利用監視プログラム100は、他の計算機20もしくはクラウド管理装置1で動作しているアプリケーションプログラムの状態を監視し、他のプログラムからの要求に応じて開示するプログラムである。
アプリ利用監視プログラム100が監視する状態は、例えば、アプリケーションプログラムに対するユーザ30の入力であったり、対象のアプリケーションプログラムが関連する通信、あるいはメモリ上に格納している情報などである。
アプリ利用監視プログラム100は、セキュリティを担保するなどの目的で、他のプログラムを承認する機能を有していてもよい。
ネットワーク流量制御プログラム102は、計算機20あるいはアプリケーションに割当てるネットワーク5の最大帯域を決定するプログラムである。
 計算機管理プログラム104は、計算機クラスタ2(後述)を構成する計算機20、ないし計算機20上で動作している仮想計算機22の電源を管理するプログラムである。
計算機管理プログラム104は、例えば、計算機20あるいは仮想計算機22の電源を投入する電源投入機能と、計算機20あるいは仮想計算機22の電源を遮断する電源遮断機能と、上記電源投入機能、電源遮断機能とをスケジューリングする電源スケジューリング機能と、計算機20の電力消費量を監視する電力消費量監視機能と、から構成されるプログラムである。
 先読みプログラム106は、アプリ利用監視プログラム100とデータ転送履歴テーブルとを参照し,アプリケーションプログラムが実際にデータをストレージ4装置に要求する前に、ストレージ4装置より高速にアクセスできる装置に転送するプログラムである。
一般に、先読みは,HDDやテープなどの低速大容量な装置から揮発メモリなどの高速小容量な装置に、プロセッサ装置10の空き時間を用いて、尤もらしいデータを転送する機能を指すが、本明細書においては,ストレージ4装置そのもののデータ読出・書込速度よりも、ストレージ4装置と、そこから呼び出したデータを利用する端末3の間のデータ転送路が低速であるため、事前転送を要するという立場で先読みプログラム106を活用する点に注意されたい。
業務切替り時刻推定プログラム108は,アプリ利用監視プログラム100の監視結果に基づき,ユーザ30が活用している業務が終了し,次の業務に切替る時刻を推定するプログラムである。
 業務の終了とは、アプリケーションプログラムが終了されることであったり、例えばWebアプリケーションであれば、異なるページに遷移することであったりする。
本明細書では,イメージしやすくするため、Webアプリケーションをアプリ監視プログラムの対象とし、本Webアプリケーションは、ネットワーク5に接続したストレージ4に格納されたデータを、必要に応じて、同じくネットワーク5に接続している端末3に転送するプログラムとする。もちろん,この仮定は本発明の適用範囲を狭めるものではない。
 [動作例]
図3に本発明によるクラウド管理装置1を用いたSaaSの実現例を示す。
クラウド管理装置1と、仮想計算機22を稼働させ、アプリケーションプログラムを提供する計算機クラスタ2と、ユーザ30がアプリケーションプログラムを実行するための端末3と、データを集約管理するストレージ4と、上記4つの構成要素を通信インタフェース14を介して接続するネットワーク5と、から構成されるクラウドシステムとして以下に説明する。
計算機クラスタ2は、1台以上の計算機20から構成される協調計算資源であり、計算機20同士は、一般的には高速な通信手段で接続される。これらの計算機20は物理的に近くに配置される必要はなく、ネットワーク5を介して接続されていても良い。
仮想計算機22は、計算機20の計算資源上で、あたかも1台の計算機20のように動作するプログラムである。
仮想計算機22は、1台の計算機20が有する計算資源を分割する機能もしくは、複数の計算機20の計算資源を、1台の計算機20として扱う機能として実現される。
仮想計算機22は、一般的な計算機20と同じく、処理、演算、記憶、入力、出力の基本機能を備えている。
 また、本明細書においては、Webアプリケーションを動作させる基本機能を備えているものとする。
端末3は、ユーザ30が仮想計算機22上で動作しているアプリケーションプログラムを実行するための、装置である。
本明細書においては、Webアプリケーションを実行するためのWebブラウザを備えているものとする。
 ストレージ4は、各計算機20が用いるデータを集約して記録しておく装置である。本明細書においては、ストレージ4はHDDや光メディアの集合で構成される、単なるストレージデバイスではなく、クラウド管理装置1が有するプロセッサ装置12や通信インタフェース14、及びファイルシステムを有し、ネットワーク5を介したデータ要求に対して、対応するデータを返信する機能を有する装置であるとする。この限定は、本発明の適用範囲を狭めるものではなく、ストレージにアクセスするプログラム及び装置が、ストレージデバイス上に記録された情報とをそれを意味づけるメタ情報を理解できる機能、すなわちファイルシステムを有するのであれば、ストレージ4が、ファイルシステムを有する必要は必ずしもないことに注意されたい。
また、必要に応じてデータベース16手段をストレージ4に有していてもよい。
図3では、クラウド管理装置1に設けるデータベース16は、省略している。
 [外部インタフェースの説明]
各要素とクラウド管理装置1の関係について説明する。
アプリ利用監視プログラム100は、端末3を監視し、利用しているアプリケーションとそのアプリケーションへの操作を監視し、業務を特定する。
また、計算機管理プログラム104は、計算機クラスタ2に電源制御コマンドを送信する。
ネットワーク流量制御プログラム102は、ネットワーク5を各端末3ごとに割当最大帯域を制御する。
そして、先読みプログラム106は、ストレージ4に、転送すべきデータを特定する情報と、転送先の端末3を指示する。
 [クラウド管理装置1の動作]
<計算機立上スケジュール決定処理P1>
クラウド管理装置1の計算機立上スケジュール決定処理P1について、図4と図5を用いて説明する。
図4は、クラウド管理装置1の計算機立上スケジュール決定処理P1実現に必要なプログラム同士の通信関係を示す図である。
また、プログラム間でのデータのやりとりも記載した。

アプリ利用監視プログラム100は、業務切替り時刻推定プログラム108と接続されている。
業務切替り時刻推定プログラム108は、計算機管理プログラム104とデータ先読みプログラム106とに接続されている。
データ先読みプログラム106は、計算機管理プログラム104とネットワーク流量制御プログラム102とに接続されている。
 以上示した接続を用いて、データ先読みプログラム106は、ストレージ4にデータ送信指示を発行する。
ネットワーク流量制御プログラム102は、ネットワーク5に最大帯域制御を発行する。
特に、業務切替り時刻推定プログラム108とデータ先読みプログラム106とから送信される2つの時刻情報と業務情報から、計算機管理プログラム104は、計算機クラスタ2に、要求される計算資源量を導出する。
そして、この計算資源量を、業務開始時刻、すなわち入力された2つの時刻のうち、いづれか遅い方に揃いきるように、計算機立上スケジュールを決定する。
なお、この振る舞いは、後述する計算機立上間隔41sを決定する目的関数E10によって決定される。
本実施例では、最もピーク電力を抑制できるE10を採用したが、E10の設定により、ピーク電力が許容電源量を超えない範囲で最速で立上を完了するなど、振る舞いを換えることができる。
 図5は、クラウド管理装置1による計算機立上スケジュール決定処理P1のシーケンス図である。
また、文末に付記するカッコ付きの符号は、図5中の処理と対応する。
まず、アプリ利用監視プログラム100は、端末3を監視し、仮想計算機22上で動作している、アプリケーションプログラムへの動作とアプリケーションプログラムとから業務を特定する。また,業務を特定した際,現在時刻を記録する。 (S100,S101)
特定される業務は,例えば,ワープロアプリケーションが開かれており,文字が入力されていれば「文書作成」といったメタ情報であってもよいし,Webアプリケーションの利用であれば,利用しているWebページのTitle情報を用いて「Webページ<Title>を利用している」といった情報であってもよい。
その後、特定した業務と、アプリケーションプログラムと、監視をしている端末を識別する情報を、業務切替り時刻推定プログラム108と、データ先読みプログラム106と、にそれぞれ通知する。 (S102)
 業務切替り時刻推定プログラム108は、S101で記録した業務切替り時刻にデータベース16の業務切替履歴テーブル304において、S101で特定した業務とアプリケーションに対応する、業務時間444を加算し、
現在実施されている業務が切替る業務切替り推定時刻78を推定する。(S180)
その後,業務切替り時刻推定プログラム108はネットワーク流量制御プログラム102と、計算機管理プログラム104とに通知をし(S182)、
次の業務を、データ先読みプログラム106と計算機管理プログラム104とにそれぞれ通知する。 (S181)
 データ先読みプログラム106は、データ転送量履歴テーブル300を参照し、業務切替り時刻推定プログラム108より通知された次業務の実施において、以前活用したデータリスト404とその転送量406を得る。(S160)

データ先読みプログラム106は、ネットワーク流量制御プログラム102に、参照したデータ転送量と、監視をしている端末を識別する情報を、通知する。 (S161)
 ネットワーク流量制御プログラム102は、業務切替り時刻推定プログラム108から通知された業務切替り推定時刻78と、データ先読みプログラム106から通知されたデータ転送量と、を端末3ごとに収集し、各端末3に割当てる最大帯域を決定する。 (P2)
最大帯域割当て決定処理P2については、計算機立上スケジュール決定処理P1を説明した後に、説明する。
 ネットワーク流量制御プログラム102は、現時刻70で割当てた帯域を、データ先読みプログラム106に、通知する。 (S120)
また、実際にネットワーク5を制御し、各端末3が利用可能なネットワーク5最大帯域を制御する。 (S121)
 データ先読みプログラム106は、端末3を識別する情報をストレージに送るとともに、次の業務に対応するデータ転送を、ストレージ4に指示する。(S162)
また、割り当てられた帯域とデータ量から、データ転送完了推定時刻76を計算機管理プログラム104に通知する。 (S163)
この時刻は、データ量を最大帯域で除算することで算出可能である。
また、計算機管理プログラム104は,使用計算機履歴テーブル302の稼働計算機のカラム424や稼働仮想計算機のカラム426を参照し、業務切替り時刻推定プログラム108から通知された次業務に必要な計算機20のうち,現在立ち上っていない計算機20を特定する。 
この実施例では、次業務の処理に必要な計算機が、立ち上がっていない状況での説明をする。
本例においては、4台の計算機20の追加立上が必要であるとする。 (S140)
また、計算機管理プログラム104は、業務切替り時刻推定プログラム108から通知された業務切替り推定時刻78と、データ先読みプログラム106から通知されたデータ転送完了推定時刻76との2つの時刻の内、遅い方を計算機立上完了時刻74として設定する。 (S141)
本例においては、データ転送完了推定時刻76とする。 
以上の動作により、計算機立上完了時刻74と次業務に必要な計算機20を推定した計算機管理プログラム104は、計算機立上時間を決定する。 (S142)
 図6を用いて、この計算機20の確保スケジュールの決定方法について、説明する。
図6は、左から右に向かって時間経過を表す図である。
中心の矢印から上に描かれた記号が、外界から与えられた時刻であり、現時刻70と業務切替推定時刻78とデータ転送完了推定時刻76の3つの時刻が与えられている。
まず、S141により、現時刻70から最も遅いデータ転送完了推定時刻76が計算機立上完了時刻74として設定される。
その後、計算機立上間隔41を決定する。
このsの決定方法の一例としては、あらかじめ測定された、計算機20の立上に要する時間を測定し、最後の計算機20の立上が完了するように、
等間隔に立上スケジュールを設定する。
これを数式として表したものが、E10である。
計算機立上時間42をtr、 計算機立上完了時刻74をTp、立上を要する計算機20の数を4とすれば、計算機立上間隔s41は、
 s=(Tp-tr)/4 
として求められ、現時刻70から間隔sで計算機立上コマンド40を発行することで、消費電力の平滑化を実現し,施設の電源管理コストの低減を実現できる。
 図5に戻る。計算機立上コマンド40を受信した計算機クラスタ2は、計算機20を立ち上げる。(S190)
立ち上った計算機20は、自身が有する仮想計算機22を立ち上げる。(S191)
また、仮想計算機22を自動で立ち上げる機能を有さない計算機20に関しては、別途、計算機管理プログラム104が、仮想計算機22立上コマンドを発行してもよい。
立ち上った仮想計算機22上では、アプリケーションプログラムが立ち上げられ、前の業務を終えた端末3によって、このアプリケーションプログラムが活用される。(S192)
こうして端末3が、アプリケーションプログラムの活用を開始すると、アプリ利用監視プログラム100は監視を開始し、業務に応じて再度データの先読み及び計算機20の立上が実施される。(S100)
 <計算機20立上のリスケジュール>
実際の運用においては、端末3の不意な遮断や切替る業務の推定間違いなどに起因して、計算機立上完了時刻74が前後する。
本発明による計算機立上スケジュール決定処理P1は、外部状況の変化に応じてそうした時刻の変化に対応する。
その様子を計算機20立上リスケジュール処理として、図5に示す。
ネットワーク5は、データ転送を完了すると、ネットワーク流量制御プログラム102に、転送が完了した旨を通知する。(S50)
ネットワーク流量制御プログラム102は、再度最大帯域割当て決定処理P2を実施する。(P2)
その後、ネットワーク流量制御プログラム102、計算機管理プログラム104、データ先読みプログラム106は、前述したS120、S163、S140、S141、S142の各処理を実行し、計算機立上間隔を決定する。
 1台の計算機20を立ち上げた後、計算機立上間隔41を変更する様子を、図7を用いて説明する。
図7においては、S163のデータ転送完了推定時刻76の短縮を受信したものとする。
この計算機立上間隔41の変更タイミングは、ネットワーク流量制御プログラム102からの通知を受信した際でもよいし、次回の計算機20の立上時に、再計算しても良い。
本実施例では、次の計算機20の立上時、すなわち初回の計算機立上コマンド40発行時(図6)より計算機立上間隔41sだけ経ったタイミングで、計算機立上間隔41を再調整するものとして説明する。
本実施例では、データ転送完了推定時刻76の短縮により、業務切替推定時刻78の方がより遅くなった。
この際、計算機立上完了時刻74は、データ転送完了推定時刻76ではなく、業務切替推定時刻78となる。
その後、残りの立上が必要な計算機20の台数である3と、計算機立上時間tr42と、現時刻70におけるTpをE10に当てはめ、再調整された計算機立上間隔s’43を導出する。
上記の動作により、外的要因によって、計算機20の立上が、より早く必要になった際にも対応が可能となる。
 <最大帯域割当て決定処理P2>
最大帯域割当て決定処理P2の一例を、図8を用いて説明する。
最大帯域割当て決定処理P2は、データ先読みプログラム106によるデータ転送量Dの通知(S161)と業務切替り時刻推定プログラム108による業務切替推定時刻78tの通知(S182)が両方が行われたとき、もしくは、ネットワーク5によるデータDの転送完了通知(S50)の発行のいずれかを契機として、実施される処理である。
データ転送量Dと業務切替り推定時刻78 tの両方が与えられたときは、最大帯域割当て決定処理P2が有する業務集合Sに業務ベクトルG(D,t)を登録する。(S200)
一方、データDの転送完了通知が与えられたときは、業務集合SからデータDを有する業務ベクトルG(D,t)を削除する。
以上いづれかの操作によって、業務集合Sの要素数が変化した際、最大帯域割当て決定処理P2が動作する。
 まず、Sの中でも最も業務切替り推定時刻78が小さい業務Gmin=(D,tmin)を走査する。(minは集合の中で最も小さいことを表す) (S21)
以下のアルゴリズムに従って、各業務に帯域rを割当てる。
1. 業務Gminに対しては、その業務が有する転送データ量Dが時刻tまで転送完了するように、r=D/tを割当てる。 (S22)
2. 他の業務Giに対しては、残りの帯域(R - r)を各データ量の比率に応じて割当てる、すなわち ri= (R-r)×(Di/ΣDi)を割当てる。 (S23)
 上記最大帯割当て決定処理による最大帯域割当ての様子を、図9を用いて説明する。
図9においては、時刻が左から右に経過することを表している。
また、それぞれの横線は業務を表しており、逆三角は業務切替り推定時刻78を示している。
それぞれの横線の下の長方形は転送される先読みデータ(400-1、400-2、400-3)を示しており、縦方向の高さが、割り当てられている最大帯域r (702-1、702-2、702-3)を示している。すなわち面積でデータ量Dを表現している。
先読みデータ(400-1、400-2、400-3)においては,実線が最も近い業務切替り推定時刻78-1(次回帯域更新の時刻)までに転送される予定の先読みデータ(400-1、400-2、400-3)のデータ量を示し、点線が帯域変更される予定のデータ量を示している。ただし、ここでは簡単のため新たな業務は追加されないものとする。
 図9の上図の状態では、G1が最もtが短い業務、すなわちGminである。そこで、G1に対しては、E20が適用され、r1=D1/t1が割当てられる。(S22)

残りのG2、G3に対しては、E22を適用し、それぞれのデータ量D2、D3に応じた帯域を割当てる。
E22の定義により、帯域rが変更されない限り、D2、D3の転送は同時刻に完了する。
図9の下図は、t1経過した時点の帯域割当てを示す。
業務切り替え推定時刻78-2、78-3は、それぞれ業務G2、G3の業務切り替え時刻を示す。
D1の転送が完了すると、再度最大帯域割当て決定処理P2が発行され、現時刻70で最も小さいt2を有するG2に対して、E20が適用される。
この際は、既に転送が完了しているデータ量 (t1*((R-r1)*(D2/D2+D3))をD2から差し引いたデータ量をt2で除算し、求められる。
この結果、残りのr3はr2より大きくなることがある。そうしたケースにおいて、r3がr2を超えないように最も貪欲にデータ比率だけでr2、r3
を決定しても良い。
1.クラスタ管理装置
2.計算機クラスタ
3.端末
4.ストレージ
5.ネットワーク
P1.計算機立上スケジュール決定処理
P2.最大帯域割当て決定処理

Claims (9)

  1. 端末のアプリケーションを監視する監視部と、
    前記端末で利用するアプリケーションから次の業務を特定し、次の業務への切り替わり時刻を推定する業務切り替わり時刻推定部と、
    アプリケーションと対応して、業務および該業務に必要な計算機、並びにデータに関する情報を、業務対応情報として保持する記憶部と、
    前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
    次の業務が必要とする計算機を特定し、該次の業務に必要な計算機を立ち上げる指令を出力する計算機管理部と、
    前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
    次の業務が必要とするデータを特定し、次の業務に必要なデータを前記端末に送信するように外部記憶装置に指令を出力するデータ先読み処理部と、
    前記業務切り替わり時刻推定部が推定をした次の業務への切り替り時刻と、前記端末が次の業務に必要なデータのデータ量に基づいて、前記端末と前記外部記憶装置との間に設けたネットワークの帯域を割り当てるネットワーク流量制御部と、
    を有することを特徴とするクラウド管理装置。
  2. 請求項1記載のクラウド管理装置であって、
    前記業務切り替わり時刻推定部は、前記端末で稼働するアプリケーションと業務を特定し、該アプリケーションと業務に対応した次の業務と業務時間を、業務切り替え履歴情報から特定することで、次の業務と次の業務への切り替わり時刻を推定することを特徴とするクラウド管理装置。
  3. 請求項2記載のクラウド管理装置であって、
    前記計算機管理部は、前記アプリケーションと業務に対応した計算機からなる前記記憶部に保持した使用計算機履歴情報から、次の業務に必要な計算機を特定し、特定した計算機の台数と、前記業務切り替え推定時刻から各計算機の立上げ時刻を算出することを特徴とするクラウド管理装置。
  4. 請求項3記載のクラウド管理装置であって、
    前記ネットワーク流量制御部は、複数の業務のデータ量に対応し、各業務の転送に必要なネットワーク帯域を割り当てることを特徴とするクラウド管理装置。
  5. 端末のアプリケーションを監視し、
    前記端末で稼働するアプリケーションから次の業務を特定し、次の業務への切り替わり時刻を推定し、
    アプリケーションと対応して、業務、ならびに該業務に必要な計算機、データ量を、業務対応情報として記憶部に保持し、
    前記特定した次の業務に基づいて、
    次の業務が必要とする計算機を特定し、次の業務に必要な計算機を立ち上げ、
    前記特定した次の業務に基づいて、
    次の業務が必要とするデータを特定し、次の業務に必要なデータを前記端末に送信するように外部記憶装置に指令を出力し、
    前記推定をした次の業務への切り替り時刻と、前記端末が次の業務に必要なデータのデータ量に基づいて、前記端末と前記外部記憶装置間に設けたネットワークの帯域を割り当てる、
    ことを特徴とするクラウド管理方法。
  6. 請求項5記載のクラウド管理方法であって、
    前記端末で稼働するアプリケーションと業務を特定し、該アプリケーションと業務に対応した次の業務と業務時間を、業務切り替え履歴情報から特定することで、次の業務と次の業務への切り替わり時刻を推定することを特徴とするクラウド管理方法。
  7. 請求項6記載のクラウド管理方法であって、
    前記アプリケーションと業務に対応した計算機からなる使用計算機履歴情報と、前記特定した次の業務から、次の業務に必要な計算機を特定し、特定した計算機の台数と、前記業務切り替え推定時刻から各計算機の立上げ時刻を算出することを特徴とするクラウド管理方法。
  8. 請求項7記載のクラウド管理方法であって、複数の業務のデータ量に対応し、各業務の転送に必要なネットワーク帯域を割り当てることを特徴とするクラウド管理方法。
  9. アプリケーションを実行する端末装置と、
    前記端末装置のアプリケーションを監視する監視部と、
    前記端末装置で稼働するアプリケーションから次の業務を特定し、次の業務への切り替わり時刻を推定する業務切り替わり時刻推定部と、
    アプリケーションと対応して、業務および該業務に必要な計算機、並びにデータに関する情報を、業務対応情報として保持する記憶部と、
    データ送信指示を受けて、ネットワークにデータを送信するデータを保持するストレージ装置と、
    前記端末装置と前記ストレージ装置との間に設けたネットワークと、
    前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
    次の業務が必要とする計算機を特定し、該次の業務に必要な計算機を立ち上げる計算機管理部と、
    前記業務切り替わり時刻推定部が特定した次の業務に基づいて、
    次の業務が必要とするデータを特定し、次の業務に必要なデータを前記端末に送信するように前記ストレージ装置に指令を出力するデータ先読み処理部と、
    前記業務切り替わり時刻推定部が推定をした次の業務への切り替り時刻と、前記端末装置が次の業務に必要なデータのデータ量に基づいて、前記ネットワークの帯域を割り当てるネットワーク流量制御部と、
    を有することを特徴とするクラウドシステム。
PCT/JP2013/077693 2013-10-11 2013-10-11 クラウド管理装置、その管理方法、およびそのシステム WO2015052823A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/077693 WO2015052823A1 (ja) 2013-10-11 2013-10-11 クラウド管理装置、その管理方法、およびそのシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/077693 WO2015052823A1 (ja) 2013-10-11 2013-10-11 クラウド管理装置、その管理方法、およびそのシステム

Publications (1)

Publication Number Publication Date
WO2015052823A1 true WO2015052823A1 (ja) 2015-04-16

Family

ID=52812670

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/077693 WO2015052823A1 (ja) 2013-10-11 2013-10-11 クラウド管理装置、その管理方法、およびそのシステム

Country Status (1)

Country Link
WO (1) WO2015052823A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020107106A (ja) * 2018-12-27 2020-07-09 楽天株式会社 端末装置、制御方法、ならびに、プログラム
US20210019299A1 (en) * 2019-07-17 2021-01-21 Aveva Software, Llc System and server comprising database schema for accessing and managing utilization and job data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010136257A (ja) * 2008-12-08 2010-06-17 Hitachi Ltd ネットワークシステム及び通信計画サーバ
JP2013041397A (ja) * 2011-08-15 2013-02-28 Hitachi Systems Ltd 仮想サーバ制御システム及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010136257A (ja) * 2008-12-08 2010-06-17 Hitachi Ltd ネットワークシステム及び通信計画サーバ
JP2013041397A (ja) * 2011-08-15 2013-02-28 Hitachi Systems Ltd 仮想サーバ制御システム及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020107106A (ja) * 2018-12-27 2020-07-09 楽天株式会社 端末装置、制御方法、ならびに、プログラム
US20210019299A1 (en) * 2019-07-17 2021-01-21 Aveva Software, Llc System and server comprising database schema for accessing and managing utilization and job data

Similar Documents

Publication Publication Date Title
JP5384576B2 (ja) 複数の異種のソリッドステート・ストレージ・ロケーションの選択的利用
US9407569B1 (en) Providing notification of computing resource availability for on-demand allocation
US7882136B2 (en) Foresight data transfer type hierarchical storage system
US7613878B2 (en) Management of number of disk groups that can be activated in storage device
JP4885575B2 (ja) 記憶領域の割当ての最適化方法及びそれを実現するための管理計算機
JP4464378B2 (ja) 同一データを纏める事で格納領域を節約する計算機システム、ストレージシステム及びそれらの制御方法
JP5052278B2 (ja) 記憶装置を制御する装置及び方法
JP2010097533A (ja) パーティションで区切られた計算機システムにおけるアプリケーション移動及び消費電力の最適化
US20100131728A1 (en) Computer-readable recording medium storing data migration program, data migration method, and data migration apparatus
JP2010282420A (ja) 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
CN108228482B (zh) 用于管理存储系统中的缓存设备的方法和系统
JP2008112293A (ja) 管理計算機及び電源制御方法並びに計算機システム
JP4748950B2 (ja) 記憶領域管理方法及びシステム
US20120151174A1 (en) Computer system, management method of the computer system, and program
WO2015145598A1 (ja) 並列演算処理システムのデータ配分装置、データ配分方法、及びデータ配分プログラム
JP6115575B2 (ja) データセット多重度変更装置、サーバ、データセット多重度変更方法、およびコンピュータ・プログラム
JP5193801B2 (ja) ストレージシステムの性能向上又は管理方法、システム、装置及びプログラム
US8627126B2 (en) Optimized power savings in a storage virtualization system
WO2015052823A1 (ja) クラウド管理装置、その管理方法、およびそのシステム
JP6019940B2 (ja) 情報処理装置、コピー制御プログラム、およびコピー制御方法
JP2015184883A (ja) 計算機システム
JP2009282664A (ja) ストレージデータ管理システム及びストレージデータ管理プログラム
JP6200100B2 (ja) 計算機システム
CN114780170B (zh) 容器资源的配置方法、装置、设备及存储介质
US11972148B2 (en) Proactive storage operation management using thermal states

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13895157

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13895157

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP