[Apache Hadoop으로 구축하는 분산처리 빅데이터 플랫폼 CAMP | 강사인터뷰] 모든 첨단 기술의 중심에는 ‘빅데이터 플랫폼’이 있습니다. -장형석 강사님

 

[Apache Hadoop으로 구축하는 분산처리 빅데이터 플랫폼 CAMP | 강사인터뷰] 모든 첨단 기술의 중심에는 ‘빅데이터 플랫폼’이 있습니다. -장형석 강사님

 

hadoop_instr.001

 

안녕하세요 장형석 강사님, 인터뷰를 시작하기 앞서 간단한 자기소개 부탁드립니다.

반갑습니다. 현재 국민대학교 겸임교수와 숙명여대 빅데이터센터 연구소장을 맡고 있는 장형석이라고 합니다. 2012년에 국내 최초로 Hadoop 강의를 개설하였으며, 대학과 기업체에서 다수의 강의를 진행한 경험을 보유하고 있습니다. 빅데이터 컴퓨팅 기술하둡완벽 가이드, 실전 하둡 운용 가이드 빅데이터 관련 서적을 여러 저술하기도 하였습니다.

짧은 소개만으로도 강사님의 내공이 느껴집니다. 본격적인 질문에 앞서 ‘Hadoop’이 무엇인지에 대해 설명 부탁드립니다.


컴퓨터가 아무리 발전한다고 하더라도 컴퓨터 대의 성능은 한계가 있습니다. 예를 들면 CPU 클럭 속도만 보더라도 4GHz 내외가 최대입니다. 이상으로 클럭 속도를 높이면 CPU 타버리게 됩니다. 그래서 생각했던 것이 코어를 늘리는 방식입니다. CPU 안에 동시에 계산할 있는 코어를 여러 개로 늘리면 동시에 처리할 있는 성능이 증가하니까요. 하지만, 여기서 중요한 것은 아무리코어를 늘린다고 하더라도 단일 프로그램은 애석하게도 코어 하나만 사용할 있다는 것입니다. 더욱이, 머신 대가 가질 있는능력은 물리적인 한계가 있습니다. 이처럼 처리해야할 데이터는 급증하고 있는데 비해 컴퓨터의 발전 속도는 느린 편입니다. 이런 문제를 해결하는 것이 바로 클러스터(cluster)입니다. 수십, 수백, 수천 대의 컴퓨터를 네크워크로 연결한 것이 클러스터입니다. Hadoop 같은 클러스터를 활용하면 단일 머신의 물리적인 한계를 뛰어 넘을 있습니다. 클러스터를 구축하고 Hadoop 설치하면, 대용량 데이터를 분산 저장한 분산병렬처리가 가능하기 때문에 수백, 수천개의 CPU 코어에서 동시에 데이터를 빠르게 처리할 있습니다.

구체적인 설명 감사드립니다. 그렇다면 Hadoop을 사용하는 데 있어 어려운 점은 무엇이 있나요?


좋은 질문입니다. 클러스터를 구축하고 빠르게 대용량 데이터를 처리하는 가장 쉬운 방법은 바로 Hadoop이라고 있습니다. 특히 Hadoop 오픈소스이기 때문에 이를 다룰 있는 기술만 있으면 무료로 대용량 시스템을 운영할 있습니다. 하지만 생각해보면, 대의 컴퓨터 또는 서버를 다루는 것도 절대 쉬운 일이 아닙니다. 따라서 운영체제나 네트워크나 시스템에 대한 전문 지식 실무 경험이 없는 상황에서 여러 대의 컴퓨터를 연결한 클러스터를 다루는 것은 불가능에 가깝습니다. 또한 시스템 엔지니어도 본인이전문으로 하는 파트만 잘합니다. 예를 들어 서버 전문가는 서버를, 네트워크 전문가는 네트워크를 다루죠. 시스템 엔지니어링 분야도 매우 세분화되어 있습니다. 그리고 주로 사용하는 운영체제도 다릅니다. 때문에 Windows 서버를 주로 다뤘던 분들은 Hadoop돌아가는 Linux 적응하는 것이 어려울 수밖에 없습니다. Hadoop 제대로 운영하기 위해서는 H/W, N/W, S/W 세가지 분야의지식과 경험이 모두 필요합니다. 또한 Hadoop 아무래도 오픈소스이다 보니 쉽게 설치하고 사용할 있을 것이라고 막연히 생각하고 접근하는 사람들을 많이 보게 됩니다. 하지만, 현실은 그렇지 않습니다. Hadoop 설치하는 것조차 쉬운 일이 아닙니다. 제가아는 바로는 국내외에 Hadoop 설치와 관련된 3~400개의 블로그 게시물이 존재합니다. 제자들이 제대로 블로그가 없다고 해서, 대략 200개의 블로그를 골라 직접 검증해보았는데 모두 실패했습니다. 오픈소스의 단점을 절실히 드러내는 사례인 것이죠. 그리고 무엇보다 중요한 것은 설치에 앞서 내가 구축하려는 빅데이터 플랫폼의 목적과 용도가 무엇인지 먼저 결정하고 아키텍처를 설계해야 하는 것인데, 대부분 이러한 점을 간과하고 있습니다.

KakaoTalk_Photo_2017-04-22-14-26-07

왼쪽부터 [ Apache Hadoop으로 구축하는 분산처리 빅데이터 플랫폼 CAMP ] 담당 강호준 매니저, 장형석 강사님

 

아, 그렇군요! 이런 어려움을 겪는 분들이 많으실 것 같은데요. [ Apache Hadoop으로 구축하는 분산처리 빅데이터 플랫폼 CAMP ]를 통해 이러한 어려움을 해결할 수 있는 건가요?

강의 앞부분에서 빅데이터 플랫폼의 전체적인 구성과 아키텍처에 대해 자세히 설명할 것입니다. 플랫폼을 구성하는 인프라에대해 다룹니다. 서버의 사양은 어느 정도여야 하고, 운영체제는 무엇을 선택해야 하고 네트워크는 어떻게 구성하고 서버 설정은 어떻게 해야 하는지 다룹니다. 이렇게 전체적인 빅데이터 플랫폼과 인프라를 설명한 강의 중반에서는 빅데이터 플랫폼을 구성하는 핵심 소프트웨어를 배웁니다. Hadoop 크게 3개의 소프트웨어로 구성되어 있습니다. HDFS라는 분산 파일 시스템, 대용량 데이터를분산병렬처리하는 프레임워크인 MapReduce, YARN이라는 클러스트 자원 관리시스템을 하나씩 설명합니다. 또한 Hive, Spark Hadoop 에코시스템도 배웁니다. Hadoop 관련 소프트웨어에 대한 이론을 마치게 되면, 이제 Virtualbox 같은 가상화 애플리케이션을 이용하여 본격적인 실습을 진행하게 됩니다. 요즘 클라우드와 같은 가상화가 매우 중요한데요, 이러한 가상화 환경에서 머신을 3, 4 만들고 네트워크로 연결하면 실습에 필요한 클러스터가 구축되는 것입니다.


강의 후반에는 이러한 인프라 위에 Hadoop 직접 수동 설치하는 실습을 진행합니다. 실습을 통해 Hadoop 설치한 후에는 완성된 가상머신 이미지를 제공하여 언제든 원하는 환경을 쉽게 재현할 있도록 도와드릴 것입니다. 더불어, Hive Spark 설치하고 Hadoop 연계하는 방법을 실습하게 됩니다. 기존의 [ Apache Spark 이용한 빅데이터 분석 입문 CAMP ] 다른 점은 Spark활용해 데이터를 분석하는 방법이 아니라 Hadoop 연계하여 플랫폼을 직접 구축하는 방법을 배운다는 것입니다. 또한, Hadoop Spark에서 운영되는 Hive 대해서도 배웁니다. 업무를 하시게 되면 주로 Hive 쓰게 됩니다. 오라클이나 MSSQL SQL 문법이매우 비슷하기 때문에 빨리 배우고 쉽게 사용할 있습니다. 실제 Hive 개발한 Facebook 비롯하여 국내외의 많은 IT기업에서 Hive 사용하고 있습니다

정말 실무에 큰 도움이 되는 강의가 될 것 같습니다. 구체적으로 어떤 분들이 이 강의를 들으면 좋을까요?

가장 주된 수강 대상은 시스템 엔지니어입니다. 엔지니어라면 현재 본인이 맡고 있는 특정 분야를 뛰어넘을 필요가 있습니다. 단일 시스템에서 클러스터 시스템으로 단계 도약해야 합니다. 그리고 빅데이터 플랫폼은 기존의 시스템과는 다르다는 점을 이해할 필요가있습니다. 엔지니어는 선택의 문제에 접하게 됩니다. 어떤 데이터베이스를 선택할지, 어떤 운영체제를 선택할지, 어떤 서버를 선택할지를 결정해야 했죠. 하지만, 현재 빅데이터 분야의 소프트웨어들은 단일 소프트웨어가 아닙니다. 다양한 소프트웨어나 기술로이루어져 있습니다. 단일 목적에 맞는 하나의 도구만 존재하는 것이 아니죠. 그렇기 때문에, 사용 목적에 맞게 다양한 소프트웨어들을 마치 레고 블록처럼 조합하여 사용하는 것이고급 데이터 엔지니어 갖추어야 중요한 역량입니다. 대부분의 소프트웨어들이 오픈소스이기 때문에 각각의 특성을 파악하고 특성별로 통합/연계하여 자유자재로 활용할 알아야 하죠. 강의가 이러한역량을 길러 주는데 필요한 내용들을 담고 있습니다.

그렇다고 해서 강의가 시스템 엔지니어만 대상으로 하는 것은 아니라고 말씀드리고 싶습니다. 시스템 엔지니어를 포함해 개발자, 분석가 모두가 들으면 좋은 강의입니다. 개발자도 대용량 데이터를 처리하기 위한 시스템이 어떻게 구성되어 있는지 반드시 알아야하기 때문입니다. 동일하게, 분석가도 데이터 엔지니어와 원활한 커뮤니케이션을 알아야 합니다. 결국, 빅데이터 분야에 종사하거나, 관심이 있는 분이라면 누구든 들으면 좋은 강의입니다.

좋은 말씀 정말 감사드립니다. 인터뷰를 마치며 본 강의에 관심을 가지고 계신 분들에게 한 말씀 부탁드립니다.

사물인터넷(IoT), 클라우드, 빅데이터, 모바일 동시다발적으로 첨단 ICT 기술이 등장하고 발전하는 시대에 살고 있습니다. 저는 중에서 빅데이터 플랫폼이 가장 중심에 있다고 봅니다. 빅데이터 플랫폼이 있어야 IoT 센서로 수집한 데이터를 저장하고 처리하고 분석한 모바일 등의 사용자 인터페이스를 통해 서비스를 제공할 있기 때문입니다. 현존하는 기술의 중심이 되는 빅데이터 플랫폼을 공부하는 것이 어렵고, 또한 늦었다고 생각할 수도 있습니다. 하지만 결코 그렇지 않습니다. 도전하세요. 8주간 여러분의 길잡이가되어 드리겠습니다.

hadoop_inst2.001

자세한 강의 정보가 궁금하다면?
Apache Hadoop으로 구축하는 분산처리 빅데이터 플랫폼 CAMP ] 자세히 보기 >>

Recent Posts