스마트-시티는 스마트-시티의 사물인터넷(Internet of Things: IoT) 디바이스를 비롯한 수많은 인프라를 지능적으로 관리하고, 다양한 스마트 어플리케이션을 도시민에게 제공한다. 스마트-시티에서는 스마트-시티 어플리케이션에서 필요한 다양한 정보를 제공하기 위하여 수많은 사물인터넷 기기들로부터 끊임없이 발생하는 대규모의 스트림 빅-데이터를 지능적으로 처리하는 기능이 필요하다. 하지만, 스마트-시티에서 대규모의 스트림 빅-데이터를 처리하는 것에는 실시간 처리와 관련된 제약들이 존재한다. 본 스마트-시티-사업단에서는 선행 연구에서 스마트-시티미들웨어와 이를 이용한 스트림-리즈닝 방법론 및 시스템을 개발하였다. 스마트-시티에서 스마트 서비스를 제공하기 위하여, 스마트-시티-사업단에서는 스트림-리즈닝을 사용하는 방법론을 사용한다. 이 스트림-리즈닝은 대용량 데이터의 실시간 처리를 필요로 한다. 따라서, 후속연구로서 스마트-시티미들웨어의 클라우드-컴퓨팅 플랫폼을 이용하여 스트림-리즈닝을 위한 실시간 분산병렬처리 클라우드-컴퓨팅 방법론과 시스템을 개발하였다. 본 논문에서는 스마트-시티에서 발생하는 사물인터넷 빅-데이터를 스트림-리즈닝에 사용하기 위하여 이 후속연구에서 개발된 클라우드 기반 실시간 분산병렬처리 연구결과를 소개한다. 스마트-시티의 각종 센서들로부터 전송되어지는 사물인터넷 빅-데이터를 사용하여 스트림-리즈닝하는 데 필요한 클라우드-컴퓨팅 기반의 실시간 분산처리 방법론과 시스템을 소개하고 있으며, 이 방법론을 선행연구에서 개발한 스마트-시티 미들웨어에 구현하여 실시간 분산처리 성능을 평가한 것을 소개한다.
스마트-시티는 스마트-시티의 사물인터넷(Internet of Things: IoT) 디바이스를 비롯한 수많은 인프라를 지능적으로 관리하고, 다양한 스마트 어플리케이션을 도시민에게 제공한다. 스마트-시티에서는 스마트-시티 어플리케이션에서 필요한 다양한 정보를 제공하기 위하여 수많은 사물인터넷 기기들로부터 끊임없이 발생하는 대규모의 스트림 빅-데이터를 지능적으로 처리하는 기능이 필요하다. 하지만, 스마트-시티에서 대규모의 스트림 빅-데이터를 처리하는 것에는 실시간 처리와 관련된 제약들이 존재한다. 본 스마트-시티-사업단에서는 선행 연구에서 스마트-시티미들웨어와 이를 이용한 스트림-리즈닝 방법론 및 시스템을 개발하였다. 스마트-시티에서 스마트 서비스를 제공하기 위하여, 스마트-시티-사업단에서는 스트림-리즈닝을 사용하는 방법론을 사용한다. 이 스트림-리즈닝은 대용량 데이터의 실시간 처리를 필요로 한다. 따라서, 후속연구로서 스마트-시티미들웨어의 클라우드-컴퓨팅 플랫폼을 이용하여 스트림-리즈닝을 위한 실시간 분산병렬처리 클라우드-컴퓨팅 방법론과 시스템을 개발하였다. 본 논문에서는 스마트-시티에서 발생하는 사물인터넷 빅-데이터를 스트림-리즈닝에 사용하기 위하여 이 후속연구에서 개발된 클라우드 기반 실시간 분산병렬처리 연구결과를 소개한다. 스마트-시티의 각종 센서들로부터 전송되어지는 사물인터넷 빅-데이터를 사용하여 스트림-리즈닝하는 데 필요한 클라우드-컴퓨팅 기반의 실시간 분산처리 방법론과 시스템을 소개하고 있으며, 이 방법론을 선행연구에서 개발한 스마트-시티 미들웨어에 구현하여 실시간 분산처리 성능을 평가한 것을 소개한다.
Smart Cities intelligently manage numerous infrastructures, including Smart-City IoT devices, and provide a variety of smart-city applications to citizen. In order to provide various information needed for smart-city applications, Smart Cities require a function to intelligently process large-scale ...
Smart Cities intelligently manage numerous infrastructures, including Smart-City IoT devices, and provide a variety of smart-city applications to citizen. In order to provide various information needed for smart-city applications, Smart Cities require a function to intelligently process large-scale streamed big data that are constantly generated from a large number of IoT devices. To provide smart services in Smart-City, the Smart-City Consortium uses stream reasoning. Our stream reasoning requires real-time processing of big data. However, there are limitations associated with real-time processing of large-scale streamed big data in Smart Cities. In this paper, we introduce one of our researches on cloud computing based real-time distributed-parallel-processing to be used in stream-reasoning of IoT big data in Smart Cities. The Smart-City Consortium introduced its previously developed smart-city middleware. In the research for this paper, we made cloud computing based real-time distributed-parallel-processing available in the cloud computing platform of the smart-city middleware developed in the previous research, so that we can perform real-time distributed-parallel-processing with them. This paper introduces a real-time distributed-parallel-processing method and system for stream reasoning with IoT big data transmitted from various sensors of Smart Cities and evaluate the performance of real-time distributed-parallel-processing of the system where the method is implemented.
Smart Cities intelligently manage numerous infrastructures, including Smart-City IoT devices, and provide a variety of smart-city applications to citizen. In order to provide various information needed for smart-city applications, Smart Cities require a function to intelligently process large-scale streamed big data that are constantly generated from a large number of IoT devices. To provide smart services in Smart-City, the Smart-City Consortium uses stream reasoning. Our stream reasoning requires real-time processing of big data. However, there are limitations associated with real-time processing of large-scale streamed big data in Smart Cities. In this paper, we introduce one of our researches on cloud computing based real-time distributed-parallel-processing to be used in stream-reasoning of IoT big data in Smart Cities. The Smart-City Consortium introduced its previously developed smart-city middleware. In the research for this paper, we made cloud computing based real-time distributed-parallel-processing available in the cloud computing platform of the smart-city middleware developed in the previous research, so that we can perform real-time distributed-parallel-processing with them. This paper introduces a real-time distributed-parallel-processing method and system for stream reasoning with IoT big data transmitted from various sensors of Smart Cities and evaluate the performance of real-time distributed-parallel-processing of the system where the method is implemented.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
향후 연구에서는, 스마트-시티 어플리케이션을 사용할 때에, 사용자가 질의 결과를 어느 정도의 응답시간 내에 획득할 수 있는지에 대해서 알아보고자 한다. 또한 연속질의들 만에 대한 지연시간을 측정하는 실험도 수행하고자 한다. 이 사항들은 본 연구단의 시스템에 필요한 평가요소들이기 때문이다.
하지만, 이 스트림-리즈닝에서 사용하는 스트림 데이터는 빅-데이터로서, 빠른 속도로 변하면서 끊임없이 계속해서 공급되기에, 실시간으로 처리해야만 하는 매우 해결하기 어려운 제약조건을 소울이 해결하도록 요구하고 있다. 본 논문에서는 이 문제를 해결한 결과를 소개한다.
본 사업단에서는, 스마트-시티의 각종 센서들로부터 전송되어지는 사물인터넷 빅-데이터를 사용하여 실시간으로 스트림-리즈닝하는데 필요한 기법과 시스템을 개발하였고, 본 논문에서 그 내용을 소개하였다. 우리의 시스템은 실시간 클라우드-컴퓨팅 기술을 기반으로 하는 실시간 분산처리 방법론을 사용하고 있음을 본 논문에서 먼저 상세히 소개하였다.
본 사업단은 스트림-리즈닝에 사용가능한 방법론과 시스템을 연구 개발하였다. 아파치 카프카 (Apache Kafka)[13]와 아파치 스톰(Apache Storm)을 본 시스템에서 사용할 최적의 오픈-소스-소프트웨어로 선정하여서, 본 연구단에서 기존에 개발했던 관련 모듈들을 이것으로 교체하였다.
본 실험에서는 인공부하 (Artificial Workload)를 사용하였다. 본 사업단은, 센서로 부터의 전송되어지는 사물인터넷 스트림 데이터를 실제와 유사하게 발생시키는 스트림 데이터 생성기를 개발하였다. 이를 사용하여, 스마트시티에서 발생하는 실제 부하 (Real Workload)를 시뮬레이션 하는 인공부하를 발생시켜 실험에 사용함으로서, 성능평가실험의 사실도와 충실도를 높였다.
그림 2에 도시된 시스템을 이용하여, 스트림 데이터를 입력받아서 화재사고가 발생하였을 때 위험 지역을 추론하는 실험을 수행하였다. 이 경우에, 실시간 스트림-리즈닝이 제대로 수행되는지를 확인하고 최적의 실험수행환경도 알아내고자 하였다. 실제 성능을 측정함에 있어서, 응답시간, 즉, 처리시간과 매초당의 데이터 처리량을 측정하였다.
제안된 엔진은 스파크를 사용하고 있으며, 사물인터넷 어플리케이션을 지원한다. 이 논문은 거주 환경을 모니터링하는 어플리케이션의 사례를 소개하고 있다.
이들은, 서로 다른 추론 접근법을 지원하는 확장성의 특성을 가지고 있다. 이 논문은 실시간 응답 시간을 비교하여, 사물인터넷 어플리케이션을 위한 시맨틱 기술의 성능을 평가하였다. 또한 추론처리에 사용할 수 있는,분산된 사물인터넷 데이터 통합 전략을 비교 평가하였다.
지금까지 본 사업단이 개발한 실시간으로 스트림-리즈닝 처리를 하는 방법과 이를 소울 미들웨어에 구축한 시스템에 대해서 서술하였다. 이번 장에서는 이것들을 바탕으로 하여 실험환경을 구축하고, 실제 환경을 시뮬레이션한 부하를 사용하여서 성능평가 실험을 한 결과와 성능분석 내용을 소개한다.
향후 연구에서는, 스마트-시티 어플리케이션을 사용할 때에, 사용자가 질의 결과를 어느 정도의 응답시간 내에 획득할 수 있는지에 대해서 알아보고자 한다. 또한 연속질의들 만에 대한 지연시간을 측정하는 실험도 수행하고자 한다.
제안 방법
1) 클라우드-컴퓨팅 기술을 스트림-리즈닝에 융합하여 실시간 스트림-리즈닝을 할 수 있는 방법론을 개발하고 이를 소울에 구현하였다. 이렇게 함으로서, 소울은 사물인터넷으로 부터 끊임없이 연속적으로 빠르게 변화하면서 소울로 전송되는, 빅-데이터를 실시간으로 스트림-리즈닝할 수 있게 되었다.
2) 개발된 시스템의 성능을 평가하여 개발된 방법론과 시스템의 작동을 확인하고 주어진 부하에 적합하면서 확장성있는 시스템 환경을 알아내었다. 따라서, 스마트-시티에서 최적의 미들웨어를 이용한 실시간 스트림-리즈닝시스템을 구축한 것이 본 연구와 논문의 기여효과이다.
최대 12대까지를 처리노드로 사용하였다. 각 노드마다 독자적인 기억장치를 가지는 분산시스템 구조로 시스템을 구축하였다. 이를 클라우드 플랫폼을 통하여 실험에 사용하였기에, 본 실험에서는, 메모리의 공유에서 오는 문제점은 없다.
이 논문은 실시간 응답 시간을 비교하여, 사물인터넷 어플리케이션을 위한 시맨틱 기술의 성능을 평가하였다. 또한 추론처리에 사용할 수 있는,분산된 사물인터넷 데이터 통합 전략을 비교 평가하였다.
상황변환기-볼트는 전송받은 데이터스트림을, 추론이 가능하도록, OWL 온톨로지 모델을 이용하여, OWL 온톨로지 인스턴스로 변환하는 기능을 제공한다. 본 사업단에서 화재사고처리를 위한 스마트 서비스에 사용할 목적으로 제작한, OWL 도메인 온톨로지의 일부를 그림 4로 표시하였다.
본 사업단에서 화재사고처리를 위한 스마트 서비스에 사용할 목적으로 제작한, OWL 도메인 온톨로지의 일부를 그림 4로 표시하였다. 상황추론기는 OWL 온토롤지 인스턴스와 사용자 정의 규칙을 이용하여 추론을 수행하며, 상황분석기볼트를 포함한다. 상황분석기-볼트는 아파치-제나-프레임워크(Apache Jena Framework [14])를 이용하여 OWL 추론을 수행하며, OWL 추론기는 팰릿(Pellet [15])을 사용한다.
성능이상의 부하를 걸어 줌으로서, 스트레스 테스트를 수행하였으며, 이를 통하여, 과부하시, 본 연구에서 개발된 실시간 스트림-리즈닝 시스템이 어떻게 작동하는지도 알 수 있도록 방법론을 제시하고 실제 결과를 보여주었다. 또한, 센서의 개수가 늘어남에 따라, 전송데이터가 증가하기 때문에, 이를 실시간으로 성공적으로 처리하기 위하여, 컴퓨팅 파워가 부하상황에 따라, 매끄럽고 자연스럽게 확장될 수 있는 특성이 요구된다.
성능평가를 통하여, 주어진 환경에서 최적의 시스템을 선택할 수 있도록, 방법론을 제시하였다. 이 방법론은 용량계획에도 유용하게 쓰일 수 있음을 설명하였다.
그림 3은 본 사업단이 개발한 미들웨어인 소울에 구현된 실시간 스트림-리즈닝 시스템의 작동 메커니즘을 보여주고 있다. 소울의 공통-장치-인터페이스-레이어 상에 있는 사물인터넷-플랫폼-관리기에 카프카-브로커를 배치하여 스마트-컴퓨팅-레이어의 상황변환기에 데이터를 전송할 수 있도록 하였다. 상황변환기는 상황변환기-스파우트와 상황변환기-볼트를 사용하여 실시간 스트림-리즈닝관련 데이터를 처리한다.
이 경우에, 실시간 스트림-리즈닝이 제대로 수행되는지를 확인하고 최적의 실험수행환경도 알아내고자 하였다. 실제 성능을 측정함에 있어서, 응답시간, 즉, 처리시간과 매초당의 데이터 처리량을 측정하였다. 시스템의 성능을 증가시키기 위하여, 시스템을 구성하는 노드의 개수를 증가시키는 방법론을 사용하였다.
본 사업단은 스트림-리즈닝에 사용가능한 방법론과 시스템을 연구 개발하였다. 아파치 카프카 (Apache Kafka)[13]와 아파치 스톰(Apache Storm)을 본 시스템에서 사용할 최적의 오픈-소스-소프트웨어로 선정하여서, 본 연구단에서 기존에 개발했던 관련 모듈들을 이것으로 교체하였다. 이는 추후의 업그레이드와 보편성을 높이기 위함이다.
본 사업단에서는, 스마트-시티의 각종 센서들로부터 전송되어지는 사물인터넷 빅-데이터를 사용하여 실시간으로 스트림-리즈닝하는데 필요한 기법과 시스템을 개발하였고, 본 논문에서 그 내용을 소개하였다. 우리의 시스템은 실시간 클라우드-컴퓨팅 기술을 기반으로 하는 실시간 분산처리 방법론을 사용하고 있음을 본 논문에서 먼저 상세히 소개하였다. 이 방법론을 선행연구에서 개발한 스트림-리즈닝 방법론에 융합시킨 후, 이를 스마트-시티 미들웨어 소울에 구현하였음을, 본 논문에서 설명하였다.
우리의 시스템은 실시간 클라우드-컴퓨팅 기술을 기반으로 하는 실시간 분산처리 방법론을 사용하고 있음을 본 논문에서 먼저 상세히 소개하였다. 이 방법론을 선행연구에서 개발한 스트림-리즈닝 방법론에 융합시킨 후, 이를 스마트-시티 미들웨어 소울에 구현하였음을, 본 논문에서 설명하였다. 마지막으로, 구현된 시스템의 성능을 평가하여, 이 시스템이 정상적으로 잘 작동하고 있음과 여러 가지 우수한 성능을 보임을 증명하였다.
지금까지 본 사업단이 개발한 실시간으로 스트림-리즈닝 처리를 하는 방법과 이를 소울 미들웨어에 구축한 시스템에 대해서 서술하였다. 이번 장에서는 이것들을 바탕으로 하여 실험환경을 구축하고, 실제 환경을 시뮬레이션한 부하를 사용하여서 성능평가 실험을 한 결과와 성능분석 내용을 소개한다.
아파치 스톰은 분산 처리를 하면서, 실시간 분석을 지원한다. 입력되는 데이터 스트림을 스파우트(Spout), 볼트(Bolt), 토폴로지와 로직을 사용하여 처리한다. 스파우트는 토폴로지를 사용하여 외부로부터 전송되는 데이터 스트림을 받는 역할을 한다.
데이터 입력 구성요소에서 대용량의 데이터를 연속적으로 실시간에 전송받아 처리하기 위하여 아파치 카프카를 사용한다. 카프카는 대용량 데이터 처리에 특화된 소프트웨어라는 점과 스트림으로 연속되어 전송되는 데이터를 처리할 수 있다는 점과 실시간 처리가 가능하다는 점, 기존 메시징 프로토콜인 AMQP 프로토콜이나 JMSAPI 등과 비교할 때 오버헤드가 적은 프로토콜을 사용하고 있어서 전송 지연시간이 적다는 점, 확장성이 있다는 점과 고가용성의 특성이 있다는 점, 클러스터로 동작되는점 등의 장점을 고려하여 카프카를 채택하였다.
클러스터 방식의 클라우드-컴퓨팅을 이용하여 성능평가 실험을 하였다. 실험에 사용된 클러스터는 총 16대이다.
대상 데이터
유토피아의 3티어는 서로 연동하여 작동하며, 스마트-시티를 효율적이고, 효과적으로 관리할 수 있게 한다. 3티어는 스마트-시티 포탈 티어, 스마트-시티 미들웨어 티어, 스마트-시티인프라스트럭처 티어로 구성된다. 스마트-시티 포탈 티어는 소울의 여러 기능들을 이용하여 스마트-시티 서비스를 사용자에게 제공한다.
클러스터 방식의 클라우드-컴퓨팅을 이용하여 성능평가 실험을 하였다. 실험에 사용된 클러스터는 총 16대이다. 표 1과 표 2는 실험환경을 정리하여 보여준다.
이를 사용하여, 스마트시티에서 발생하는 실제 부하 (Real Workload)를 시뮬레이션 하는 인공부하를 발생시켜 실험에 사용함으로서, 성능평가실험의 사실도와 충실도를 높였다. 이 실험에서 사용된 데이터는 센서 사물인터넷 데이터로서 트랜잭션당 200bytes의 고정된 크기 값을 가지고 있다. 매 실험 당 백만건까지 트랜잭션을 발생시켜서 소울 미들웨어에 전송하였다.
이론/모형
데이터 입력 구성요소에서 대용량의 데이터를 연속적으로 실시간에 전송받아 처리하기 위하여 아파치 카프카를 사용한다. 카프카는 대용량 데이터 처리에 특화된 소프트웨어라는 점과 스트림으로 연속되어 전송되는 데이터를 처리할 수 있다는 점과 실시간 처리가 가능하다는 점, 기존 메시징 프로토콜인 AMQP 프로토콜이나 JMSAPI 등과 비교할 때 오버헤드가 적은 프로토콜을 사용하고 있어서 전송 지연시간이 적다는 점, 확장성이 있다는 점과 고가용성의 특성이 있다는 점, 클러스터로 동작되는점 등의 장점을 고려하여 카프카를 채택하였다.
본 실험에서는 인공부하 (Artificial Workload)를 사용하였다. 본 사업단은, 센서로 부터의 전송되어지는 사물인터넷 스트림 데이터를 실제와 유사하게 발생시키는 스트림 데이터 생성기를 개발하였다.
상황추론기는 OWL 온토롤지 인스턴스와 사용자 정의 규칙을 이용하여 추론을 수행하며, 상황분석기볼트를 포함한다. 상황분석기-볼트는 아파치-제나-프레임워크(Apache Jena Framework [14])를 이용하여 OWL 추론을 수행하며, OWL 추론기는 팰릿(Pellet [15])을 사용한다. 여기에서 사용되어지는 사용자 정의 규칙은 사용자의 입력을 받아 실행시간 중에 동적으로 변경이 가능하도록 제작되어 있다.
소울은 스마트 서비스를 제공하기 위하여 스트림-리즈닝 기술을 사용한다. 하지만, 이 스트림-리즈닝에서 사용하는 스트림 데이터는 빅-데이터로서, 빠른 속도로 변하면서 끊임없이 계속해서 공급되기에, 실시간으로 처리해야만 하는 매우 해결하기 어려운 제약조건을 소울이 해결하도록 요구하고 있다.
스톰(Storm)에서 연속질의는 DRPC기법을 이용하여 처리한다[16]. DRPC-서버는 스톰(Storm)에서 사용하는 토폴로지가 RPC 를 수행할 수 있게 해주는 서버로써, 서비스브로커에게서 명령을 받고, 처리된 결과를 서비스-브로커에 반환하는 역할을 수행한다.
실제 성능을 측정함에 있어서, 응답시간, 즉, 처리시간과 매초당의 데이터 처리량을 측정하였다. 시스템의 성능을 증가시키기 위하여, 시스템을 구성하는 노드의 개수를 증가시키는 방법론을 사용하였다. 노드의 개수는 1개로부터 시작하여, 2개 노드, 그 후는 2개 단위로 증가시켰다.
성능/효과
1개의 노드를 사용했을 때, 초당 2500개의 메시지가 센서로부터 유입될 때까지, 실시간 처리가 잘 진행되었다. 즉 정비례 직선형태를 유지하였다.
노드 개수를 2개에서 4개, 6개, 8개, 10개, 12개로 점차로 증가하여 감에 따라, 성능은 비례에 가깝게 좋아졌다. 4개의 노드의 경우, 스트레스 테스트를 할 때, 초당 유입되는 메시지가 8500건 근처에서 그리고 11000건 근처에서, 예상 밖으로, 포물선보다 좋은 성능을 보였다. 노드가 10건일 때에 11500건 이상의 메시지 시스템에 유입되면, 예상 밖으로, 8노드의 경우보다 낮은 초당 처리률을 보였다.
노드 개수를 2개에서 4개, 6개, 8개, 10개, 12개로 점차로 증가하여 감에 따라, 성능은 비례에 가깝게 좋아졌다. 4개의 노드의 경우, 스트레스 테스트를 할 때, 초당 유입되는 메시지가 8500건 근처에서 그리고 11000건 근처에서, 예상 밖으로, 포물선보다 좋은 성능을 보였다.
4개의 노드의 경우, 스트레스 테스트를 할 때, 초당 유입되는 메시지가 8500건 근처에서 그리고 11000건 근처에서, 예상 밖으로, 포물선보다 좋은 성능을 보였다. 노드가 10건일 때에 11500건 이상의 메시지 시스템에 유입되면, 예상 밖으로, 8노드의 경우보다 낮은 초당 처리률을 보였다. 10노드의 경우에 스트레스 테스트에서 8노드 보다 더 불안정함을 보인 것이다.
이렇게 함으로서, 소울은 사물인터넷으로 부터 끊임없이 연속적으로 빠르게 변화하면서 소울로 전송되는, 빅-데이터를 실시간으로 스트림-리즈닝할 수 있게 되었다. 따라서, 미들웨어와 스트림-리즈닝, 클라우드-컴퓨팅을 융합하여 스마트-시티에서 실시간으로 스트림-리즈닝을 할 수 있게 한 것이 본 연구와 논문의 기여효과이다.
2) 개발된 시스템의 성능을 평가하여 개발된 방법론과 시스템의 작동을 확인하고 주어진 부하에 적합하면서 확장성있는 시스템 환경을 알아내었다. 따라서, 스마트-시티에서 최적의 미들웨어를 이용한 실시간 스트림-리즈닝시스템을 구축한 것이 본 연구와 논문의 기여효과이다.
이 방법론을 선행연구에서 개발한 스트림-리즈닝 방법론에 융합시킨 후, 이를 스마트-시티 미들웨어 소울에 구현하였음을, 본 논문에서 설명하였다. 마지막으로, 구현된 시스템의 성능을 평가하여, 이 시스템이 정상적으로 잘 작동하고 있음과 여러 가지 우수한 성능을 보임을 증명하였다.
이 모든 것을 종합하여 볼 때, 부하의 증가에 따른 시스템의 안정적인 운영을 표시하는 확장성 항목에 있어서, 우수한 성능을 보였다고 평가된다. 성능평가실험에서 진행된 결과를 보면, 용량계획(Capacity Plannning)이 적절히 이루어졌음을 알 수 있다. 따라서, 이 실험의 결과를 이용하면, 각 상황에 맞는 적절한 시스템을 구축하여 운영할 수 있다.
10노드의 경우에 스트레스 테스트에서 8노드 보다 더 불안정함을 보인 것이다. 이 모든 것을 종합하여 볼 때, 부하의 증가에 따른 시스템의 안정적인 운영을 표시하는 확장성 항목에 있어서, 우수한 성능을 보였다고 평가된다. 성능평가실험에서 진행된 결과를 보면, 용량계획(Capacity Plannning)이 적절히 이루어졌음을 알 수 있다.
본 사업단은, 센서로 부터의 전송되어지는 사물인터넷 스트림 데이터를 실제와 유사하게 발생시키는 스트림 데이터 생성기를 개발하였다. 이를 사용하여, 스마트시티에서 발생하는 실제 부하 (Real Workload)를 시뮬레이션 하는 인공부하를 발생시켜 실험에 사용함으로서, 성능평가실험의 사실도와 충실도를 높였다. 이 실험에서 사용된 데이터는 센서 사물인터넷 데이터로서 트랜잭션당 200bytes의 고정된 크기 값을 가지고 있다.
전반적으로 구축된 실험시스템은 잘 작동함을 확인할 수 있었으며, 본 사업단에서 개발하여 구축하고, 본 논문에서 소개하는 실험시스템은 성공적으로 작동하였으며, 여러 성능평가 사항에서, 매우 우수한 성능을 보임을, 그림 5를 통하여 알 수 있다. 이런 면에서, 성능평가실험은 매우 성공적이었다.
우리의 연구는 스마트-시티 미들웨어를 기반으로 하기 때문에, 많은 장점과 차이점을 가지고 있다. 즉, 우리의 방법론과 시스템에서는, 이질적인 사물인터넷 기기로 부터의 스트림 빅-데이터를 실시간으로 통합 처리할 수 있으며, 다양한 실시간 클라우드-컴퓨팅 기법을 어플리케이션의 특성에 따라 선택적으로 적용시킬 수 있다. 또한 우리의 연구결과는 데이터 전송의 신뢰성과 확장성을 보장하는면에서 타 연구결과보다 뛰어나다.
질의응답
핵심어
질문
논문에서 추출한 답변
스트림-리즈닝을 사용하기 위해 어떤 처리가 필요한가?
스마트-시티에서 스마트 서비스를 제공하기 위하여, 스마트-시티-사업단에서는 스트림-리즈닝을 사용하는 방법론을 사용한다. 이 스트림-리즈닝은 대용량 데이터의 실시간 처리를 필요로 한다. 따라서, 후속연구로서 스마트-시티미들웨어의 클라우드-컴퓨팅 플랫폼을 이용하여 스트림-리즈닝을 위한 실시간 분산병렬처리 클라우드-컴퓨팅 방법론과 시스템을 개발하였다.
Smart-City에서 스마트 서비스를 구현하기 위해서는 어떤 서비스 제공이 필요한가?
스마트-시티에서 스마트 서비스를 구현하기 위해서는 사물인터넷의 스마트 기기로부터 전송되는 엄청난 양의빅-데이터를 분석하여 정확한 상황인식을 통한 판단과정을 거쳐서, 도시민에게 지능적인 서비스를 제공하는 것이 필요하다. 이때, 끊임없이 발생하는 빅-데이터를 실시간으로 처리하여 상황인식을 하는데 스트림-리즈닝(Stream Reasoning) 기술이 매우 유용하다.
스마트-시티란?
스마트-시티(Smart-City)는 도시민의 삶의 질을 향상시키기 위해서 스마트 서비스들을 언제, 어디서나, 어느 때,어떠한 디바이스를 통해서도 도시민에게 제공하기 위해서 도시에 정보통신기술이 녹아져 있는 미래형 도시이다. [1] 사물인터넷기술은 실세계에 존재하는 사물 (Physical Things) 및 사이버 환경에 존재하는 사물 (Virtual Things)들이 인터넷을 통하여 서로 연결되고 이러한 물리공간과 가상공간의 사물, 데이터, 사람들이 연동을 통하여 다양한 서비스를 제공할 수 있는 미래 인터넷 인프라 기술이다.
참고문헌 (16)
Y. W. Lee, "Smart-city", European Union Parliament Seminar, May 2013, [Online], Retrieved June 2016 from http://www.europarl.europa.eu/document/activities/cont/201305/20130514ATT66084/20130514ATT66084EN.pdf.
E. D. Valle, S. Ceri, F. v. Harmelen, D. Fensel, "It's a Streaming World! Reasoning upon Rapidly Changing Information", IEEE Intelligent Systems, Vol. 24, pp. 83-89, 2009. http://dx.doi.org/10.1109/MIS.2009.125
Apache Storm, [Online], Retrieved Jun. 2016 from http://storm.apache.org/.
Apache S4, [Online], Retrieved June 2016 from http://incubator.apache.org/s4/.
Apache Samza, [Online], Retrieved Jun. 2016 from http://samza.incubator.apache.org/.
Apache Spark, [Online], Retrieved Jun. 2016 from http://spark.apache.org/.
J. Hoeksema, S. Kotoulas, "High-performance Distributed Stream Reasoning using S4", Proc. The First International Workshop on Ordering and Reasoning (OrdRing 2011), pp. 1-12, 2011. https://goo.gl/z9Mu35
X. Chen, H. Chen, N. Zhang, J. Huang, W. Zhang, "Large-Scale Real-Time Semantic Processing Framework for Internet of Things", International Journal of Distributed Sensor Networks, Vol. 11, No. 10, pp. 1-11, 2015. http://dx.doi.org/10.1155/2015/365372
A. I. Maarala, X. Su, J. Riekki, "Semantic Reasoning for Context-aware Internet of Things Applications", IEEE Internet of Things Journal, Vol. 3, No. 4, pp. 1-13, 2016. http://dx.doi.org/10.1109/JIOT.2016.2587060
H. S. Jung, C. S. Jeong, Y. W. Lee, P. D. Hong, "An Intelligent Ubiquitous Middleware for U-City: SmartUM", Journal of Information Science and Engineering, Vol. 25, pp. 375-388, 2009. http://dx.doi.org/10.1.1.423.772
OpenNebula Homepage, [online], Retrieved Jun. 2016 from http://opennebula.org/.
B. Sotomayor, R. S. Montero, I. M. Llorente, I. Foster, "Virtual Infrastructure Management in Private and Hybrid Clouds", IEEE Internet Computing, Vol. 13, Issue 5, pp. 14-22, 2009. http://dx.doi.org/10.1109/MIC.2009.119
J. Kreps, N. Narkhede, J. Rao, "Kafka: a Distributed Messaging System for Log Processing", Proc. NetDB workshop (NetDB 2011), 2011. http://dx.doi.org/10.1.1.233.1726
Apache Jena, [online], Retrieved Jun. 2016 from https://jena.apache.org/.
Evren Sirin, Bijan Parsia, Bernardo Cuenca Grau, Aditya Kalyanpur, Yarden Katz, "Pellet: A practical OWL-DL reasoner", Web Semantics: Science, Services and Agents on the World Wide Web, Vol. 5, Issue 2, pp. 51-53, 2007. http://dx.doi.org/10.1016/j.websem.2007.03.004
※ AI-Helper는 부적절한 답변을 할 수 있습니다.