2016년 10월 28일 금요일

IoT 사례 연구 - 빅데이터와 연계 - 2

사례 연구 

시스코(Cisco) - 포그 컴퓨팅(Fog Computing) 

IoT의 확산과 빅데이터의 양과 실시간 처리의 필요성이 증가하고 센서 디바이스의 한계로 인해 클라우드 컴퓨팅의 영역보다 더 확대된 역할이 필요하게 되었다. 클라우드 컴퓨팅을 실제 네트워크에 보다 근접한 경계 영역까지 확장하는 새로운 아키텍처가 제시되었는데 이 것이 포그 컴퓨팅이다(그림5). 


<그림5> 포그 컴퓨팅의 구성 
 
출처: Cisco 


포그 컴퓨팅은 센서나 디바이스에서 생성된 데이터를 실시간으로 처리할 수 있는 노드를 기지국처럼 두고 컴퓨팅 파워가 필요한 데이터만 클라우드로 넘겨서 처리하는 방식이다. 노드에는 컴퓨팅에 필요한 메모리나 저장 기능을 가지고 있어 즉각적인 데이터 분석이 가능하도록 되어 있다. 스마트폰과 같은 디바이스에서 생성된 데이터를 근거리 통신망을 이용해 포그 노드에 연결하여 분석하고, 그 이상의 컴퓨팅 파워가 필요한 작업은 클라우드로 보내 처리하게 한다. 이러한 방식은 간단한 데이터 분석은 포그 노드에서 해결하기 때문에 데이터 분석에 필요한 비용과 시간을 절약할 수 있고, 대부분 데이터 분석이 완료된 데이터가 네트워크를 통해 저장되기 때문에 빅데이터 저장공간도 줄일 수 있는 장점이 있다. 아키텍처를 보면 컴퓨터, 네트워크, 저장장치가 있고, 사용자 위치 파악해 주는 엔진과 그 위에서 애플리케이션이 구동된다. 이러한 아키텍처가 라우터나 셋톱박스, AP 등에 탑재될 수 있다. 즉, 전통적인 컴퓨팅 모델과 비교하면, 물리적인 디바이스와 인터넷 사이에 분산 플랫폼을 가지고 있는 것이다.


진보된 시스템 아키텍처의 동향 분석 - 2

FPGA (Field-programmable gate array) 

FPGA는 설계 가능 논리 소자와 프로그래밍가능 내부선이 포함된 반도체 소자이다. 설계 가능 논리 소자는 AND, OR, XOR, NOT, 더 복잡한 디코더나 계산기능의 조합 기능 같은 기본적인 논리 게이트의 기능을 복제하여 프로그래밍할 수 있다. 대부분의 FPGA는 프로그래밍가능 논리 요소 (FPGA 식으로는 논리 블록이라고도 함)에 간단한 플립플롭이나 더 완벽한 메모리 블록으로 된 메모리 요소를 포함하고 있다. 
FPGA는 일반적으로 주문형 반도체(ASIC) 대용품보다 느리고, 복잡한 설계에 적용할 수 없으며, 소비전력이 크다. 그러나 개발시간이 짧고, 오류를 현장에서 재수정 할 수 있고, 초기 개발비가 저렴하다는 장점이 있다. 제조사는 설계 이후에 수정할 수 없도록 할당된 덜 유연한 FPGA 버전으로 싸게 팔 수 있다. 이런 설계개발은 일반적인 FPGA에서 만들었고 좀 더 ASIC와 비슷한 고정된 버전으로 변경되었다. CPLD는 비슷한 역할을 할 수 있는 소자이다. 모든 FPGA 칩은 재구성 가능한 디지털 회로를 실행하기 위해 일정 갯수의 프로그래밍 가능한 커넥트를 가진 미리 정의된 리소스로 구성되어 있다. 


<그림5> FPGA 구성 요소 

 출처: http://www.ni.com/white-paper/  


FPGA 칩이 전 산업 분야에 걸쳐 채택되고 있는 이유는 FPGA가 ASIC 및 프로세서 기반 시스템의 우수한 부분을 통합하기 때문이다. FPGA의 장점은 다음과 같다. 


빅데이터 활성화를 위한 메타데이터 플랫폼 구축 - 2

Q: 새로운 용어가 나타났네요. 지능형 데이터는 무엇인가요? 
말 그대로 개념인데요. 다양한 종류의 정보를 보아서 새로운 정보를 제공하는 것을 말합니다(그림6). 정보가 넘쳐나는 지금 시대에는 매우 필요한 개념 중의 하나이지요. 그림6을 보시면, 속성, 질의, 문서 등이 모여 새로운 지식을 창출하는 것을 나타내고 있습니다. 컴퓨팅이나 네트워크를 통해 더 많은 지식을 찾으려는 최근에 주목 받는 이유입니다. 오늘 주제 관점에서 봤을 때, 여기서 중요한 포인트는 새로운 정보가 오감 중에서 눈으로 볼 수 있는 문장으로 나타나는 것이 좋다는 점입니다. 무슨 얘기냐 하면, 새로운 인사이트를 찾았을 때 보면서도 다시 생각하게 하는 것은 좋지 않습니다. 왜냐하면, 다시 생각하면서 만들어진 정보가 왜곡될 수도 있기 때문이죠. 즉, 동적 메타데이터를 통해 해석되는 것은 가급적 문장으로 명확히 제시되도록 준비하는 것이 좋다는 뜻입니다. 


<그림6> 지능형 데이터의 개념 

 출처: 서울대학교 


Q: 그렇다면, 동적 데이터를 매번 해석할 수도 없으니 이것을 체계적으로 동작할 수 있게 하는 프레임워크를 구성하는 것이 필요할 것 같은데요? 
네 맞습니다. 빅데이터를 위한 메타데이터 관리 프레임워크가 필요합니다. 빅데이터를 수집하면서 메타데이터로 활용이 가능한 것을 찾아내고 이를 활용할 수 있도록 준비하는 것이 좋습니다. 이러한 준비는 빅데이터의 특징을 고려해 정의하면 됩니다. 이러한 것의 예가 그림7에 나타나 있습니다.  


<그림7> 메타데이터 관리 프레임워크를 구성하는 방법 

 출처: 빅데이터 처리를 위한 메타데이터 표준화에 관한 연구  


그림7과 같이 프레임워크를 구성하기 위해서는 빅데이터 특성을 고려해야겠지만, 그림8과 같이 출처, 속성, 의미, 데이터 유형 등과 같은 요소들이 구체화 되도록 하는 것도 방법입니다.