TW201717066A - 叢集運算架構的資源規劃方法、系統及裝置 - Google Patents

叢集運算架構的資源規劃方法、系統及裝置 Download PDF

Info

Publication number
TW201717066A
TW201717066A TW104136797A TW104136797A TW201717066A TW 201717066 A TW201717066 A TW 201717066A TW 104136797 A TW104136797 A TW 104136797A TW 104136797 A TW104136797 A TW 104136797A TW 201717066 A TW201717066 A TW 201717066A
Authority
TW
Taiwan
Prior art keywords
node device
master node
working
database
resource
Prior art date
Application number
TW104136797A
Other languages
English (en)
Other versions
TWI547817B (zh
Inventor
林志宗
Original Assignee
緯創資通股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 緯創資通股份有限公司 filed Critical 緯創資通股份有限公司
Priority to TW104136797A priority Critical patent/TWI547817B/zh
Priority to CN201510788437.0A priority patent/CN106681826B/zh
Priority to US15/140,482 priority patent/US10051056B2/en
Application granted granted Critical
Publication of TWI547817B publication Critical patent/TWI547817B/zh
Publication of TW201717066A publication Critical patent/TW201717066A/zh

Links

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/24569Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Control By Computers (AREA)

Abstract

一種叢集運算架構的資源規劃方法、系統及裝置。資源規劃裝置基於所選擇的待訓練平台及其對應的設定值以及演算法特徵,建立多個訓練模型,使得主控節點裝置依據各訓練模型來進行運算,而獲得運算時間,並且將各訓練模型對應的運算時間儲存至建議方案資料庫。之後,依據選定的任務條件以及期望總工作時間,自建議方案資料庫中獲得建議方案,使得主控節點裝置依據建議方案來決定叢集運算架構的硬體資源配置。

Description

叢集運算架構的資源規劃方法、系統及裝置
本發明是有關於一種資源規劃機制,且特別是有關於一種叢集運算架構的資源規劃方法、系統及裝置。
對於大數據(big data)時代的來臨,如何儲存、處理、分析巨量資料已經成為各大企業迫切需要解決之問題。目前常見的處理方式為透過叢集運算架構來解決儲存空間的擴充以及計算能力的提升。而目前常見的Spark平台、Hadoop平台等叢集運算架構一般是根據使用者設定好的硬體資源限制下,根據任務優先順序與權重來進行資源分配來運作。然而,目前使用者只能盡可能提供最多的硬體資源交給Spark平台或Hadoop平台來分配,並沒有一套可依循的建議方法提供給使用者參考。
本發明提供一種叢集運算架構的資源規劃方法、系統及裝置,可即時提供最佳的硬體資源規劃。
本發明的叢集運算架構的資源規劃方法,包括提供資源規劃裝置來建立一建議方案資料庫至主控節點裝置,其中建議方案資料庫儲存了用以部署一叢集運算架構的資訊。上述由資源規劃裝置來建立建議方案資料庫的步驟包括:依據所選擇的待訓練平台,自對應於待訓練平台的設定檔中,擷取出至少一設定值,並且擷取待訓練平台所使用的至少一演算法特徵,其中待訓練平台為多個軟體框架中的一個;基於上述設定值以及演算法特徵建立至少一訓練模型,並傳送這些訓練模型至主控節點裝置,使得主控節點裝置依據各訓練模型來進行運算,而獲得運算時間;以及自主控節點裝置接收運算時間,並傳送各訓練模型對應的運算時間至建議方案資料庫。之後,依據選定的任務條件以及期望總工作時間,透過資源規劃裝置自建議方案資料庫中獲得建議方案,而傳送建議方案至主控節點裝置,使得主控節點裝置依據建議方案來決定叢集運算架構的硬體資源配置。
在本發明的一實施例中,上述資源規劃方法,更包括:資源規劃裝置透過網路連線至主控節點裝置,以查詢主控節點裝置中的影響因子資料庫以及演算法資料庫,其中影響因子資料庫儲存各種軟體框架的設定檔,演算法資料庫儲存多個演算法特徵。
在本發明的一實施例中,上述設定值包括工作節點數量、工作節點資源配置、分析資料筆數、以及環境參數條件其中一個或其組合。演算法特徵包括演算法、任務數量以及任務分割筆數其中一個或其組合。任務條件包括其中一個軟體框架、分析資料筆數、環境參數條件、演算法、任務數量以及任務分割筆數其中一個或其組合。上述設定值可以為數值區間。
在本發明的一實施例中,上述資源規劃方法更包括:在選定任務條件以及期望總工作時間之後,若在建議方案資料庫中不存在對應的建議方案,則資源規劃裝置依據選定的任務條件,針對工作節點數量以及工作節點資源配置來重新進行訓練,而自主控節點裝置獲得對應的運算時間,並儲存至建議方案資料庫。
在本發明的一實施例中,上述資源規劃方法更包括:主控節點裝置依據各訓練模型來進行多次運算,而將多次運算所獲得的時間平均值作為對應的運算時間。
在本發明的一實施例中,傳送建議方案至主控節點裝置使得主控節點裝置依據建議方案來決定叢集運算架構的硬體資源配置的步驟,更包括:透過主控節點裝置判斷叢集運算架構下所包括的工作節點數量是否少於建議方案所包括的建議數量,以及判斷叢集運算架構下所包括的工作節點硬體資源是否低於建議方案所包括的資源需求。在判定工作節點數量少於建議數量或工作節點硬體資源低於資源需求時,透過主控節點裝置發出提示訊息,以依據一指令來額外指派符合建議方案的工作節點裝置至叢集運算架構。在判定工作節點數量未少於建議數量且工作節點硬體資源未低於資源需求時,透過主控節點裝置來部屬符合建議數量的工作節點裝置各自的硬體資源配置。
本發明的資源規劃系統,包括主控節點裝置以及資源規劃裝置。主控節點裝置用以分配叢集運算架構下的多個工作節點裝置的硬體資源配置。資源規劃裝置透過網路與主控節點裝置溝通,其中資源規劃裝置包括控制器。控制器依據所選擇的待訓練平台,自對應於待訓練平台的設定檔中,擷取出至少一設定值,並且擷取待訓練平台所使用的至少一演算法特徵,其中待訓練平台為多個軟體框架中的一個。控制器基於上述設定值以及演算法特徵建立至少一訓練模型,並傳送上述訓練模型至主控節點裝置,使得主控節點裝置依據各訓練模型來進行運算,而獲得運算時間。並且,控制器自主控節點裝置接收運算時間,並儲存各訓練模型對應的運算時間至建議方案資料庫中。控制器依據選定的任務條件以及期望總工作時間,自建議方案資料庫中獲得建議方案,而傳送建議方案至主控節點裝置,使得主控節點裝置依據建議方案來決定叢集運算架構的硬體資源配置。
本發明的資源規劃裝置,包括儲存單元以及控制器。儲存單元包括影響因子資料庫、演算法資料庫及建議方案資料庫。影響因子資料庫用以儲存多個軟體框架各自的設定檔。演算法資料庫用以儲存多個演算法特徵。控制器耦接至儲存單元,並且負責分配叢集運算架構下的多個工作節點裝置的硬體資源配置。控制器依據自上述軟體框架中所選擇的一待訓練平台,自對應於待訓練平台的設定檔中,擷取出至少一設定值,並且擷取待訓練平台所使用的至少一演算法特徵,基於上述設定值以及演算法特徵建立至少一訓練模型,並且在依據各訓練模型來進行運算,而獲得運算時間之後,將各訓練模型對應的運算時間儲存至建議方案資料庫。控制器依據選定的任務條件以及期望總工作時間,自建議方案資料庫中獲得建議方案,並且,控制器依據建議方案來決定叢集運算架構的硬體資源配置。
基於上述,經由資源規劃裝置來對叢集運算架構進行訓練,並建立建議方案資料庫,藉以來即時提供最佳的硬體資源規劃。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是依照本發明一實施例的資源規劃系統的方塊圖。請參照圖1,資源規劃系統100包括資源規劃裝置110以及主控節點裝置120。
資源規劃裝置110例如為伺服器、個人電腦、筆記型電腦、平板電腦、智慧型手機等具有運算能力的電子裝置。資源規劃裝置110包括控制器111。控制器111例如為中央處理單元(Central Processing Unit,CPU)、可程式化之微處理器(Microprocessor)、嵌入式控制晶片、數位訊號處理器(Digital Signal Processor,DSP)、特殊應用積體電路(Application Specific Integrated Circuits,ASIC)或其他類似裝置。
並且,資源規劃裝置110還具有一儲存單元(可以是記憶體或韌體晶片),以儲存一或多個程式碼片段。上述程式碼片段在被安裝後,會由控制器111來執行,進而實現叢集運算(cluster computing)架構的資源規劃方法。
叢集運算架構例如為採用Hadoop、Spark、Storm等軟體框架(software framework)的架構。在叢集運算架構中一台主機(或伺服器)通常稱為節點,可將任務分配到不同的節點而提高計算能力。例如,先拆解任務,分工處理再彙總結果。在叢集運算架構中,依照用途可以將這些節點分為主控(master)節點裝置120以及工作(worker)節點裝置。主控節點裝置120用以分配叢集運算架構下的工作節點裝置的硬體資源配置,並且分配任務至工作節點裝置。而工作節點裝置則負責執行任務。
在此,叢集運算架構下的工作節點數量可以為0或大於0的整數。當主控節點裝置120判定工作節點裝置的數量不足、或是工作節點裝置的硬體資源過低,則主控節點裝置120可發出一提示訊息來通知使用者新增工作節點裝置,或者以高硬體資源的工作節點裝置來替換低硬體資源的工作節點裝置。
在此,主控節點裝置120中事先內建有影響因子資料庫121及演算法資料庫122。而建議方案資料庫123用來儲存用以部署叢集運算架構的資訊,其是透過資源規劃裝置110而建立。即,資源規劃裝置110透過網路與主控節點裝置120溝通,以自影響因子資料庫121及演算法資料庫122擷取出需要的資訊來建立建議方案資料庫123。在建立建議方案資料庫123時,存入的建議方案可與影響因子資料庫121及演算法資料庫122內對應的資料相互關聯。
在資源規劃裝置110中,透過控制器111自多個軟體框架中選定一個來作為待訓練平台,並且建立多個訓練模型來對待訓練平台進行訓練,藉以在主控節點裝置120中建立建議方案資料庫123。底下即搭配上述資源規劃系統100來說明叢集運算架構的資源規劃方法各步驟。
圖2是依照本發明一實施例的叢集運算架構的資源規劃方法流程圖。請同時參照圖1及圖2,在步驟S205中,控制器111依據所選擇的待訓練平台,自對應於待訓練平台的設定檔中,擷取出會影響待訓練平台的執行速度的一個或多個設定值,並且擷取待訓練平台所使用的一個或多個演算法特徵。控制器111會自多個軟體框架(例如Hadoop平台、Spark平台、Storm平台等)中選定一個來作為待訓練平台。
具體而言,控制器111在選定待訓練平台之後,透過通訊單元連線至主控節點裝置120,以查詢影響因子資料庫121來獲得待訓練平台對應的工作節點數量、工作節點資源配置(包括各工作節點裝置的CPU核心數、記憶體空間等)、分析資料筆數以及環境參數條件等設定值。上述環境參數條件包括所使用的計算模型及特定參數等。計算模型例如為平行運算或分散式運算。不同的計算模型所需要的運算時間會不同。特定參數包括執行器(executor)的數量、“spark.dynamicAllocation”是否致能、“shuffle”是否啟用、“heartbeat”是否逾時等。
並且,控制器111查詢演算法資料庫122來獲得待訓練平台所使用的演算法(例如為最近鄰居(k-nearest neighbors,KNN)演算法),並且獲得此演算法所執行的任務數量以及任務分割筆數。
接著,在步驟S210中,控制器111基於上述所獲得的設定值以及演算法特徵來建立一個或多個訓練模型,並傳送上述訓練模型至主控節點裝置120,使得主控節點裝置120依據各訓練模型來進行運算,而獲得運算時間。例如,可由控制器111依據所獲得的設定值以及演算法特徵,自動產生訓練模型,或者可由使用者在上述設定值與演算法特徵中自行選擇來產生訓練模型。並且,控制器111還可針對特定的條件來產生訓練模型。例如,針對工作節點數量而言,設定一個數值範圍,例如為1~5。進而,控制器111固定其他設定值與演算法特徵,而以工作節點數量分別為1~5,依次來建立多個訓練模型。據此,可獲得在相同的環境下,對應於不同工作節點數量的運算時間。
另外,可根據各工作節點裝置實際所能使用的硬體資源來設定數值範圍。舉例來說,假設目前各工作節點裝置能夠使用的CPU數量有6個,則控制器111可以針對在每個工作節點裝置的CPU數量從1到6個的情況下,分別獲得主控節點裝置120進行運算所需的運算時間。
控制器111將訓練模型(包括:工作節點數量、工作節點資源配置、分析資料筆數、環境參數條件、演算法、任務數量以及任務分割筆數)傳送至主控節點裝置120後,主控節點裝置120根據訓練模型來決定叢集運算架構的硬體資源配置,並且實際執行以獲得對應的運算時間。此外,主控節點裝置120還會依據各訓練模型來進行多次運算,而將多次運算所獲得的時間平均值作為對應的運算時間。主控節點裝置120可以利用閒置的時間來基於訓練模型進行運算。
而主控節點裝置120還可利用機器學習來建立建議方案資料庫123。例如,根據各待訓練平台(例如Hadoop平台、Spark平台、Storm平台等)的內的設定檔,釐清會影響到巨量資料的分析時間長短的因子,例如:是否分散運算、是否為MapReduce架構、每個執行器佔用多少記憶體空間與CPU佔用率、每個任務分成幾個執行器來執行運算等等,接著歸納整理這些設定檔的參數設定檔與欄位,最後針對所整理出來的參數欄位,訂立各區間之學習追蹤的參考值。然後,將此參考值對照所接收的訓練模型,即,工作節點數量、工作節點資源配置(包含記憶體空間、CPU數量等)、使用什麼演算法、環境參數條件、分析資料筆數、任務數量以及任務分割筆數等,且根據上述各項數據,對照實際的分析總時間,經由機器學習推論,即可產生出一對照表。
使用者在實際分配硬體資源時,就可以依據對照表,對照打算使用的演算法、資料數據大小以及欲完成的時間(期望總工作時間),得知適當的硬體資源配置的建議方案。
另外,主控節點裝置120也可以在目前系統環境設定下,以工作節點裝置的CPU數量從1到6個分別跑出6個完成運算的運算時間,並將目前系統環境設定、CPU數量及對應的運算時間記錄至建議方案資料庫123。
之後,在步驟S215中,控制器111自主控節點裝置120接收運算時間,並傳送訓練模型對應的運算時間至建議方案資料庫123。而在建議方案資料庫123中的運算時間與影響因子資料庫121及演算法資料庫122內對應的資料相互關聯。例如,控制器111會對運算時間與其對應的訓練模型所包括的所有條件(包括:存在於影響因子資料庫121的環境參數條件、以及存在於演算法資料庫122的演算法特徵)建立一關聯性。
在建立了建議方案資料庫123之後,在步驟S220中,控制器111依據選定的任務條件以及期望總工作時間,自建議方案資料庫123中獲得對應的建議方案,而傳送建議方案至主控節點裝置120,使得主控節點裝置120依據建議方案來部署叢集運算架構的硬體資源配置。即,上述任務條件包括欲使用的軟體框架、分析資料筆數、環境參數條件、演算法、任務數量以及任務分割筆數其中一個或其組合,而所獲得的建議方案包括工作節點數量(工作節點裝置的數量)及工作節點資源配置(工作節點裝置的硬體資源配置)。
另外,在選定任務條件以及期望總工作時間之後,若在建議方案資料庫123中不存在對應的建議方案,則控制器111可進行重新訓練的動作。即,控制器111依據選定的任務條件,針對工作節點數量以及工作節點資源配置來重新建立訓練模型,將訓練模型傳送至主控節點裝置120,使得主控節點裝置120依據各訓練模型來進行運算,而獲得對應的運算時間,並將上述訓練模型與運算時間儲存至建議方案資料庫123。
而在選定任務條件以及期望總工作時間之後,若在建議方案資料庫123中不存在對應的建議方案,控制器111還可進一步提示一通知訊息,來通知使用者目前的建議方案資料庫123中不存在對應的建議方案。此外,控制器111也可以取出相近的建議方案,經由推算來獲得一個預測的建議方案。例如,若任務條件中的分析資料筆數為1萬筆,而在建議方案資料庫123中,在其他任務條件皆相同的情況下,只存在分析資料筆數為5千筆的建議方案,則控制器111可取出此建議方案,透過適當的推算來獲得預測的建議方案。例如,分析資料筆數5千筆的建議方案為2台工作節點裝置,則分析資料筆數為1萬筆的預測的建議方案為4台工作節點裝置。然,上述僅為舉例說明,並不以此為限。
透過上述實施例,在使用者透過資源規劃裝置110設定了大數據資料(分析資料筆數)並且選定了欲使用的軟體框架以及輸入一期望總工作時間之後,控制器111可自影響因子資料庫121中獲得對應的環境參數條件,並且自演算法資料庫122中獲得對應的演算法特徵,進而獲得對應的建議方案,即,工作節點數量與工作節點資源配置。而使用者便能夠依照回報的工作節點數量與工作節點資源配置,透過主控節點裝置120來決定叢集運算架構的硬體資源配置。
具體而言,主控節點裝置120判斷叢集運算架構下所包括的工作節點數量是否少於建議方案所包括的建議數量,以及判斷叢集運算架構下所包括的工作節點硬體資源是否低於建議方案所包括的資源需求。
在判定工作節點數量少於建議數量或工作節點硬體資源低於資源需求時,主控節點裝置120會發出提示訊息來通知使用者目前叢集運算架構下的工作節點裝置的數量不足或是工作節點裝置的硬體資源過低,進而由使用者來提供其他工作節點裝置並輸入一指令至主控節點裝置120。之後,主控節點裝置120依據上述指令來額外指派符合建議方案的其他工作節點裝置至叢集運算架構下。而在判定工作節點數量未少於建議數量且工作節點硬體資源未低於資源需求時,主控節點裝置120便可部屬符合建議數量的各工作節點裝置的硬體資源配置。
另外,資源規劃裝置110也可與主控節點裝置120整合。舉例來說,圖3是依照本發明一實施例的資源規劃裝置的方塊圖。請參照圖3,本實施例的資源規劃裝置300包括控制器311以及儲存單元320。控制器311具有與控制器111相同的功能,並且還兼具主控節點裝置120的功能,即,分配叢集運算架構下的多個工作節點裝置的硬體資源配置。
儲存單元320包括影響因子資料庫121、演算法資料庫122以及建議方案資料庫123。透過控制器311自多個軟體框架中選定一個來作為待訓練平台,並且建立多個訓練模型來對待訓練平台進行訓練,藉以建立建議方案資料庫123。
控制器311依據所選擇的待訓練平台,自對應於待訓練平台的設定檔中,擷取出會影響待訓練平台的執行速度的多個設定值,並且擷取待訓練平台所使用的多個演算法特徵,基於上述設定值以及演算法特徵建立多個訓練模型,並且在依據各訓練模型來進行運算,而獲得運算時間之後,將各訓練模型對應的運算時間儲存至建議方案資料庫123。而詳細建立建議方案資料庫123的作法可參考步驟S205~S215。
在建議方案資料庫123建立之後,控制器311依據選定的任務條件以及期望總工作時間,自建議方案資料庫123中獲得建議方案,並且,控制器311依據建議方案來部署叢集運算架構的硬體資源配置。
綜上所述,本發明對叢集運算架構進行訓練,並建立一建議方案資料庫,讓使用者在實際進行硬體資源的分配時,依據建議方案資料庫來獲得對應的建議方案,而能夠即時獲得最佳的硬體資源規劃。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100‧‧‧資源規劃系統
110、310‧‧‧資源規劃裝置
111、311‧‧‧控制器
120‧‧‧主控節點裝置
121‧‧‧影響因子資料庫
122‧‧‧演算法資料庫
123‧‧‧建議方案資料庫
S205~S220‧‧‧叢集運算架構的資源規劃方法各步驟
圖1是依照本發明一實施例的資源規劃系統的方塊圖。 圖2是依照本發明一實施例的叢集運算架構的資源規劃方法流程圖。 圖3是依照本發明一實施例的資源規劃裝置的方塊圖。
S205~S220‧‧‧叢集運算架構的資源規劃方法各步驟

Claims (15)

  1. 一種叢集運算架構的資源規劃方法,包括: 提供一資源規劃裝置來建立一建議方案資料庫至一主控節點裝置,其中該建議方案資料庫儲存了用以部署一叢集運算架構的資訊,而由該資源規劃裝置來建立該建議方案資料庫的步驟包括: 依據所選擇的一待訓練平台,自對應於該待訓練平台的設定檔中擷取至少一設定值,並且擷取該待訓練平台所使用的至少一演算法特徵,其中該待訓練平台為多個軟體框架中的一個; 基於該至少一設定值以及該至少一演算法特徵建立至少一訓練模型,並傳送該至少一訓練模型至該主控節點裝置,使得該主控節點裝置依據每一該至少一訓練模型來進行運算,而獲得一運算時間;以及 自該主控節點裝置接收該運算時間,並傳送每一該至少一訓練模型對應的該運算時間至該建議方案資料庫;以及 依據選定的一任務條件以及一期望總工作時間,透過該資源規劃裝置自該建議方案資料庫中獲得一建議方案,並傳送該建議方案至該主控節點裝置,使得該主控節點裝置依據該建議方案來決定該叢集運算架構的硬體資源配置。
  2. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,更包括: 該資源規劃裝置透過一網路連線至該主控節點裝置,以查詢該主控節點裝置中的一影響因子資料庫以及一演算法資料庫,其中該影響因子資料庫儲存每一該些軟體框架的設定檔,該演算法資料庫儲存該至少一演算法特徵。
  3. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,其中該至少一設定值包括一工作節點數量、一工作節點資源配置、一分析資料筆數、以及一環境參數條件其中一個或其組合;該至少一演算法特徵包括一演算法、一任務數量以及一任務分割筆數其中一個或其組合; 該任務條件包括該些軟體框架其中一個、該分析資料筆數、該環境參數條件、該演算法、該任務數量以及該任務分割筆數其中一個或其組合。
  4. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,其中該至少一設定值為一數值區間。
  5. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,更包括: 在選定該任務條件以及該期望總工作時間之後,若在該建議方案資料庫中不存在對應的該建議方案,則該資源規劃裝置依據選定的該任務條件,針對一工作節點數量以及一工作節點資源配置來重新進行訓練,而自該主控節點裝置獲得對應的該運算時間,並儲存至該建議方案資料庫。
  6. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,更包括: 該主控節點裝置依據每一該至少一訓練模型來進行多次運算,而將多次運算所獲得的時間平均值作為對應的該運算時間。
  7. 如申請專利範圍第1項所述的叢集運算架構的資源規劃方法,其中傳送該建議方案至該主控節點裝置使得該主控節點裝置依據該建議方案來決定該叢集運算架構的硬體資源配置的步驟,更包括: 透過該主控節點裝置判斷該叢集運算架構下所包括的工作節點數量是否少於該建議方案所包括的一建議數量,以及判斷該叢集運算架構下所包括的一工作節點硬體資源是否低於該建議方案所包括的一資源需求; 在判定該工作節點數量少於該建議數量或該工作節點硬體資源低於該資源需求時,透過該主控節點裝置發出一提示訊息,以依據一指令來額外指派符合該建議方案的至少一工作節點裝置至該叢集運算架構;以及 在判定該工作節點數量未少於該建議數量且該工作節點硬體資源未低於該資源需求時,透過該主控節點裝置來部屬符合該建議數量的該至少一工作節點裝置各自的該硬體資源配置。
  8. 一種資源規劃系統,包括: 一主控節點裝置,分配一叢集運算架構下的硬體資源配置;以及 一資源規劃裝置,透過一網路與該主控節點裝置溝通,其中該資源規劃裝置包括一控制器; 其中,該控制器依據所選擇的一待訓練平台,自對應於該待訓練平台的設定檔中擷取至少一設定值,並且擷取該待訓練平台所使用的至少一演算法特徵,其中該待訓練平台為多個軟體框架中的一個; 該控制器基於該至少一設定值以及該至少一演算法特徵建立至少一訓練模型,並傳送該至少一訓練模型至該主控節點裝置,使得該主控節點裝置依據每一該至少一訓練模型來進行運算,而獲得一運算時間;並且,該控制器自該主控節點裝置接收該運算時間,並儲存每一該至少一訓練模型對應的該運算時間至一建議方案資料庫中; 該控制器依據選定的一任務條件以及一期望總工作時間,自該建議方案資料庫中獲得一建議方案,而傳送該建議方案至該主控節點裝置,使得該主控節點裝置依據該建議方案來決定該叢集運算架構的硬體資源配置。
  9. 如申請專利範圍第8項所述的資源規劃系統,其中該主控節點裝置包括: 一影響因子資料庫,儲存每一該些軟體框架的設定檔;以及 一演算法資料庫,儲存該至少一演算法特徵。
  10. 如申請專利範圍第8項所述的資源規劃系統,其中該至少一設定值包括一工作節點數量、一工作節點資源配置、一分析資料筆數以及一環境參數條件其中一個或其組合;該至少一演算法特徵包括一演算法、一任務數量、一任務分割筆數其中一個或其組合; 該任務條件包括該些軟體框架其中一個、該分析資料筆數、該環境參數條件、該演算法、該任務數量以及該任務分割筆數其中一個或其組合。
  11. 如申請專利範圍第8項所述的資源規劃系統,其中該至少一設定值為一數值區間。
  12. 如申請專利範圍第8項所述的資源規劃系統,其中在選定該些軟體框架其中一個、該任務條件以及該期望總工作時間之後,若在該建議方案資料庫中不存在對應的該建議方案,則該控制器依據選定的該任務條件,針對一工作節點數量以及一工作節點資源配置重新進行訓練,而自該主控節點裝置獲得對應的該運算時間,並儲存至該建議方案資料庫。
  13. 如申請專利範圍第8項所述的資源規劃系統,其中該主控節點裝置依據每一該至少一訓練模型來進行多次運算,而將多次運算所獲得的時間平均值作為對應的該運算時間。
  14. 如申請專利範圍第8項所述的資源規劃系統,其中該主控節點裝置在接收到該建議方案之後,判斷該叢集運算架構下所包括的一工作節點數量是否少於該建議方案所包括的一建議數量,以及判斷該叢集運算架構下所包括的一工作節點硬體資源是否低於該建議方案所包括的一資源需求; 在判定該工作節點數量少於該建議數量或該工作節點硬體資源低於該資源需求時,該主控節點裝置發出一提示訊息,以依據一指令來額外指派符合該建議方案的至少一工作節點裝置至該叢集運算架構; 在判定該工作節點數量未少於該建議數量且該工作節點硬體資源未低於該資源需求時,該主控節點裝置來部屬符合該建議數量的該至少一工作節點裝置各自的該硬體資源配置。
  15. 一種資源規劃裝置,包括: 一儲存單元,包括: 一影響因子資料庫,儲存多個軟體框架各自的設定檔; 一演算法資料庫,儲存多個演算法特徵;以及 一建議方案資料庫; 一控制器,耦接至該儲存單元,並且分配一叢集運算架構下的硬體資源配置; 其中,該控制器依據自該些軟體框架中所選擇的一待訓練平台,自對應於該待訓練平台的設定檔中擷取至少一設定值,並且擷取該待訓練平台所使用的至少一上述演算法特徵,基於該至少一設定值以及該至少一演算法特徵建立至少一訓練模型,並且在依據每一該至少一訓練模型來進行運算,而獲得一運算時間之後,將每一該至少一訓練模型對應的該運算時間儲存至該建議方案資料庫; 該控制器依據選定的一任務條件以及一期望總工作時間,自該建議方案資料庫中獲得一建議方案,並且,該控制器依據該建議方案來決定該叢集運算架構的硬體資源配置。
TW104136797A 2015-11-09 2015-11-09 叢集運算架構的資源規劃方法、系統及裝置 TWI547817B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW104136797A TWI547817B (zh) 2015-11-09 2015-11-09 叢集運算架構的資源規劃方法、系統及裝置
CN201510788437.0A CN106681826B (zh) 2015-11-09 2015-11-17 丛集运算架构的资源规划方法、系统及装置
US15/140,482 US10051056B2 (en) 2015-11-09 2016-04-28 Resource planning method, system, and apparatus for cluster computing architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW104136797A TWI547817B (zh) 2015-11-09 2015-11-09 叢集運算架構的資源規劃方法、系統及裝置

Publications (2)

Publication Number Publication Date
TWI547817B TWI547817B (zh) 2016-09-01
TW201717066A true TW201717066A (zh) 2017-05-16

Family

ID=57444940

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104136797A TWI547817B (zh) 2015-11-09 2015-11-09 叢集運算架構的資源規劃方法、系統及裝置

Country Status (3)

Country Link
US (1) US10051056B2 (zh)
CN (1) CN106681826B (zh)
TW (1) TWI547817B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107885595B (zh) * 2016-09-30 2021-12-14 华为技术有限公司 一种资源分配方法、相关设备及系统
US10736119B2 (en) * 2017-02-21 2020-08-04 Northwestern University Radio resource management in large wireless networks
US10304014B2 (en) * 2017-07-07 2019-05-28 International Business Machines Corporation Proactive resource allocation plan generator for improving product releases
CN109324890B (zh) * 2017-07-31 2021-01-05 华为技术有限公司 资源管理方法、装置及计算机可读存储介质
TWI668572B (zh) * 2018-09-27 2019-08-11 神雲科技股份有限公司 叢集式儲存系統之裝置資訊提供方法
CN111381891A (zh) * 2018-12-28 2020-07-07 技嘉科技股份有限公司 记忆体的效能优化方法以及使用其的主机板
CN111381663A (zh) * 2018-12-28 2020-07-07 技嘉科技股份有限公司 处理器的效能优化方法以及使用其的主机板
US11755377B2 (en) * 2019-12-09 2023-09-12 Hewlett Packard Enterprise Development Lp Infrastructure resource mapping mechanism based on determined best match proposal for workload deployment
CN111708818B (zh) * 2020-05-28 2023-06-16 北京赛博云睿智能科技有限公司 一种智能计算方法
CN113762675A (zh) * 2020-10-27 2021-12-07 北京沃东天骏信息技术有限公司 信息生成方法、装置、服务器、系统和存储介质
CN112953767B (zh) * 2021-02-05 2022-11-04 深圳前海微众银行股份有限公司 基于Hadoop平台的资源分配参数设置方法、设备及存储介质
CN114780214B (zh) * 2022-04-01 2024-01-09 中国电信股份有限公司 任务处理方法、装置、系统及设备
CN116595384B (zh) * 2023-07-14 2023-11-24 支付宝(杭州)信息技术有限公司 模型训练方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161097A (en) * 1997-08-11 2000-12-12 The United Sates Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Automated traffic management system and method
US20030061262A1 (en) * 2001-09-25 2003-03-27 Hahn Stephen C. Method and apparatus for partitioning resources within a computer system
US7970905B2 (en) * 2008-07-03 2011-06-28 International Business Machines Corporation Method, system and computer program product for server selection, application placement and consolidation planning of information technology systems
US7971094B1 (en) * 2009-03-03 2011-06-28 Netapp, Inc. Method, system and apparatus for creating and executing a failover plan on a computer network
US8640137B1 (en) * 2010-08-30 2014-01-28 Adobe Systems Incorporated Methods and apparatus for resource management in cluster computing
CN103701635B (zh) * 2013-12-10 2017-02-15 中国科学院深圳先进技术研究院 一种在线配置Hadoop参数的方法和装置
CN104077398B (zh) * 2014-06-30 2017-09-22 中华电信股份有限公司 基于Hadoop多丛集环境的工作分派系统及方法
CN104298550B (zh) 2014-10-09 2017-11-14 南通大学 一种面向Hadoop的动态调度方法
US10623481B2 (en) * 2015-04-27 2020-04-14 Microsoft Technology Licensing, Llc Balancing resources in distributed computing environments

Also Published As

Publication number Publication date
CN106681826A (zh) 2017-05-17
US20170134304A1 (en) 2017-05-11
CN106681826B (zh) 2019-08-30
US10051056B2 (en) 2018-08-14
TWI547817B (zh) 2016-09-01

Similar Documents

Publication Publication Date Title
TWI547817B (zh) 叢集運算架構的資源規劃方法、系統及裝置
CN108829494B (zh) 基于负载预测的容器云平台智能资源优化方法
CN109491790B (zh) 基于容器的工业物联网边缘计算资源分配方法及系统
CN107888669B (zh) 一种基于深度学习神经网络的大规模资源调度系统及方法
CN106776005B (zh) 一种面向容器化应用的资源管理系统及方法
JP6587330B2 (ja) ランダムフォレストモデルの訓練方法、電子装置及び記憶媒体
WO2020024442A1 (zh) 资源分配方法、装置、计算机设备及计算机可读存储介质
US20180144025A1 (en) Map-reduce job virtualization
CN105049268A (zh) 分布式计算资源分配系统和任务处理方法
CN105900064A (zh) 调度数据流任务的方法和装置
JP2017507572A5 (zh)
CN110688213B (zh) 一种基于边缘计算的资源管理方法、系统及电子设备
JP6001690B2 (ja) クラスタコンピューティングシステム用のマスタデバイス、スレーブデバイスおよびそのコンピューティング方法
CN103729257A (zh) 一种分布式并行计算方法以及系统
JP7379668B2 (ja) 機械学習ワークロードのためのタスクスケジューリング
CN107004003B (zh) 模型参数融合方法及装置
CN109818880B (zh) 动态分派工作及提供资源的方法、装置及其系统
CN108509256B (zh) 调度运行设备的方法、设备和运行设备
CN109347982A (zh) 一种数据中心的调度方法及装置
CN112580816A (zh) 机器学习训练资源管理
JP2014078134A (ja) センサ情報高速データ処理システム及びセンサ情報高速処理・表示システム
TW202315360A (zh) 微服務分配方法、電子設備及儲存介質
CN108228323A (zh) 基于数据本地性的Hadoop任务调度方法及装置
CN113821313A (zh) 一种任务调度方法、装置及电子设备
CN104580498A (zh) 一种自适应云管理平台