KR101411563B1 - 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법 - Google Patents

리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법 Download PDF

Info

Publication number
KR101411563B1
KR101411563B1 KR1020130132303A KR20130132303A KR101411563B1 KR 101411563 B1 KR101411563 B1 KR 101411563B1 KR 1020130132303 A KR1020130132303 A KR 1020130132303A KR 20130132303 A KR20130132303 A KR 20130132303A KR 101411563 B1 KR101411563 B1 KR 101411563B1
Authority
KR
South Korea
Prior art keywords
distributed
resource
high frequency
frequency reference
coordinator
Prior art date
Application number
KR1020130132303A
Other languages
English (en)
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 KR1020130132303A priority Critical patent/KR101411563B1/ko
Application granted granted Critical
Publication of KR101411563B1 publication Critical patent/KR101411563B1/ko

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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • 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)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

리소스 지역성에 기초한 분산 처리 방법이 개시된다. 분산 처리 방법은 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출하는 단계, 추출된 고빈도 참조 리소스를 복수의 노드 각각에 포함된 분산 저장부에 저장하는 단계 및 고빈도 참조 리소스에 관한 정보를 기초로 참조하려는 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결하는 단계를 포함한다. 이에 따라, 분산 처리 방법은 리소스 데이터의 지역성을 확보하여 네트워크 오버헤드를 감소시킴에 따라 더 빠르게 분산 처리를 할 수 있다.

Description

리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법{DISTRIBUTED PROCESSING SYSTEM BASED ON RESOURCE LOCALITY AND DISTRIBUTED PROCESSING METHOD THEREOF}
본 발명은 분산 처리 시스템 및 분산 처리 방법에 관한 것으로서, 더욱 상세하게는, 리소스의 지역성(locality)을 고려한 분산 처리 시스템 및 분산 처리 방법에 관한 것이다.
최근, 네트워크 기술의 발전과 대용량 컨텐츠의 증가에 따라 서비스를 위해 수집, 처리, 관리해야 하는 데이터 양은 빠르게 증가하고 있다. 이와 같은 대용량 데이터의 관리를 위해 데이터를 분산 관리하고, 병렬 처리하는 기술에 대해 많은 연구가 진행되고 있다. 분산 병렬 처리 기술 중에서 맵리듀스(MapReduce) 모델이 대표적인 분산 병렬 처리 방법으로 주목을 받고 있다.
맵리듀스 모델은 대규모 노드로 구성된 클러스터의 대용량 데이터에 대한 분산 병렬 연산을 지원하기 위하여 제안된 분산 병렬 처리 프로그래밍 모델이다. 맵리듀스 모델은 대규모 분산 병렬 처리에 있어 데이터 증가에 따른 확장성을 제공하고, 노드 간 데이터 이동에 따른 네트워크 트래픽을 최소화하기 위해 구현되었다. 따라서, 맵리듀스 모델은 로컬 데이터의 지역성(locality)을 고려하여 데이터를 처리할 수 있다. 이와 같이, 맵리듀스 모델은 로컬 데이터의 지역성 및 트래픽을 최소화하도록 구현됨으로써 많은 로컬 데이터를 빠르게 처리할 수 있다.
그러나, 분산 병렬 프로그램 개발시 많은 분석 작업은 로컬 데이터만을 참조하는 것이 아니라 다양한 공통 리소스(resource)를 참조하여 수행한다. 이 과정에서 참조되는 리소스들은 지역성이 보장되지 않기 때문에 네트워크 오버헤드가 증가된다. 따라서, 맵리듀스 모델이 공통 참조 리소스를 억세스할 때 리소스 데이터의 지역성을 확보할 수 있는 기술에 대한 필요성이 대두되고 있다.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 본 발명의 목적은 리소스 지역성을 확보할 수 있는 분산 처리 시스템 및 분산 처리 방법을 제공함에 있다.
본 발명의 상술한 목적을 달성하기 위한 일 실시 예로서, 리소스 지역성에 기초한 분산 처리 방법은 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출하는 단계, 상기 추출된 고빈도 참조 리소스를 복수의 노드 각각에 포함된 분산 저장부에 저장하는 단계 및 고빈도 참조 리소스에 관한 정보를 기초로 참조하려는 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결하는 단계를 포함한다.
그리고, 상기 고빈도 참조 리소스에 관한 정보는 복사된 리소스 또는 저장 위치 포인터 중 적어도 하나일 수 있다.
한편, 리소스 지역성에 기초한 분산 처리 방법은 상기 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화하는 단계를 더 포함할 수 있다.
그리고, 리소스 지역성에 기초한 분산 처리 방법은 상기 저장된 고빈도 참조 리소스를 업데이트하는 단계를 더 포함할 수 있다.
한편, 기 설정된 기준은 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나일 수 있다.
또한, 리소스 지역성에 기초한 분산 처리 방법은 상기 분산 코디네이터는 복수 개 존재하고, 상기 복수 개의 분산 코디네이터들을 관리하는 단계를 더 포함할 수 있다.
본 발명의 상술한 목적을 달성하기 위한 일 실시 예로서, 리소스 지역성에 기초한 분산 처리 시스템은 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출하는 리소스 로더, 복수의 노드 각각에 포함된 분산 저장부 및 상기 추출된 고빈도 참조 리소스를 상기 분산 저장부에 저장하는 분산 코디네이터를 포함하며, 상기 분산 코디네이터는 고빈도 참조 리소스에 관한 정보를 포함하고, 상기 정보에 기초하여 참조하려는 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결한다.
그리고, 상기 고빈도 참조 리소스에 관한 정보는 복사된 리소스 또는 저장 위치 포인터 중 적어도 하나일 수 있다.
또한, 상기 분산 코디네이터는 상기 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화할 수 있다.
그리고, 상기 분산 코디네이터는 상기 저장된 고빈도 참조 리소스를 업데이트할 수 있다.
또한, 기 설정된 기준은 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나일 수 있다.
한편, 상기 분산 코디네이터는 복수 개 존재하고, 리소스 지역성에 기초한 분산 처리 시스템은 상기 복수 개의 분산 코디네이터들을 관리하는 분산 코디네이터 관리자를 더 포함할 수 있다.
상술한 다양한 실시 예에 따르면, 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법은 리소스 데이터의 지역성을 확보하여 네트워크 오버헤드를 감소시킴에 따라 더 빠르게 분산 처리를 할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 리소스 지역성에 기초한 분산 처리 시스템의 블록도.
도 2는 본 발명의 다른 실시 예에 따른 리소스 지역성에 기초한 분산 처리 시스템의 블록도.
도 3은 본 발명의 일 실시 예에 따른 고빈도 참조 리소스를 결정하는 기준을 설명하는 도면.
도 4는 본 발명의 일 실시 예에 따른 고빈도 참조 리소스의 처리 과정을 설명하는 도면.
도 5는 본 발명의 일 실시 예에 따른 리소스 지역성에 기초한 분산 처리 방법을 설명하는 흐름도.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시 예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당해 기술 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다.
도 1은 본 발명의 일 실시 예에 따른 리소스 지역성에 기초한 분산 처리 시스템의 블록도이다.
도 1을 참조하면, 리소스 지역성에 기초한 분산 처리 시스템(1000)은 분산 코디네이터(110), 복수의 분산 저장부(121, 122, 123, 124) 및 리소스 로더(resource loader)(130)를 포함한다.
리소스 로더(130)는 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출한다. 참조 리소스란 분산 병렬 처리시 분산 처리 시스템이 참조하는 리소스를 의미한다. 예를 들어, 참조 리소스는 기술(technology) 정보, 구조(organization) 정보, 용어사전, 전자사전, 온톨로지(ontology), 그래프 정보, 노드 관련 정보 등이 될 수 있다. 고빈도 참조 리소스란 분산 처리 시스템이 상대적으로 자주 참조하는 리소스를 의미한다. 고빈도 참조 리소스는 참조 횟수, 비율 등 일정한 기준에 따라 설정될 수 있다.
분산 코디네이터(110)는 리소스 로더(130)에서 추출된 고빈도 참조 리소스를 제1 내지 제4 분산 저장부(121, 122, 123, 124) 중 적어도 하나의 분산 저장부에 저장한다. 상술한 제1 내지 제4 분산 저장부(121, 122, 123, 124)는 일 실시 예이며, 더 적거나 더 많은 분산 저장부가 있을 수 있다. 제1 내지 제4 분산 저장부(121, 122, 123, 124)는 각각 서로 다른 노드에 포함된다. 노드는 맵리듀스(mapreduce) 태스크를 수행하는 장치를 의미한다.
분산 코디네이터(110)는 고빈도 참조 리소스에 관한 정보를 포함한다. 고빈도 참조 리소스에 관한 정보는 고빈도 참조 리소스의 복사본 또는 저장 위치 정보 등을 의미한다. 예를 들어, 분산 코디네이터(110)는 고빈도 참조 리소스를 제1 분산 저장부(121) 및 제2 분산 저장부(122)에 저장해 두고, 복사된 고빈도 참조 리소스 또는 저장 위치 포인터를 포함하는 고빈도 참조 리소스에 관한 정보를 저장한다. 분산 코디네이터(110)는 저장된 고빈도 참조 리소스에 관한 정보에 기초하여 맵 태스크 또는 리듀스 태스크에 따라 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결할 수 있다. 분산 코디네이터(110)는 맵 태스크 또는 리듀스 태스크가 아니더라도 고빈도 참조 리소스를 억세스하는 태스크를 처리하는 프로세서를 고빈도 참조 리소스가 저장도니 분산 저장부에 연결할 수 있다.
그리고, 분산 코디네이터(110)는 서비스를 각 노드에 적절하게 분산시켜 각 노드들이 동시에 작업할 수 있도록 하며, 하나의 노드에서 처리된 결과가 다른 노드들과 동기화시킴으로써 데이터의 안정성을 보장해 줄 수 있다. 분산 코디네이터(110)는 어느 하나의 노드가 문제가 발생하여 서비스를 지속적으로 작업을 처리하지 못하는 경우, 다른 노드가 문제가 발생한 노드의 작업을 처리할 수 있도록 조정할 수 있다. 또한, 각각의 노드들에 관한 환경설정을 분산시키지 않고 통합적으로 관리할 수 있다. 예를 들어, 분산 코디네이터(110)는 쥬키퍼(zookeeper) 시스템일 수 있다.
이와 같이 분산 처리 시스템은 리소스 지역성(locality)을 확보하여 태스크를 수행함으로써 네트워크의 오버헤드(overhead)를 감소시키고 빠른 분산 처리를 할 수 있다.
도 2는 본 발명의 다른 실시 예에 따른 리소스 지역성에 기초한 분산 처리 시스템의 블록도이다.
도 2를 참조하면, 분산 처리 시스템은 제1 분산 코디네이터(111), 제2 분산 코디네이터(112), 리소스 로더(130), 분산 코디네이터 관리자(140), 제1 및 제2 맵 태스크(11, 13) 및 제1 및 제2 리듀스 태스크(12, 14)로 구성될 수 있다.
제1 분산 코디네이터(111), 제2분산 코디네이터(112)는 각각 일부 노드를 관리할 수 있다. 도 1에서 설명한 바와 유사하게 제1 분산 코디네이터(111) 및 제2 분산 코디네이터(112)는 추출된 고빈도 참조 리소스를 분산 저장부에 저장할 수 있다. 제1 및 제2 분산 코디네이터(111, 112)는 저장한 고빈도 참조 리소스에 관한 정보를 저장하고, 이 정보에 기초하여 맵 태스크 또는 리듀스 태스크에 따라 분산 저장부에 태스크를 처리하는 프로세서를 연결할 수 있다. 분산 코디네이터의 개수는 도 2에 도시된 바에 국한되지 않으며, 분산 처리 시스템은 더 많은 분산 코디네이터로 구현될 수 있다.
리소스 로더(130)는 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출할 수 있다. 고빈도 참조 리소스는 제1 또는 제2 분산 코디네이터(111, 112)에 의해 분산 저장부에 저장될 수 있다. 리소스 로더(130)는 고빈도 참조 리소스를 제외한 저빈도 참조 리소스를 분산 코디네이터 관리자를 통해 저장할 수 있다. 저빈도 참조 리소스는 기존 방식과 동일한 방식으로 저장되고 참조될 수 있다.
분산 코디네이터 관리자(140)는 제1 및 제2 분산 코디네이터(111, 112)들을 관리할 수 있다. 분산 코디네이터 관리자(140)는 더 많은 분산 코디네이터로 구현된 경우 더 많은 분산 코디네이터들을 관리할 수 있다. 또한, 분산 코디네이터 관리자(140)는 고빈도 참조 리소스 이외의 참조 리소스를 각 노드에 분할하여 저장할 수 있다. 분산 코디네이터 관리자(140)의 참조 리소스를 저장하고 관리하는 방법은 종래 방식으로 수행될 수 있다.
각 노드는 분산 코디네이터의 제어를 받고 맵 태스크 또는 리듀스 태스크를 실행할 수 있다. 예를 들어, 제1 분산 코디네이터(111)는 하나의 노드에 제1 맵 태스크(11)를 실행시키고, 제2 분산 코디네이터(112)는 또 다른 하나의 노드에 제2 맵 태스크(13)를 실행시킬 수 있다. 제1 및 제2 분산 코디네이터(111, 112)는 복수의 노드를 포함할 수 있으며, 복수의 맵 태스크를 실행시킬 수 있다. 이후 제1 분 코디네이터(111)는 하나의 노드에 제1 리듀스 태스크(12)를 실행시키고, 제2 분산 코디네이터(112)는 또 다른 하나의 노드에 제2 리듀스 태스크(14)를 실행시킬 수 있다. 맵 태스크 실행 노드와 리듀스 태스크 실행 노드는 동일한 노드일 수 있고, 다른 노드일 수 있다.
이와 같이, 분산 처리 시스템은 많은 억세스가 이루어지는 고빈도 참조 리소스의 지역성을 확보함으로써 효율적인 분산 처리를 할 수 있다. 아래에서는 고빈도 참조 리소스를 결정하는 방법에 대해 설명한다.
도 3은 본 발명의 일 실시 예에 따른 고빈도 참조 리소스를 결정하는 기준을 설명하는 도면이다.
도 3에 따르면 반비례 그래프가 도시되어 있다. x-축은 랭킹을 나타내고, y-축은 빈도를 나타낸다. 즉, 제일 왼쪽에 있는 리소스는 빈도 수가 제일 많은 리소스를 의미한다. 그래프는 오른쪽으로 갈수록 리소스의 빈도 수가 낮아지며, 빈도 수에 따라 순위가 정해진다.
일 실시 예로서, 리소스의 빈도는 지프의 법칙(Zipf's Law)을 적용하여 추출할 수 있다. 이 경우, 랭킹 상위 약 20% 이내의 리소스가 전체 참조 횟수의 80%를 차지할 수 있다. 따라서, 고빈도 참조 리소스는 랭킹순으로 20%인 기준 1(21)로 정해질 수 있다. 또는, 고빈도 참조 리소스는 빈도순으로 기준 2(22)로 정해질 수 있다. 다시 말해서, 고빈도 참조 리소스는 리소스의 참조 횟수(랭킹 또는 빈도수)를 기준으로 설정될 수 있다.
또는, 고빈도 참조 리소스는 리소스 크기를 기준으로 설정될 수 있다. 본 발명에서 고빈도 참조 리소스의 의미는 단순히 참조 횟수가 많은 리소스만을 의미하는 것이 아니라, 리소스의 지역성을 확보할 대상 리소스를 의미한다. 따라서, 소용량 리소스는 고빈도로 참조되지는 않지만 지역성을 확보하는 고빈도 참조 리소스에 포함시켜도 분산 처리 시스템의 부하에 영향을 거의 주지 않는다. 따라서, 본 발명의 고빈도 참조 리소스는 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나를 기준으로 설정될 수 있다.
고빈도 참조 리소스는 복수의 분산 저장부에 저장될 수 있다. 그 이유는 어느 하나의 분산 저장부에 문제가 발생해도 원활한 서비스를 제공하기 위해서이다. 따라서, 복수의 분산 저장부에 저장된 동일한 참조 리소스는 동기화가 필요하다.
도 4는 본 발명의 일 실시 예에 따른 고빈도 참조 리소스의 처리 과정을 설명하는 도면이다.
도 4(a)를 참조하면, 제1 분산 저장부(S1), 제2 분산 저장부(S2) 및 분산 코디네이터에 참조 리소스(ref1)가 3의 값으로 저장되어 있다. 분산 코디네이터에는 참조 리소스(ref1)의 저장 위치 포인터(S1, S2)도 함께 저장되어 있다. 분산 시스템은 분산 처리 과정에서 참조 리소스(ref1)의 값을 7로 변경하였다.
도 4(b)를 참조하면, 분산 코디네이터에 저장된 참조 리소스(ref1)의 값이 7로 변경된 도면이 도시되어 있다. 이와 같이, 분산 코디내이터는 저장된 고빈도 참조 리소스를 업데이트할 수 있다. 또한, 분산 코디네이터는 저장된 참조 리소스(ref1)의 저장 위치 포인터(S1, S2)에 기초하여 제1 및 제2 분산 저장부(S1, S2)에 저장된 참조 리소스(ref1)의 값을 3에서 7로 변경시킬 수 있다. 즉, 분산 코디네이터는 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화할 수 있다.
이와 같이, 분산 코디네이터는 참조 리소스의 변경에 따라 해당 참조 리소스의 값을 업데이트할 수 있고, 분산 저장부에 저장된 동일한 참조 리소스의 값을 동기화할 수 있다.
지금까지 분산 처리 시스템이 고빈도 리소스 설정하고 관리하는 과정에 대해 설명하였다. 아래에서는 분산 처리 방법에 대해 설명하겠다.
도 5는 본 발명의 일 실시 예에 따른 리소스 지역성에 기초한 분산 처리 방법을 설명하는 흐름도이다.
도 5를 참조하면, 분산 처리 시스템은 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출한다(S510). 본 발명에서 고빈도 참조 리소스의 의미는 단순히 참조 횟수가 많은 리소스만을 의미하는 것이 아니라, 리소스의 지역성을 확보할 대상 리소스를 의미한다. 따라서, 소용량 리소스는 고빈도로 참조되지는 않더라도 지역성을 확보하는 고빈도 참조 리소스에 포함시키는 것이 분산 처리 시스템의 효율을 높일 수 있다. 따라서, 고빈도 참조 리소스는 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나를 기준으로 설정될 수 있다.
분산 처리 시스템은 추출된 고빈도 참조 리소스를 복수의 노드 각각에 포함된 분산 저장부에 저장한다(S520). 이에 따라, 어느 하나의 노드에 문제가 발생해도 분산 처리 과정은 원활하게 수행될 수 있다.
분산 처리 시스템은 고빈도 참조 리소스에 관한 정보를 기초로 참조하려는 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결한다(S530).
고빈도 탐조 리소스에 관한 정보는 복사된 리소스 또는 리소스가 저장된 저장 위치 포인터 중 적어도 하나일 수 있다. 또한, 분산 처리 시스템은 저장된 고빈도 참조 리소스를 업데이트할 수 있으며, 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화할 수 있다.
본 발명에 따른 분산 처리 방법은 상술한 실시 예들의 구성과 방법으로 한정되어 적용되는 것이 아니라, 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 다양한 변형이 이루어질 수 있다.
한편, 본 발명의 분산 처리 방법은 분산 처리 시스템에 구비된 프로세서가 읽을 수 있는 기록 매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
1000 : 분산 처리 시스템
110, 111, 112 : 분산 코디네이터
121, 122, 123, 124 : 분산 저장부
130 : 리소스 로더 140 : 분산 코디네이터 관리자

Claims (12)

  1. 리소스 리더가 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출하는 단계;
    분산 코디네이터가 상기 추출된 고빈도 참조 리소스를 복수의 노드 각각에 포함된 분산 저장부에 저장하는 단계; 및
    상기 분산 코디네이터가 고빈도 참조 리소스에 관한 정보를 기초로 참조하려는 고빈도 참조 리소스가 저장된 상기 분산 저장부와 태스크를 처리하는 프로세서를 연결하는 단계;를 포함하는 리소스 지역성에 기초한 분산 처리 방법.
  2. 제1항에 있어서,
    상기 고빈도 참조 리소스에 관한 정보는,
    복사된 리소스 또는 저장 위치 포인터 중 적어도 하나인 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 방법.
  3. 제1항에 있어서,
    상기 분산 코디네이터가 상기 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화하는 단계;를 더 포함하는 리소스 지역성에 기초한 분산 처리 방법.
  4. 제1항에 있어서,
    상기 분산 코디네이터가 상기 저장된 고빈도 참조 리소스를 업데이트하는 단계;를 더 포함하는 리소스 지역성에 기초한 분산 처리 방법.
  5. 제1항에 있어서,
    기 설정된 기준은 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나인 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 방법.
  6. 제1항에 있어서,
    복수 개의 상기 분산 코디네이터가 존재하는 경우, 분산 코디네이터 관리자가 상기 복수 개의 분산 코디네이터들을 관리하는 단계;를 더 포함하는 리소스 지역성에 기초한 분산 처리 방법.
  7. 기 설정된 기준에 기초하여 고빈도 참조 리소스를 추출하는 리소스 로더;
    복수의 노드 각각에 포함된 분산 저장부; 및
    상기 추출된 고빈도 참조 리소스를 상기 분산 저장부에 저장하는 분산 코디네이터;를 포함하며,
    상기 분산 코디네이터는,
    고빈도 참조 리소스에 관한 정보를 포함하고, 상기 정보에 기초하여 참조하려는 고빈도 참조 리소스가 저장된 분산 저장부에 태스크를 처리하는 프로세서를 연결하는, 리소스 지역성에 기초한 분산 처리 시스템.
  8. 제7항에 있어서,
    상기 고빈도 참조 리소스에 관한 정보는,
    복사된 리소스 또는 저장 위치 포인터 중 적어도 하나인 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 시스템.
  9. 제7항에 있어서,
    상기 분산 코디네이터는,
    상기 분산 저장부에 저장된 각 고빈도 참조 리소스를 동기화하는 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 시스템.
  10. 제7항에 있어서,
    상기 분산 코디네이터는,
    상기 저장된 고빈도 참조 리소스를 업데이트하는 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 시스템.
  11. 제7항에 있어서,
    기 설정된 기준은 리소스의 참조 횟수 또는 리소스 크기 중 적어도 하나인 것을 특징으로 하는 리소스 지역성에 기초한 분산 처리 시스템.
  12. 제7항에 있어서,
    상기 분산 코디네이터는 복수 개 존재하고,
    상기 복수 개의 분산 코디네이터들을 관리하는 분산 코디네이터 관리자;를 더 포함하는 리소스 지역성에 기초한 분산 처리 시스템.
KR1020130132303A 2013-11-01 2013-11-01 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법 KR101411563B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130132303A KR101411563B1 (ko) 2013-11-01 2013-11-01 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130132303A KR101411563B1 (ko) 2013-11-01 2013-11-01 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법

Publications (1)

Publication Number Publication Date
KR101411563B1 true KR101411563B1 (ko) 2014-06-25

Family

ID=51134170

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130132303A KR101411563B1 (ko) 2013-11-01 2013-11-01 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법

Country Status (1)

Country Link
KR (1) KR101411563B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101595967B1 (ko) * 2014-12-16 2016-02-22 충북대학교 산학협력단 데드라인 부여된 작업의 분산 처리 성능 향상을 위한 맵리듀스 스케쥴링 시스템 및 방법
KR101791901B1 (ko) * 2016-03-30 2017-10-31 재단법인차세대융합기술연구원 빅데이터의 효율적인 저장·실시간 분석형 스마트 스토리지 플랫폼장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006024124A (ja) 2004-07-09 2006-01-26 Sony Corp 制御システム、制御装置および方法、記録媒体、並びにプログラム
KR20120092930A (ko) * 2011-02-14 2012-08-22 주식회사 케이티 맵 리듀스를 이용한 분산 메모리 클러스터 제어 장치 및 방법
KR20120101365A (ko) * 2009-10-27 2012-09-13 엑살레아 정보 스트림의 정보를 처리하는 방법 및 시스템
KR20130103912A (ko) * 2012-03-12 2013-09-25 고려대학교 산학협력단 데이터 처리 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006024124A (ja) 2004-07-09 2006-01-26 Sony Corp 制御システム、制御装置および方法、記録媒体、並びにプログラム
KR20120101365A (ko) * 2009-10-27 2012-09-13 엑살레아 정보 스트림의 정보를 처리하는 방법 및 시스템
KR20120092930A (ko) * 2011-02-14 2012-08-22 주식회사 케이티 맵 리듀스를 이용한 분산 메모리 클러스터 제어 장치 및 방법
KR20130103912A (ko) * 2012-03-12 2013-09-25 고려대학교 산학협력단 데이터 처리 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101595967B1 (ko) * 2014-12-16 2016-02-22 충북대학교 산학협력단 데드라인 부여된 작업의 분산 처리 성능 향상을 위한 맵리듀스 스케쥴링 시스템 및 방법
KR101791901B1 (ko) * 2016-03-30 2017-10-31 재단법인차세대융합기술연구원 빅데이터의 효율적인 저장·실시간 분석형 스마트 스토리지 플랫폼장치 및 방법

Similar Documents

Publication Publication Date Title
US10719510B2 (en) Tiering with pluggable storage system for parallel query engines
AU2014346369B2 (en) Managed service for acquisition, storage and consumption of large-scale data streams
US8832130B2 (en) System and method for implementing on demand cloud database
CN105956166B (zh) 数据库读写方法和读写装置
US8677366B2 (en) Systems and methods for processing hierarchical data in a map-reduce framework
US20150046600A1 (en) Method and apparatus for distributing data in hybrid cloud environment
US20170060707A1 (en) High availability dynamic restart priority calculator
US10999408B2 (en) Automated cloud computing tenant deployment service
US11475006B2 (en) Query and change propagation scheduling for heterogeneous database systems
US20140095734A1 (en) System and method for resolving synchronization conflicts
EP3796184A1 (en) Virtual database tables with updatable logical table pointers
US9438665B1 (en) Scheduling and tracking control plane operations for distributed storage systems
US20130024484A1 (en) System management in datacenter using a non-relational database
CN105138679B (zh) 一种基于分布式缓存的数据处理系统及处理方法
EP3796183B1 (en) Virtual database tables with updatable logical table pointers
US10871990B2 (en) Effective synchronous communication of screen information shared among information processing apparatuses
US11526475B2 (en) Code generator platform for data transformation
EP3796185B1 (en) Virtual database tables with updatable logical table pointers
US11080207B2 (en) Caching framework for big-data engines in the cloud
US11093496B1 (en) Performance-based query plan caching
US9141677B2 (en) Apparatus and method for arranging query
CN109902114A (zh) Es集群数据复用方法、系统、计算机装置及存储介质
KR101411563B1 (ko) 리소스 지역성에 기초한 분산 처리 시스템 및 분산 처리 방법
US9984083B1 (en) Pluggable storage system for parallel query engines across non-native file systems
WO2012124295A1 (ja) コンピュータシステム、制御システム、制御方法および制御プログラム

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170327

Year of fee payment: 4