바야흐로 모든 사물들을 네트워크로 연결하는 만물인터넷(Internet of Everything) 시대가 도래하고 있습니다. 만물인터넷을 구현하기 위한 핵심 기술요소는 사물 간의 연결을 위한 네트워크와 그 네트워크를 통하여 전달되는 데이터를 처리하고 저장하는 소프트웨어 플랫폼입니다.
전통적인 Online Transaction Processing(이하 OLTP) 업무를 위한 시스템이나 기존의 범용 인터넷을 위한 솔루션으로는 만물인터넷 환경의 요건을 충족하기 어려운 것이 현실이죠. 이에 시스코에서 만물인터넷 전략의 일환으로 만물인터넷용 DBMS 기업인 ParStream(파스트림)을 인수했습니다.
이번 칼럼에서는 기업에서 만물인터넷을 구현할 때 기술적으로 고려해야할 사항들을 살펴보고, ParStream 솔루션의 특징을 소개하겠습니다.
만물인터넷 시대, 기업 데이터를 위해 고려해야 할 사항
기업에서 만물인터넷 구현 시 고려할 사항은 ▲대규모의 데이터 수용 ▲신속한 데이터 적재 ▲실시간 분석 성능 ▲표준 기반 인터페이스 등으로 요약할 수 있습니다.
첫번째, 대규모의 데이터 수용은 빅데이터라는 화두로 이미 공감을 얻고 있는 고려사항입니다.만물인터넷의 경우 전형적인 빅데이터의 사례로 대상 데이터 건수가 수백억 건을 상회하며 용량도 최소 3~4TB 이상이 됩니다. 이러한 대량의 데이터는 범용적인 RDBMS로 처리가 거의 불가능하며, 이를 위하여 전통적으로 Datawarehouse(이하 DW) 전용 DBMS들을 사용했습니다.
그러나 DW전용 DBMS들은 비용적인 장벽이 높아 범용적으로 사용되기에는 어려움이 있었습니다. 그런데 최근 오픈소스 기반 하둡의 출현으로 본격적인 빅데이터 시대가 열리게 되었다고 할 수 있습니다. 데이터의 분산 저장 및 분산 처리 구조가 특징인 하둡은 수평적 확장으로 용량의 확대가 가능한 Scale-out 아키텍처를 지원합니다. 만물인터넷 환경 구현 시 대규모 데이터 수용을 위한 유연한 Scale-out 아키텍처 지원여부는 반드시 확인이 필요한 요건입니다.
두번째, 신속한 데이터 적재를 통해 데이터를 최대한 빠르고 분석 가능하게 지원해야 합니다. 만물인터넷 환경에서는 대량의 데이터가 발생합니다. 가스 터빈(gas turbine)의 효율 개선을 위하여 만물인터넷을 구현한 사례를 살펴보면, 1대의 가스터빈은 5,000개 이상의 데이터 발생 포인트가 있으며, 각 가스 터빈에서는 매 시간 당1,800,000,000건의 데이터가 생성됩니다.
기존 DBMS의 경우 대량의 데이터를 DBMS에 적재하려면 많은 시간이 소요되며, 데이터 적재 작업이 완전히 종료된 이후에나 해당 데이터에 대한 분석을 시작할 수 있습니다. 그러나 실시간성이 중요한 만물인터넷 서비스에서는 생성된 데이터를 최대한 빠른 시간에 사용 가능 하도록 해야합니다. 이를 위해서는 대량의 데이터 적재작업이 데이터 분석작업과 병행되어야 하며, 또한 적재된 데이터는 즉시 분석할 수 있는 아키텍처를 제공해야만 합니다.
세번째로 만물인터넷 DBMS에 입력된 데이터를 분석하고 활용할 때 실시간적인 분석처리 성능은 매우 중요한 요건 중 하나입니다.분석 이후의 활용을 감안하면, 분석처리 소요시간을 최소화하는 것이 만물인터넷 시스템의 활용도를 높이고 투자대비 효과를 극대화할 수 있는 핵심 포인트이기 때문이죠.
마지막으로 만물인터넷 시스템 구축 시 표준기반의 인터페이스에 대한 고려가 필수적입니다. 특히 만물인터넷 DBMS가 지원하는 사용자 측면 또는 분석엔진 연동 측면의 인터페이스에 대해 생각해 봐야 합니다.
다양한 솔루션들이 SQL, 유사 SQL, REST API 등의 방식을 지원합니다. 표준 SQL을 지원하는 만물인터넷 DBMS를 도입하는 경우, 기존의 검증된 상용 분석엔진을 포함하여 분석엔진에 대한 선택의 폭이 넓습니다. 분석엔진 뿐만 아니라 ETL(Extract, Transformation, Loading) 솔루션 연동, 타 DBMS 연동, 자체 어플리케이션 개발 등도 용이하게 수행할 수 있습니다. 또한 구축을 위한 핵심 엔지니어나 전문가로 팀을 구성하는 것이 용이하며, 신규 기술 수용에 따른 필요 시간 및 위험을 최소화할 수 있습니다.
최근에 시스코가 인수한 만물인터넷 DBMS기업인 ParStream은 Massively Parallel Processing(이하 MPP) 아키텍처로 성능의 저하 없이 시스템 규모의 확장이 가능한 Scale-out 방식의 구성을 지원합니다. 데이터 처리 시 발생하는 데이터 잠김(Locking)을 최소화 하는 아키텍처로 설계되어 수집된 데이터를 적재하면서 분석이 가능하며, 적재 작업을 진행하면서 앞서 적재 완료된 데이터에 대한 분석도 가능합니다. 표준 SQL을 지원하여 JDBC(Java Database Connectivity), ODBC(Open Database Connectivity) 을 통해, 기존의 다양한 상용 분석 솔루션 및 오픈 분석툴인R Studio와 연동이 가능합니다. 만물인터넷을 위한 주요 요건들을 알차게 채우고 있는 솔루션이라고 볼 수 있지요.
주요 특징들을 몇 가지 살펴볼까요?
ParStream은 자체 기술로 특허를 받은 High Performance Compressed Index(이하 HPCI) 방식으로 뛰어난 SQL 실행 성능을 보장합니다. HPCI는 데이터베이스 쿼리 실행 시 압축된 인덱스 데이터의 압축을 풀지 않고 처리를 하는 특허 기술로, 압축 해제후 처리하는 방식 대비 디스크 I/O 성능을 획기적으로 향상하고 압축해제로 인한 CPU 사용이 없습니다. 이러한 획기적인 HPCI 기술로 인하여 ParStream은 타 솔루션 대비 10~100배 빠른 SQL 실행 성능을 나타냅니다.
ParStream HPCI 비교 (vs 일반적 인덱스 처리)
ParStream 엣지분석
그 다음 눈여겨볼만한 특징은 만물인터넷 환경에 특화된 엣지분석(Edge Analytics)을 지원합니다. 엣지분석은 데이터가 생성되는 엣지 단에서 데이터를 처리하여, 중앙에서 데이터 처리 부담을 분산하는 아키텍처입니다. 데이터량에 따라 네트워크 비용이 발생하며 데이터 송수신에 따른 수집 및 처리 시간의 지연이 발생합니다. 엣지분석 아키텍처에서는 엣지에서 생성된 데이터를 중앙으로 전송하지 않고, 엣지 단에서 가까운 데이터 노드에서 수집 및 처리합니다. 데이터에 대한 처리요청이 발생하면 분산된 데이터 처리노드에서 개별적으로 처리하여 처리결과만 네트워크를 경유하여 전송합니다.ParStream의 엣지분석 기능은 네트워크 비용 절감 뿐만 아니라 더 신속한 처리성능을 보장하는 만물인터넷에 특화된 기능입니다.
지금까지는 기업의 만물인터넷 구현을 위해, 기반이 되는 DBMS 부분은 하둡, Spark, Hive, NoSQL 등의 다양한 오픈소스 솔루션을 결합하여 사용했습니다. 오픈소스라 쉽고 낮은 비용으로 사용할 수 있는 큰 장점이 있었던 반면, 아키텍처 설계, 기능/성능 검증, 기술인력 준비 등에 어려움 및 시행착오를 겪는 경우도 많았는데요.
시스코와 함께라면 만물인터넷 DBMS에 대한 고민은 ParStream 하나로 모두 해결하실 수 있습니다. 만물인터넷를 선도하는 기업, 시스코에서 출시한 ParStream의 세계로 여러분을 초대합니다.
시스코_만물인터넷 DBMS의 종결자 ParStream_최성남_손광락 시스코 코리아 서비스 솔루션 매니저_2015 1
| Cisco IT Connect 시스코 전문가들의 칼럼에 담긴 최신 IT 트렌드! 이 글은 시스코 최성남, 손광락 서비스 솔루션 매니저가 작성한 칼럼입니다. |