KR20220070848A - 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치 - Google Patents

빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치 Download PDF

Info

Publication number
KR20220070848A
KR20220070848A KR1020200157838A KR20200157838A KR20220070848A KR 20220070848 A KR20220070848 A KR 20220070848A KR 1020200157838 A KR1020200157838 A KR 1020200157838A KR 20200157838 A KR20200157838 A KR 20200157838A KR 20220070848 A KR20220070848 A KR 20220070848A
Authority
KR
South Korea
Prior art keywords
big data
individual platforms
individual
execution plan
model data
Prior art date
Application number
KR1020200157838A
Other languages
English (en)
Other versions
KR102473776B1 (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 KR1020200157838A priority Critical patent/KR102473776B1/ko
Priority to PCT/KR2021/000686 priority patent/WO2022107995A1/ko
Publication of KR20220070848A publication Critical patent/KR20220070848A/ko
Application granted granted Critical
Publication of KR102473776B1 publication Critical patent/KR102473776B1/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/25Integrating or interfacing systems involving database management systems
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • 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]
    • 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
    • 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/505Allocation 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 load
    • 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/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치를 개시한다. 본 발명에 따르면, 프로세서 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 실행 계획을 생성하고, 상기 실행 계획을 스테이지 단위로 분할하고, 상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하고, 상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하고, 상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측하도록, 상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 빅데이터 크로스 모델 데이터 통합 처리 장치가 제공된다.

Description

빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치{Big data cross model data integrated processing method and apparatus}
본 발명은 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치에 관한 것이다.
빅데이터 분석은 기존 데이터베이스 관리도구의 능력을 넘어서는 대량(수십 테라바이트)의 정형, 반정형 또는 비정형 데이터셋에서 가치를 추출하고 결과를 분석하는 기술이다.
다양한 종류의 대규모 데이터에 대한 생성, 수집, 분석, 표현을 그 특징으로 하는 빅데이터 기술의 발전은 다변화된 현대 사회를 더욱 정확하게 예측하여 효율적으로 작동하게 하고 개인화된 현대 사회 구성원마다 맞춤형 정보를 제공, 관리, 분석 가능하게 하며 과거에는 불가능했던 기술을 실현시키기도 한다.
이같이 빅데이터는 정치, 사회, 경제, 문화, 과학 기술 등 전 영역에 걸쳐서 사회와 인류에게 가치있는 정보를 제공할 수 있는 가능성을 제시하며 그 중요성이 부각되고 있다.
일반적으로 빅데이터 분석을 위해 데이터 수집/저장, 데이터 전처리, 데이터 정제(프로파일링), 데이터 분석 및 데이터 시각화가 수행된다.
최근 빅데이터 수집을 위한 데이터 소스는 음성, 문서, SNS 데이터와 같은 비정형 데이터, 로그 데이터, 머신 데이터 및 운용 데이터와 같은 반정형 데이터와 DB/DW와 같은 정형 데이터를 포함한다.
또한, 빅데이터는 에너지, 제조, 물류, 의료, 스마트시티, 재난재해, 포털과 같이 다양한 응용분야로 나뉘어지며, 종래에는 각 응용에 따라 특화된 개별 데이터 플랫폼에 직접 액세스하여 복잡한 연산을 수행하여 결과를 얻고 있다.
한국등록특허 제10-1856454호
상기한 종래기술의 문제점을 해결하기 위해, 본 발명은 데이터 모델 차이로 인한 데이터 활용 복잡성을 해소할 수 있는 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치를 제안하고자 한다.
상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따르면, 빅데이터 크로스 모델 데이터 통합 처리 장치로서, 프로세서; 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 실행 계획을 생성하고, 상기 실행 계획을 스테이지 단위로 분할하고, 상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하고, 상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하고, 상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측하도록, 상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 빅데이터 크로스 모델 데이터 통합 처리 장치가 제공된다.
상기 복수의 개별 플랫폼은 Spark, JavaStreams, Flink, GraphChi 및 Giraph 중 적어도 하나를 포함할 수 있다.
상기 실행 계획은 상기 복수의 개별 플랫폼 각각에서의 실행되는 복수의 오퍼레이터 및 상기 복수의 오퍼레이터의 실행 순서로 정의될 수 있다.
상기 오퍼레이터는 개별 플랫폼 식별 코드가 부여되어 상기 복수의 개별 플랫폼 각각에서 작업이 실행되는 방법을 정의하며, map, sample, flatmap, filter, join, count, loop, context, sort, distinct, groupby, reduce, collect, broadcast 중 적어도 하나를 포함할 수 있다.
상기 리소스 정보는 상기 복수의 개별 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함할 수 있다.
상기 프로그램 명령어들은, 상기 실행 계획 및 상기 복수의 개별 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정할 수 있다.
상기 프로그램 명령어들은, 이전 수행 오퍼레이터, 다음 수행 오퍼레이터에 대한 리소스를 학습데이터로 활용하여 오퍼레이터 수행 순서에 미치는 영향까지 고려하여 리소스를 예측할 수 있다.
상기 스케일링은 하나의 빅데이터 프레임워크 기반의 개별 플랫폼 노드를 복제하는 스케일 아웃 및 삭제하는 스케일 인을 포함할 수 있다.
본 발명의 다른 측면에 따르면, 프로세서 및 메모리를 포함하는 장치에서 빅데이터 크로스 모델 데이터를 통합 처리하는 방법으로서, 빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 실행 계획을 생성하는 단계; 상기 실행 계획을 스테이지 단위로 분할하는 단계; 상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하는 단계; 상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하는 단계; 및 상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측하는 단계를 포함하는 빅데이터 크로스 모델 데이터 통합 처리 방법이 제공된다.
본 발명의 또 다른 측면에 따르면, 상기한 방법을 수행하는 기록매체에 저장되는 컴퓨터 프로그램이 제공된다.
본 발명에 따르면, 크로스 모델 데이터 통합 처리 플랫폼을 통해 데이터 모델 차이로 인한 데이터 활용 복잡성을 해소하여 손쉽게 융합 분석 결과를 얻을 수 있다.
도 1은 본 발명의 바람직한 일 실시예에 따른 빅데이터 크로스 모델 데이터 통합 처리 장치의 구성을 도시한 도면이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 빅데이터 크로스 모델 데이터 통합 처리를 위한 아키텍쳐를 도시한 도면이다.
도 3은 본 실시예에 따른 사용자 요청에 따른 워크플로우의 최적화 실행 계획을 예시적으로 도시한 도면이다.
도 4는 개별 플랫폼 태스크를 배분하는 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 이전 수행 오퍼레이터 및 다음 수행 오퍼레이터에 대한 리소스를 학습데이터로 활용하여 오퍼레이터 수행 순서에 미치는 영향까지 고려하여 리소스를 예측하는 과정을 설명하기 위한 도면이다.
도 6은 본 실시예에 따른 개별 플랫폼 매니저의 상세 구성을 도시한 도면이다.
도 7 내지 도 8은 본 실시예에 따른 개별 플랫폼 매니저를 통한 부하 분산 관리를 예시적으로 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명은 빅데이터의 검색, 질의 및 분석 등을 위한 사용자 요청의 처리를 위한 최적화 실행 계획을 생성하고, 최적화 실행 계획이 복수의 개별 플랫폼에서 처리될 수 있도록 한다.
도 1은 본 발명의 바람직한 일 실시예에 따른 빅데이터 크로스 모델 데이터 통합 처리 장치의 구성을 도시한 도면이다.
도 1에 도시된 바와 같이, 본 실시예에 따른 장치는 프로세서(100) 및 메모리(102)를 포함할 수 있다.
프로세서(100)는 컴퓨터 프로그램을 실행할 수 있는 CPU(central processing unit)나 그밖에 가상 머신 등을 포함할 수 있다.
메모리(102)는 고정식 하드 드라이브나 착탈식 저장 장치와 같은 불휘발성 저장 장치를 포함할 수 있다. 착탈식 저장 장치는 컴팩트 플래시 유닛, USB 메모리 스틱 등을 포함할 수 있다. 메모리(102)는 각종 랜덤 액세스 메모리와 같은 휘발성 메모리도 포함할 수 있다.
본 실시예에 따른 프로그램 명령어들은, 빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 최적화 실행 계획을 생성하고, 상기 최적화 실행 계획을 스테이지 단위로 분할하고, 상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하고, 상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하고, 상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측한다.
도 2는 본 발명의 바람직한 일 실시예에 따른 빅데이터 크로스 모델 데이터 통합 처리를 위한 아키텍쳐를 도시한 도면이다.
도 2의 아키텍쳐는 도 1의 프로세서(100)에서 실행되는 프로그램 명령어들을 모듈 단위로 도시한 도면이다.
도 2를 참조하면, 크로스 모델 데이터 통합 처리 사용자 인터페이스(UI) 모듈(200)은 입력된 사용자 요청에 따른 워크플로우의 처리를 위한 최적화 실행 계획을 생성한다.
사용자 인터페이스 모듈(200)은 빅데이터의 검색, 질의 및 분석을 위한 사용자 요청 입력 시, Cost Learner(202)를 통해 비용 기반으로 하나 이상의 개별 플랫폼을 선택하여 실행 계획을 생성한다.
사용자 인터페이스 모듈(200)은 워크플로우로부터 생성된 실행 계획을 하위 계획으로 분할하고 각 하위 계획의 최적 개별 플랫폼을 결정하여 전체 실행 비용을 최소화한다.
또한, Optimizer(204)는 개별 플랫폼 실행 계획 수립 과정에 개입하여 개별 플랫폼 작업의 수행 순서와 방법을 결정한다.
여기서, 복수의 개별 플랫폼은 Spark, JavaStreams, Flink, GraphChi 및 Giraph 중 적어도 하나를 포함할 수 있고, 서로 다른 빅데이터 프레임워크 기반의 빅데이터 처리 엔진이며, 개별 플랫폼은 컨테이너 형태로 배포된다.
또한, 실행 계획은 상기 복수의 개별 플랫폼 각각에서의 실행되는 복수의 오퍼레이터 및 상기 복수의 오퍼레이터의 실행 순서로 정의된다.
도 3은 본 실시예에 따른 사용자 요청에 따른 워크플로우의 최적화 실행 계획을 예시적으로 도시한 도면이다.
도 3a와 같은 사용자 요청에 따른 워크플로우를 복수의 개별 플랫폼(Spark, JavaStreams)을 고려하여 최적화 실행 계획을 생성한다.
오퍼레이터는 플랫폼 식별 코드가 부여되어 상기 복수의 개별 플랫폼 각각에서 작업이 실행되는 방법을 정의하며, map, sample, flatmap, filter, join, count, loop, context, sort, distinct, groupby, reduce, collect, broadcast 중 적어도 하나를 포함할 수 있다.
다시 도 2를 참조하면, 크로스 모델 데이터 통합 처리 개별 플랫폼 코디네이터(210)는 최적화 실행 계획을 스테이지 단위로 분할하고, 상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하고, 개별 플랫폼 태스크를 변환 및 배분한다.
도 4는 개별 플랫폼 태스크를 배분하는 과정을 설명하기 위한 도면이다.
도 4에 도시된 바와 같이, 최적화 실행 계획은 복수의 스테이지(stage 1 내지 stage 6)으로 분할되며, 코디네이터(210)는 각 스테이지가 서로 다른 개별 플랫폼으로 변환 및 배분한다.
코디네이터(210)에 포함된 개별 플랫폼 매니저(212)는 Optimizer(204)에서 생성한 실행 계획을 수신하여 개별 플랫폼에서 이들이 실행하도록 한다.
개별 플랫폼 매니저(212)는 애플리케이션을 탐색 모드로 실행하여 언제든지 작업 실행을 일시 중지하고 다시 시작할 수 있도록 한다.
또한, 개별 플랫폼 매니저(212)는 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측한다.
여기서, 리소스 정보는 상기 복수의 개별 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함할 수 있다.
본 실시예에 따른 개별 플랫폼 매니저(212)는 실행 계획 및 상기 복수의 개별 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정한다.
개별 플랫폼 매니저(212)는 기계학습을 통해 워크플로우 처리를 위한 리소스를 예측할 수 있으며, 도 5에 도시된 바와 같이, 이때, 이전 수행 오퍼레이터, 다음 수행 오퍼레이터에 대한 리소스를 학습데이터로 활용하여 오퍼레이터 수행 순서에 미치는 영향까지 고려하여 실행 계획에 따른 리소스를 예측할 수 있다.
도 6은 본 실시예에 따른 개별 플랫폼 매니저의 상세 구성을 도시한 도면이고, 도 7 내지 도 8은 본 실시예에 따른 개별 플랫폼 매니저를 통한 부하 분산 관리를 예시적으로 설명하기 위한 도면이다.
도 6을 참조하면, 본 실시예에 따른 개별 플랫폼 매니저(212)는 컨트롤러(Controller, 600), 플랫폼 핸들러(Platform Handler, 602) 및 로드 밸런서(Load Balancer, 604)를 포함할 수 있다.
컨트롤러(600)는 아답터로부터 실행 계획과 복수의 개별 플랫폼으로부터 리소스 정보를 수신한다.
아답터는 공간정보 데이터 모델, 시계열 데이터 모델 및 관계형 데이터 모델을 자바 객체로 변환한다.
리소스 정보는 주기적으로 수신될 수 있고, 각 플랫폼의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함할 수 있다.
컨트롤러(600)는 플랫폼 리소스 분석을 통해 현재 실행 계획에 따른 데이터를 처리한 플랫폼이 없는 경우, 스케일-아웃(scale-out)으로 결정하고, 플랫폼 리소스의 낭비가 있는 경우에는 스케일-인(scale-in)으로 결정한다.
플랫폼 핸들러(602)는 컨트롤러(600)의 제어에 따라 개별 플랫폼을 실행시키거나 중지시키고 커넥션을 제어한다.
도 4를 참조하면, 컨트롤러(600)의 제어에 따라 플랫폼 핸들러(602)는 스케일-아웃(scale-out) 또는 스케일-인(scale-in) 제어 명령을 복수의 개별 플랫폼과 연결되는 게이트웨이(700)에 전달한다.
예를 들어, 스케일-아웃이 필요한 것으로 결정되는 경우, 기존 개별 플랫폼에 현재 실행 계획에 따른 새로운 개별 플랫폼을 추가한다.
개별 플랫폼 매니저(212)는 플랫폼의 리소스 상황에 따라 자동으로 노드 복제가 이루어질 수 있도록 한다.
바람직하게, 스케일-아웃으로 결정되는 경우, 컨트롤러(600)는 하나의 빅데이터 프레임워크 기반의 플랫폼 노드가 복제되도록 한다.
컨트롤러(600)는 현재의 복수의 개별 플랫폼에서 데이터의 처리가 가능한 경우, 현재 개별 플랫폼 내에서 부하가 분산되도록 결정한다.
스케일-아웃 및 스케일-인 없이 부하를 분산하는 것으로 결정하는 경우, 컨트롤러(600)의 제어에 따라 로드 밸런서(604)가 플랫폼 핸들러(602)로 로드 밸런싱 정보를 제공한다.
플랫폼 핸들러(602)는 로드 밸런싱 정보를 게이트웨이(700)로 전달하여 노드의 복제 또는 삭제 없이 현재의 복수의 개별 플랫폼 사이에서 부하가 분산되도록 한다.
플랫폼 핸들러(602)는 로드 밸런싱으로 결정되는 경우, 실행 계획이 로드가 가장 낮은 플랫폼으로 전달되도록 한다.
복수의 개별 플랫폼은 컨테이너 기반의 오픈소스 가상화 기술인 도커(docker)를 통해 이루어질 수 있다.
상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.

Claims (10)

  1. 빅데이터 크로스 모델 데이터 통합 처리 장치로서,
    프로세서; 및
    상기 프로세서에 연결되는 메모리를 포함하되,
    상기 메모리는,
    빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 실행 계획을 생성하고,
    상기 실행 계획을 스테이지 단위로 분할하고,
    상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하고,
    상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하고,
    상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측하도록,
    상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  2. 제1항에 있어서,
    상기 복수의 개별 플랫폼은 Spark, JavaStreams, Flink, GraphChi 및 Giraph 중 적어도 하나를 포함하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  3. 제1항에 있어서,
    상기 실행 계획은 상기 복수의 개별 플랫폼 각각에서의 실행되는 복수의 오퍼레이터 및 상기 복수의 오퍼레이터의 실행 순서로 정의되는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  4. 제3항에 있어서,
    상기 오퍼레이터는 개별 플랫폼 식별 코드가 부여되어 상기 복수의 개별 플랫폼 각각에서 작업이 실행되는 방법을 정의하며, map, sample, flatmap, filter, join, count, loop, context, sort, distinct, groupby, reduce, collect, broadcast 중 적어도 하나를 포함하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  5. 제4항에 있어서,
    상기 리소스 정보는 상기 복수의 개별 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  6. 제5항에 있어서,
    상기 프로그램 명령어들은,
    상기 실행 계획 및 상기 복수의 개별 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  7. 제6항에 있어서,
    상기 프로그램 명령어들은, 이전 수행 오퍼레이터, 다음 수행 오퍼레이터에 대한 리소스를 학습데이터로 활용하여 오퍼레이터 수행 순서에 미치는 영향까지 고려하여 실행 계획에 따른 리소스를 예측하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  8. 제6항에 있어서,
    상기 스케일링은 하나의 빅데이터 프레임워크 기반의 개별 플랫폼 노드를 복제하는 스케일 아웃 및 삭제하는 스케일 인을 포함하는 빅데이터 크로스 모델 데이터 통합 처리 장치.
  9. 프로세서 및 메모리를 포함하는 장치에서 빅데이터 크로스 모델 데이터를 통합 처리하는 방법으로서,
    빅데이터의 검색, 질의 및 분석 중 적어도 하나를 위한 사용자의 요청이 입력되는 경우, 상기 사용자 요청에 따른 워크플로우의 처리를 위한 복수의 개별 플랫폼을 고려하여 실행 계획을 생성하는 단계;
    상기 실행 계획을 스테이지 단위로 분할하는 단계;
    상기 스테이지 단위로 상기 복수의 개별 플랫폼 중 적어도 하나를 매핑하는 단계;
    상기 복수의 개별 플랫폼에 매핑된 태스크를 변환 및 배분하는 단계; 및
    상기 복수의 개별 플랫폼의 리소스 정보를 관리 및 예측하는 단계를 포함하는 빅데이터 크로스 모델 데이터 통합 처리 방법.
  10. 제9항에 따른 방법을 수행하는 기록매체에 저장되는 컴퓨터 프로그램.
KR1020200157838A 2020-11-23 2020-11-23 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치 KR102473776B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200157838A KR102473776B1 (ko) 2020-11-23 2020-11-23 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치
PCT/KR2021/000686 WO2022107995A1 (ko) 2020-11-23 2021-01-18 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200157838A KR102473776B1 (ko) 2020-11-23 2020-11-23 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20220070848A true KR20220070848A (ko) 2022-05-31
KR102473776B1 KR102473776B1 (ko) 2022-12-05

Family

ID=81709242

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200157838A KR102473776B1 (ko) 2020-11-23 2020-11-23 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치

Country Status (2)

Country Link
KR (1) KR102473776B1 (ko)
WO (1) WO2022107995A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605933B1 (ko) * 2022-12-05 2023-11-30 스마트마인드 주식회사 인스턴스 특성을 고려하여 서버 상의 워크 스페이스를 할당하는 방법 및 이러한 방법을 수행하는 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160104419A (ko) * 2015-02-26 2016-09-05 한국전자통신연구원 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법
KR20160146088A (ko) * 2015-06-11 2016-12-21 한국전자통신연구원 워크플로우 모델 생성 방법과 워크플로우 모델 실행 방법 및 장치
KR101856454B1 (ko) 2017-03-06 2018-05-10 주식회사 티맥스데이터 분산처리를 위한 컴퓨팅 장치
KR20190061247A (ko) * 2017-11-27 2019-06-05 (주) 글루시스 빅데이터 처리 플랫폼의 실시간 자원 사용률 모니터링 시스템
KR20190070627A (ko) * 2017-12-13 2019-06-21 충북대학교 산학협력단 처리 스케줄러를 이용한 워크플로우 장치 및 워크플로우 장치의 동작 방법
KR20190081306A (ko) * 2017-12-29 2019-07-09 한국전자통신연구원 빅데이터 분석 소프트웨어에 대한 자원 할당 방법, 상기 방법을 이용하는 가상화 자원 할당 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160070218A (ko) * 2014-12-09 2016-06-20 한국전자통신연구원 데이터 분석 서비스 추천 시스템 및 방법
KR101595024B1 (ko) * 2015-01-13 2016-02-17 (주)아이티언 사용자 기반 데이터 분석 시스템
US9934395B2 (en) * 2015-09-11 2018-04-03 International Business Machines Corporation Enabling secure big data analytics in the cloud

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160104419A (ko) * 2015-02-26 2016-09-05 한국전자통신연구원 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법
KR20160146088A (ko) * 2015-06-11 2016-12-21 한국전자통신연구원 워크플로우 모델 생성 방법과 워크플로우 모델 실행 방법 및 장치
KR101856454B1 (ko) 2017-03-06 2018-05-10 주식회사 티맥스데이터 분산처리를 위한 컴퓨팅 장치
KR20190061247A (ko) * 2017-11-27 2019-06-05 (주) 글루시스 빅데이터 처리 플랫폼의 실시간 자원 사용률 모니터링 시스템
KR20190070627A (ko) * 2017-12-13 2019-06-21 충북대학교 산학협력단 처리 스케줄러를 이용한 워크플로우 장치 및 워크플로우 장치의 동작 방법
KR20190081306A (ko) * 2017-12-29 2019-07-09 한국전자통신연구원 빅데이터 분석 소프트웨어에 대한 자원 할당 방법, 상기 방법을 이용하는 가상화 자원 할당 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605933B1 (ko) * 2022-12-05 2023-11-30 스마트마인드 주식회사 인스턴스 특성을 고려하여 서버 상의 워크 스페이스를 할당하는 방법 및 이러한 방법을 수행하는 장치

Also Published As

Publication number Publication date
WO2022107995A1 (ko) 2022-05-27
KR102473776B1 (ko) 2022-12-05

Similar Documents

Publication Publication Date Title
Yu et al. Spatial data management in apache spark: the geospark perspective and beyond
CN107239335B (zh) 分布式系统的作业调度系统及方法
US7930432B2 (en) Systems and methods for distributing a workplan for data flow execution based on an arbitrary graph describing the desired data flow
US9639575B2 (en) Method and system for processing data queries
CN104050042B (zh) Etl作业的资源分配方法及装置
CN104834557B (zh) 一种基于Hadoop的数据分析方法
CN106126601A (zh) 一种社保大数据分布式预处理方法及系统
US20130173594A1 (en) Techniques for accessing a parallel database system via external programs using vertical and/or horizontal partitioning
JP2015026372A (ja) 並列ツリー・ベースの予測のための、コンピュータにより実行される方法、ストレージ媒体、およびコンピュータ・システム
Cheng et al. Efficient event correlation over distributed systems
KR101877828B1 (ko) 인공지능 기반의 사용자 인터페이스 통합 플랫폼 시스템
Fiore et al. A big data analytics framework for scientific data management
Gavagsaz et al. Load balancing in reducers for skewed data in MapReduce systems by using scalable simple random sampling
US9613168B2 (en) Computer aided modeling
KR102473776B1 (ko) 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치
Blythe et al. Transparent Grid Computing: A Knowledge-Based Approach.
KR102504537B1 (ko) 데이터 분할 기반 데이터 전처리 장치 및 방법
Mian et al. Executing data-intensive workloads in a Cloud
Balicki et al. Harmony search to self-configuration of fault-tolerant grids for big data
Shabeera et al. A novel approach for improving data locality of mapreduce applications in cloud environment through intelligent data placement
Rakshith et al. Enterprise data analytics and processing with an integrated hadoop and R platforms
Hofer et al. Digidt: Distributed classifier construction in the grid data mining framework gridminer-core
KR102268549B1 (ko) 빅데이터 플랫폼 관리 방법 및 장치
Jie A performance modeling-based HADOOP configuration tuning strategy
KR102605933B1 (ko) 인스턴스 특성을 고려하여 서버 상의 워크 스페이스를 할당하는 방법 및 이러한 방법을 수행하는 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant