JP6166758B2 - Information processing system, information processing method, and information processing program - Google Patents
Information processing system, information processing method, and information processing program Download PDFInfo
- Publication number
- JP6166758B2 JP6166758B2 JP2015194099A JP2015194099A JP6166758B2 JP 6166758 B2 JP6166758 B2 JP 6166758B2 JP 2015194099 A JP2015194099 A JP 2015194099A JP 2015194099 A JP2015194099 A JP 2015194099A JP 6166758 B2 JP6166758 B2 JP 6166758B2
- Authority
- JP
- Japan
- Prior art keywords
- license
- job
- user
- licenses
- information processing
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 88
- 238000003672 processing method Methods 0.000 title claims description 14
- 238000000034 method Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 15
- 238000004458 analytical method Methods 0.000 description 37
- 238000012544 monitoring process Methods 0.000 description 25
- 238000012545 processing Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000000717 retained effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012916 structural analysis Methods 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明の一側面は、コンピュータにジョブを実行させるために必要なライセンスを管理する情報処理システム、情報処理方法、および情報処理プログラムに関する。 One aspect of the present invention relates to an information processing system, an information processing method, and an information processing program for managing a license necessary for causing a computer to execute a job.
従来から、コンピュータにジョブを実行させるために必要なライセンスを管理する技術が知られている。例えば下記特許文献1には、複数の拠点で取り扱うライセンスを管理する情報処理システムが記載されている。この情報処理システムは、ジョブを実行するジョブ処理装置と、ライセンスが確保されたジョブをジョブ処理装置へ送信するキュー管理装置とを備える。キュー管理装置は、キューからジョブを読み出すごとに該ジョブに対応するライセンスの確保をジョブ処理装置に要求するキュー処理部を有する。一方、ジョブ処理装置は、キュー管理装置からの要求に対しライセンスの確保の成否を応答するライセンス確保処理部を有する。各拠点には、自己に限らず他の拠点も利用可能な仮想のライセンスが設定される。
Conventionally, a technique for managing a license necessary for causing a computer to execute a job is known. For example,
特許文献1の技術では、ある拠点でライセンスが足りなくなると、他の拠点のライセンスをリモート制御で使用することで、必要な追加のライセンスを確保する。しかしこの手法では、本来は必要な数のライセンスを保有する第1の拠点が、第2の拠点に一部のライセンスを貸しているために、第3の拠点からライセンスを借りる必要が生じ得る。あるいは、第1の拠点が第3の拠点からライセンスを借りることができずにジョブを実行できない状況も生じ得る。そこで、他のユーザに影響を与えることなく、ライセンス数が足りないユーザに追加のライセンスを提供することが望まれている。
In the technique of
本発明の一側面に係る情報処理システムは、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理システムであって、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付部と、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定部と、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保部とを備える。 An information processing system according to an aspect of the present invention is an information processing system that manages a license necessary for job execution for each of a plurality of users, and a job of one user who has one or more first licenses Whether the number of vacant first licenses is equal to or greater than the number of licenses necessary for job execution, with reference to the reception unit that receives the first license database and the first license database that stores the usage status of the first license of the user And a second license database that stores one or more second licenses that are not associated with any of the plurality of users when the number of free first licenses is less than the required number of licenses To secure at least one second license necessary for job execution, and only during the period during which the job is executed, At least one second license is coercive and a securing portion to be assigned to the user.
本発明の一側面に係る情報処理方法は、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理方法であって、1以上のプロセッサのうちの少なくとも一つが、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、1以上のプロセッサのうちの少なくとも一つが、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、1以上のプロセッサのうちの少なくとも一つが、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保ステップとを含む。 An information processing method according to an aspect of the present invention is an information processing method for managing a license necessary for job execution for each of a plurality of users, wherein at least one of the one or more processors includes one or more An accepting step for accepting a job of one user who holds the first license, and at least one of the one or more processors is vacant with reference to the first license database storing the usage status of the first license of the user. A determination step for determining whether or not the number of first licenses that are present is equal to or greater than the number of licenses necessary for job execution, and at least one of the one or more processors needs the number of free first licenses One or more second licenses that are not associated with any of a plurality of users when the number of licenses is less than To secure at least one second license necessary for executing the job, and to allocate the reserved at least one second license to the user only during the period during which the job is executed. Steps.
本発明の一側面に係る情報処理プログラムは、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理方法をコンピュータに実行させる情報処理プログラムであって、情報処理方法が、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保ステップとを含む。 An information processing program according to an aspect of the present invention is an information processing program for causing a computer to execute an information processing method for managing a license necessary for job execution for each of a plurality of users. The reception step of accepting the job of one user who holds the above first license and the first license database storing the usage status of the first license of the user, the number of free first licenses is the job A determination step for determining whether or not the number of licenses required for execution of the license is equal to or greater than the number of licenses required, and if the number of free first licenses is less than the required number of licenses, it is not associated with any of a plurality of users Referring to the second license database that stores one or more second licenses, the minimum required for job execution Securing a second license for one Kutomo, only in the period in which the job is run, and a securing allocating to a user at least one second license reserved.
このような側面においては、ジョブを指定したユーザが保有する第1ライセンスの個数がそのジョブの実行に必要な数に満たないと、誰にも関連付けられていない第2ライセンスが追加のライセンスとしてそのユーザに割り当てられる。したがって、そのユーザへのライセンスの追加が他のユーザに影響を及ぼさない。しかも、追加された第2ライセンスはジョブを実行する期間に限って割り当てられるので、予め十分な第2ライセンスを用意しておけばその第2ライセンスが枯渇するおそれがない。以上の理由により、他のユーザに影響を与えることなく、ライセンス数が足りないユーザに追加のライセンスを提供することができる。 In such an aspect, if the number of the first licenses held by the user who has designated the job is less than the number necessary for the execution of the job, the second license not associated with anyone is added as an additional license. Assigned to the user. Therefore, adding a license to the user does not affect other users. In addition, since the added second license is allocated only during the job execution period, if a sufficient second license is prepared in advance, the second license is not likely to be exhausted. For the above reasons, additional licenses can be provided to users who do not have enough licenses without affecting other users.
本発明の一側面によれば、他のユーザに影響を与えることなく、ライセンス数が足りないユーザに追加のライセンスを提供することができる。 According to one aspect of the present invention, an additional license can be provided to a user whose number of licenses is insufficient without affecting other users.
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the description of the drawings, the same or equivalent elements are denoted by the same reference numerals, and redundant description is omitted.
図1〜5を参照しながら、実施形態に係る情報処理システム1の機能および構成を説明する。情報処理システム1は、計算環境をインターネットなどの通信ネットワークを介してユーザに提供するコンピュータ・システムである。すなわち、情報処理システム1はいわゆるクラウドサービスを提供する。計算環境は、1以上のコンピュータと、そのコンピュータ上で実行されるソフトウェアとを用いて構築される。ユーザがジョブの実行を情報処理システム1に命令すると、情報処理システム1はその命令に従って所定の処理を実行し、処理結果をそのユーザに提供する。
The function and configuration of the
「ユーザ」とは、情報処理システム1を利用する人、グループ、または組織である。「ジョブ」とは、ユーザが情報処理システム1に依頼する仕事の単位である。ジョブの種類は何ら限定されないが、例として、構造解析や流体解析などのシミュレーションと、ビッグデータの集計または解析とが挙げられる。
A “user” is a person, group, or organization that uses the
本実施形態では、ユーザは、ジョブを情報処理システム1に実行させるためにライセンスを得なければならない場合がある。「ライセンス」とは、ユーザが情報処理システム1を利用する権利または資格である。情報処理システム1は、ライセンスを要することなく実行できるプログラム(オープンソースのプログラム)をユーザに提供してもよい。ただし、本実施形態の特徴の一つはライセンスの管理であるので、以下では、ユーザがライセンスを要する場合について説明する。本実施形態では2種類のライセンスが存在する。
In the present embodiment, the user may have to obtain a license to cause the
一つは、ユーザが予め保有するライセンスであり、本明細書ではこれを「保有ライセンス」または「第1ライセンス」という。ユーザは事前にライセンスを購入して保有することができる。なお、ユーザが誰からライセンスを購入するかは何ら限定されない。一般に、保有ライセンスには情報処理システム1の利用に関する制約が設定されるが、その制約の内容は限定されない。例えば、保有ライセンスには、利用可能期間や、一度に利用できるハードウェア資源の量(例えばコンピュータの台数)に関する制約などが設定され得る。ユーザは1以上のライセンスを専有することができる。あるユーザの保有ライセンスを他人は利用できない。また、ユーザは自分の保有ライセンスを他人に貸与することができない。
One is a license held in advance by the user, and is referred to as “owned license” or “first license” in this specification. The user can purchase and hold a license in advance. Note that who the user purchases the license from is not limited. Generally, restrictions on the use of the
もう一つは、ある一つのジョブが実行される期間に限ってユーザに提供されるライセンスであり、本明細書ではこれを「一時ライセンス」または「第2ライセンス」という。この一時ライセンスは、恒久的にではなく一時的にユーザに割り当てられる。情報処理システム1は十分な量の一時ライセンスを、情報処理システム1のユーザの誰とも関連付けない態様で、予め用意する。そして、情報処理システム1はユーザが一時ライセンスを必要とする期間に限って、必要な量の一時ライセンスをそのユーザに関連付ける。したがって、ある一人のユーザのために用いられた一時ライセンスが、その後に別のユーザのために用いられることがあり得る。ただし、一つの一時ライセンスを複数のユーザが同時に使用することはできない。
The other is a license provided to the user only during a period during which a certain job is executed. In this specification, this license is referred to as a “temporary license” or a “second license”. This temporary license is assigned to the user temporarily, not permanently. The
本実施形態では、一時ライセンスは、利用時間に応じて料金が上がっていく従量制(すなわち、従量制ライセンス)であるとする。これに関連し、本実施形態では、各ユーザは一時ライセンスを利用する際に予算の制約を受けるものとする。この予算は、一時ライセンスの利用時間および利用数に応じて減っていく。一方で、ユーザは費用を負担することでその予算を増やすことができる。各ユーザの予算および利用額は情報処理システム1内の所定のデータベース(図示せず)に記憶されるものとする。
In the present embodiment, it is assumed that the temporary license is a pay-as-you-go system (that is, a pay-per-use license) in which the fee increases according to the usage time. In this connection, in this embodiment, each user is assumed to be limited by a budget when using a temporary license. This budget decreases according to the usage time and the number of temporary licenses. On the other hand, the user can increase the budget by paying the expenses. The budget and usage amount of each user are stored in a predetermined database (not shown) in the
ユーザはジョブの実行を情報処理システム1に指示する際に、どのようにライセンスを利用するかを指定する。本実施形態ではライセンスの利用態様として以下の三つが用意されるが、そのうちの自動判定が情報処理システム1の特徴の一つである。ライセンスの自動判定は、保有ライセンスが足りない場合に一時ライセンスを追加する態様であり、ライセンスのハイブリッド利用であるともいえる。
・保有ライセンスのみの利用
・一時ライセンスのみの利用
・利用するライセンスの自動判定
When the user instructs the
・ Use only owned licenses ・ Use only temporary licenses ・ Automatic determination of licenses to use
情報処理システム1の全体構成を図1に示す。情報処理システム1はインターネットなどの通信ネットワークNを介して1以上のユーザ端末Tと通信することができる。図1では3台のユーザ端末Tを示すが、ユーザ端末Tの台数は何ら限定されない。
The overall configuration of the
ユーザ端末Tは、ユーザが所有または利用するコンピュータである。ユーザ端末Tの具体的な種類は限定されない。例えば、ユーザ端末Tは、据置型または携帯型のパーソナルコンピュータでもよいし、高機能携帯電話機(スマートフォン)や携帯電話機、携帯情報端末(PDA)などの携帯端末でもよい。あるいは、複数の端末の組合せが論理的に一つのユーザ端末Tとして機能してもよい。 The user terminal T is a computer owned or used by the user. The specific type of user terminal T is not limited. For example, the user terminal T may be a stationary or portable personal computer, or a portable terminal such as a high-function mobile phone (smart phone), a mobile phone, or a personal digital assistant (PDA). Alternatively, a combination of a plurality of terminals may function logically as one user terminal T.
ユーザ端末Tは、ユーザの指示に応じて情報処理システム1にアクセスし、ジョブを入力するための画面を受信および表示する。ユーザがその画面を介してジョブに関する情報(ジョブ情報)を入力すると、ユーザ端末Tはそのジョブ情報を情報処理システム1に送信する。なお、ジョブ情報については後で詳細に説明する。その後、ユーザ端末Tは、情報処理システム1から自動的に、またはユーザの更なる指示に応じて、処理結果を受信および表示する。本実施形態ではユーザ端末Tに表示される画面(入出力インタフェース)がウェブページであることを前提とするが、画面の提供方法は何ら限定されない。
The user terminal T accesses the
情報処理システム1は、コンピュータ群10、管理サーバ20、第2ライセンスサーバ30、および各ユーザの計算環境40を備える。各ユーザの計算環境40は、ウェブサーバ41、ジョブテーブル42、第1ライセンスサーバ43、および解析サーバ44を備える。本実施形態では、各ユーザの計算環境40において最初から用意される要素は、ウェブサーバ41、ジョブテーブル42、および第1ライセンスサーバ43である。これに対して、解析サーバ44は、ユーザから受け付けたジョブを実行するために設定される仮想的なサーバである。
The
コンピュータ群10は、予め用意される複数のコンピュータの集合である。一般に、個々のコンピュータは高性能であり、例えば複数のプロセッサおよび大容量のメモリを備える。 The computer group 10 is a set of a plurality of computers prepared in advance. In general, each computer has high performance, for example, a plurality of processors and a large-capacity memory.
管理サーバ20は、ユーザから受け付けたジョブ(ジョブ情報)に応じて、該ユーザの計算環境40内に解析サーバ44を設定するコンピュータである。管理サーバ20は、コンピュータ群10内のコンピュータを用いて解析サーバ44を設定する。管理サーバ20が解析サーバ44を設定するタイミングは限定されず、例えば、管理サーバ20はジョブを受け付けたことに応じて解析サーバ44を設定してもよい。あるいは、管理サーバ20はジョブの実行に必要なライセンスが確保された後に解析サーバ44を設定してもよい。ジョブが終了すると、管理サーバ20は、解析サーバ44として機能していたコンピュータを解放する。解放されたコンピュータは将来の他のジョブを実行するために再び利用され得る。1台のコンピュータが複数のプロセッサ(例えばCPU)を有するのであれば、該複数のプロセッサのうちの一部のプロセッサのみが解析サーバ44として機能することもあり得る。
The
第2ライセンスサーバ30は、一時ライセンス(第2ライセンス)に関する情報を記憶するデータベース(第2ライセンスデータベース)である。第2ライセンスサーバ30を参照することで、現時点でどの一時ライセンスが利用されているかを知ることができる。
The
第2ライセンスサーバ30のデータ構成は限定されない。例えば、一つの一時ライセンスが、下記の3項目を含むレコードで表現されてもよい。
・一時ライセンスを一意に特定する識別子(一時ライセンスID)
・一時ライセンスが割り当てられているユーザの識別子(ユーザID)
・一時ライセンスが割り当てられているジョブの識別子(ジョブID)
このデータ構成の例では、ユーザIDおよびジョブIDの初期値は空値(NULL)である。一時ライセンスがユーザに割り当てられると、そのユーザのIDと、そのユーザが指示したジョブのIDとが対応のレコードに設定される。一時ライセンスを用いたジョブが終了すると、その一時ライセンスに対応するレコードのユーザIDおよびジョブIDが空値に更新される。第2ライセンスサーバ30を参照または更新する装置は限定されず、例えば管理サーバ20または解析サーバ44がその処理を実行してもよい。
The data configuration of the
-An identifier that uniquely identifies the temporary license (temporary license ID)
-Identifier of the user to whom the temporary license is assigned (user ID)
-The identifier of the job to which the temporary license is assigned (job ID)
In this data configuration example, the initial values of the user ID and job ID are null values (NULL). When the temporary license is assigned to the user, the ID of the user and the ID of the job designated by the user are set in the corresponding record. When the job using the temporary license is completed, the user ID and job ID of the record corresponding to the temporary license are updated to null values. An apparatus for referring to or updating the
次に、各ユーザの計算環境40の概要を説明する。ウェブサーバ41は、ジョブの実行を指示したりジョブの実行結果を確認したりするための画面(ウェブページ)をユーザ端末Tに提供するコンピュータである。ユーザはその画面を介して、ジョブの実行条件を入力し、ジョブの実行を指示し、処理結果を確認することができる。
Next, an outline of the
ジョブテーブル42は、ウェブサーバ41がユーザ端末Tから受信したジョブを示すジョブ情報を記憶するデータベースである。ジョブテーブル42は待ち行列として機能してもよい。図2にジョブ情報の例を示す。本実施形態では、ジョブ情報の個々のレコードは、ジョブID、解析ツール、計算モデルファイル、インスタンスID、インスタンス数、実行コマンド、およびライセンス利用種別という項目を含む。
The job table 42 is a database that stores job information indicating jobs received by the
ジョブIDは、個々のジョブを一意に特定するための識別子である。解析ツールは、ジョブの実行に用いられるソフトウェアを示す。計算モデルファイルは、ジョブの実行に必要な各種パラメータが記述されたファイルを示す。例えば、ジョブが構造解析に関するものであれば、計算モデルファイルは物体の形状や、境界条件、時間軸、物体に加わる外力などを示すデータを含み得る。インスタンスIDは、解析サーバ44を一意に特定するための識別子である。インスタンス数は、解析サーバ44の構築に用いるコンピュータの数である。実行コマンドは、解析ツールを用いたジョブの実行を解析サーバ44に指示するための命令である。ライセンス利用種別は、ジョブを実行する際のライセンスの利用態様を示す。本実施形態では、ライセンス利用種別は「1」、「2」、「3」のいずれかで表され、「1」は保有ライセンスのみの利用を示し、「2」は一時ライセンスのみの利用を示し、「3」は利用するライセンスの自動判定を示すものとする。図2は例えば、ジョブ「0003」がツールAを用いて実行され、その実行に3台のコンピュータが用いられ、その実行の際に利用するライセンスが自動的に判定されることを示す。
The job ID is an identifier for uniquely identifying each job. The analysis tool indicates software used for job execution. The calculation model file indicates a file in which various parameters necessary for job execution are described. For example, if the job is related to structural analysis, the calculation model file may include data indicating the shape of the object, boundary conditions, time axis, external force applied to the object, and the like. The instance ID is an identifier for uniquely identifying the
第1ライセンスサーバ43は、ユーザの保有ライセンス(第1ライセンス)の利用状況を記憶するデータベース(第1ライセンスデータベース)である。第1ライセンスサーバ43を参照することで、ユーザが何個のライセンスを保有し、現時点でそのうち何個のライセンスを利用しているかを知ることができる。
The
第1ライセンスサーバ43のデータ構成は限定されない。例えば、一つの保有ライセンスが、下記の2項目を含むレコードで表現されてもよい。
・保有ライセンスを一意に特定する識別子(保有ライセンスID)
・保有ライセンスが割り当てられているジョブの識別子(ジョブID)
このデータ構成の例では、ジョブIDの初期値は空値(NULL)である。保有ライセンスがジョブに割り当てられると、そのジョブのIDが対応のレコードに設定される。保有ライセンスを用いたジョブが終了すると、その保有ライセンスに対応するレコードのジョブIDが空値に更新される。第1ライセンスサーバ43を参照または更新する装置は限定されず、例えば管理サーバ20または解析サーバ44がその処理を実行してもよい。
The data configuration of the
・ Identifier that uniquely identifies the license (held license ID)
-Identifier of the job to which the license is assigned (Job ID)
In this data configuration example, the initial value of the job ID is a null value (NULL). When the owned license is assigned to a job, the ID of the job is set in the corresponding record. When the job using the owned license is completed, the job ID of the record corresponding to the owned license is updated to a null value. An apparatus for referring to or updating the
情報処理システム1内には様々な種類のコンピュータが存在する。そのコンピュータ100の一般的なハードウェア構成を図3に示す。コンピュータ100は、オペレーティングシステムやアプリケーション・プログラムなどを実行するプロセッサ(例えばCPU)101と、ROMおよびRAMで構成される主記憶部102と、ハードディスクやフラッシュメモリなどで構成される補助記憶部103と、ネットワークカードまたは無線通信モジュールで構成される通信制御部104と、キーボードやマウスなどの入力装置105と、モニタなどの出力装置106とを備える。
There are various types of computers in the
情報処理システム1内の各機能要素は、プロセッサ101または主記憶部102の上に所定のソフトウェアを読み込ませ、プロセッサ101の制御の下で通信制御部104や、入力装置105、出力装置106などを動作させ、主記憶部102または補助記憶部103におけるデータの読み出し及び書き込みを行うことで実現される。処理に必要なデータおよびデータベースは主記憶部102または補助記憶部103内に格納される。
Each functional element in the
図4を参照しながら、情報処理システム1の機能および構成をより具体的に説明する。図4は、ある一人のユーザの計算環境40と、その計算環境40が参照し得る第2ライセンスサーバ30とを示す。図4に示すように、情報処理システム1は機能的構成要素として受付部401、判定部402、確保部403、実行部404、および監視部405を備える。各機能要素がどのコンピュータ100上に実装されるかは限定されない。
The function and configuration of the
受付部401は、保有ライセンスを持つユーザのジョブを受け付ける機能要素である。例えば、受付部401はウェブサーバ41、管理サーバ20、または解析サーバ44上で実現される。「ユーザのジョブを受け付ける」とは、ユーザにより指示されたジョブに関する情報、すなわちジョブ情報を取得することを意味する。ジョブの受け付けは、ジョブ情報をユーザ端末Tから直接に受信することと、ユーザ端末Tから受信して情報処理システム1内に記憶されたジョブ情報を後で読み出すこととの双方を含む概念である。本実施形態では、ウェブサーバ41がユーザ端末Tからジョブ情報を受信してジョブテーブル42に格納し、管理サーバ20または解析サーバ44が、ジョブテーブル42からそのジョブ情報を読み出すことを前提とするが、ジョブを受け付ける態様はこれに限定されず、任意の仕組みを採用してよい。受付部401は、受け付けたジョブ情報を判定部402に出力する。受付部401は、ジョブを指示したユーザを示すユーザIDもユーザ端末Tから直接にまたは間接的に取得し、そのユーザIDも判定部402に出力する。
The accepting
ジョブ情報はユーザにより入力される。図5はウェブサーバ41により提供される入力画面の例を示し、特に、ライセンスの利用態様を指定する画面を示す。図5の例では、ウェブページ50での入力に応じて、ライセンスの利用態様を選択するためのモーダルウィンドウ51が表示されている。ユーザは三つの利用態様の中から一つを選択することができる(図5は、「保有ライセンスのみの利用」が選択された状態を示す)。当然ながら、入力画面の構成はこの例に限定されない。
The job information is input by the user. FIG. 5 shows an example of an input screen provided by the
判定部402は、第1ライセンスサーバ43を参照して、空いている保有ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する機能要素である。例えば、受付部401は解析サーバ44または管理サーバ20上で実現される。
The
まず、判定部402は、入力されたジョブ情報のライセンス利用種別を参照する。後続の処理はこのライセンス利用種別により変わる。
First, the
ライセンス利用種別が「1」である場合には、判定部402はジョブの実行に必要なライセンス数(以下では「必要数」ともいう)を特定する。この処理の具体的な方法は限定されない。例えば、判定部402はライセンスに関するルールを予め記憶しており、必要なライセンス数をジョブ情報およびそのルールから求めてもよい。必要なライセンス数は、例えば解析ツールおよびインスタンス数のうちの少なくとも一つに基づいて決められてもよい。さらに、判定部402は第1ライセンスサーバ43を参照することで、空いている保有ライセンスの個数(以下では「空き数」ともいう)を特定する。続いて、判定部402は空き数と必要数とを比較する。
When the license usage type is “1”, the
空き数が必要数以上であれば、判定部402はジョブを即時に実行できると判断し、ジョブ情報を実行部404に出力する。また、判定部402は第1ライセンスサーバ43にアクセスし、これからジョブの実行に用いる1以上の保有ライセンスのレコードに、ジョブ情報で示されるジョブIDを設定する。
If the vacant number is greater than or equal to the required number, the
一方、空き数が必要数未満であれば、判定部402はジョブ情報を実行部404に出力することなく所定の時間待機する。その待機時間が経過すると、判定部402は再び第1ライセンスサーバ43を参照することで保有ライセンスの空き数を特定し、その空き数と必要数とを比較する。もし空き数が必要数以上であれば、判定部402はジョブを実行できると判断し、ジョブ情報を実行部404に出力すると共に、第1ライセンスサーバ43内のレコードを上記のように更新する。一方、空き数が必要数未満であれば、判定部402は再び所定の時間待機する。空き数が必要数未満ということは、情報処理システム1がユーザのために別のジョブを実行中であることを意味する。その別のジョブが終了すれば、そのジョブのために確保されていた保有ライセンスが解放されて再利用可能になるので、待機することで次のジョブを実行することが可能になる。
On the other hand, if the available number is less than the necessary number, the
ライセンス利用種別が「2」である場合には、判定部402はジョブの実行に必要なライセンス数を特定する。この必要数の特定方法は、ライセンス利用種別が「1」である場合と同様である。続いて、判定部402はジョブ情報およびユーザIDを確保部403に出力すると共に、特定した個数を必要な一時ライセンスの個数として確保部403に出力する。ライセンス利用種別が「2」である場合にはジョブは一時ライセンスのみを用いて実行されるので、判定部402は保有ライセンスの利用状況を参照する必要がない。
When the license usage type is “2”, the
ライセンス利用種別が「3」である場合には、判定部402はジョブの実行に必要なライセンス数(必要数)を特定する。この特定方法は、ライセンス利用種別が「1」である場合と同様である。さらに、判定部402は第1ライセンスサーバ43を参照することで、空いている保有ライセンスの個数(空き数)を特定する。そして、判定部402は空き数と必要数とを比較する。
When the license usage type is “3”, the
空き数が必要数以上であれば、判定部402はジョブを即時に実行できると判断し、ジョブ情報を実行部404に出力する。また、判定部402は第1ライセンスサーバ43にアクセスし、これからジョブの実行に用いる1以上の保有ライセンスのレコードに、ジョブ情報で示されるジョブIDを設定する。このように、保有ライセンスのみでジョブを実行できる場合には、判定部402はライセンス利用種別が「1」である場合と同様の処理を実行する。
If the vacant number is greater than or equal to the required number, the
一方、空き数が必要数未満であれば、判定部402は必要数と空き数との差分を必要な一時ライセンスの個数として求め、その個数、ジョブ情報、およびユーザIDを確保部403に出力する。
On the other hand, if the available number is less than the required number, the
確保部403は、ジョブの実行に必要な一時ライセンスを確保し、そのジョブが実行される期間に限って、確保された一時ライセンスをユーザに割り当てる機能要素である。例えば、確保部403は解析サーバ44または管理サーバ20上で実現される。
The securing
確保部403は第2ライセンスサーバ30を参照して、判定部402から入力された個数の一時ライセンスを、ジョブが実行される期間に限って確保する。「ジョブが実行される期間に限って一時ライセンスを確保する」とは、ジョブを実行する前に、他のジョブ(他のユーザのジョブ、および自分の他のジョブ)の実行に用いられないようにその一時ライセンスを設定し、ジョブが完了するとその一時ライセンスを、他のジョブを実行できるように解放することを意味する。具体的には、確保部403は第2ライセンスサーバ30にアクセスして、入力された個数の一時ライセンスに対応する1以上のレコードにユーザIDおよびジョブIDを設定する。一時ライセンスを確保すると、確保部403はジョブ情報およびユーザIDを実行部404に出力する。
The securing
実行部404は、ユーザにより指示されたジョブを実行する機能要素である。実行部404は解析サーバ44上で実現される。ジョブが終了すると、実行部404はジョブの結果を出力する。
The
もし1以上の保有ライセンスを用いてジョブを実行した場合には、実行部404はその保有ライセンスに対応する第1ライセンスサーバ43内のレコードからジョブIDを削除することで、その保有ライセンスを解放する。保有ライセンスを解放するとは、保有ライセンスとジョブとの関連付けを消去することを意味する。当然ながら、ユーザと保有ライセンスとの関連付けは、その解放処理で消去されることなく維持される。
If a job is executed using one or more possessed licenses, the
もし1以上の一時ライセンスを用いてジョブを実行した場合には、実行部404はその一時ライセンスに対応する第2ライセンスサーバ30内のレコードからユーザIDおよびジョブIDを削除することで、その一時ライセンスを解放する。一時ライセンスを解放するとは、一時ライセンスと、ユーザおよびジョブの組合せとの関連付けを消去することを意味する。この解放処理により、その一時ライセンスは、情報処理システム1のユーザの誰とも関連付けられない状態に戻る。
If the job is executed using one or more temporary licenses, the
実行部404はジョブの実行結果を任意の方法で出力してよい。例えば、実行部404はウェブサーバ41を介してその結果をユーザ端末Tに送信してもよい。あるいは、実行部404は情報処理システム1内の所定のデータベース(図示せず)にその結果を格納してもよく、この場合には、ユーザ端末Tはウェブサーバ41を介してそのデータベースから結果を読み出すことができる。
The
ジョブの実行に一時ライセンスが用いられる場合には、実行部404は、確保されている一時ライセンスの個数とジョブの実行時間とに基づいて、所定のデータベース(図示せず)に記憶されている利用額を更新する。この更新は、今回のジョブの実行に掛かった費用を加算する処理である。
When a temporary license is used for job execution, the
監視部405は、ユーザの予算および一時ライセンスの利用額を参照して該ユーザのジョブの実行を制御する機能要素である。監視部405はウェブサーバ41、管理サーバ20、または解析サーバ44上で実現される。
The
監視部405は、一時ライセンスの利用額と予算とを所定のタイミングで(例えば定期的に)に比較する。もし利用額が予算の上限に達した場合には、監視部405はユーザの実行中のジョブが存在するか否かを判定する。利用額が予算の上限に達しかつ実行中のジョブが存在する場合には、監視部405はユーザ毎に予め設定されている条件に従って、下記の処理A,Bのいずれか一つを実行する。
・処理A:実行部404にジョブを実行させ続ける。そして、ジョブの終了後に、ユーザに不足額を請求するための処理を実行する。
・処理B:実行中のジョブを強制的に終了させる。監視部405は、その後にユーザが追加の料金を支払って予算を確保した場合に、実行部404にそのジョブを最初から再実行させてもよい。
The
Process A: The
Process B: The job being executed is forcibly terminated. The
なお、処理Bにおいて、監視部405は実行中のジョブを強制的に一時停止させ、ユーザが予算を確保した後に実行部404にそのジョブを中断時点から再開させてもよい。
In the process B, the
一方、一時ライセンスの利用額が予算の上限に達していない場合、または実行中のジョブが存在しない場合には、監視部405はその後の処理を実行することなく、次の監視タイミングまで待機する。次回の監視タイミングの設定方法は限定されない。
On the other hand, if the usage amount of the temporary license has not reached the upper limit of the budget, or if there is no job being executed, the
次に、図6〜8を参照しながら、情報処理システム1の動作を説明するとともに、本実施形態に係る情報処理方法について説明する。
Next, the operation of the
図6を参照しながら、ジョブの受付から実行までの一連の処理を説明する。まず、受付部401がジョブ(ジョブ情報)を受け付け(ステップS11、受付ステップ)、判定部402がライセンス利用種別を判定する(ステップS12)。
A series of processing from job reception to execution will be described with reference to FIG. First, the
もしその種別が「1」(保有ライセンス)である場合には、判定部402は保有ライセンスの空き数とジョブの実行に必要なライセンスの個数とを比較する(ステップS13)。そして、空き数が必要数以上である場合には(ステップS13においてYES)、管理サーバ20がジョブ情報に基づいて解析サーバ44を設定し(ステップS14)、実行部404がジョブを実行する(ステップS15)。一方、空き数が必要数未満である場合には(ステップS13においてNO)、判定部402は所定時間待機した後にステップS13を再度実行する。
If the type is “1” (owned license), the
ステップS12においてライセンス利用種別が「2」(一時ライセンス)である場合には、確保部403が、必要な1以上の一時ライセンスを確保し(ステップS16)、続いて、管理サーバ20がジョブ情報に基づいて解析サーバ44を設定する(ステップS17)。そして、実行部404がジョブを実行し(ステップS18)、ジョブが終了するとその一時ライセンスを解放する(ステップS19)。
If the license usage type is “2” (temporary license) in step S12, the securing
ステップS12においてライセンス利用種別が「3」(利用するライセンスの自動判定)である場合には、自動判定に基づいてジョブが実行される(ステップS20)。図7を参照しながらこの処理の詳細を説明する。まず、判定部402が、保有ライセンスの空き数とジョブの実行に必要なライセンスの個数とを比較する(ステップS201、判定ステップ)。そして、空き数が必要数以上である場合には(ステップS201においてYES)、管理サーバ20がジョブ情報に基づいて解析サーバ44を設定し(ステップS202)、実行部404がジョブを実行する(ステップS203)。一方、空き数が必要数未満である場合には(ステップS201においてNO)、確保部403が、必要な1以上の一時ライセンスを確保し(ステップS204、確保ステップ)、続いて、管理サーバ20がジョブ情報に基づいて解析サーバ44を設定する(ステップS205)。そして、実行部404がジョブを実行し(ステップS206)、ジョブが終了するとその一時ライセンスを解放する(ステップS207)。
If the license usage type is “3” (automatic determination of the license to be used) in step S12, the job is executed based on the automatic determination (step S20). Details of this processing will be described with reference to FIG. First, the
図6,7に示す例では、ジョブの実行に必要なライセンスが確保された後に管理サーバ20が解析サーバ44(すなわち、実行部404)を構築し、これにより、その解析サーバ44を待機させることなく直ぐに稼働させることができる。ただし、解析サーバ44を設定(構築)するタイミングはこれに限定されない。例えば、管理サーバ20が解析サーバ44を設定した後に判定部402がライセンス利用種別を判定してもよい。具体的には、管理サーバ20は、受付部401がジョブ情報を受け付けたことに応じて(すなわち、上記ステップS11およびステップS12の間において)解析サーバ44を設定してもよい。
In the example shown in FIGS. 6 and 7, the
図8を参照しながら監視部405の動作を説明する。監視部405は、ユーザの一時ライセンスの利用額が予算の上限に達したか否かを判定し(ステップS21)、利用額が予算の上限に達した場合にはさらに、実行中のジョブが存在するか否かを判定する(ステップS22)。
The operation of the
監視部405は、利用額が予算の上限に達しかつ実行中のジョブが存在する場合にのみ(ステップS21,S22の双方においてYES)、事前の設定に基づいてジョブを実行し続けるか否かを判定する(ステップS23)。実行部404にジョブを実行させ続ける場合には(ステップS23においてYES)、監視部405はそのジョブが終了した後に、ユーザに不足額を請求するための処理を実行する(ステップS24)。一方、ジョブを止める場合には(ステップS23においてNO)、監視部405はジョブを強制終了させる(ステップS25)。監視部405はステップS25の後に、ユーザが追加の予算を確保するまでその状態を維持し(ステップS26においてNO)、その後、追加の予算が確保された場合に(ステップS26においてYES)実行部404にジョブを再実行させてもよい(ステップS27)。
Only when the usage amount reaches the upper limit of the budget and there is a job being executed (YES in both steps S21 and S22), the
次に、図9を参照しながら、1以上のコンピュータ100を情報処理システム1として機能させるための情報処理プログラムP1を説明する。
Next, an information processing program P1 for causing one or
情報処理プログラムP1は、メインモジュールP10、受付モジュールP11、判定モジュールP12、確保モジュールP13、実行モジュールP14、および監視モジュールP15を備える。 The information processing program P1 includes a main module P10, a reception module P11, a determination module P12, a securing module P13, an execution module P14, and a monitoring module P15.
メインモジュールP10は、ジョブの実行を統括的に実行する部分である。受付モジュールP11、判定モジュールP12、確保モジュールP13、実行モジュールP14、および監視モジュールP15を実行することにより実現される機能はそれぞれ、上記の受付部401、判定部402、確保部403、実行部404、および監視部405の機能と同様である。
The main module P10 is a part that performs overall execution of jobs. The functions realized by executing the reception module P11, the determination module P12, the securing module P13, the execution module P14, and the monitoring module P15 are the
情報処理プログラムP1は、例えば、CD−ROMやDVD−ROM、半導体メモリなどの有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、情報処理プログラムP1は、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。 The information processing program P1 may be provided after being fixedly recorded on a tangible recording medium such as a CD-ROM, DVD-ROM, or semiconductor memory. Alternatively, the information processing program P1 may be provided via a communication network as a data signal superimposed on a carrier wave.
以上説明したように、本発明の一側面に係る情報処理システムは、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理システムであって、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付部と、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定部と、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保部とを備える。 As described above, the information processing system according to one aspect of the present invention is an information processing system that manages licenses necessary for job execution for each of a plurality of users, and has one or more first licenses. Referring to a reception unit that receives a job of one user and a first license database that stores the usage status of the first license of the user, the number of vacant first licenses is the number of licenses necessary for job execution. When the number of free first licenses is less than the required number of licenses, one or more second licenses that are not associated with any of a plurality of users are determined. Referring to the stored second license database, at least one second license necessary for job execution is secured, and the job is executed Only period, and a securing portion to be assigned to a user at least one second license reserved.
本発明の一側面に係る情報処理方法は、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理方法であって、1以上のプロセッサのうちの少なくとも一つが、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、1以上のプロセッサのうちの少なくとも一つが、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、1以上のプロセッサのうちの少なくとも一つが、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保ステップとを含む。 An information processing method according to an aspect of the present invention is an information processing method for managing a license necessary for job execution for each of a plurality of users, wherein at least one of the one or more processors includes one or more An accepting step for accepting a job of one user who holds the first license, and at least one of the one or more processors is vacant with reference to the first license database storing the usage status of the first license of the user. A determination step for determining whether or not the number of first licenses that are present is equal to or greater than the number of licenses necessary for job execution, and at least one of the one or more processors needs the number of free first licenses One or more second licenses that are not associated with any of a plurality of users when the number of licenses is less than To secure at least one second license necessary for executing the job, and to allocate the reserved at least one second license to the user only during the period during which the job is executed. Steps.
本発明の一側面に係る情報処理プログラムは、複数のユーザのそれぞれについて、ジョブの実行に必要なライセンスを管理する情報処理方法をコンピュータに実行させる情報処理プログラムであって、情報処理方法が、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、ユーザの第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、空いている第1ライセンスの個数が、ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、空いている第1ライセンスの個数が必要なライセンス数未満である場合に、複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、ジョブの実行に必要な少なくとも一つの第2ライセンスを確保し、ジョブが実行される期間に限って、確保された少なくとも一つの第2ライセンスをユーザに割り当てる確保ステップとを含む。 An information processing program according to an aspect of the present invention is an information processing program for causing a computer to execute an information processing method for managing a license necessary for job execution for each of a plurality of users. The reception step of accepting the job of one user who holds the above first license and the first license database storing the usage status of the first license of the user, the number of free first licenses is the job A determination step for determining whether or not the number of licenses required for execution of the license is equal to or greater than the number of licenses required, and if the number of free first licenses is less than the required number of licenses, it is not associated with any of a plurality of users Referring to the second license database that stores one or more second licenses, the minimum required for job execution Securing a second license for one Kutomo, only in the period in which the job is run, and a securing allocating to a user at least one second license reserved.
このような側面においては、ジョブを指定したユーザが保有する第1ライセンスの個数がそのジョブの実行に必要な数に満たないと、誰にも関連付けられていない第2ライセンスが追加のライセンスとしてそのユーザに割り当てられる。したがって、そのユーザへのライセンスの追加が他のユーザに影響を及ぼさない。しかも、追加された第2ライセンスはジョブを実行する期間に限って割り当てられるので、予め十分な第2ライセンスを用意しておけばその第2ライセンスが枯渇するおそれがない。以上の理由により、他のユーザに影響を与えることなく、ライセンス数が足りないユーザに追加のライセンスを提供することができる。 In such an aspect, if the number of the first licenses held by the user who has designated the job is less than the number necessary for the execution of the job, the second license not associated with anyone is added as an additional license. Assigned to the user. Therefore, adding a license to the user does not affect other users. In addition, since the added second license is allocated only during the job execution period, if a sufficient second license is prepared in advance, the second license is not likely to be exhausted. For the above reasons, additional licenses can be provided to users who do not have enough licenses without affecting other users.
他の側面に係る情報処理システムでは、ジョブを実行する実行部を更に備え、実行部が、ジョブが終了した後に、確保された少なくとも一つの第2ライセンスが再利用できるように該少なくとも一つの第2ライセンスを解放してもよい。このように第2ライセンスを再利用できるようにすることで、予め用意すべき第2ライセンスの個数を抑えることができる。 An information processing system according to another aspect further includes an execution unit that executes a job, and the execution unit recycles at least one second license secured after the job is completed. Two licenses may be released. By making the second license reusable in this way, the number of second licenses to be prepared in advance can be suppressed.
他の側面に係る情報処理システムでは、第2ライセンスの利用額とユーザの予算とを比較し、該利用額が該予算の上限に達した場合に、実行部により実行されているジョブを強制的に終了または一時停止する監視部を更に備えてもよい。予算の裏付けのないジョブの実行を止めることで、情報処理システムでの計算の負荷を下げると共に、意図しない料金の負担がユーザに生ずることを未然に防止することができる。 In the information processing system according to another aspect, the usage amount of the second license is compared with the user's budget, and if the usage amount reaches the upper limit of the budget, the job executed by the execution unit is forced A monitoring unit that terminates or pauses may be further included. By stopping the execution of a job that is not backed up by the budget, it is possible to reduce the calculation load in the information processing system and prevent the user from being charged with an unintended fee.
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。 The present invention has been described in detail based on the embodiments. However, the present invention is not limited to the above embodiment. The present invention can be variously modified without departing from the gist thereof.
情報処理システムの構成は上記実施形態に限定されない。例えば、受付部、判定部、確保部、および監視部は解析サーバの構成要素であってもよいし、管理サーバの構成要素であってもよい。上記実施形態では管理サーバと第2ライセンスサーバとが別々に設けられたが、これらの装置が一つの装置に統合されてもよい。各ユーザの計算環境の構成も限定されず、例えば、ウェブサーバ、ライセンスサーバ、およびジョブテーブルのうちの少なくとも二つの装置が一つの装置に統合されてもよい。情報処理システムは監視部を備えなくてもよい。 The configuration of the information processing system is not limited to the above embodiment. For example, the reception unit, the determination unit, the securing unit, and the monitoring unit may be components of the analysis server or may be components of the management server. In the above embodiment, the management server and the second license server are provided separately, but these devices may be integrated into one device. The configuration of the computing environment of each user is not limited. For example, at least two devices of a web server, a license server, and a job table may be integrated into one device. The information processing system may not include the monitoring unit.
情報処理システムで用いられる各データベースの実装方法は限定されず、例えばデータベース管理システムでもよいし、テキストファイルでもよい。また、各データベースおよび各レコードの構成は上記実施形態での例に限定されず、各データベースに対して任意の正規化又は冗長化を行ってよい。 The method of mounting each database used in the information processing system is not limited. For example, a database management system or a text file may be used. The configuration of each database and each record is not limited to the example in the above embodiment, and any normalization or redundancy may be performed for each database.
上記実施形態では一時ライセンスが従量制であるが、一時ライセンスの料金体系および提供方法は何ら限定されるものではなく、任意に定めてよい。 In the above embodiment, the temporary license is pay-as-you-go, but the fee structure and provision method of the temporary license are not limited at all, and may be arbitrarily determined.
少なくとも一つのプロセッサにより実行される情報処理方法の処理手順は図6〜8の例に限定されない。例えば、情報処理システム1はそれらの図におけるステップ(処理)の一部を省略してもよいし、別の順序で各ステップを実行してもよい。また、それらの図に示されるステップの任意の2以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されてもよい。あるいは、情報処理システム1は図6〜8に示される各ステップに加えて他のステップを実行してもよい。それらの図で示される各ステップは、情報処理システム1内に存在する少なくとも一つのプロセッサのうちの一つまたは複数のプロセッサにより実行される。稼働するプロセッサは個々のステップ(処理)毎に変わり得る。
The processing procedure of the information processing method executed by at least one processor is not limited to the examples of FIGS. For example, the
情報処理システム1内で二つの数値の大小関係を比較する際には、「以上」および「よりも大きい」という二つの基準のどちらを用いてもよく、「以下」および「未満」の二つの基準のうちのどちらを用いてもよい。このような基準の選択は、二つの数値の大小関係を比較する処理についての技術的意義を変更するものではない。
When comparing the magnitude relationship between two numerical values in the
1…情報処理システム、10…コンピュータ群、20…管理サーバ、30…第2ライセンスサーバ、40…ユーザの計算環境、41…ウェブサーバ、42…ジョブテーブル、43…第1ライセンスサーバ、44…解析サーバ、401…受付部、402…判定部、403…確保部、404…実行部、405…監視部、P1…情報処理プログラム、P10…メインモジュール、P11…受付モジュール、P12…判定モジュール、P13…確保モジュール、P14…実行モジュール、P15…監視モジュール。
DESCRIPTION OF
Claims (5)
1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付部と、
前記ユーザの前記第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、前記ユーザが保有しており且つ利用されていない前記第1ライセンスの個数である空き数が、前記ジョブの実行に必要なライセンス数以上であるか否かを判定する判定部と、
前記空き数が前記必要なライセンス数未満である場合に、前記複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、前記ジョブの実行に必要な少なくとも一つの前記第2ライセンスを確保し、前記ジョブが実行される期間に限って、確保された前記少なくとも一つの第2ライセンスを前記ユーザに関連付ける確保部と
を備える情報処理システム。 An information processing system that manages licenses necessary for job execution for each of a plurality of users,
An accepting unit that accepts a job of one user who has one or more first licenses;
Referring to a first license database that stores the usage status of the first license of the user , the number of empty licenses that is the number of the first license that the user has and is not using is the execution of the job A determination unit for determining whether or not the number of licenses required for the
When the empty number is less than the required number of licenses, the job is executed by referring to a second license database storing one or more second licenses not associated with any of the plurality of users. An information processing system comprising: a securing unit that secures at least one necessary second license and associates the secured at least one second license with the user only during a period in which the job is executed.
前記実行部が、前記ジョブが終了した後に、前記確保された少なくとも一つの第2ライセンスが再利用できるように該少なくとも一つの第2ライセンスを解放する、
請求項1に記載の情報処理システム。 An execution unit for executing the job;
The execution unit releases the at least one second license so that the reserved at least one second license can be reused after the job is completed;
The information processing system according to claim 1.
を更に備える請求項2に記載の情報処理システム。 Monitor that compares the usage amount of the second license with the budget of the user and forcibly ends or pauses the job being executed by the execution unit when the usage amount reaches the upper limit of the budget The information processing system according to claim 2, further comprising a unit.
1以上のプロセッサのうちの少なくとも一つが、1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、
前記1以上のプロセッサのうちの少なくとも一つが、前記ユーザの前記第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、前記ユーザが保有しており且つ利用されていない前記第1ライセンスの個数である空き数が、前記ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、
前記1以上のプロセッサのうちの少なくとも一つが、前記空き数が前記必要なライセンス数未満である場合に、前記複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、前記ジョブの実行に必要な少なくとも一つの前記第2ライセンスを確保し、前記ジョブが実行される期間に限って、確保された前記少なくとも一つの第2ライセンスを前記ユーザに関連付ける確保ステップと
を含む情報処理方法。 An information processing method for managing licenses necessary for job execution for each of a plurality of users,
A reception step in which at least one of the one or more processors receives a job of one user who has one or more first licenses;
The first license held by the user and not used by at least one of the one or more processors referring to a first license database that stores the usage status of the first license of the user A determination step of determining whether or not the number of vacant numbers is equal to or greater than the number of licenses necessary for executing the job;
Second at least one of the one or more processors, which when the number of empty is licensed under the required number of the stores one or more second license is not associated with any of the plurality of users With reference to the license database, at least one second license necessary for execution of the job is secured, and the reserved at least one second license is given to the user only during a period during which the job is executed. An information processing method including an associating securing step.
前記情報処理方法が、
1以上の第1ライセンスを保有する一のユーザのジョブを受け付ける受付ステップと、
前記ユーザの前記第1ライセンスの利用状況を記憶する第1ライセンスデータベースを参照して、前記ユーザが保有しており且つ利用されていない前記第1ライセンスの個数である空き数が、前記ジョブの実行に必要なライセンス数以上であるか否かを判定する判定ステップと、
前記空き数が前記必要なライセンス数未満である場合に、前記複数のユーザのいずれにも関連付けられていない1以上の第2ライセンスを記憶する第2ライセンスデータベースを参照して、前記ジョブの実行に必要な少なくとも一つの前記第2ライセンスを確保し、前記ジョブが実行される期間に限って、確保された前記少なくとも一つの第2ライセンスを前記ユーザに関連付ける確保ステップと
を含む、
情報処理プログラム。 An information processing program for causing a computer to execute an information processing method for managing a license necessary for job execution for each of a plurality of users,
The information processing method includes:
An accepting step of accepting a job of one user having one or more first licenses;
Referring to a first license database that stores the usage status of the first license of the user , the number of empty licenses that is the number of the first license that the user has and is not using is the execution of the job A determination step for determining whether or not the number of licenses required for the process is greater than or equal to,
When the empty number is less than the required number of licenses, the job is executed by referring to a second license database storing one or more second licenses not associated with any of the plurality of users. Securing at least one necessary second license and associating the secured second license with the user only during a period in which the job is executed.
Information processing program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015194099A JP6166758B2 (en) | 2015-09-30 | 2015-09-30 | Information processing system, information processing method, and information processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015194099A JP6166758B2 (en) | 2015-09-30 | 2015-09-30 | Information processing system, information processing method, and information processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017068636A JP2017068636A (en) | 2017-04-06 |
JP6166758B2 true JP6166758B2 (en) | 2017-07-19 |
Family
ID=58494866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015194099A Active JP6166758B2 (en) | 2015-09-30 | 2015-09-30 | Information processing system, information processing method, and information processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6166758B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019219794A (en) * | 2018-06-18 | 2019-12-26 | 富士ゼロックス株式会社 | Server device and license management system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4815874B2 (en) * | 2005-05-23 | 2011-11-16 | 日本電気株式会社 | License management method and method, queue system apparatus and program thereof |
US20070033395A1 (en) * | 2005-08-02 | 2007-02-08 | Macrovision | Method and system for hierarchical license servers |
US7962424B1 (en) * | 2006-10-24 | 2011-06-14 | Adobe Systems Incorporated | Overdraft licenses and license distribution |
JP4891054B2 (en) * | 2006-12-21 | 2012-03-07 | キヤノン株式会社 | Image processing apparatus using license, control method thereof, and program |
JP2009301151A (en) * | 2008-06-10 | 2009-12-24 | Konica Minolta Business Technologies Inc | Device management apparatus, device management method for use therein, and device management program |
JP2010086461A (en) * | 2008-10-02 | 2010-04-15 | Sony Corp | License management device and license management method, and license management system |
JP5051929B2 (en) * | 2010-04-08 | 2012-10-17 | 日本システムウエア株式会社 | Software distribution operation management apparatus, method, and program |
-
2015
- 2015-09-30 JP JP2015194099A patent/JP6166758B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017068636A (en) | 2017-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4955943B2 (en) | Information terminal and computer resource management method | |
US10565104B2 (en) | System and method to manage and share managed runtime memory for JAVA virtual machine | |
US9069465B2 (en) | Computer system, management method of computer resource and program | |
US11080143B2 (en) | Systems and processes for data backup and recovery | |
RU2697700C2 (en) | Equitable division of system resources in execution of working process | |
US20130227085A1 (en) | Terminal and method for using cloud services | |
CN110427258B (en) | Resource scheduling control method and device based on cloud platform | |
CN113010265A (en) | Pod scheduling method, scheduler, memory plug-in and system | |
US20130346992A1 (en) | Computing system, method for controlling thereof, and computer-readable recording medium having computer program for controlling thereof | |
KR20090121105A (en) | Storage medium having master boot record, computer system comprising the same and booting method | |
JP6724908B2 (en) | Accelerator control device, accelerator control method and program | |
JP2017068480A (en) | Job management method, job management device, and program | |
CN116541142A (en) | Task scheduling method, device, equipment, storage medium and computer program product | |
JP5405663B2 (en) | MEMORY MANAGEMENT DEVICE, MEMORY MANAGEMENT METHOD, MEMORY MANAGEMENT PROGRAM, COMPUTER-READABLE RECORDING MEDIUM CONTAINING MEMORY MANAGEMENT PROGRAM, AND INTEGRATED CIRCUIT | |
JP4719137B2 (en) | Multiple program control management method and control management apparatus | |
CN111709723A (en) | RPA business process intelligent processing method, device, computer equipment and storage medium | |
CN102047217A (en) | Regaining control of a processing resource that executes an external execution context | |
JP6166758B2 (en) | Information processing system, information processing method, and information processing program | |
CN111359205B (en) | Operation method and device of cloud game, computer equipment and storage medium | |
JP2005216050A (en) | Storage system | |
US20190213016A1 (en) | Extensible input stack for processing input device data | |
CN116881003A (en) | Resource allocation method, device, service equipment and storage medium | |
JP2006524853A (en) | System for determining the unreturned standby resource usage rate | |
JP2006031203A (en) | On-vehicle information terminal | |
CN114791854A (en) | User-state virtual machine task scheduling method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170321 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170511 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170530 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170623 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6166758 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |