KR20210060829A - Big data platform managing method and device - Google Patents

Big data platform managing method and device Download PDF

Info

Publication number
KR20210060829A
KR20210060829A KR1020190148302A KR20190148302A KR20210060829A KR 20210060829 A KR20210060829 A KR 20210060829A KR 1020190148302 A KR1020190148302 A KR 1020190148302A KR 20190148302 A KR20190148302 A KR 20190148302A KR 20210060829 A KR20210060829 A KR 20210060829A
Authority
KR
South Korea
Prior art keywords
big data
platforms
data
execution plan
platform management
Prior art date
Application number
KR1020190148302A
Other languages
Korean (ko)
Other versions
KR102268549B1 (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 KR1020190148302A priority Critical patent/KR102268549B1/en
Publication of KR20210060829A publication Critical patent/KR20210060829A/en
Application granted granted Critical
Publication of KR102268549B1 publication Critical patent/KR102268549B1/en

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/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/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/5044Allocation 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 hardware capabilities

Abstract

The present invention discloses a big data platform management method and device. According to the present invention, the big data platform management device includes a processor and a memory coupled to the processor, wherein the memory receives an execution plan for data set analysis, receives resource information of a plurality of platforms performing dataset analysis based on distributed processing, and stores program instructions executed by the processor to determine one of scaling or load balancing using an execution plan and resource information of the plurality of platforms. The present invention provides the big data platform management method and device, which are capable of increasing the management efficiency of a platform for processing a dataset in association with a dataset execution plan.

Description

빅데이터 플랫폼 관리 방법 및 장치{Big data platform managing method and device}Big data platform managing method and device}

본 발명은 빅데이터 플랫폼 관리 방법 및 장치에 관한 것이다.The present invention relates to a big data platform management method and apparatus.

빅데이터 분석은 기존 데이터베이스 관리도구의 능력을 넘어서는 대량(수십 테라바이트)의 정형, 반정형 또는 비정형 데이터셋에서 가치를 추출하고 결과를 분석하는 기술이다. Big data analysis is a technology that extracts value and analyzes the results from a large amount (tens of terabytes) of structured, semi-structured or unstructured data sets that exceed the capabilities of existing database management tools.

다양한 종류의 대규모 데이터에 대한 생성, 수집, 분석, 표현을 그 특징으로 하는 빅데이터 기술의 발전은 다변화된 현대 사회를 더욱 정확하게 예측하여 효율적으로 작동하게 하고 개인화된 현대 사회 구성원마다 맞춤형 정보를 제공, 관리, 분석 가능하게 하며 과거에는 불가능했던 기술을 실현시키기도 한다. The development of big data technology, characterized by the creation, collection, analysis, and expression of various types of large-scale data, predicts the diversified modern society more accurately, makes it work more efficiently, and provides personalized information for each individual member of the modern society. It enables management, analysis, and also enables technologies that were not possible in the past.

이같이 빅데이터는 정치, 사회, 경제, 문화, 과학 기술 등 전 영역에 걸쳐서 사회와 인류에게 가치있는 정보를 제공할 수 있는 가능성을 제시하며 그 중요성이 부각되고 있다. As such, big data presents the possibility of providing valuable information to society and humanity in all areas such as politics, society, economy, culture, and science, and its importance is rising.

일반적으로 빅데이터 분석을 위해 데이터 수집/저장, 데이터 전처리, 데이터 정제(프로파일링), 데이터 분석 및 데이터 시각화가 수행된다. In general, data collection/storage, data pre-processing, data purification (profiling), data analysis, and data visualization are performed for big data analysis.

최근 빅데이터 수집을 위한 데이터 소스는 음성, 문서, SNS 데이터와 같은 비정형 데이터, 로그 데이터, 머신 데이터 및 운용 데이터와 같은 반정형 데이터와 DB/DW와 같은 정형 데이터를 포함한다. Recently, data sources for big data collection include unstructured data such as voice, document, and SNS data, semi-structured data such as log data, machine data and operational data, and structured data such as DB/DW.

다양한 형식의 데이터셋 처리, 데이터셋에서 조건에 맞는 데이터 추출, 결합, 그룹 단위로 집약, 다른 형식으로 변환하기 위해, 하나 이상의 플랫폼이 사용되고 있다. More than one platform is being used to process data sets of various formats, extract data from data sets that meet conditions, combine, aggregate into groups, and convert into other formats.

최근 빅데이터에 대한 수요가 높아짐에 따라 다양한 데이터셋의 효율적인 처리를 위한 플랫폼의 관리 방안이 요구되고 있는 실정이다. In recent years, as the demand for big data increases, there is a demand for a platform management plan for efficient processing of various data sets.

한국등록특허 제10-1856454호Korean Patent Registration No. 10-1856454

상기한 종래기술의 문제점을 해결하기 위해, 본 발명은 데이터셋 실행 계획과 연관지어 데이터셋 처리를 위한 플랫폼의 관리 효율성을 높일 수 있는 빅데이터 플랫폼 관리 방법 및 장치를 제안하고자 한다. In order to solve the problems of the prior art, the present invention proposes a big data platform management method and apparatus capable of increasing the management efficiency of a platform for processing a data set in association with a data set execution plan.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따르면, 빅데이터 플랫폼 관리 장치로서, 프로세서; 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 데이터셋 분석을 위한 실행 계획을 입력 받고, 분산 처리 기반으로 데이터셋 분석을 수행하는 복수의 플랫폼의 리소스 정보를 입력 받고, 상기 실행 계획 및 상기 복수의 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정하도록, 상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 빅데이터 플랫폼 관리 장치가 제공된다. In order to achieve the above object, according to an embodiment of the present invention, a big data platform management apparatus, comprising: a processor; And a memory connected to the processor, wherein the memory receives an execution plan for data set analysis, receives resource information of a plurality of platforms for performing data set analysis based on distributed processing, and receives the execution plan and A big data platform management apparatus is provided that stores program instructions executed by the processor to determine either scaling or load balancing using resource information of the plurality of platforms.

상기 리소스 정보는 상기 복수의 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함할 수 있다. The resource information may include at least one of the number of connections of each of the plurality of platforms, network traffic, CPU occupancy, RAM occupancy, task progress status, and completion time.

상기 복수의 플랫폼은 서로 다른 빅데이터 프레임워크 기반 플랫폼을 포함할 수 있다. The plurality of platforms may include platforms based on different big data frameworks.

상기 프로그램 명령어들은, 서로 다른 빅데이터 프레임워크 기반의 복수의 플랫폼에서 데이터셋 처리를 수행할 수 있도록 명령어를 변환하는 어댑터로부터 상기 실행 계획을 입력 받을 수 있다.The program instructions may receive the execution plan from an adapter that converts instructions to perform data set processing on a plurality of platforms based on different big data frameworks.

상기 스케일링은 하나의 빅데이터 프레임워크 기반의 플랫폼 노드를 복제하는 스케일 아웃 및 삭제하는 스케일 인을 포함할 수 있다. The scaling may include scale-out for replicating one big data framework-based platform node and scale-in for deleting.

상기 프로그램 명령어들은, 상기 로드 밸런싱으로 결정되는 경우, 상기 실행 계획을 로드가 가장 낮은 플랫폼으로 전달할 수 있다. The program instructions, when determined by the load balancing, may deliver the execution plan to the platform with the lowest load.

본 발명의 다른 측면에 따르면, 프로세서 및 메모리를 포함하는 장치에서 빅데이터 플랫폼을 관리하는 방법으로서, 데이터셋 분석을 위한 실행 계획을 입력 받는 단계; 분산 처리 기반으로 데이터셋 분석을 수행하는 복수의 플랫폼의 리소스 정보를 입력 받는 단계; 및 상기 실행 계획 및 상기 복수의 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정하는 단계를 포함하는 빅데이터 플랫폼 관리 방법이 제공된다. According to another aspect of the present invention, there is provided a method for managing a big data platform in a device including a processor and a memory, the method comprising: receiving an execution plan for analyzing a data set; Receiving resource information of a plurality of platforms for performing data set analysis based on distributed processing; And determining one of scaling or load balancing by using the execution plan and resource information of the plurality of platforms.

본 발명의 또 다른 측면에 따르면, 상기한 방법을 수행하는 기록매체에 저장되는 컴퓨터 프로그램이 제공된다. According to another aspect of the present invention, there is provided a computer program stored on a recording medium for performing the above method.

본 발명에 따르면, 미리 설정된 실행 계획에 따라 플랫폼에서 데이터셋을 처리할 때 플랫폼의 리소스 상황 및 실행 계획에 따라 플랫폼의 노드를 추가 또는 삭제할 수 있어 데이터셋 처리의 효율을 높일 수 있다. According to the present invention, when processing a dataset in a platform according to a preset execution plan, it is possible to add or delete nodes of the platform according to the resource situation and execution plan of the platform, thereby increasing the efficiency of processing the dataset.

도 1은 본 발명의 바람직한 일 실시예에 따른 빅데이터 처리 시스템의 구성을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 데이터셋 처리 프로세스를 설명하기 위한 도면이다.
도 3은 본 실시예에 따른 플랫폼 매니저의 상세 구성을 도시한 도면이다.
도 4 내지 도 5는 본 실시예에 따른 플랫폼 매니저를 통한 부하 분산 관리를 예시적으로 설명하기 위한 도면이다.
1 is a diagram showing the configuration of a big data processing system according to an embodiment of the present invention.
2 is a diagram illustrating a data set processing process according to an embodiment of the present invention.
3 is a diagram showing a detailed configuration of a platform manager according to the present embodiment.
4 to 5 are diagrams for illustratively explaining load balancing management through a platform manager according to the present embodiment.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.

도 1은 본 발명의 바람직한 일 실시예에 따른 빅데이터 처리 시스템의 구성을 도시한 도면이다. 1 is a diagram showing the configuration of a big data processing system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 실시예에 따른 빅데이터 처리 시스템은 데이터 소스(100), 데이터셋 수집 모듈(102), 수집된 데이터셋을 저장하는 복수의 데이터베이스(104), 플랫폼 매니저(106) 및 데이터베이스(104)에 저장된 데이터셋에서 유의미한 정보를 획득하기 위한 분석 과정을 수행하는 복수의 플랫폼(106)을 포함할 수 있다. As shown in FIG. 1, the big data processing system according to the present embodiment includes a data source 100, a data set collection module 102, a plurality of databases 104 for storing collected data sets, and a platform manager 106. ) And a plurality of platforms 106 that perform an analysis process for acquiring meaningful information from a data set stored in the database 104.

데이터 소스(100)로부터 수집되는 데이터셋은, 정형 데이터(Structured Data), 반정형 데이터(Semistructured-Data) 및 비정형 데이터(Unstructured-Data)를 포함할 수 있다. The data set collected from the data source 100 may include structured data, semistructured data, and unstructured data.

정형 데이터는 관계형 데이터베이스 시스템의 테이블과 같이 고정된 필드(컬럼)에 저장되는 데이터와 파일, 그리고 지정된 행과 열에 의해 데이터의 속성이 구별되는 스프레드시트 형태의 데이터이다. Structured data is data and files stored in fixed fields (columns), such as tables in a relational database system, and spreadsheet-type data in which attributes of data are distinguished by designated rows and columns.

정형 데이터의 경우, 스키마 구조를 가지고 있기 때문에 데이터를 탐색하는 과정이 테이블 탐색, 컬럼 구조 탐색, 로우 탐색 순으로 정형화되어 있다.In the case of structured data, since it has a schema structure, the data search process is structured in the order of table search, column structure search, and row search.

반정형 데이터는 데이터 내부에 정형데이터의 스키마에 해당되는 메타데이터를 갖고 있으며. 일반적으로 파일 형태로 저장되는 데이터로서, 로그 데이터, 머신 데이터 및 운용 데이터를 포함한다. Semi-structured data has metadata corresponding to the schema of structured data inside the data. Generally, as data stored in the form of a file, it includes log data, machine data, and operation data.

반정형 데이터의 경우 데이터 내부에 데이터 구조에 대한 메타데이터를 갖고 있기 때문에 어떤 형태를 가진 데이터인지를 파악하는 것이 필요하다. 데이터 내부에 있는 규칙성을 파악해 데이터를 파싱할 수 있는 파싱 규칙을 적용한다.In the case of semi-structured data, it is necessary to determine what type of data it has because it has metadata about the data structure inside the data. Apply parsing rules that can parse the data by grasping the regularity inside the data.

비정형 데이터는 음성, 문서 및 SNS 데이터와 같이 언어 분석이 가능한 텍스트 데이터, 음성, 이미지 및 동영상과 같은 멀티미디어 데이터를 포함한다. The unstructured data includes text data capable of language analysis, such as voice, document, and SNS data, and multimedia data such as voice, image, and video.

데이터셋 수집 모듈(102)은 네트워크를 통해 연결되는 데이터 소스(100)로부터 정형, 반정형 및 비정형 데이터를 포함하는 데이터셋을 수집한다. The data set collection module 102 collects a data set including structured, semi-structured and unstructured data from a data source 100 connected through a network.

본 실시예에 따른 데이터셋 수집 모듈(102)은 입력된 데이터셋의 클래스를 분류하여 복수의 데이터베이스(104)에 저장할 수 있다. The data set collection module 102 according to the present embodiment may classify the input data set class and store it in a plurality of databases 104.

여기서, 클래스는, 빅데이터가 활용될 수 있는 서비스 분류를 의미하는 것으로서, 날씨, 건강, 로그 데이터를 예로 들 수 있으나, 이에 한정되지 않는다. Here, the class refers to a service classification in which big data can be used, and examples include weather, health, and log data, but is not limited thereto.

일반적으로 정형 데이터는 DBMS 및 이진 파일을 포함한다. Typically, structured data includes DBMS and binary files.

DBMS의 경우, DBMS 벤더가 제공하는 API를 통해 정형 데이터에 접근하여 수집된다. 이진 파일은 ftp 프로토콜을 통해 수집된다. In the case of DBMS, structured data is accessed and collected through an API provided by the DBMS vendor. Binary files are collected through the ftp protocol.

반정형 데이터는 스크립트 파일 및 이진 파일을 포함하고, 스크립트 파일은 http 프로토콜을 통해 파일의 텍스트가 스크랩된다. Semi-structured data includes a script file and a binary file, and the text of the file is scraped from the script file through the http protocol.

비정형 데이터는 스크립트 파일 및 이진 파일을 포함하고, 이들의 수집은 상기한 바와 같다. Unstructured data includes script files and binary files, and their collection is as described above.

데이터셋 수집 모듈(102)은 데이터 소스(100)로부터 상기한 바와 같이 API, ftp 또는 http 프로토콜 등을 통해 정형, 반정형, 비정형 데이터를 수집하고, 이를 파싱한다. The data set collection module 102 collects structured, semi-structured, and unstructured data from the data source 100 through API, ftp, or http protocol as described above, and parses it.

또한, 파싱된 데이터셋을 데이터베이스(104)에 저장하기 위한 형식으로 변환하며, 데이터 필드의 추가, 삭제 및 마스킹을 수행한다. In addition, the parsed data set is converted into a format for storage in the database 104, and data fields are added, deleted, and masked.

데이터셋 수집 모듈(102)은 필터링된 데이터셋의 특징을 추출하여 데이터셋의 클래스를 분류한다. 클래스 분류 과정은 사전 학습된 알고리즘을 통해 수행될 수 있다. The data set collection module 102 classifies the class of the data set by extracting features of the filtered data set. The class classification process may be performed through a pre-learned algorithm.

본 실시예에 따르면, k-NN, RNN 및 BERT 알고리즘을 미리 클래스를 알고 있는 데이터셋으로 사전 학습시킨다. According to the present embodiment, k-NN, RNN, and BERT algorithms are pre-trained with a dataset whose class is known in advance.

사전 학습이 완료된 이후, 새로운 데이터셋이 입력되면, 데이터셋 수집 모듈(102)은 필터링된 데이터셋의 특징을 추출하고, 추출된 특징을 사전 학습된 알고리즘에 입력값으로 하여 복수의 클래스 각각에 속하는 확률을 계산한다. After the pre-learning is completed, when a new data set is input, the data set collection module 102 extracts features of the filtered data set and uses the extracted features as input values to the pre-learned algorithm to belong to each of the plurality of classes. Calculate the probability.

사전 학습을 통해 데이터셋 분류 데이터베이스(미도시)가 구축될 수 있으며, 데이터셋 분류 데이터베이스는 미리 정의된 복수의 클래스와 각 클래스에 대응되는 특징에 관한 정보를 저장한다. A dataset classification database (not shown) may be constructed through prior learning, and the dataset classification database stores information on a plurality of predefined classes and features corresponding to each class.

데이터셋의 특징은 하나 이상의 필드(컬럼) 각각의 타입, 도메인 및 최대/최소값을 포함할 수 있다. The characteristics of the dataset may include a type, a domain, and a maximum/minimum value of each of one or more fields (columns).

여기서, 타입은 숫자, 텍스트 및 이진 데이터일 수 있고, 도메인은 카테고리, 날짜, 시간, 금액, 좌표, 백분율, 분수 및 지수를 포함할 수 있다.Here, the type may be number, text, and binary data, and the domain may include category, date, time, amount, coordinates, percentage, fraction, and index.

본 실시예에 따른 플랫폼 매니저(106)는 데이터셋의 실행 계획 및 복수의 플랫폼 각각의 리소스 정보를 이용하여 빅데이터 처리를 위한 플랫폼의 부하를 관리한다. The platform manager 106 according to the present embodiment manages the load of the platform for processing big data by using the execution plan of the data set and resource information of each of a plurality of platforms.

본 발명에서 플랫폼 매니저(106)가 빅데이터 플랫폼 관리 장치로 정의될 수 있다. In the present invention, the platform manager 106 may be defined as a big data platform management device.

도 2는 본 발명의 일 실시예에 따른 데이터셋 처리 프로세스를 설명하기 위한 도면이다. 2 is a diagram illustrating a data set processing process according to an embodiment of the present invention.

도 2를 참조하면, 플랫폼 매니저(106)는 데이터셋에서 조건에 맞는 데이터 추출, 결합, 그룹 단위로 집약, 다른 형식으로 변환 등을 위해, 복수의 플랫폼(108)에서 데이터셋의 처리를 위한 실행 계획(execution plan)을 수립한다. Referring to FIG. 2, the platform manager 106 performs data set processing on a plurality of platforms 108 for extracting, combining, consolidating data in groups, converting to other formats, etc. Establish an execution plan.

수립된 실행 계획에 따라 데이터셋은 복수의 스테이지로 분할되고, 분할된 복수의 스테이지 기반으로 복수의 실행기(executor)를 포함하는 어댑터(adator)에서 각 플랫폼(108)에서 처리할 수 있도록 실행 계획에 따른 명령어를 변환한다.According to the established execution plan, the dataset is divided into a plurality of stages, and based on the divided plurality of stages, the execution plan can be processed by each platform 108 by an adapter including a plurality of executors. Convert the following command.

하나 이상의 플랫폼(108)은 JDBC, Spark, JVM, GraphChi와 같이 서로 다른 빅데이터 프레임워크 기반의 빅데이터 처리 엔진이다. One or more platforms 108 are big data processing engines based on different big data frameworks such as JDBC, Spark, JVM, and GraphChi.

개별 플랫폼은 컨테이너 형태로 배포된다. Individual platforms are distributed in the form of containers.

도 3은 본 실시예에 따른 플랫폼 매니저의 상세 구성을 도시한 도면이고, 도 4 내지 도 5는 본 실시예에 따른 플랫폼 매니저를 통한 부하 분산 관리를 예시적으로 설명하기 위한 도면이다. 3 is a diagram illustrating a detailed configuration of a platform manager according to the present embodiment, and FIGS. 4 to 5 are diagrams for illustratively explaining load balancing management through the platform manager according to the present embodiment.

도 3을 참조하면, 본 실시예에 따른 플랫폼 매니저(106)는 컨트롤러(Controller, 300), 플랫폼 핸들러(Platform Handler, 302) 및 로드 밸런서(Load Balancer, 304)를 포함할 수 있다. Referring to FIG. 3, the platform manager 106 according to the present embodiment may include a controller 300, a platform handler 302, and a load balancer 304.

컨트롤러(300)는 도 2의 어댑터로부터 데이터셋 실행 계획과 복수의 플랫폼(108)으로부터 리소스 정보를 수신한다. The controller 300 receives a dataset execution plan from the adapter of FIG. 2 and resource information from a plurality of platforms 108.

리소스 정보는 주기적으로 수신될 수 있고, 각 플랫폼의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함할 수 있다.The resource information may be periodically received, and may include at least one of the number of connections of each platform, network traffic, CPU occupancy, RAM occupancy, task progress status, and completion time.

컨트롤러(300)는 플랫폼 리소스 분석을 통해 현재 실행 계획에 따른 데이터셋을 처리한 플랫폼이 없는 경우, 스케일-아웃(scale-out)으로 결정하고, 플랫폼 리소스의 낭비가 있는 경우에는 스케일-인(scale-in)으로 결정한다. The controller 300 determines scale-out when there is no platform that has processed the dataset according to the current execution plan through platform resource analysis, and scale-in when there is waste of platform resources. -in).

플랫폼 핸들러(302)는 컨트롤러(300)의 제어에 따라 개별 플랫폼을 실행시키거나 중지시키고 커넥션을 제어한다. The platform handler 302 executes or stops an individual platform and controls a connection according to the control of the controller 300.

도 4를 참조하면, 컨트롤러(300)의 제어에 따라 플랫폼 핸들러(302)는 스케일-아웃(scale-out) 또는 스케일-인(scale-in) 제어 명령을 복수의 플랫폼(108)와 연결되는 게이트웨이(400)에 전달한다. 4, the platform handler 302 according to the control of the controller 300 is a gateway for connecting a scale-out or scale-in control command to a plurality of platforms 108 Pass to 400.

예를 들어, 스케일-아웃이 필요한 것으로 결정되는 경우, 기존 플랫폼(108-1 내지 108-3)에 현재 실행 계획에 따른 새로운 플랫폼(108-4)을 추가한다. For example, if it is determined that scale-out is necessary, a new platform 108-4 according to the current execution plan is added to the existing platforms 108-1 to 108-3.

플랫폼 매니저(106)는 플랫폼의 리소스 상황에 따라 자동으로 노드 복제가 이루어질 수 있도록 한다. The platform manager 106 enables node replication to be automatically performed according to the resource situation of the platform.

바람직하게, 스케일-아웃으로 결정되는 경우, 컨트롤러(300)는 하나의 빅데이터 프레임워크 기반의 플랫폼 노드가 복제되도록 한다. Preferably, when it is determined as scale-out, the controller 300 allows one big data framework-based platform node to be replicated.

컨트롤러(300)는 현재의 복수의 플랫폼에서 데이터셋의 처리가 가능한 경우, 현재 플랫폼 내에서 부하가 분산되도록 결정한다. The controller 300 determines that the load is distributed within the current platform when data sets can be processed on a plurality of current platforms.

스케일-아웃 및 스케일-인 없이 부하를 분산하는 것으로 결정하는 경우, 컨트롤러(300)의 제어에 따라 로드 밸런서(304)가 플랫폼 핸들러(302)로 로드 밸런싱 정보를 제공한다. When it is determined to distribute the load without scale-out and scale-in, the load balancer 304 provides load balancing information to the platform handler 302 under the control of the controller 300.

플랫폼 핸들러(302)는 로드 밸런싱 정보를 게이트웨이(400)로 전달하여 노드의 복제 또는 삭제 없이 현재의 복수의 플랫폼(108) 사이에서 부하가 분산되도록 한다. The platform handler 302 transmits load balancing information to the gateway 400 so that the load is distributed among the current plurality of platforms 108 without replication or deletion of nodes.

플랫폼 핸들러(302)는 로드 밸런싱으로 결정되는 경우, 실행 계획이 로드가 가장 낮은 플랫폼으로 전달되도록 한다. The platform handler 302 allows the execution plan to be delivered to the platform with the lowest load when it is determined by load balancing.

복수의 플랫폼(108)은 컨테이너 기반의 오픈소스 가상화 기술인 도커(docker)를 통해 이루어질 수 있다. The plurality of platforms 108 may be implemented through a container-based open source virtualization technology called Docker.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.The above-described embodiments of the present invention are disclosed for the purpose of illustration, and those skilled in the art who have ordinary knowledge of the present invention will be able to make various modifications, changes, and additions within the spirit and scope of the present invention, and such modifications, changes and additions It should be seen as falling within the scope of the following claims.

Claims (10)

빅데이터 플랫폼 관리 장치로서,
프로세서; 및
상기 프로세서에 연결되는 메모리를 포함하되,
상기 메모리는,
데이터셋 분석을 위한 실행 계획을 입력 받고,
분산 처리 기반으로 데이터셋 분석을 수행하는 복수의 플랫폼의 리소스 정보를 입력 받고,
상기 실행 계획 및 상기 복수의 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정하도록,
상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 빅데이터 플랫폼 관리 장치.
As a big data platform management device,
Processor; And
Including a memory connected to the processor,
The memory,
Receive an action plan for data set analysis,
Receive resource information of multiple platforms that perform data set analysis based on distributed processing,
To determine one of scaling or load balancing using the execution plan and resource information of the plurality of platforms,
Big data platform management device that stores program instructions executed by the processor.
제1항에 있어서,
상기 리소스 정보는 상기 복수의 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함하는 빅데이터 플랫폼 관리 장치.
The method of claim 1,
The resource information includes at least one of the number of connections of each of the plurality of platforms, network traffic, CPU occupancy rate, RAM occupancy rate, task progress status, and completion time.
제1항에 있어서,
상기 복수의 플랫폼은 서로 다른 빅데이터 프레임워크 기반 플랫폼을 포함하는 빅데이터 플랫폼 관리 장치.
The method of claim 1,
The plurality of platforms is a big data platform management device including platforms based on different big data frameworks.
제3항에 있어서,
상기 프로그램 명령어들은,
서로 다른 빅데이터 프레임워크 기반의 복수의 플랫폼에서 데이터셋 처리를 수행할 수 있도록 명령어를 변환하는 어댑터로부터 상기 실행 계획을 입력 받는 빅데이터 플랫폼 관리 장치.
The method of claim 3,
The program instructions,
A big data platform management device that receives the execution plan from an adapter that converts commands to perform data set processing on a plurality of platforms based on different big data frameworks.
제3항에 있어서,
상기 스케일링은 하나의 빅데이터 프레임워크 기반의 플랫폼 노드를 복제하는 스케일 아웃 및 삭제하는 스케일 인을 포함하는 빅데이터 플랫폼 관리 장치.
The method of claim 3,
The scaling is a big data platform management apparatus including scale-in for replicating and deleting one big data framework-based platform node.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 로드 밸런싱으로 결정되는 경우, 상기 실행 계획을 로드가 가장 낮은 플랫폼으로 전달하는 빅데이터 플랫폼 관리 장치.
The method of claim 1,
The program instructions,
When it is determined by the load balancing, a big data platform management device that delivers the execution plan to the platform with the lowest load.
프로세서 및 메모리를 포함하는 장치에서 빅데이터 플랫폼을 관리하는 방법으로서,
데이터셋 분석을 위한 실행 계획을 입력 받는 단계;
분산 처리 기반으로 데이터셋 분석을 수행하는 복수의 플랫폼의 리소스 정보를 입력 받는 단계; 및
상기 실행 계획 및 상기 복수의 플랫폼의 리소스 정보를 이용하여 스케일링 또는 로드 밸런싱 중 하나를 결정하는 단계를 포함하는 빅데이터 플랫폼 관리 방법.
A method of managing a big data platform in a device including a processor and a memory,
Receiving an execution plan for data set analysis;
Receiving resource information of a plurality of platforms for performing data set analysis based on distributed processing; And
And determining one of scaling or load balancing by using the execution plan and resource information of the plurality of platforms.
제7항에 있어서,
상기 리소스 정보는 상기 복수의 플랫폼 각각의 커넥션 수, 네트워크 트래픽, CPU 점유율, RAM 점유율 및 태스크의 진행 상태, 완료시간 중 적어도 하나를 포함하는 빅데이터 플랫폼 관리 방법
The method of claim 7,
The resource information is a big data platform management method including at least one of the number of connections of each of the plurality of platforms, network traffic, CPU share, RAM share, task progress status, and completion time
제7항에 있어서,
상기 복수의 플랫폼은 서로 다른 빅데이터 프레임워크 기반 플랫폼이며,
상기 프로그램 명령어들은,
서로 다른 빅데이터 프레임워크 기반의 복수의 플랫폼에서 데이터셋 처리를 수행할 수 있도록 명령어를 변환하는 어댑터로부터 상기 실행 계획을 입력 받는 빅데이터 플랫폼 관리 방법.
The method of claim 7,
The plurality of platforms are platforms based on different big data frameworks,
The program instructions,
A big data platform management method that receives the execution plan from an adapter that converts commands to perform data set processing on a plurality of platforms based on different big data frameworks.
제7항에 따른 방법을 수행하는 기록매체에 저장되는 컴퓨터 프로그램. A computer program stored on a recording medium for performing the method according to claim 7.
KR1020190148302A 2019-11-19 2019-11-19 Big data platform managing method and device KR102268549B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190148302A KR102268549B1 (en) 2019-11-19 2019-11-19 Big data platform managing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190148302A KR102268549B1 (en) 2019-11-19 2019-11-19 Big data platform managing method and device

Publications (2)

Publication Number Publication Date
KR20210060829A true KR20210060829A (en) 2021-05-27
KR102268549B1 KR102268549B1 (en) 2021-06-24

Family

ID=76135561

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190148302A KR102268549B1 (en) 2019-11-19 2019-11-19 Big data platform managing method and device

Country Status (1)

Country Link
KR (1) KR102268549B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150056258A (en) * 2013-11-15 2015-05-26 (주)가이온 Engine for enhancing productivity of fixed form and non-fixed form bigdata method thereof
KR20150110063A (en) * 2014-03-24 2015-10-02 주식회사 클라우다인 Apparatus and method of integrating mapreduce for big data processing
KR20160104419A (en) * 2015-02-26 2016-09-05 한국전자통신연구원 Apparatus and method for autonomic scaling of monitoring function resource in software defined network
KR101856454B1 (en) 2017-03-06 2018-05-10 주식회사 티맥스데이터 Computer device for distributed processing
KR20190081306A (en) * 2017-12-29 2019-07-09 한국전자통신연구원 Method for allocating resource for bigdata analyzing software and apparatus for allocating virtual resource using the method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150056258A (en) * 2013-11-15 2015-05-26 (주)가이온 Engine for enhancing productivity of fixed form and non-fixed form bigdata method thereof
KR20150110063A (en) * 2014-03-24 2015-10-02 주식회사 클라우다인 Apparatus and method of integrating mapreduce for big data processing
KR20160104419A (en) * 2015-02-26 2016-09-05 한국전자통신연구원 Apparatus and method for autonomic scaling of monitoring function resource in software defined network
KR101856454B1 (en) 2017-03-06 2018-05-10 주식회사 티맥스데이터 Computer device for distributed processing
KR20190081306A (en) * 2017-12-29 2019-07-09 한국전자통신연구원 Method for allocating resource for bigdata analyzing software and apparatus for allocating virtual resource using the method

Also Published As

Publication number Publication date
KR102268549B1 (en) 2021-06-24

Similar Documents

Publication Publication Date Title
CN111124679B (en) Multi-source heterogeneous mass data-oriented time-limited automatic processing method
CN106168965B (en) Knowledge graph construction system
CN111240662A (en) Spark machine learning system and learning method based on task visual dragging
WO2019196226A1 (en) System information querying method and apparatus, computer device, and storage medium
CN106126601A (en) A kind of social security distributed preprocess method of big data and system
DE202015009874U1 (en) Implementation of semi-structured data as a first class database element
CN105893583A (en) Data acquisition method and system based on artificial intelligence
Cheng et al. Efficient event correlation over distributed systems
CN111858760B (en) Data processing method and device for heterogeneous database
US10127617B2 (en) System for analyzing social media data and method of analyzing social media data using the same
CN107341210A (en) C DBSCAN K clustering algorithms under Hadoop platform
CN109213826A (en) Data processing method and equipment
CN114996549A (en) Intelligent tracking method and system based on active object information mining
CN114817243A (en) Method, device and equipment for establishing database joint index and storage medium
Calçada et al. Evaluation of Couchbase, CouchDB and MongoDB using OSSpal.
KR102345410B1 (en) Big data intelligent collecting method and device
KR102541934B1 (en) Big data intelligent collecting system
JP2017049639A (en) Evaluation program, procedure manual evaluation method, and evaluation device
CN112650739A (en) Data storage processing method and device for coal mine data middling station
CN112434003A (en) SQL optimization method and device, computer equipment and storage medium
KR102268549B1 (en) Big data platform managing method and device
KR102473776B1 (en) Big data cross model data integrated processing method and apparatus
CN111737371B (en) Data flow detection classification method and device capable of dynamically predicting
CN113779215A (en) Data processing platform
CN113282568A (en) IOT big data real-time sequence flow analysis application technical method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right