JP6916096B2 - インスタンス利用促進システム - Google Patents

インスタンス利用促進システム Download PDF

Info

Publication number
JP6916096B2
JP6916096B2 JP2017222764A JP2017222764A JP6916096B2 JP 6916096 B2 JP6916096 B2 JP 6916096B2 JP 2017222764 A JP2017222764 A JP 2017222764A JP 2017222764 A JP2017222764 A JP 2017222764A JP 6916096 B2 JP6916096 B2 JP 6916096B2
Authority
JP
Japan
Prior art keywords
instance
unit
promotion system
instances
utilization promotion
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
Application number
JP2017222764A
Other languages
English (en)
Other versions
JP2019095898A (ja
Inventor
ナジム セビ
ナジム セビ
順史 木下
順史 木下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017222764A priority Critical patent/JP6916096B2/ja
Priority to GB201818373A priority patent/GB2569872B/en
Priority to US16/192,835 priority patent/US10637741B2/en
Publication of JP2019095898A publication Critical patent/JP2019095898A/ja
Application granted granted Critical
Publication of JP6916096B2 publication Critical patent/JP6916096B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、インスタンス利用促進システムに関する。
ネットワーク上のコンピュータ資源を使用して各種計算を実行させるようなクラウドコンピューティングでは、いくつかのユーザに多くのコンピュータ資源が割り当てられることがあるが、これらの中には単に割り当てられているのみで実際には使用されていないものも見受けられる。
このような状況下において多くのユーザがコンピュータ資源の使用を希望する場合、利用可能な資源はあるものの、既に他のユーザに上記資源が割り当てられてるため、結果的に使用できる資源が不足して効率よく計算を行えないことがある。
このような中、コンピュータ資源としてのインスタンスが不足するのを回避するため、例えば、ネットワーク上の各インスタンスから収集したメトリクスと上記インスタンスの実際の稼働状況との対応関係を教師データとして機械学習させた後、学習済みの機械学習法を用いて各インスタンスの稼働状況を推定することでアイドル状態のインスタンスの再利用を促す技術が提案されている(例えば、非特許文献1参照)。
このような技術によれば、十分に機械学習を行った後には、複数のインスタンスの中からアイドル状態のインスタンスを精度よく見つけて再び利用可能化することができ、全体としてインスタンスが不足するのを回避することが期待される。
Kee Kim,et al,2006,A Supervised Learning Model for Identifying Inactive VMs in Private Cloud Data Centers. In Proceedings of the Industrial Track of the 17th International Middleware Conference (Middleware Industry ’16). ACM.
ここで、上述したような技術を用いる場合、精度よくインスタンスの稼働状況を分類するためには前もって十分に機械学習を行わせる必要があり、このような機械学習をさせるためにはトレーニングに用いる十分な数の教師データ(ラベル)が予め存在していることが前提となる。
しかしながら、上述したような従来の技術を用いる場合、クラウドコンピューティング規模でのラベルを予め準備するのは難しく、全てのユーザにラベル付けに用いる情報の提供を依頼するのも現実的には難しい。このため、単に機械学習の手法を導入しただけでは精度よくアイドル状態のインスタンスを検出することができず、結果として未使用のインスタンスを早期かつ確実に利用できるようにすることが困難である。
本発明は、以上のような事情に基づいてなされたものであり、その目的は、たとえ機械学習のための教師データ(ラベル)が十分に揃っていない状態であっても、アイドル状態のインスタンスを見つけて迅速かつ確実に利用可能化することができるインスタンス利用促進システムを提供することにある。
本発明は、
(1)クラウドインフラストラクチャー上で用いる複数のインスタンスの中から、アイドル状態のインスタンスを検出して前記アイドル状態のインスタンスを利用可能状態とするインスタンス利用促進システムであって、
前記複数のインスタンスから各インスタンスのメトリクスを収集するメトリクス収集部と、
前記複数のインスタンスのうちの稼働状態が不明なインスタンスの中から、稼働状態を問い合わせるインスタンスを選定するインスタンス選定部と、
前記インスタンス選定部により選定されたインスタンスの稼働状態をユーザに問い合わせると共に、この問い合わせた結果に基づき、稼働状態、アイドル状態および不明状態のいずれかのラベルを前記インスタンスに付ける問合せ部と、
前記問合せ部によりラベル付けされたインスタンスのうち、アイドル状態のラベルが付けられたインスタンスを利用可能化するインスタンス利用可能化部と、
前記メトリクス収集部により収集された各インスタンスのメトリクスと、前記問合せ部により付けられた前記各インスタンスのラベルとを用い、新たなインスタンスの稼働状態を判別するための機械学習を行う機械学習部と、を備えていることを特徴とするインスタンス利用促進システム、
(2)インスタンス選定部によるインスタンスの選定と、問合せ部によるユーザへの問合せおよびインスタンスへのラベル付けと、インスタンス利用可能化部によるインスタンスの利用可能化とが繰り返し行われる前記(1)に記載のインスタンス利用促進システム、
(3)インスタンス選定部が、ヒューリスティックな手法を用いて稼働状態を問い合わせるインスタンスを選定する前記(1)または(2)に記載のインスタンス利用促進システム、
(4)ヒューリスティックな手法が、ログ変換を用いた手法とスケール変換を用いた手法とを組み合せたものである前記(3)に記載のインスタンス利用促進システム、
(5)マルチテナントクラウド環境下で用いられる前記(1)から(4)のいずれか1項に記載のインスタンス利用促進システム、並びに
(6)問合せ部が、チャットボットインターフェースを介してインスタンスの稼働状態を問い合わせる前記(1)から(5)のいずれか1項に記載のインスタンス利用促進システム
に関する。
なお、本明細書において「インスタンス」とは、物理的なコンピュータ(物理サーバ)上で起動される、ソフトウェアによって構築された仮想的なコンピュータ(仮想マシン、VM:Vertual Machine)を意味する。また、「マルチテナントクラウド環境」とは、機材やソフトウェア、データベースなどを複数の企業(組織)で共有するクラウドコンピューティング環境を意味する。また、「チャットボットインターフェース」とは、問合せ部からの問合せをユーザとの間で自動的にやりとりする単なるマンマシンインターフェースを意味する。
本発明は、たとえ機械学習のための教師データ(ラベル)が十分に揃っていない状態であっても、アイドル状態のインスタンスを見つけて迅速かつ確実に利用可能化することができるインスタンス利用促進システムを提供することができる。
本発明の一実施形態を示す概略ブロック図である。 図1のシステムにより収集したメトリクス情報の一例を示す概略図である。 図2のメトリクス情報をインスタンスごとに整理したものの一例を示す概略図である。 図2のメトリクス情報をインスタンスごとに整理したものの一例を示す概略図である。 図3Bのメトリクス情報を派生データに変換したもの一例を示す概略図である。 図3Bの派生データとラベルとを対応付けたものの一例を示す概略図である。 図1の処理フローを示す概略ブロック図である。 図5の処理フローの繰り返しにより得られたリストの一例を示す概略図である。 図1のインスタンス選定部におけるインスタンス選定処理の一例を示す概略フローチャートである。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。 インスタンス選定部による処理の具体的な一例を示す概略図であって、リストの一例を示す概略図である。
本発明のインスタンス利用促進システムは、クラウドインフラストラクチャー上で用いる複数のインスタンスの中から、アイドル状態のインスタンスを検出して上記アイドル状態のインスタンスを利用可能状態とするインスタンス利用促進システムであって、上記複数のインスタンスから各インスタンスのメトリクスを収集するメトリクス収集部と、上記複数のインスタンスのうちの稼働状態が不明なインスタンスの中から、稼働状態を問い合わせるインスタンスを選定するインスタンス選定部と、上記インスタンス選定部により選定されたインスタンスの稼働状態をユーザに問い合わせると共に、この問い合わせた結果に基づき、稼働状態、アイドル状態および不明状態のいずれかのラベルを上記インスタンスに付ける問合せ部と、上記問合せ部によりラベル付けされたインスタンスのうち、アイドル状態のラベルが付けられたインスタンスを利用可能化するインスタンス利用可能化部と、上記メトリクス収集部により収集された各インスタンスのメトリクスと、上記問合せ部により付けられた上記各インスタンスのラベルとを用い、新たなインスタンスの稼働状態を判別するための機械学習を行う機械学習部と、を備えていることを特徴とする。
当該インスタンス利用促進システム1は、図1に示すように、例えば、ユーザMがユーザ端末900を介してIaaS(Infrastructure as a Service)に接続し、ハイパーバイザーAPI8212を通して物理サーバ821中のインスタンス(仮想マシン8211)にアクセスすることでこのインスタンスを利用することが可能なクラウドインフラストラクチャー800が構築されたクラウド環境等に適用される。
以下、本発明の一実施形態について図面を参照して説明するが、本発明は、当該図面に記載の実施形態にのみ限定されるものではない。
図1は、本発明の一実施形態を示す概略ブロック図である。当該インスタンス利用促進システム1は、図1に示すように、概略的に、メトリクス収集部100と、ストレージ200と、インスタンス選定部300と、問合せ部400と、インスタンス利用可能化部500と、機械学習部600とにより構成されている。
メトリクス収集部100は、複数のインスタンスから各インスタンスのメトリクス(例えば、CPU占有時間、未使用メモリ、パケット通信量など)を収集する。具体的には、メトリクス収集部100は、例えば、図1に示すように、計算クラスタ820における物理サーバ821中のインスタンス(仮想マシン8211)それぞれから、API(Application Program Interface)8212を介して各インスタンスのメトリクスを取得し、この取得したメトリクス情報をストレージ200に格納する。なお、メトリクス情報を取得するタイミングは、例えば、定期(5分間隔など)および不定期のいずれであってもよいが、後述する問合せ部400による問合せ時を含むように決定されることが好ましい。
ここで、図2は、図1のシステムにより収集したメトリクス情報の一例を示す概略図である。複数のインスタンスは、各インスタンスを識別するためのインスタンスIDが付されており、このインスタンスIDに上記メトリクス情報が紐付けられている。なお、インスタンスの稼働が中断したり停止する場合、その中断等している間は、当該インスタンスからはメトリクス情報が発せられない。
インスタンス選定部300は、複数のインスタンスのうちの稼働状態が不明なインスタンスの中から、稼働状態を問い合わせるインスタンスを選定する。このインスタンス選定部300にて選定されるインスタンスは、問合せ部400による問合せの負荷を軽減する観点から、通常、稼働状態が不明なインスタンスのうちの一部のインスタンスとなるが、上記不明なインスタンスの全部であってもよい。
インスタンス選定部300におけるインスタンスの選定手法としては、特に限定されないが、ヒューリスティックな手法(heuristic algorithm)を用いて稼働状態を問い合わせるインスタンスを選定することが好ましい。上記ヒューリスティックな手法としては、例えば、ログ変換を用いた手法、スケール変換を用いた手法、これらログ変換を用いた手法とスケール変換を用いた手法とを組み合わせた手法等が挙げられる。これらの中で、ヒューリスティックな手法としては、後述するログ変換を用いた手法とスケール変換を用いた手法とを組み合せたものであることが好ましい。
このように、当該インスタンス利用促進システム1は、インスタンス選定部300がヒューリスティックな手法を用いたものであることで、稼働状態が不明のインスタンスの中から、アイドル状態の可能性が高いインスタンスを迅速に選定することができ、特に、上記手法がログ変換を用いた手法とスケール変換を用いた手法とを組み合せたものであることで、各手法それぞれにおいて比較的高くランク付けされインスタンスが選定されるため、ヒューリスティックな手法による選定をより的確に行うことができる。
問合せ部400は、インスタンス選定部300により選定されたインスタンスの稼働状態をユーザMに問い合わせると共に、この問い合わせた結果に基づき、稼働状態、アイドル状態および不明状態のいずれかのラベルをインスタンスに付ける。具体的には、この問合せ部400は、例えば、ユーザMがキープするインスタンスの使用状況の問合せをユーザ端末900に発信したり、上記問合せの回答をユーザ端末900から受信するユーザ通知モジュール410を備えており、この問合せで得られたユーザMからの回答を教師データ(ラベル)としてリストL1に記録し、これを各インスタンスのメトリクス情報に対応付けてストレージ200に格納する(例えば、図4参照)。
なお、問合せ部400は、ユーザ端末900が有するチャットボットインターフェース910を介して、問合せ対象のインスタンスの稼働状態をそのユーザMに問い合わせることが好ましい。チャットボットインターフェース910としては、例えば、公知のチャットボットインターフェース等を用いることができる。これにより、手間を掛けずに効率よくインスタンスの稼働状態を問い合わせることができる。
なお、インスタンスの稼働状態を表すラベルとしては、例えば、アイドル状態を肯定するもの(idle)、アイドル状態を否定するもの(active)、およびユーザからの回答が得られないもの(unknown)等が挙げられる。
インスタンス利用可能化部500は、問合せ部400によりラベル付けされたインスタンスのうち、アイドル状態のラベル(idle)が付けられたインスタンスを利用可能化する。具体的には、インスタンス利用可能化部500は、例えば、アイドル状態のラベルが付けられたインスタンスIDの情報をクラウドインフラストラクチャー800中の管理クラスタ810に送信し、管理クラスタ810の制御サーバ811を介して物理サーバ821中の該当するインスタンス(仮想マシン8211)を開放することにより新たに利用できる状態に移行させる。
機械学習部600は、メトリクス収集部100により収集された各インスタンスのメトリクスと、問合せ部400により付けられた各インスタンスのラベルとを用い、新たなインスタンス(稼働状態が不明なインスタンス)の稼働状態を判別するための機械学習を行う。機械学習部600が行う学習方法としては特に限定されず、例えば、深層学習などの公知の技術等を用いることができる。
ここで、当該インスタンス利用促進システム1は、インスタンス選定部300によるインスタンスの選定と、問合せ部400によるユーザMへの問合せおよびインスタンスへのラベル付けと、インスタンス利用可能化部500によるインスタンスの利用可能化とが繰り返し行われるシステムであることが好ましい。具体的には、当該インスタンス利用促進システム1は、図6に示すように、例えば、インスタンスA、B、Cの稼働状況が記録された元のリスト(図6の「繰り返し(1回目)」のリストL21参照)を用い、「unknown」のインスタンスA、B、Cについての問合せ結果に基づく稼働状態の更新と、インスタンス選定部300により新たに選定された「unknown」のインスタンスDの追加と行うことで上記元のリストL21を更新する処理を行い(図6の「繰り返し(2回目)」のリストL22参照)、引き続き同様に処理してリストL22を更新する(図6の「繰り返し(3回目)」のリストL23参照)。なお、図示していないが、上記繰り返しは継続して行うことができる。
このようにインスタンス選定部300等の処理を繰り返し行うシステムとすることで、稼働状況が把握されるインスタンスの数を徐々に増やしていくことができ、問合せの負荷(ひいては、問合せによるユーザMへの負荷)を抑制しつつ、未使用のインスタンスをより効率よく利用可能化することができる。
なお、上述したメトリクス収集部100、インスタンス選定部300、問合せ部400、インスタンス利用可能化部500および機械学習部600が実行する各処理は、例えば、図示していない中央演算処理装置(CPU)、メモリおよび記憶装置、並びにこれらを接続するバス等を備えたハードウェアを用い、このハードウェア上にて所定のコンピュータプログラムを動作させることで実現することができる。
次に、当該インスタンス利用促進システム1を用いた処理フローの一例について説明する。図5は、当該インスタンス利用促進システム1の処理フローを示す概略ブロック図である。当該インスタンス利用促進システム1では、図5に示すように、まず、メトリクス収集部100が、各インスタンスから当該インスタンスのメトリクス情報(生データ)を定期または不定期で収集する(ステップS501)。上記生データは、例えば、インスタンスIDで識別されるインスタンスについて収集した、収集時刻(時刻スタンプ)に対するCPU稼働時間、通信パケット量、未使用メモリ量などの時系列のデータを含んでいる(図2、図3(a)、(b)参照)。
次いで、メトリクス収集部100が、ステップS501で収集したメトリクス情報(生データ)を派生データに変換する(ステップS502)。派生データは、インスタンスIDで識別される一つのインスタンスについて収集された一連のメトリクスのデータセットで構成されており、収集した全ての時刻におけるメトリクスを含んでいる。この派生データは、インスタンスごとに一つのエントリを構成し、各エントリがリストに記録される。
次に、インスタンス選定部300が、派生データが作成されたインスタンスのうち、稼働状態の問合せを行わないインスタンスを除外する判断を行い(ステップS503)、除外すると判断されたインスタンスを選り分ける(ステップS504)。このインスタンス選定部300により選り分けられるインスタンスとしては、例えば、アイドル状態を否定するラベル(active)が付けられたものが挙げられる。
次に、メトリクス収集部100は、ステップS503にて除外したインスタンス以外のインスタンスについての派生データを、ストレージ200中に新規データまたは更新データとして格納する(ステップS505)。
次いで、インスタンス選定部300は、稼働状態を問い合わせるインスタンスを選定するステップS506)。このステップで用いる選定手法としては、例えば、後述するログ関数およびスケール関数を組み合わせた手法などのヒューリスティックな手法等である。
次に、問合せ部400は、インスタンス選定部300により選定されたインスタンスについての稼働状態を、例えば、チャットボットインターフェース910を介してユーザMに問い合わせる(ステップS507)。この際、ユーザMからの応答は、アイドル状態を肯定、アイドル状態を否定、および回答無しのいずれかに分類され、問合せ部400は、上記応答に基づき、図4に示すようなリストL1中にラベルを新規に記録、または更新する(ステップS508)。
次に、インスタンス利用可能化部500が、問合せ部400によりアイドル状態のラベルが付けられたインスタンスを再利用できるように処理する(ステップS509)。具体的には、インスタンス利用可能化部500は、例えば、図1に示す管理クラスタ810の制御サーバ811に、インスタンスIDとこのインスタンスIDのインスタンスが再利用が可能であることを示す信号とを送信し、制御サーバ811、ネットワークサーバ812、データベースサーバ813等を介して上記インスタンスを利用可能状態にする。
次に、機械学習部600が、既に収集された各インスタンスのメトリクスと、当該インスタンスに付けられたラベルとを用い、新たなインスタンスの稼働状態を判別するための機械学習を行う(ステップS510)。次いで、ステップS510を実行した後、必要に応じてステップS501に戻り、上述したステップS501〜S510を繰り返して実行する。
次に、上述したインスタンス選定部300にて実行するインスタンスの選定について、
ログ変換を用いた手法とスケール変換を用いた手法とを組み合せたヒューリスティックな手法を例にとって詳述する。図7は、当該インスタンス利用促進システム1のインスタンス選定部300におけるインスタンス選定処理の一例を示す概略フローチャートであり、図8A〜図8Gは、上記処理の具体的な一例を示す概略図である。
本手法は、まず、各インスタンスの派生データが記録されたリストL31をストレージ200から取得する(ステップS701)。次いで、取得したリストL31を用い、このリストL31中のデータをログ変換(具体的には、「log1p」関数の適用)(図8BのリストL32参照)する(ステップS7021)と共に、上記派生データをスケール変換(平均値が中央になるように各値をセンタリングし、これを標準偏差で除する変換)する(図8CのリストL33参照)(ステップS7022)。
次に、クラウド管理者により意図的にアイドル状態に設定された基準インスタンスについてのメトリクスの平均値を計算(図8DのリストL34参照)(ステップS7031)した後、各インスタンスのメトリクスの上記平均値までの幾何学的距離を計算する(図8EのリストL35参照)(ステップS7041)。次いで、この幾何学的距離に基づき、一つの派生データに対する上記ログ変換に基づくランク付けを行う(図8FのリストL36参照)(ステップS7051)。なお、図7中のスケール変換に関するステップS7032、S7042、S7052は、それぞれ上述したステップS7031、S7041、S7051と同様であるので、各ステップの説明および図面を省略する。
次に、派生データごとに求められたログ変換およびスケール変換による二つのランクを合計し(ステップS706)、この合計により最終的なランクを求めてリストに記録し(図8GのリストL37参照)(ステップS707)、この最終的なランクに基づき問い合わせるインスタンスを選定する(ステップS708)。
ここで、ヒューリスティックな手法が正確であればあるほど、選定したインスタンスがアイドル状態である可能性が高まり、結果的にインスタンスの利用可能化を促進することができる。なお、ステップS701〜S708の処理を数回繰り返したときの正確さは、平均で80%になる。
なお、当該インスタンス利用促進システム1は、マルチテナントクラウド環境下で用いられることが好ましい。このように、当該インスタンス利用促進システム1がマルチテナントクラウド環境下で用いられることで、例えば、物理サーバ821を制御するオペレーティングシステム(OS)が複数混在するような多様なクラウド環境下であっても、未使用のインスタンスを効率よく利用可能化することができる。
また、当該インスタンス利用促進システム1は、パブリッククラウドインフラストラクチャー(クラウドプロバイダーなどが提供するクラウドコンピューティング環境を、企業(組織)をはじめとした不特定多数のユーザにインターネットを通じて提供できるように構築したクラウドインフラストラクチャー)およびプライベートクラウドインフラストラクチャー(クラウドの技術を用いて一つの企業(組織)のためだけに構築したクラウドインフラストラクチャー)のいずれにも適用することができるが、プライベートクラウドインフラストラクチャー上で用いる場合、同一企業(組織)内の演算処理をより効率よく行うことができる点で、プライベートクラウドインフラストラクチャーに好適に適用することができる。
以上のように、当該インスタンス利用促進システム1は、上記構成であるので、たとえ機械学習のための教師データ(ラベル)が十分に揃っていない状態であっても、アイドル状態のインスタンスを見つけて迅速かつ確実に利用可能化することができ、クラウドインフラストラクチャー800全体を効率よく運用することができる。
なお、本発明は、上述した実施形態の構成に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
例えば、上述した実施形態では、インスタンス利用可能化部500によるインスタンスの利用可能化が、問合せ部400の問合せに基づきアイドル状態のラベルが付けられたインスタンスについて行われるインスタンス利用促進システム1について説明したが、上記インスタンス利用可能化部が、問合せ部により得られた各インスタンスの稼働情報と、上述した機械学習部による機械学習結果を用いて判定した各インスタンスの稼働に関する情報とを組合せてインスタンスの利用可能化を実行するインスタンス利用促進システムであってもよい。
1 インスタンス利用促進システム
100 メトリクス収集部
300 インスタンス選定部
400 問合せ部
500 インスタンス利用可能化部
600 機械学習部
800 クラウドインフラストラクチャー
910 チャットボットインターフェース
8211 仮想マシン(インスタンス)

Claims (5)

  1. クラウドインフラストラクチャー上で用いる複数のインスタンスの中から、アイドル状態のインスタンスを検出して前記アイドル状態のインスタンスを利用可能状態とするインスタンス利用促進システムであって、
    前記複数のインスタンスから各インスタンスのメトリクスを収集するメトリクス収集部と、
    前記複数のインスタンスのうちの稼働状態が不明なインスタンスの中から、ヒューリスティックな手法を用いて稼働状態を問い合わせるインスタンスを選定するインスタンス選定部と、
    前記インスタンス選定部により選定されたインスタンスの稼働状態をユーザに問い合わせると共に、この問い合わせた結果に基づき、稼働状態、アイドル状態および不明状態のいずれかのラベルを前記インスタンスに付ける問合せ部と、
    前記問合せ部によりラベル付けされたインスタンスのうち、アイドル状態のラベルが付けられたインスタンスを利用可能化するインスタンス利用可能化部と、
    前記メトリクス収集部により収集された各インスタンスのメトリクスと、前記問合せ部により付けられた前記各インスタンスのラベルとを用い、新たなインスタンスの稼働状態を判別するための機械学習を行う機械学習部と、を備えていることを特徴とするインスタンス利用促進システム。
  2. インスタンス選定部によるインスタンスの選定と、問合せ部によるユーザへの問合せおよびインスタンスへのラベル付けと、インスタンス利用可能化部によるインスタンスの利用可能化とが繰り返し行われる請求項1に記載のインスタンス利用促進システム。
  3. ヒューリスティックな手法が、ログ変換を用いた手法とスケール変換を用いた手法とを組み合せたものである請求項1または請求項に記載のインスタンス利用促進システム。
  4. マルチテナントクラウド環境下で用いられる請求項1から請求項のいずれか1項に記載のインスタンス利用促進システム。
  5. 問合せ部が、チャットボットインターフェースを介してインスタンスの稼働状態を問い合わせる請求項1から請求項のいずれか1項に記載のインスタンス利用促進システム。
JP2017222764A 2017-11-20 2017-11-20 インスタンス利用促進システム Active JP6916096B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017222764A JP6916096B2 (ja) 2017-11-20 2017-11-20 インスタンス利用促進システム
GB201818373A GB2569872B (en) 2017-11-20 2018-11-12 Instance usage facilitating system
US16/192,835 US10637741B2 (en) 2017-11-20 2018-11-16 Instance usage facilitating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017222764A JP6916096B2 (ja) 2017-11-20 2017-11-20 インスタンス利用促進システム

Publications (2)

Publication Number Publication Date
JP2019095898A JP2019095898A (ja) 2019-06-20
JP6916096B2 true JP6916096B2 (ja) 2021-08-11

Family

ID=64739429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017222764A Active JP6916096B2 (ja) 2017-11-20 2017-11-20 インスタンス利用促進システム

Country Status (3)

Country Link
US (1) US10637741B2 (ja)
JP (1) JP6916096B2 (ja)
GB (1) GB2569872B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7229888B2 (ja) 2019-09-13 2023-02-28 株式会社日立製作所 リソースの利用効率の最適化を支援するシステム及び方法
US11605012B2 (en) * 2020-02-28 2023-03-14 Intuit Inc. Framework for processing machine learning model metrics

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07104849B2 (ja) * 1989-03-08 1995-11-13 シャープ株式会社 ニューラル・ネットワークの学習方法
US20110196968A1 (en) * 2009-03-25 2011-08-11 Hitachi, Ltd. Computer system, resource management server for computer system, and resource management method for computer system
US8880687B1 (en) * 2012-02-06 2014-11-04 Netapp, Inc. Detecting and managing idle virtual storage servers
US9513950B2 (en) * 2012-07-25 2016-12-06 Vmware, Inc. Dynamic resource configuration based on context
JP6032089B2 (ja) * 2013-03-26 2016-11-24 富士通株式会社 管理プログラム、装置及び方法
US9578106B2 (en) * 2014-02-26 2017-02-21 Avaya Inc. System and method for binding a virtual desktop infrastructure host and media soft client together
US9405572B2 (en) * 2014-04-07 2016-08-02 International Business Machines Corporation Optimized resource allocation and management in a virtualized computing environment
CN108351986B (zh) * 2015-10-30 2022-03-29 株式会社摩如富 学习系统及装置和方法、训练数据生成装置及生成方法
US10909980B2 (en) * 2017-02-27 2021-02-02 SKAEL, Inc. Machine-learning digital assistants
US20180285595A1 (en) * 2017-04-04 2018-10-04 Ip Street Holdings Llc Virtual agent for the retrieval and analysis of information

Also Published As

Publication number Publication date
GB201818373D0 (en) 2018-12-26
GB2569872A (en) 2019-07-03
JP2019095898A (ja) 2019-06-20
US20190158362A1 (en) 2019-05-23
GB2569872B (en) 2020-01-01
US10637741B2 (en) 2020-04-28

Similar Documents

Publication Publication Date Title
US11803546B2 (en) Selecting interruptible resources for query execution
US11392843B2 (en) Utilizing a machine learning model to predict a quantity of cloud resources to allocate to a customer
US10452441B1 (en) Determining an allocation of computing resources for a job
JP7122713B2 (ja) 機械学習又は推論のための計算機システム及び方法
US10430332B2 (en) System and method for performance tuning of garbage collection algorithms
US8255355B2 (en) Adaptive method and system with automatic scanner installation
US20070226177A1 (en) Evaluating a current partitioning of a database
CN110032576B (zh) 一种业务处理方法以及装置
EP3798930A2 (en) Machine learning training resource management
CN109543891B (zh) 容量预测模型的建立方法、设备及计算机可读存储介质
JP2014049129A (ja) 仮想マシンの負荷管理システム及びその方法
JP6916096B2 (ja) インスタンス利用促進システム
US10789307B2 (en) Cloud-based discovery and inventory
US20210263718A1 (en) Generating predictive metrics for virtualized deployments
CN113360321B (zh) 微服务重试调用方法、装置、电子设备及存储介质
JP2009037369A (ja) データベースサーバへのリソース割当て方法
CN102103633A (zh) 基于使用模式改进信息系统性能的方法和系统
US20210097429A1 (en) Machine learning training resource management
US20220247625A1 (en) Platform for establishing computing node clusters in different environments
TW201430587A (zh) 任務分配系統及方法
CN110795344A (zh) 面向分布式高性能计算集群调试系统
CN115729965A (zh) 信息流处理方法、装置、流服务器及存储介质
JP6155861B2 (ja) データ管理方法、データ管理プログラム、データ管理システム及びデータ管理装置
CN111459737B (zh) 问题定位方法、装置、计算机设备及存储介质
CN117579626B (zh) 基于分布式实现边缘计算下的优化方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210330

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210512

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: 20210622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210715

R150 Certificate of patent or registration of utility model

Ref document number: 6916096

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150