JP2019067071A - 利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム - Google Patents
利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム Download PDFInfo
- Publication number
- JP2019067071A JP2019067071A JP2017190865A JP2017190865A JP2019067071A JP 2019067071 A JP2019067071 A JP 2019067071A JP 2017190865 A JP2017190865 A JP 2017190865A JP 2017190865 A JP2017190865 A JP 2017190865A JP 2019067071 A JP2019067071 A JP 2019067071A
- Authority
- JP
- Japan
- Prior art keywords
- cloud service
- determination
- candidate
- kth
- purchases
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 claims abstract description 119
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 3
- 230000002567 autonomic effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】利用期間が3つ以上ある場合であっても、クラウドサービスの購入数を決定できる決定装置を提供する。【解決手段】決定装置は、第kクラウドサービスに関する判定情報を管理する第1管理手段と、決定処理の際、第kクラウドサービスから第1条件及び第2条件を満たす候補クラウドサービスを判定し、候補クラウドサービスが判定されないと、当該決定処理においては、要求数を第1クラウドサービスの購入数に決定する決定手段と、を備え、第kクラウドサービスの判定情報は、第kクラウドサービスの利用開始タイミングにおいて空集合に初期化され、過去の決定処理においてクラウドサービスを購入した際の要求数を要素とする集合であり、第1条件は、判定情報の要素数がコスト比から1を減じた値に等しいとの条件であり、第2条件は、判定情報の要素数がコスト比に等しいとの条件である。【選択図】図6
Description
本発明は、利用期間の異なるクラウドサービスの購入数を決定する決定装置及びプログラムに関する。
クラウドに設けられた計算機資源を例えば所定の期間を単位(以下、最小利用期間)として利用させるサービスが提供されている。このとき、クラウドBは、クラウドAの2倍の最小利用期間を設定し、クラウドCは、クラウドAの5倍の最小利用期間を設定してサービスを提供する様な場合が生じる。ここで、一般的に、クラウドサービスの最小利用期間の利用コストは、最小利用期間が長くなる程高くなるが、単位時間当たりの利用コストは低くなる。例えば、将来の需要が分かっている場合、将来の需要に基づき合計コストが一番安くなる様に、各クラウドから必要な数のサービス(計算機資源の利用権)を購入することができる。しかしながら、将来の需要が不明であると、各需要が生じたときに、どの最小利用期間のクラウドを選択するかが問題となる。これはオンライン問題と呼ばれる。非特許文献1は、最小利用期間が2つのクラウドが提供するサービスのいずれを選択するかを判定する方法を開示している。
Wei Wang, et al.,"To Reserve or Not to Reserve:Optimal Online Multi-Instance Acquisition in IaaS Clouds",10th International Conference on Autonomic Computing,(ICAC'13),2013年
非特許文献1の構成は、3つ以上の最小利用期間があるクラウドサービスの購入数の決定に使用することができない。
本発明は、利用期間が3つ以上ある場合であっても、クラウドサービスの購入数を決定できる決定装置を提供するものである。
本発明の一態様によると、第1クラウドサービスから第Mクラウドサービス(Mは2以上の整数)であって、第kクラウドサービス(kは2〜Mの整数)の利用期間は第(k−1)クラウドサービスの利用期間より長い、前記第1クラウドサービスから前記第Mクラウドサービスそれぞれの購入数を、クラウドサービスの利用の要求数に基づき決定する決定処理を、前記第1クラウドサービスの利用期間を周期として繰り返し実行する決定装置は、前記第kクラウドサービスに関する判定情報を管理する第1管理手段であって、前記第kクラウドサービスの判定情報は、前記第kクラウドサービスの利用開始タイミングにおいて空集合に初期化され、過去の前記決定処理においてクラウドサービスを購入した際の要求数を要素とする集合である、前記第1管理手段と、前記第kクラウドサービスのコスト比を保持する保持手段であって、前記第kクラウドサービスのコスト比は、前記第1クラウドサービスの利用コストに対する前記第kクラウドサービスの利用コストの比である、前記保持手段と、前記決定処理の際、前記第kクラウドサービスから第1条件を満たす候補クラウドサービスを判定する第1判定手段と、前記決定処理の際、前記第kクラウドサービスから第2条件を満たす候補クラウドサービスを判定する第2判定手段と、前記決定処理の際、前記第1判定手段及び前記第2判定手段により候補クラウドサービスが判定されないと、当該決定処理においては、前記要求数を前記第1クラウドサービスの購入数に決定する決定手段と、を備えており、前記第1条件は、前記判定情報の要素数が前記コスト比から1を減じた値に等しいとの条件であり、前記第2条件は、前記判定情報の要素数が前記コスト比に等しいとの条件であることを特徴とする。
本発明によると、利用期間が3つ以上ある場合であっても、クラウドサービスの購入数を決定することができる。
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の実施形態は例示であり、本発明を実施形態の内容に限定するものではない。また、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
図1は、本実施形態による決定装置10が使用されるシステムの一例を示している。クラウド#1〜#3は、それぞれ、計算機資源をユーザに利用させるクラウドサービス(以下、単に、サービスとも呼ぶ。)を提供している。本実施形態では、クラウド#1が提供するサービスの最小利用期間を1としたとき、クラウド#2が提供するサービスの最小利用期間は4であり、クラウド#2が提供するサービスの最小利用期間は12であるものとする。決定装置10は、ネットワーク20を介して複数の通信装置30からクラウドサービス利用の要求を受け付け、この要求に基づき、クラウド#1〜#3から必要な数のサービスを購入して、サービス利用の要求を行った通信装置30に再販売を行う。
なお、各通信装置30のユーザは、クラウドサービスを必要とするときに、通信装置30を介して決定装置10に要求を送信するが、通信装置30のユーザも、サービスの利用に必要な期間を判定できず、よって、要求にはサービスを必要とする期間は含まれていないものとする。つまり、決定装置10からみると、サービスを必要とする通信装置30から、サービスの利用が必要であることのみを示す要求が送信されるものとする。なお、通信装置30は、決定装置10を介してサービスの提供を受けるが、サービスの提供を受けている通信装置30は、利用期間の一番短いクラウド#1の最小利用期間が経過してもサービスを必要とする場合、再度、要求を決定装置10に送信するものとする。
なお、以下では、図2(A)に示す様に、最小利用期間が一番短いクラウド#1のサービスをレベル1と呼び、最小利用期間が2番目に短いクラウド#2のサービスをレベル2と呼び、最小利用期間が一番長いクラウド#3のサービスをレベル3と呼ぶものとする。また、クラウド#1(レベル1)の最小利用期間のコストが1であり、クラウド#2(レベル2)の最小利用期間のコストが3であり、クラウド#3(レベル3)の最小利用期間のコストが6であるもの、つまり、最小利用期間が長い程、サービスのコストは高くなるものとする。しかしながら、単位時間当たりのコストは、レベル3が0.5であり、レベル2が0.75であり、レベル1が1である。この様に、単位時間当たりのコストは、レベルが高くなる程、つまり、最小利用期間が長くなる程、低くなるものとする。なお、この様なコストの設定は、一般的なものである。
決定装置10は、最小利用期間の一番短いレベル1の最小利用期間毎に、通信装置30からの要求を集計(以下、要求数)し、クラウドサービスのレベル毎に購入数を決定する。例えば、時刻tがレベル1の利用開始タイミングとすると、時刻tより前に、時刻tからの要求数を満たす様にレベル1〜レベル3のサービスの購入数を決定する。なお、以下の説明においては、時刻tからレベル1の最小利用期間の間に必要な要求数を、単に、時刻tの要求数と呼ぶ。時刻tの要求数を満たすための購入数は、実際には、時刻t以前に決定して購入を行うが、以下の説明においては、単に、時刻tに購入すると表現する。以下では、図2(B)に示す様に、時刻0〜11の要求数が14、16、17、7、0、10、15、18、12、11、9,13であるものとして決定装置10における処理を説明する。
図3は、本実施形態において、決定装置10が実行する購入数決定処理のフローチャートである。以下、各時刻における図3の処理について説明する。なお、図2(B)に示す様に、時刻0は、レベル2及びレベル3の開始タイミングであるものとする。
<時刻0>
S10〜S13は、D2、θ2、D3、θ3の初期化を行うか否かを判定する処理である。ここで、時刻0は、レベル2及びレベル3それぞれの開始タイミングである。したがって、S10及びS12は共にYesであり、よって、D2={}、θ2=0、D3={}、θ3=0に初期化される。また、時刻0の要求数dt=14であるため、S14はNoである。また、既に購入して継続しているサービスはないため、S15はNoである。したがって、S16で判定処理を行う。図4から図6は、S16における判定処理のフローチャートである。なお、S20、S22、S24及びS26の|D2|及び|D3|は、集合D2、集合D3の要素数との意味である。また、S20及びS22の2及び5は、レベル2のコスト3及びレベル3のコスト6からそれぞれ1を引いた数であり、S24及びS26の3及び6は、レベル2のコスト3及びレベル3のコスト6である。さらに、S21、S23、S25、S27の2、3は、それぞれ、レベル2及びレベル3、つまり、レベル番号を示している。なお、図4〜図6の処理における集合P、集合Zは、処理の開始時点において空集合に初期化され、μ2、μ3、δ2、δ3、n1、n2、n3も、処理の開始時点において0に初期化される。
S10〜S13は、D2、θ2、D3、θ3の初期化を行うか否かを判定する処理である。ここで、時刻0は、レベル2及びレベル3それぞれの開始タイミングである。したがって、S10及びS12は共にYesであり、よって、D2={}、θ2=0、D3={}、θ3=0に初期化される。また、時刻0の要求数dt=14であるため、S14はNoである。また、既に購入して継続しているサービスはないため、S15はNoである。したがって、S16で判定処理を行う。図4から図6は、S16における判定処理のフローチャートである。なお、S20、S22、S24及びS26の|D2|及び|D3|は、集合D2、集合D3の要素数との意味である。また、S20及びS22の2及び5は、レベル2のコスト3及びレベル3のコスト6からそれぞれ1を引いた数であり、S24及びS26の3及び6は、レベル2のコスト3及びレベル3のコスト6である。さらに、S21、S23、S25、S27の2、3は、それぞれ、レベル2及びレベル3、つまり、レベル番号を示している。なお、図4〜図6の処理における集合P、集合Zは、処理の開始時点において空集合に初期化され、μ2、μ3、δ2、δ3、n1、n2、n3も、処理の開始時点において0に初期化される。
時刻0において、D2及びD3は空集合であるため、S20、S22、S24及びS26の判定は総てNoである。したがって、図4の処理の終了時点において、Z={}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={14}、D3={14}となる。また、Pは空集合であるため、S32の処理はYesである。Zは空集合であるので、S33の処理後もP={}である。よって、S36及びS38の処理はいずれもNoである。その後、S40の処理により、δ3=0、δ2=0になる。S41の処理の開始時点においてPは空集合であるため、S48の処理によりn3及びn2はそれぞれ0になる。n3及びn2が0であるので、S49の処理で、要求数dt=14を満たすためn1=14に決定される。なお、n1、n2及びn3は、それぞれ、レベル1、レベル2及びレベル3の購入数である。したがって、時刻0において、決定装置10は、レベル1のサービスを14個購入する。図7(A)は、時刻0開始時の状態を示している。
<時刻1>
時刻1は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻0の処理により、D2={14}、θ2=0、D3={14}、θ3=0である。また、時刻1での要求数dt=16であるため、S14はNoである。また、時刻0で購入したサービスは時刻1の開始時点で終了するためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻1は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻0の処理により、D2={14}、θ2=0、D3={14}、θ3=0である。また、時刻1での要求数dt=16であるため、S14はNoである。また、時刻0で購入したサービスは時刻1の開始時点で終了するためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻1の開始時において、D2={14}及びD3={14}と、その要素数は共に1であるため、S20、S22、S24及びS26の判定は総てNoである。したがって、図4の処理の終了時点において、Z={}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={14,16}、D3={14,16}となる。また、Pは空集合であるため、S32の処理はYesである。Zは空集合であるので、S33の処理後もP={}である。よって、S36及びS38の処理はいずれもNoである。その後、S40の処理により、δ3=0、δ2=0になる。S41の処理の開始時点においてPは空集合であるため、S48の処理によりn3及びn2はそれぞれ0になる。n3及びn2が0であるので、S49の処理で、要求数dt=16を満たすためn1=16に決定される。したがって、時刻1において、決定装置10は、レベル1のサービスを16個購入する。図7(B)は、時刻1開始時の状態を示している。
<時刻2>
時刻2は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻1の処理により、D2={14,16}、θ2=0、D3={14,16}、θ3=0である。また、時刻2での要求数dt=17であるため、S14はNoである。また、時刻1で購入したサービスは時刻2の開始時に終了するためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻2は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻1の処理により、D2={14,16}、θ2=0、D3={14,16}、θ3=0である。また、時刻2での要求数dt=17であるため、S14はNoである。また、時刻1で購入したサービスは時刻2の開始時に終了するためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻2の開始時において、D2={14,16}及びD3={14,16}と、その要素数は共に2であるため、S20はYesであり、S22、S24及びS26の判定は総てNoである。したがって、S21でZ={2}となる。よって、図4の処理の終了時点において、Z={2}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={14,16,17}、D3={14,16,17}となる。また、Pは空集合であるため、S32の処理はYesである。Z={2}であるので、S33の処理後、P={2}になる。よって、S36はYesとなり、S38はNoとなる。よって、S37で、D2={14,16,17}の要素の最小値14がθ2に代入される。つまり、図5の処理の終了時点でθ2=14、θ3=0となる。その後、S40の処理により、δ3=0、δ2=14になる。S41の処理の開始時点においてP={2}であるため、S47の処理において、n3=0及びn2=14になる。n3=0及びn2=14であるので、S49の処理で、要求数dt=17を満たすためにn1=3に決定される。したがって、時刻2において、決定装置10は、レベル2のサービスを14個購入し、レベル1のサービスを3個購入する。図7(C)は、時刻2開始時の状態を示している。
<時刻3>
時刻3は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻2の処理により、D2={14,16,17}、θ2=14、D3={14,16,17}、θ3=0である。また、時刻3での要求数dt=7であるため、S14はNoである。なお、時刻2で購入したレベル2のサービスが14個あり、これが時刻3においても継続するためS15はYesである。したがって、時刻3においては、サービスを購入せずに処理を終了する。図8(A)は、時刻3開始時の状態を示している。
時刻3は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻2の処理により、D2={14,16,17}、θ2=14、D3={14,16,17}、θ3=0である。また、時刻3での要求数dt=7であるため、S14はNoである。なお、時刻2で購入したレベル2のサービスが14個あり、これが時刻3においても継続するためS15はYesである。したがって、時刻3においては、サービスを購入せずに処理を終了する。図8(A)は、時刻3開始時の状態を示している。
<時刻4>
時刻4は、レベル2の開始タイミングである。したがって、S11で、D2={}、θ2=0に初期化される。一方、時刻4は、レベル3の開始タイミングではない。したがって、D3、θ3の初期化は行われない。したがって、D2={}、θ2=0、D3={14,16,17}、θ3=0になる。また、時刻4での要求数dt=0であるため、S14はYesである。したがって、時刻4においては、サービスを購入せずに処理を終了する。図8(B)は、時刻4開始時の状態を示している。
時刻4は、レベル2の開始タイミングである。したがって、S11で、D2={}、θ2=0に初期化される。一方、時刻4は、レベル3の開始タイミングではない。したがって、D3、θ3の初期化は行われない。したがって、D2={}、θ2=0、D3={14,16,17}、θ3=0になる。また、時刻4での要求数dt=0であるため、S14はYesである。したがって、時刻4においては、サービスを購入せずに処理を終了する。図8(B)は、時刻4開始時の状態を示している。
<時刻5>
時刻5は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻4での処理により、この時点においては、D2={}、θ2=0、D3={14,16,17}、θ3=0である。また、時刻5での要求数dt=10であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻5は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻4での処理により、この時点においては、D2={}、θ2=0、D3={14,16,17}、θ3=0である。また、時刻5での要求数dt=10であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
この時点において、D2={}及びD3={14,16,17}と、その要素数は0及び3であるため、S20、S22、S24及びS26の判定は総てNoである。したがって、図4の処理の終了時点において、Z={}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={10}、D3={14,16,17,10}となる。また、Pは空集合であるため、S32の処理はYesである。Z={}であるので、S33の処理後、P={}になる。よって、S36及びS38はNoとなる。その後、S40の処理により、δ3=0、δ2=0になる。S41の処理の開始時点においてPは空集合であるため、S48の処理によりn3及びn2はそれぞれ0になり、S49の処理でn1=10になる。したがって、時刻5において、決定装置10は、レベル1のサービスを10個購入する。図8(C)は、時刻5開始時の状態を示している。
<時刻6>
時刻6は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻5での処理により、この時点においては、D2={10}、θ2=0、D3={14,16,17,10}、θ3=0である。また、時刻6での要求数dt=15であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻6は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻5での処理により、この時点においては、D2={10}、θ2=0、D3={14,16,17,10}、θ3=0である。また、時刻6での要求数dt=15であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
この時点において、D2={10}及びD3={14,16,17,10}と、その要素数は1及び4であるため、S20、S22、S24及びS26の判定は総てNoである。したがって、図4の処理の終了時点において、Z={}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={10,15}、D3={14,16,17,10,15}となる。また、Pは空集合であるため、S32の処理はYesである。Z={}であるので、S33の処理後、P={}になる。よって、S36及びS38はNoとなる。その後、S40の処理により、δ3=0、δ2=0になる。S41の処理の開始時点においてPは空集合であるため、S48の処理によりn3及びn2はそれぞれ0になり、S49の処理でn1=15になる。したがって、時刻6において、決定装置10は、レベル1のサービスを15個購入する。図9(A)は、時刻6開始時の状態を示している。
<時刻7>
時刻7は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻6での処理により、この時点においては、D2={10,15}、θ2=0、D3={14,16,17,10,15}、θ3=0である。また、時刻7での要求数dt=18であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻7は、レベル2及びレベル3それぞれの開始タイミングではない。したがって、S10及びS12は共にNoであり、D2、θ2、D3、θ3の初期化は行われない。なお、時刻6での処理により、この時点においては、D2={10,15}、θ2=0、D3={14,16,17,10,15}、θ3=0である。また、時刻7での要求数dt=18であるため、S14はNoである。また、継続しているレベル2、レベル3はないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
この時点において、D2={10,15}及びD3={14,16,17,10,15}と、その要素数は2及び5であるため、S20及びS22の判定はYesである。なお、S24及びS26の判定はNoである。したがって、S21及びS23において、それぞれ、集合Zに2及び3がその要素として追加される。したがって、図4の処理の終了時点において、Z={2,3}、P={}である。また、θ2=0、θ3=0であるため、S30においてμ2=0、μ3=0である。さらに、S31の処理により、D2={10,15,18}、D3={14,16,17,10,15,18}となる。また、Pは空集合であるため、S32の処理はYesである。Z={2,3}であるので、S33の処理後、P={2,3}になる。よって、S36及びS38は共にYesとなる。したがって、S37で、θ2=10、S39で、θ=10となる。その後、S40の処理により、δ3=10、δ2=10になる。S41の処理の開始時点においてP={2,3}であるため、S42の処理でn3=10になり、S44の処理でn2=0になる。したがって、要求数dt=18を満たすため、S49の処理でn1=8になる。したがって、時刻7において、決定装置10は、レベル3のサービスを10個購入し、レベル1のサービスを8個購入する。図9(B)は、時刻7開始時の状態を示している。
<時刻8>
時刻8は、レベル2の開始タイミングである。したがって、S11で、D2及びθ2は初期化される。一方、時刻8は、レベル3の開始タイミングではないため、D3、θ3の初期化は行われない。よって、この時点においては、D2={}、θ2=0、D3={14,16,17,10,15,18}、θ3=10である。また、時刻8での要求数dt=12であるため、S14はNoである。また、継続しているレベル3の数は10と、要求数dt=12をカバーできないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻8は、レベル2の開始タイミングである。したがって、S11で、D2及びθ2は初期化される。一方、時刻8は、レベル3の開始タイミングではないため、D3、θ3の初期化は行われない。よって、この時点においては、D2={}、θ2=0、D3={14,16,17,10,15,18}、θ3=10である。また、時刻8での要求数dt=12であるため、S14はNoである。また、継続しているレベル3の数は10と、要求数dt=12をカバーできないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
この時点において、D2={}及びD3={14,16,17,10,15,18}と、その要素数は0及び6である。したがって、S20、S22及びS24の判定はNoであるが、S26の判定はYesである。したがって、S27において、集合Pに3がその要素として追加される。したがって、図3の処理の終了時点において、Z={}、P={3}である。また、θ2=0、θ3=10であるため、S30においてμ2=0、μ3=10である。さらに、S31の処理により、D2={12}、D3={14,16,17,10,15,18,12}となる。Pは空集合ではないため、S32の処理はNoである。したがって、S34で、μ2=0、μ3=10が、それぞれ、D2、D3の要素から削除される。なお、μ2=0であるので、D2については実際の変更はない。したがって、S34の処理後、D2={12}、D3={14,16,17,15,18,12}となる。さらに、S35の処理により、P={3}となる。よって、S36はNoであるが、S38はYesとなる。したがって、θ2=0のままであるが、S39で、θ=12となる。その後、S40の処理により、δ3=2、δ2=0になる。S41の処理の開始時点においてP={3}であるため、S42の処理によりn3=2になり、S45の処理によりn2=0になる。n3=2であり、購入数のレベル3が10個あるため、要求数dt=12は満たされ、よって、S49の処理でn1=0になる。したがって、時刻8において、決定装置10は、レベル3のサービスを2個購入する。図9(C)は、時刻8開始時の状態を示している。
<時刻9>
時刻9は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻8での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻9での要求数dt=11であるため、S14はNoである。なお、継続しているレベル3の数は12と、要求数dt=11をカバーできるためS16はYesである。したがって、時刻9においては、サービスを購入せずに処理を終了する。図10(A)は、時刻9開始時の状態を示している。
時刻9は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻8での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻9での要求数dt=11であるため、S14はNoである。なお、継続しているレベル3の数は12と、要求数dt=11をカバーできるためS16はYesである。したがって、時刻9においては、サービスを購入せずに処理を終了する。図10(A)は、時刻9開始時の状態を示している。
<時刻10>
時刻10は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻9での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻10での要求数dt=9であるため、S14はNoである。なお、継続しているレベル3の数は12と、要求数dt=9をカバーできるためS16はYesである。したがって、時刻10においては、サービスを購入せずに処理を終了する。図10(B)は、時刻9開始時の状態を示している。
時刻10は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻9での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻10での要求数dt=9であるため、S14はNoである。なお、継続しているレベル3の数は12と、要求数dt=9をカバーできるためS16はYesである。したがって、時刻10においては、サービスを購入せずに処理を終了する。図10(B)は、時刻9開始時の状態を示している。
<時刻11>
時刻11は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻10での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻11での要求数dt=13であるため、S14はNoである。また、継続しているレベル3の数は12であり、要求数dt=13をカバーできないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
時刻11は、レベル2及びレベル3の開始タイミングではない。したがって、D2、θ2、D3、θ3の初期化は行われない。なお、時刻10での処理により、この時点においては、D2={12}、θ2=0、D3={14,16,17,15,18,12}、θ3=12である。また、時刻11での要求数dt=13であるため、S14はNoである。また、継続しているレベル3の数は12であり、要求数dt=13をカバーできないためS15はNoである。したがって、S16で図4から図6に示す判定処理を行う。
この時点において、D2={12}及びD3={14,16,17,15,18,12}と、その要素数は1及び6である。したがって、S20、S22及びS24の判定はNoであるが、S26の判定はYesである。したがって、S27において、集合Pに3がその要素として追加される。したがって、図3の処理の終了時点において、Z={}、P={3}である。また、θ2=0、θ3=12であるため、S30においてμ2=0、μ3=12である。さらに、S31の処理により、D2={12,13}、D3={14,16,17,15,18,12,13}となる。Pは空集合ではないため、S32の処理はNoである。したがって、S34で、μ2=0、μ3=12が、それぞれ、D2、D3の要素から削除される。なお、μ2=0であるので、D2については実際の変更はない。したがって、S34の処理後、D2={12、13}、D3={14,16,17,15,18,13}となる。さらに、S35の処理により、P={3}となる。よって、S36はNoであるが、S38はYesとなる。したがって、θ2=0のままであるが、S39で、θ=13となる。その後、S40の処理により、δ3=1、δ2=0になる。S41の処理の開始時点においてP={3}であるため、S42の処理によりn3=1になり、S45の処理によりn2=0になる。n3=1であり、購入数のレベル3が12個あるため、要求数dt=13は満たされ、よって、S49の処理でn1=0になる。したがって、時刻11において、決定装置10は、レベル3のサービスを1個購入する。図10(C)は、時刻11開始時の状態を示している。
なお、時刻12は、レベル2及びレベル3の開始タイミングであるため、S10〜S13の処理により、D2、θ2、D3及びθ3は総て初期化され、時刻0の開始時と同じとなる。
図11は、本実施形態による決定装置10の構成図である。決定装置10は、第1クラウドサービスから第Mクラウドサービス(Mは2以上の整数)の購入数を要求数に基づき決定する決定処理を第1クラウドサービスの利用期間を周期として繰り返し実行する。ここで、第kクラウドサービス(kは2〜Mの整数)の利用期間は第(k−1)クラウドサービスの利用期間より長いとの関係がある。なお、上記例ではM=3である。
保持部101は、レベル2以上のクラウドサービスそれぞれについて、レベル1のクラウドサービスに対するコスト比を保持する。上記例において、レベル2のコスト比及びレベル3のコスト比は、図2に示す様に、それぞれ、3及び6である。
第1管理部102は、レベル2以上のクラウドサービスそれぞれについて集合Dを管理する。ここで、集合Dは、過去に行った決定処理においてクラウドサービスを購入した際の要求数をその要素とする(S31)。なお、集合Dは、対応するクラウドサービスの利用開始タイミングにおいて空集合に初期化される(S10〜S13)。集合Dは、対応するクラウドサービスの購入を判定するための判定情報である。
第1判定部104は、決定処理の際、集合Dの要素数がコスト比から1を減じた値に等しいクラウドサービスを、候補クラウドサービス(候補レベル)として選択する(S20〜S23)。具体的には、第1判定部104が判定した候補レベルは集合Zの要素として示される。
第2判定部105は、決定処理の際、集合Dの要素数がコスト比に等しいクラウドサービスを、候補クラウドサービス(候補レベル)として選択する(S24〜S27)。具体的には、第2判定部105が判定した候補レベルは、図4のS27の終了時点における集合Pの要素として示される。削除部106は、第2判定部105が判定した候補レベルがあると(S32でNo)、対応する集合Dの要素のうち、その値が最小の要素を集合Dから削除する(S34)。
第2管理部103は、レベル2以上のクラウドサービスそれぞれについて決定値であるθ(本例では、θ2及びθ3)を管理する。第kクラウドサービスの決定値は、第kクラウドサービスの利用開始タイミングにおいて0に初期化される(S10〜S13)。第2管理部103は、第1判定部104が判定した候補レベルについては、決定処理において、その集合Dの要素(S31の処理前の要素)と、当該決定処理の要求数(S31で集合Dに追加)とのうちの最も小さい値に決定値を更新する(S36〜S39)。また、第2管理部103は、第2判定部105が判定した候補レベルについては、削除部106による要素削除後(S34)の集合Dの要素と、当該決定処理の要求数とのうちの最も小さい値に決定値を更新する。
決定部107は、候補レベルがあると(S36又はS38がYes)、第2管理部103による更新前の当該候補レベルのθ(決定処理開始時点のθであり、S30でμに代入)と、第2管理部103による更新後の当該候補レベルのθ(S37、S38で更新後のθ)と、の差分値δ(S40)に基づき、当該候補レベルの購入数を決定する。このとき、決定部107は、候補レベルのうち、最小利用期間の長い最長候補レベルについては、その購入数を、当該最長候補レベルの差分値δとする(S42、S47)。また、決定部107は、候補レベルの内の記最長候補レベル以外の候補レベルについては、当該候補レベルの差分値δから、当該候補レベルの利用期間より長く、かつ、当該候補レベルの利用期間に最も近い候補レベルの差分値δを減じた値に基づき当該候補レベルの購入数を決定する(S44)つまり、最長候補レベルがレベルp(本例においてpは2又は3)であるとすると、レベルpの購入数をδpとする(S42、S47)。決定部107は、候補レベルのうちのレベルp以外のレベルqの購入数を、δq−δ(q+1)に決定する(S44)。ここで、δ(q+1)は、レベル(q+1)、つまり、候補レベルのうち、その最小利用期間がレベルqの最小利用期間より長く、かつ、レベルqの最小利用期間に最も近いレベルである。
また、決定部107は、候補レベルそれぞれの購入数と、過去に購入して継続しているレベル2以上の購入済数とを考慮し要求数を満たす様にレベル1の購入数を決定する(S49)。なお、レベル1及び候補レベル以外のレベルについては、購入数を0とする。さらに、候補レベルが無い場合、決定部107は、要求数をレベル1の購入数とする。
なお、決定部107は、要求数が0である場合、及び、要求数が、レベル2以上のクラウドサービスの合計購入済数(継続して使用できる購入済数)以下であると、総てのクラウドサービスの購入数を0に決定する。
本実施形態の前提は、将来の要求数が分からないものと、実際の状況に沿った前提としているため、将来の要求数が分かっている場合よりも合計コストは高くなる。しかしながら、詳細な説明は省略するが、本実施形態による合計コストは、レベル数をM(本例では3)とした場合、将来の要求数が分かっている場合の合計コストのM倍未満になる。
なお、本発明による決定装置10は、コンピュータを上記決定装置として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
101:保持部、102:第1管理部、103:第2管理部、104:第1判定部、105:第2判定部、106:削除部、107:決定部
Claims (8)
- 第1クラウドサービスから第Mクラウドサービス(Mは2以上の整数)であって、第kクラウドサービス(kは2〜Mの整数)の利用期間は第(k−1)クラウドサービスの利用期間より長い、前記第1クラウドサービスから前記第Mクラウドサービスそれぞれの購入数を、クラウドサービスの利用の要求数に基づき決定する決定処理を、前記第1クラウドサービスの利用期間を周期として繰り返し実行する決定装置であって、
前記第kクラウドサービスに関する判定情報を管理する第1管理手段であって、前記第kクラウドサービスの判定情報は、前記第kクラウドサービスの利用開始タイミングにおいて空集合に初期化され、過去の前記決定処理においてクラウドサービスを購入した際の要求数を要素とする集合である、前記第1管理手段と、
前記第kクラウドサービスのコスト比を保持する保持手段であって、前記第kクラウドサービスのコスト比は、前記第1クラウドサービスの利用コストに対する前記第kクラウドサービスの利用コストの比である、前記保持手段と、
前記決定処理の際、前記第kクラウドサービスから第1条件を満たす候補クラウドサービスを判定する第1判定手段と、
前記決定処理の際、前記第kクラウドサービスから第2条件を満たす候補クラウドサービスを判定する第2判定手段と、
前記決定処理の際、前記第1判定手段及び前記第2判定手段により候補クラウドサービスが判定されないと、当該決定処理においては、前記要求数を前記第1クラウドサービスの購入数に決定する決定手段と、
を備えており、
前記第1条件は、前記判定情報の要素数が前記コスト比から1を減じた値に等しいとの条件であり、
前記第2条件は、前記判定情報の要素数が前記コスト比に等しいとの条件であることを特徴とする決定装置。 - 前記第2判定手段が判定した候補クラウドサービスの前記判定情報の最小の要素を前記判定情報から削除して更新する削除手段と、
前記第kクラウドサービスに関する決定値を管理する第2管理手段であって、前記第kクラウドサービスの決定値は、前記第kクラウドサービスの利用開始タイミングにおいて0に初期化され、前記決定処理において、前記第1判定手段が前記第kクラウドサービスを候補クラウドサービスと判定すると、前記第kクラウドサービスの前記判定情報の要素と前記要求数の内の最も小さい値に更新され、前記第2判定手段が前記第kクラウドサービスを候補クラウドサービスと判定すると、前記第kクラウドサービスの前記削除手段による更新後の前記判定情報の要素と前記要求数の内の最も小さい値に更新される、前記第2管理手段と、
をさらに備えており、
前記決定手段は、前記決定処理の際、前記候補クラウドサービスあると、前記第2管理手段による更新前の前記候補クラウドサービスの前記決定値と、前記第2管理手段による更新後の前記候補クラウドサービスの前記決定値と、の差分値に基づき、前記候補クラウドサービスの購入数を決定することを特徴とする請求項1に記載の決定装置。 - 前記決定手段は、前記決定処理の際、前記候補クラウドサービスあると、前記候補クラウドサービスの内の最も利用期間の長い最長候補クラウドサービスの購入数を、前記最長候補クラウドサービスの前記差分値とすることを特徴とする請求項2に記載の決定装置。
- 前記決定手段は、前記決定処理の際、前記候補クラウドサービスあると、前記候補クラウドサービスの内の前記最長候補クラウドサービス以外の候補クラウドサービスについては、当該候補クラウドサービスの前記差分値から、当該候補クラウドサービスの利用期間より長く、かつ、当該候補クラウドサービスの利用期間に最も近い候補クラウドサービスの前記差分値を減じた値に基づき当該候補クラウドサービスの購入数を決定することを特徴とする請求項3に記載の決定装置。
- 前記決定手段は、前記決定処理の際、前記候補クラウドサービスあると、前記候補クラウドサービスの購入数の合計値に基づき前記要求数を満たす様に前記第1クラウドサービスの購入数を決定することを特徴とする請求項4に記載の決定装置。
- 前記決定手段は、前記決定処理の際、前記要求数が0であると総てのクラウドサービスの購入数を0に決定することを特徴とする請求項1から5のいずれか1項に記載の決定装置。
- 前記決定手段は、前記決定処理の際、前記第kクラウドサービスそれぞれについて既に購入している購入済数を求め、前記第kクラウドサービスそれぞれの購入済数の合計が前記要求数以上であると、総てのクラウドサービスの購入数を0に決定することを特徴とする請求項1から6のいずれか1項に記載の決定装置。
- 請求項1から7のいずれか1項に記載の決定装置としてコンピュータを機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017190865A JP2019067071A (ja) | 2017-09-29 | 2017-09-29 | 利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017190865A JP2019067071A (ja) | 2017-09-29 | 2017-09-29 | 利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019067071A true JP2019067071A (ja) | 2019-04-25 |
Family
ID=66339627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017190865A Ceased JP2019067071A (ja) | 2017-09-29 | 2017-09-29 | 利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019067071A (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008087958A (ja) * | 2006-09-08 | 2008-04-17 | Canon System Solutions Inc | 情報処理装置、情報処理方法、プログラム、及び記録媒体 |
JP2008158579A (ja) * | 2006-12-20 | 2008-07-10 | Canon It Solutions Inc | 情報処理装置及びその制御方法 |
JP2013161149A (ja) * | 2012-02-02 | 2013-08-19 | Fujitsu Ltd | 情報処理システム,仮想マシン管理プログラム,仮想マシン管理方法 |
JP2017142673A (ja) * | 2016-02-10 | 2017-08-17 | 日本電信電話株式会社 | クラウドリソース選択装置、クラウドリソース選択方法およびプログラム |
-
2017
- 2017-09-29 JP JP2017190865A patent/JP2019067071A/ja not_active Ceased
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008087958A (ja) * | 2006-09-08 | 2008-04-17 | Canon System Solutions Inc | 情報処理装置、情報処理方法、プログラム、及び記録媒体 |
JP2008158579A (ja) * | 2006-12-20 | 2008-07-10 | Canon It Solutions Inc | 情報処理装置及びその制御方法 |
JP2013161149A (ja) * | 2012-02-02 | 2013-08-19 | Fujitsu Ltd | 情報処理システム,仮想マシン管理プログラム,仮想マシン管理方法 |
JP2017142673A (ja) * | 2016-02-10 | 2017-08-17 | 日本電信電話株式会社 | クラウドリソース選択装置、クラウドリソース選択方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10484464B2 (en) | Connection control device, connection control system, and non-transitory computer readable medium | |
US10733591B2 (en) | Tiered model for event-based serverless computing | |
JP6588977B2 (ja) | 複合パーティション関数 | |
JP5609730B2 (ja) | 情報処理プログラム及び方法、転送処理装置 | |
JP6881575B2 (ja) | 資源割当システム、管理装置、方法およびプログラム | |
KR20170029263A (ko) | 부하 분산 장치 및 방법 | |
US11314545B2 (en) | Predicting transaction outcome based on artifacts in a transaction processing environment | |
JP2007133586A (ja) | リソース割当調停装置およびリソース割当調停方法 | |
US20190324814A1 (en) | Resource release method, resource allocation method, devices, and computer program products | |
JP2017107274A (ja) | 仮想マシン増設方法、情報処理装置および仮想マシン増設システム | |
US9110696B2 (en) | Thin client system, connection management server, connection management method and connection management program | |
JP2019067071A (ja) | 利用期間の異なるクラウドサービスの購入数の決定装置及びプログラム | |
JP2013210683A (ja) | オートスケーリング方法,オートスケーリングプログラムおよびコンピュータノード | |
US10033817B2 (en) | Stateless technique for distributing data uploads | |
US20160253391A1 (en) | Data communication in a distributed data grid | |
US10901792B2 (en) | Distribution of resources among actor instances | |
KR101146742B1 (ko) | SaaS의 분산된 세션 관리 방법 및 그 관리 시스템 | |
JP5056346B2 (ja) | 情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラム | |
JP2017220040A (ja) | ネットワーク装置、コネクション制御方法、及び計算機システム | |
CN108520025A (zh) | 一种服务节点确定方法、装置、设备及介质 | |
JP6349786B2 (ja) | 仮想計算機管理装置、仮想計算機管理方法、及び仮想計算機管理プログラム | |
US20220382595A1 (en) | Weighted availing of cloud resources | |
JP2018185607A (ja) | リソース管理システムおよびリソース管理方法 | |
JP6653277B2 (ja) | 分散処理システムに用いられるサーバ装置及び分散処理方法 | |
JP6612458B2 (ja) | 計算機システム、管理計算機、および記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190814 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200626 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200713 |
|
A045 | Written measure of dismissal of application [lapsed due to lack of payment] |
Free format text: JAPANESE INTERMEDIATE CODE: A045 Effective date: 20201120 |