Publications

Detailed Information

구성 모의실험에서의 분산 데이터 처리를 위한 플랫폼 : Distributed Data Processing Platform for Constructive Simulation

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

배민수

Advisor
홍성수
Issue Date
2020
Publisher
서울대학교 대학원
Description
학위논문(석사)--서울대학교 대학원 :공학전문대학원 응용공학과,2020. 2. 홍성수.
Abstract
Since the emergence of the fourth industrial revolution, data analysis is being conducted in various fields. Distributed data processing has already become essential for the fast processing of large amounts of data. However, in the defense sector, simulation used cannot fully utilize the unstructured data which are prevailing at real environments. At the Korea Combat Training Center (KCTC), training unit conducts battles for two consecutive days and nights, resulting in about 300GB of voice, video, and engagement data. If the information stored as unstructured data can be analyzed and presented as visual evidence, it can affect the commands decision in response to the problems faced in the field during training. To this end, we propose a distributed data processing platform. In the military, Adaptive distributed parallel Simulation environment for Interoperable and reusable Models (AddSIM) has been developed to link data utilization with combat training programs. To overcome the issue of data utilization, several simulations are duplicated in a single program, and relevant results are obtained. However, in the case of AddSIM, the conditions for utilizing various weapon systems must be established simultaneously. If a corps is small, the model is limited. In this study, we propose a distributed data processing platform that can be applied to battalion level simulation models to provide visualized data for command decisions during training. The proposed distributed data processing platform is composed of two layers - the App layer and the System layer. In the App layer, a remote function is delivered to all workers and the worker receiving the task executes it. The driver submits the remote function to the local scheduler, following which the function gets forwarded to the global scheduler. The workers receive the task from the scheduler. At this time, the objects and functions stored in the global control store corresponding to the system layer can be shared in the worker, driver and local areas due to the global control store. Scheduling to perform the task by receiving shared value from the Local Object Store. In this study, 500,000 data points of strategic game were analyzed. Considering the winning factors in the data, variance processing was conducted to analyze the data for the top 10% teams. With the increase in the number of nodes, the model becomes scalable. We confirmed the efficiency of the model by reducing CPU resource utilization by 1-18.7% for less than 50% of the total execution time of the process. Memory utilization increased when the metadata of the object was stored in the Redis server, because the experimental environment allowed processing large amounts of data with a small number of nodes. However, memory utilization can be reduced by increasing the number of nodes or reducing the size of the playback buffer. It was found that load value increased with the increase in the number of processes generated by the actors and workers. Furthermore, it was confirmed that the throughput could be increased by changing the conditions of the experimental environment.
4차 산업혁명의 기술 등장 이후 대규모 데이터 시대에서 새로운 가치 창출을 위한 데이터 정보 분석은 다양한 분야에서 시도되고 있다. 대용량 데이터를 빠르게 처리하는데 있어서 분산 데이터 처리는 이미 필수적이다. 하지만 아직 국방 분야에서 운용하고 있는 시뮬레이션들은 쌓여 있는 비정형 데이터를 활용할 수 있는 시스템이 미비하다. 군에서 대표적 시뮬레이션인 과학화 전투훈련(KCTC)①에서도 1개의 훈련 부대가 2주간 주야 연속을 공방 전투를 실시하면 음성, 영상 그리고 교전 데이터가 약 300GB정도 발생하지만 이 데이터는 서버에 저장되어 훈련 기록으로만 남아있다. 이렇게 비정형 데이터로 저장되어 있는 정보들을 분석하여 가시화된 근거 자료로 제시할 수 있다면 훈련동안 발생하는 현장 문제에 대응하여 더 나은 지휘 결심을 하는데 영향을 미칠 수 있을 것이다.
현재 군에서 데이터 활용과 전투훈련 프로그램 간의 연계를 위하여 Adaptive distributed parallel Simulation environment for Interoperable and Models (AddSIM) 등의 개발이 진행되고 있다. 데이터 활용 문제를 극복하기 위해 다수의 시뮬레이션을 복제하여 하나의 프로그램으로 구성하고 이를 시뮬레이션화 하고 결과를 얻고자 하지만, AddSIM의 경우 다양한 무기체계를 동시에 활용해야 하는 조건이 성립되어야 한다. 이는 광범위하기 때문에, 규모가 작은 창 끝 부대의 경우 해당 모델을 활용하기에는 제한적이다. 또한 중앙 집중 방식의 데이터 처리의 경우 중앙 서버의 고성능이 필요하고 여러 대의 컴퓨터에 발생하는 데이터 처리를 수행하는 데에 효율성이 떨어져 분산 처리 방식의 플랫폼을 선호하였다. 이에 본 연구에서는 훈련간 발생하는 문제에 대응하기 위한 지휘결심에 가시화된 데이터를 제공하기 위해서 대대급 규모의 시뮬레이션 모델에 적용 가능한 분산 처리 플랫폼을 제안한다.
분산 데이터 처리 플랫폼의 아키텍처를 보면 크게 App layer와 System layer로 구성되어 있다. App layer에서는 remote function으로 정의된 함수가 최초 Global Control Store에 저장이 되고 이는 모든 Worker에게 분산되어 전달된다. Driver는 remote function을 Local scheduler에게 제출하고 이는 Global scheduler로 전달된다. 스케줄러로 인해 수행할 태스크를 전달받은 각 Worker는 태스크를 수행하게 된다. 이 때 System layer에 해당되는 Global Control Store에 저장된 Object와 Function은 Global Control Store로 인해 Worker와 Driver 그리고 Local 영역에 공유가 가능하게 된다. Local Object Store에서 공유 값을 전달받아 태스크를 수행하는 스케줄링을 시행하게 된다.
본 연구의 실험에는 전략게임 데이터 50만개를 분석하는 과정으로 수행하였다. 데이터가 가지고 있는 여러 요인들 중 승리요인에 영향을 미치는 요소들을 분석할 수 있게 구현하여, 결과적으로 상위 10%에 있는 팀들의 데이터를 분석하는 과정에서의 분산처리 결과를 측정하였다. 노드의 수가 증가할수록 모델은 확장성을 갖게 되는데, 이를 수행하여 전체 프로세스 수행 시간 중 50%이하의 수행 시간동안 1~18.7%의 CPU 자원 사용률 감소를 통해 모델의 효율성을 확인하였다. Memory 사용률을 측정했을 때에는 적은 노드의 수로 대용량을 처리하는 실험환경으로 인해 Object의 메타 데이터를 Redis 서버에 저장하는 과정에서 메모리 사용률이 증가하였다. 하지만 이 부분은 노드의 수를 증가시키거나 재생 버퍼 사이즈를 줄임으로써 감소시킬 수 있다. Load의 평균값을 측정하였을 때에는 Actor와 Worker로 인해 생성되는 Process의 증가로 Load값이 증가하였으며 이는 실험환경의 요인 변경으로 인해 처리량을 증가시킬 수 있음을 확인하였다.
추가적으로 적은 노드의 수로 대용량 데이터 처리 수행할 때 Object가 Global Control Store에 저장되는 과정에서 메모리 이슈가 발생할 수 있음을 확인하였다. 메모리 이슈는 remote function으로 정의한 함수가 대량의 array를 사용하거나 Object로 인한 원인이기 때문에 데이터 크기에 따라 최대 효율을 수행할 수 있는 코어와 노드의 수에 대한 기준점이 필요하다. 이는 향후 연구 방안으로 정리하고자 하며, 이러한 이슈에도 불구하고 본 연구를 통해 제시된 분산 데이터 처리 플랫폼의 유용성을 검증할 수 있었다. 이를 통해 궁극적으로 분산 데이터 처리 플랫폼 기반의 국방 데이터를 활용하여 가시화된 자료로 새로운 가치 창출을 할 수 있다고 제안한다.
Language
kor
URI
http://dcollection.snu.ac.kr/common/orgView/000000158659
Files in This Item:
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share