KR101907455B1 - 실시간 처리 시스템의 서버 자원 배치 방법 - Google Patents

실시간 처리 시스템의 서버 자원 배치 방법 Download PDF

Info

Publication number
KR101907455B1
KR101907455B1 KR1020150176974A KR20150176974A KR101907455B1 KR 101907455 B1 KR101907455 B1 KR 101907455B1 KR 1020150176974 A KR1020150176974 A KR 1020150176974A KR 20150176974 A KR20150176974 A KR 20150176974A KR 101907455 B1 KR101907455 B1 KR 101907455B1
Authority
KR
South Korea
Prior art keywords
time
real
processing system
server resources
time processing
Prior art date
Application number
KR1020150176974A
Other languages
English (en)
Other versions
KR20170069586A (ko
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 KR1020150176974A priority Critical patent/KR101907455B1/ko
Publication of KR20170069586A publication Critical patent/KR20170069586A/ko
Application granted granted Critical
Publication of KR101907455B1 publication Critical patent/KR101907455B1/ko

Links

Images

Classifications

    • 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/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • 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
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Multimedia (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)

Abstract

실시간 처리 시스템의 서버 자원 배치 방법이 제공된다. 상기 실시간 처리 시스템의 서버 자원 배치 방법은, 컴퓨터 시스템에 의해 수행되는 방법으로서, 순차적으로 데이터를 처리하는 복수의 노드를 포함하는 실시간 처리 시스템에서 제한적인 서버 자원을 배치하는 방법에 있어서, (a) 최적 방정식(optimal equation)을 이용하여, 상기 실시간 처리 시스템의 데이터 처리 시간을 최적화하기 위한 상기 각각의 노드에 배치되는 서버 자원의 최적해를 산출하는 단계, (b) 상기 서버 자원의 최적해를 정수(整數)화하는 단계, (c) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용할 경우, 상기 복수의 노드 중 데이터 처리 시간이 최대인 제1 노드를 결정하는 단계, (d) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용하고, 상기 복수의 노드 중 제2 노드로부터 소정의 개수의 서버 자원을 감축하고, 상기 제1 노드에 상기 소정의 개수의 서버 자원을 증설할 경우, 상기 실시간 처리 시스템의 데이터 처리 시간을 측정하는 단계, 및 (e) 상기 측정 결과를 기초로 최종 최적해를 결정하는 단계를 포함한다.

Description

실시간 처리 시스템의 서버 자원 배치 방법{SERVER RESOURCE ALLOCATING METHOD OF REAL-TIME PROCESSING SYSTEM}
본 발명은 실시간 처리 시스템에 관한 것으로, 보다 상세하게는 실시간 처리 시스템의 서버 자원 배치 방법에 관한 것이다.
실시간 처리 시스템은 실시간으로 데이터를 입력받고 이를 즉시 처리하여 출력하는 시스템을 나타낸다. 실시간 처리 시스템은 미리 정해진 시간 내에 정확하게 데이터를 처리하도록 구성된다. 이러한 실시간 처리 시스템에서는 데이터 전달량 및 처리량 보다는 데이터 처리 시간이 더욱 중요하다. 실시간 처리 시스템에서는 데이터 처리를 위하여 사용할 수 있는 컴퓨팅 자원이 제한되어 있으므로, 제한적인 컴퓨팅 자원을 어떻게 활용하는가에 따라 그 성능이 결정된다.
공개특허공보 제10-2015-0050689호, 2015.05.11
삭제
본 발명이 해결하고자 하는 과제는, 실시간 처리 시스템에서 제한적인 서버 자원을 재배치하여 실시간 처리 시스템의 성능을 최적화할 수 있는 실시간 처리 시스템의 서버 자원 배치 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 과제는, 실시간 처리 시스템에서 제한적인 서버 자원의 증설 또는 감축 시점을 예측할 수 있는 실시간 처리 시스템의 서버 자원 배치 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 본 발명의 일 면에 따른 실시간 처리 시스템의 서버 자원 배치 방법은, 컴퓨터 시스템에 의해 수행되는 방법으로서, 순차적으로 데이터를 처리하는 복수의 노드를 포함하는 실시간 처리 시스템에서 제한적인 서버 자원을 배치하는 방법에 있어서, (a) 최적 방정식(optimal equation)을 이용하여, 상기 실시간 처리 시스템의 데이터 처리 시간을 최적화하기 위한 상기 각각의 노드에 배치되는 서버 자원의 최적해를 산출하는 단계, (b) 상기 서버 자원의 최적해를 정수(整數)화하는 단계, (c) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용할 경우, 상기 복수의 노드 중 데이터 처리 시간이 최대인 제1 노드를 결정하는 단계, (d) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용하고, 상기 복수의 노드 중 제2 노드로부터 소정의 개수의 서버 자원을 감축하고, 상기 제1 노드에 상기 소정의 개수의 서버 자원을 증설할 경우, 상기 실시간 처리 시스템의 데이터 처리 시간을 측정하는 단계, 및 (e) 상기 측정 결과를 기초로 최종 최적해를 결정하는 단계를 포함한다.
본 발명의 일부 실시예에서, 상기 (a) 단계는, 상기 각각의 노드의 데이터 처리 시간은 상기 각각의 노드에 배치되는 상기 서버 자원의 규모에 반비례하고, 하나의 단위의 상기 서버 자원의 데이터 처리 시간은 동일한 것으로 가정할 수 있다.
본 발명의 일부 실시예에서, 상기 (d) 단계는, 상기 정수 최적해를 상기 실시간 처리 시스템에 적용하고, 상기 복수의 노드 중 각각의 노드로부터 소정의 개수의 서버 자원을 감축할 경우, 상기 실시간 처리 시스템의 데이터 처리 시간을 측정하고, 상기 실시간 처리 시스템의 데이터 처리 시간의 변화가 가장 작은 노드를 상기 제2 노드로 결정할 수 있다.
본 발명의 일부 실시예에서, 상기 방법은, (f) 상기 최종 최적해에 따라 현재의 상기 실시간 처리 시스템의 서버 자원을 재배치할 경우 오버헤드를 산출하는 단계, 및 (g) 상기 오버헤드의 산출 결과를 기초로 상기 최종 최적해에 따라 현재의 상기 실시간 처리 시스템의 서버 자원을 재배치하는 단계를 더 포함할 수 있다.
또한, 상기 방법은, (h) 상기 실시간 처리 시스템의 서버 자원의 재배치 후 상기 실시간 처리 시스템의 데이터 처리 시간의 이력을 기록하는 단계, 및 (i) 상기 실시간 처리 시스템의 데이터 처리 시간의 이력에 대한 회귀 분석을 이용하여 상기 실시간 처리 시스템의 서버 자원의 증설 또는 철수 시점을 결정하는 단계를 더 포함할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
상기 본 발명의 실시간 처리 시스템의 서버 자원 배치 방법에 의하면, 실시간 처리 시스템에서 제한적인 서버 자원을 재배치하여 실시간 처리 시스템의 데이터 처리 시간을 최적화함으로써 실시간 처리 시스템의 성능을 최적화할 수 있다.
또한, 상기 본 발명의 실시간 처리 시스템의 서버 자원 배치 방법에 의하면, 실시간 처리 시스템의 데이터 처리 시간의 이력을 기록하고 이에 대하여 회귀 분석을 수행함으로써 실시간 처리 시스템에서 제한적인 서버 자원의 증설 또는 감축 시점을 예측할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법이 적용되는 실시간 처리 시스템을 개략적으로 도시한 블록도이다.
도 2는 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법을 개략적으로 도시한 흐름도이다.
도 3은 도 1의 실시간 처리 시스템에 서버 자원의 정수 최적해를 적용할 경우, 데이터 처리 시간을 개략적으로 도시한 도면이다.
도 4는 도 1의 실시간 처리 시스템에 서버 자원의 정수 최적해를 적용하고, 각각의 노드로부터 소정의 개수의 서버 자원을 감축할 경우, 데이터 처리 시간을 개략적으로 도시한 도면이다.
도 5는 도 1의 실시간 처리 시스템의 제2 노드로부터 소정의 개수의 서버 자원을 감축하고, 제1 노드에 상기 소정의 개수의 서버 자원을 증설하는 것을 개략적으로 도시한 도면이다.
도 6은 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법에 따라 서버 자원을 재배치한 후 서버 자원의 증설 또는 철수 시점을 결정하는 방법을 개략적으로 도시한 흐름도이다.
도 7은 도 1의 실시간 처리 시스템의 데이터 처리 시간의 이력을 기록하고, 상기 이력에 대한 회귀 분석을 이용하여 서버 자원의 증설 또는 철수 시점을 결정하는 것을 개략적으로 도시한 도면이다.
삭제
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
비록 제1, 제2 등이 다양한 소자, 구성요소 및/또는 섹션들을 서술하기 위해서 사용되나, 이들 소자, 구성요소 및/또는 섹션들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자, 구성요소 또는 섹션들을 다른 소자, 구성요소 또는 섹션들과 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자, 제1 구성요소 또는 제1 섹션은 본 발명의 기술적 사상 내에서 제2 소자, 제2 구성요소 또는 제2 섹션일 수도 있음은 물론이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
도 1은 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법이 적용되는 실시간 처리 시스템을 개략적으로 도시한 블록도이다.
도 1을 참조하면, 실시간 처리 시스템(100)은 실시간으로 데이터를 입력받고 이를 즉시 처리하여 출력한다.
이러한 실시간 처리 시스템(100)은 데이터를 처리하는 복수의 노드(110~140)를 포함한다. 복수의 노드(110~140)는 순차적으로 데이터를 처리한다. 즉, 제1 노드(110)가 데이터를 입력받고 이를 처리하여 출력하고, 제2 노드(120)가 상기 제1 노드(110)로부터 출력된 데이터를 입력받고 이를 처리하여 출력하며, 이후의 노드들(130, 140)도 이와 같은 방식으로 순차적으로 데이터를 처리한다.
각각의 노드(110~140)는 데이터를 처리하기 위한 소정의 개수의 서버 자원(10)을 포함한다. 여기서, “서버 자원(10)”은 서버가 데이터 처리를 위하여 사용할 수 있는 프로세서, 메모리 및 스토리지 등을 포함하는 임의의 컴퓨팅 자원을 나타낸다. 서버 자원(10)은 소정의 단위(unit)로 복수의 노드에 적절하게 분배될 수 있다. 별도의 서버 자원(10)의 증설이나 감축이 없는 한, 실시간 처리 시스템(100)의 서버 자원(10)은 제한되어 있다.
데이터 처리 시간 모니터(200)는 실시간 처리 시스템(100)의 데이터 처리 시간을 모니터링할 수 있다. 데이터 처리 시간 모니터(200)는 실시간 처리 시스템(100)의 단일 데이터에 대한 데이터 처리 시간, 소정의 개수의 데이터에 대한 데이터 처리 시간, 소정의 시간 동안 처리된 데이터의 개수 등을 모니터링할 수 있다. 데이터 처리 시간 모니터(200)는 실시간 처리 시스템(100)의 각각의 노드(110~140)의 데이터 처리 시간을 모니터링할 수도 있다.
도 1에는 데이터 처리 시간 모니터(200)를 실시간 처리 시스템(100)의 외부의 구성요소로 도시하였으나, 이에 제한되는 것은 아니고, 실시간 처리 시스템(100)은 실시예에 따라 데이터 처리 시간 모니터(200)를 내부의 구성요소로 포함할 수 있다.
또한, 도 1에는 실시간 처리 시스템(100)의 일 예로서 네 개의 노드를 포함하는 실시간 처리 시스템(100)을 도시하였으나, 이에 제한되는 것은 아니고, 실시간 처리 시스템(100)은 실시예에 따라 다양한 개수의 노드를 포함할 수 있다.
또한, 도 1에는 실시간 처리 시스템(100)의 일 예로서 복수의 노드가 직렬로 연결된 구조를 갖는 실시간 처리 시스템(100)을 도시하였으나, 이에 제한되는 것은 아니고, 실시간 처리 시스템(100)은 실시예에 따라 적어도 일부의 노드가 병렬로 연결되거나 트리형, 스타형, 매쉬형 등의 다양한 형태의 구조를 가질 수 있다.
도 2는 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법을 개략적으로 도시한 흐름도이고, 도 3은 도 1의 실시간 처리 시스템에 서버 자원의 정수 최적해를 적용할 경우, 데이터 처리 시간을 개략적으로 도시한 도면이고, 도 4는 도 1의 실시간 처리 시스템에 서버 자원의 정수 최적해를 적용하고, 각각의 노드로부터 소정의 개수의 서버 자원을 감축할 경우, 데이터 처리 시간을 개략적으로 도시한 도면이고, 도 5는 도 1의 실시간 처리 시스템의 제2 노드로부터 소정의 개수의 서버 자원을 감축하고, 제1 노드에 상기 소정의 개수의 서버 자원을 증설하는 것을 개략적으로 도시한 도면이다.
도 2를 참조하면, 먼저, 단계 S310에서, 최적 방정식(optimal equation)을 이용하여, 실시간 처리 시스템(100)의 데이터 처리 시간을 최적화하기 위한 각각의 노드(110~140)에 배치되는 서버 자원(10)의 최적해(optimal solution)가 산출된다. 상기 서버 자원(10)의 최적해는 각각의 노드(110~140)에 배치되는 서버 자원(10)의 개수를 포함한다.
이 때, 최적 방정식의 조건으로서, 각각의 노드(110~140)의 데이터 처리 시간은 각각의 노드(110~140)에 배치되는 서버 자원(10)의 규모에 반비례하고, 하나의 단위의 서버 자원(10)의 데이터 처리 시간은 동일한 것으로 가정될 수 있다.
이어서, 단계 S320에서, 상기 서버 자원(10)의 최적해가 정수화된다. 최적 방정식의 풀이 결과, 상기 서버 자원(10)의 최적해가 적어도 부분적으로 소수를 포함할 수 있으므로(예를 들어, 1.1), 이 경우 반올림, 올림, 버림 등이 수행되고, 각각의 조건에서 실시간 처리 시스템(100)의 데이터 처리 시간이 가장 짧은 조건이 정수 최적해로 선택될 수 있다.
도 3은 예시적으로 실시간 처리 시스템(100)의 서버 자원(10)의 정수 최적해로서, 복수의 노드(110~140)의 서버 자원(10)의 개수가 각각 a개, b개, c개, d개이고, 이를 실시간 처리 시스템(100)에 적용하였을 때 데이터 처리 시간이 t0인 경우를 도시한다.
이어서, 단계 S330에서, 상기 정수 최적해를 실시간 처리 시스템(100)에 적용할 경우, 복수의 노드(110~140) 중 데이터 처리 시간이 최대인 노드(critical path)가 결정된다. 이하에서는 설명의 편의를 위하여 제1 노드(110)의 데이터 처리 시간이 최대인 것으로 가정한다.
이어서, 단계 S340에서, 상기 정수 최적해를 실시간 처리 시스템(100)에 적용하고, 복수의 노드(110~140) 중 소정의 노드로부터 소정의 개수의 서버 자원(10)을 감축하고, 상기 제1 노드(110)에 상기 소정의 개수의 서버 자원(10)을 증설할 경우, 실시간 처리 시스템(100)의 데이터 처리 시간이 측정된다.
이 때, 상기 정수 최적해를 실시간 처리 시스템(100)에 적용하고, 각각의 노드(110~140)로부터 소정의 개수의 서버 자원(10)을 감축할 경우, 실시간 처리 시스템(100)의 데이터 처리 시간이 측정되고, 실시간 처리 시스템(100)의 데이터 처리 시간의 변화가 가장 작은 노드가 상기 서버 자원(10)의 감축 대상으로 결정될 수 있다.
도 4는 예시적으로 상기 정수 최적해를 실시간 처리 시스템(100)에 적용하고, 각각의 노드(110~140)로부터 하나의 단위의 서버 자원(10)을 감축하였을 때 데이터 처리 시간이 각각 t1, t2, t3, t4인 경우를 도시한다. 이하에서는 설명의 편의를 위하여 제2 노드(120)로부터 서버 자원(10)을 감축하였을 때 데이터 처리 시간의 변화(즉, ?t=t2-t0)가 가장 작은 것으로 가정한다. 한편, 상기 서버 자원(10)의 감축 대상을 결정하기 위하여, 각각의 노드의 데이터 처리 시간이 고려될 수도 있다.
도 5는 예시적으로 제2 노드(120)로부터 하나의 단위의 서버 자원(10a)을 감축하고, 제1 노드(110)에 제2 노드(120)로부터 감축한 서버 자원(10a)을 증설함으로써, 실시간 처리 시스템(100)의 서버 자원(10)을 재배치하는 것을 도시한다.
이어서, 단계 S350에서, 상기 측정 결과를 기초로 서버 자원(10)의 최종 최적해가 결정된다. 실시간 처리 시스템(100)의 데이터 처리 시간의 측정 결과가 감소될 때까지, 데이터 처리 시간이 최대인 노드(여기서는, 제1 노드(110))에 증설되는 서버 자원(10a)의 개수가 증가되고, 단계 S340이 반복될 수 있다. 또는, 데이터 처리 시간이 최대인 노드의 데이터 처리 시간의 측정 결과가 감소될 때까지, 또는 소정의 임계 시간까지 단계 S340이 반복될 수도 있다. 이로써, 서버 자원(10)의 최종 최적해가 결정될 수 있다.
이어서, 단계 S360에서, 최종 최적해에 따라 현재의 실시간 처리 시스템(100)의 서버 자원(10)을 재배치할 경우 오버헤드(overhead)가 산출된다.
이어서, 단계 S370에서, 상기 오버헤드의 산출 결과를 기초로, 실시간 처리 시스템(100)의 서버 자원(10)을 재배치함에 따라 감소되는 데이터 처리 시간이 실시간 처리 시스템(100)의 서버 자원(10)의 재배치를 위해 소비되는 시간보다 더 크면, 최종 최적해에 따라 현재의 실시간 처리 시스템(100)의 서버 자원(10)이 재배치된다.
도 6은 본 발명의 실시예에 따른 실시간 처리 시스템의 서버 자원 배치 방법에 따라 서버 자원을 재배치한 후 서버 자원의 증설 또는 철수 시점을 결정하는 방법을 개략적으로 도시한 흐름도이고, 도 7은 도 1의 실시간 처리 시스템의 데이터 처리 시간의 이력을 기록하고, 상기 이력에 대한 회귀 분석을 이용하여 서버 자원의 증설 또는 철수 시점을 결정하는 것을 개략적으로 도시한 도면이다.
도 6을 참조하면, 먼저, 단계 S410에서, 실시간 처리 시스템(100)의 서버 자원(10)의 재배치 후 실시간 처리 시스템(100)의 데이터 처리 시간의 이력(history)이 계속적으로 기록된다. 소정의 기간 동안 실시간 처리 시스템(100)의 서버 자원(10)의 재배치는 일 회 이상 이루어질 수 있다.
이어서, 단계 S420에서, 실시간 처리 시스템(100)의 데이터 처리 시간의 이력에 대한 회귀 분석(regression analysis)을 이용하여, 실시간 처리 시스템(100)의 서버 자원(10)의 증설 또는 철수 시점이 결정된다. 회귀 분석을 이용하여, 실시간 처리 시스템(100)의 데이터 처리 시간의 증가 또는 감소 추세가 파악될 수 있고, 파악된 추세에 따라 서버 자원(10)의 증설 또는 철수 시점이 예측될 수 있다.
도 7에서 P는 실시간 처리 시스템(100)의 데이터 처리 시간을 도시한 것이고, ta와 tb는 각각 서버 자원 증설 기준 시간과 서버 자원 감축 기준 시간을 도시한 것이다.
본 발명의 실시예와 관련하여 설명된 방법은 하드웨어 모듈과 결합되어 수행되는 소프트웨어 모듈로 구현될 수 있다. 소프트웨어 모듈은 RAM, ROM, EPROM, EEPROM, 플래시 메모리, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 실시간 처리 시스템
110, 120, 130, 140: 노드
10: 서버 자원
200: 데이터 처리 시간 모니터

Claims (5)

  1. 순차적으로 데이터를 처리하는 복수의 노드를 포함하는 실시간 처리 시스템의 서버 자원 배치 방법으로서,
    (a) 최적 방정식(optimal equation)을 이용하여, 상기 실시간 처리 시스템의 데이터 처리 시간을 최적화하기 위한 상기 각각의 노드에 배치되는 서버 자원의 최적해를 산출하는 단계;
    (b) 상기 서버 자원의 최적해를 정수(整數)화하는 단계;
    (c) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용할 경우, 상기 복수의 노드 중 데이터 처리 시간이 최대인 제1 노드를 결정하는 단계;
    (d) 상기 정수 최적해를 상기 실시간 처리 시스템에 적용하고, 상기 복수의 노드 중 제2 노드로부터 소정의 개수의 서버 자원을 감축하고, 상기 제1 노드에 상기 소정의 개수의 서버 자원을 증설할 경우, 상기 실시간 처리 시스템의 데이터 처리 시간을 측정하는 단계; 및
    (e) 상기 측정 결과를 기초로 최종 최적해를 결정하는 단계를 포함하고,
    상기 (a) 단계는,
    상기 각각의 노드의 데이터 처리 시간은 상기 각각의 노드에 배치되는 상기 서버 자원의 규모에 반비례하고, 하나의 단위의 상기 서버 자원의 데이터 처리 시간은 동일한 것으로 가정하고,
    상기 (d) 단계는,
    상기 정수 최적해를 상기 실시간 처리 시스템에 적용하고, 상기 복수의 노드 중 각각의 노드로부터 소정의 개수의 서버 자원을 감축할 경우, 상기 실시간 처리 시스템의 데이터 처리 시간을 측정하고, 상기 실시간 처리 시스템의 데이터 처리 시간의 변화가 가장 작은 노드를 상기 제2 노드로 결정하며,
    상기 (b) 단계는,
    상기 최적 방정식의 풀이 결과 상기 서버 자원의 최적해가 적어도 부분적으로 소수를 포함하는 경우, 반올림, 올림, 버림을 수행하여 상기 서버 자원의 최적해를 정수화하도록 구성된, 실시간 처리 시스템의 서버 자원 배치 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    (f) 상기 최종 최적해에 따라 현재의 상기 실시간 처리 시스템의 서버 자원을 재배치할 경우 오버헤드를 산출하는 단계; 및
    (g) 상기 오버헤드의 산출 결과를 기초로 상기 최종 최적해에 따라 현재의 상기 실시간 처리 시스템의 서버 자원을 재배치하는 단계를 더 포함하는, 실시간 처리 시스템의 서버 자원 배치 방법.
  5. 제4항에 있어서,
    (h) 상기 실시간 처리 시스템의 서버 자원의 재배치 후 상기 실시간 처리 시스템의 데이터 처리 시간의 이력을 기록하는 단계; 및
    (i) 상기 실시간 처리 시스템의 데이터 처리 시간의 이력에 대한 회귀 분석을 이용하여 상기 실시간 처리 시스템의 서버 자원의 증설 또는 철수 시점을 결정하는 단계를 더 포함하는, 실시간 처리 시스템의 서버 자원 배치 방법.
KR1020150176974A 2015-12-11 2015-12-11 실시간 처리 시스템의 서버 자원 배치 방법 KR101907455B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150176974A KR101907455B1 (ko) 2015-12-11 2015-12-11 실시간 처리 시스템의 서버 자원 배치 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150176974A KR101907455B1 (ko) 2015-12-11 2015-12-11 실시간 처리 시스템의 서버 자원 배치 방법

Publications (2)

Publication Number Publication Date
KR20170069586A KR20170069586A (ko) 2017-06-21
KR101907455B1 true KR101907455B1 (ko) 2018-10-12

Family

ID=59282077

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150176974A KR101907455B1 (ko) 2015-12-11 2015-12-11 실시간 처리 시스템의 서버 자원 배치 방법

Country Status (1)

Country Link
KR (1) KR101907455B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101968259B1 (ko) 2018-02-26 2019-04-12 부산대학교 산학협력단 로컬 네트워크 환경에서 링크 사용량이 최소인 경로를 고려한 포그 서버 배치를 위한 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100058300A (ko) * 2008-11-24 2010-06-03 한국전자통신연구원 미래 인터넷 환경에서 적응적 자원 관리 방법 및 시스템
KR20130067900A (ko) * 2011-12-14 2013-06-25 한국전자통신연구원 네트워크 자원 제어 방법 및 그 장치
KR20130088512A (ko) * 2012-01-31 2013-08-08 한국전자통신연구원 클러스터 컴퓨팅 환경에서의 자원 관리 장치 및 방법
KR101531834B1 (ko) * 2013-03-08 2015-06-26 주식회사 알투소프트 모바일 클라우드 컴퓨팅 환경에서의 리소스 관리 시스템 및 그 방법
KR101577265B1 (ko) * 2014-05-16 2015-12-15 국방과학연구소 자원 관리 장치 및 그 동작 방법

Also Published As

Publication number Publication date
KR20170069586A (ko) 2017-06-21

Similar Documents

Publication Publication Date Title
US10140142B2 (en) Grouping and placement of virtual machines based on similarity and correlation of functional relations
US20120266175A1 (en) Method and device for balancing load of multiprocessor system
JP6191691B2 (ja) 異常検出装置、制御方法、及びプログラム
JP6233413B2 (ja) タスク割り当て判定装置、制御方法、及びプログラム
CN107682417B (zh) 一种数据节点的任务分配方法和装置
JP6202850B2 (ja) 目標追尾装置
CN109189572B (zh) 一种资源预估方法及系统、电子设备和存储介质
JP7234702B2 (ja) 情報処理装置、コンテナ配置方法及びコンテナ配置プログラム
CN110543279B (zh) 一种数据存储、处理方法、装置及系统
JP2007235681A (ja) 配信ツリー構成装置、配信ツリー構成方法、及び配信ツリー構成用プログラム
KR101907455B1 (ko) 실시간 처리 시스템의 서버 자원 배치 방법
JP5109799B2 (ja) 情報処理システム、負荷制御方法、および負荷制御プログラム
WO2015146100A1 (ja) 負荷推定システム、情報処理装置、負荷推定方法、及び、プログラムを記憶する記憶媒体
WO2018207322A1 (ja) データ収集装置およびデータ収集プログラム
US10884794B2 (en) Control apparatus for information processing system, computer-readable non-transitory recording medium having program stored therein, and information processing method which allocate processes executed to acquire desired result to processing apparatus to perform for pipeline processing
CN111027688A (zh) 一种基于fpga的神经网络计算器生成方法及装置
US20160253773A1 (en) Path calculation device, path calculation method and program
KR20200109917A (ko) Gpu 기반의 분산 딥 러닝 모델의 학습 속도 예측 방법 및 기록매체
JP2016071886A5 (ko)
KR20190134031A (ko) 비트스트림의 임의성을 검증하는 방법 및 그 시스템
Blazewicz et al. Metaheuristics for late work minimization in two-machine flow shop with common due date
KR101674324B1 (ko) 실시간 제어 응용에 적용되는 태스크 스케쥴링 장치 및 방법
KR102376155B1 (ko) 병렬계산 가속기 할당률 결정 장치 및 방법
KR101757886B1 (ko) 태스크 분할 할당 시스템
CN106557430A (zh) 一种缓存数据刷盘方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right