메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

Big Data로 새 비즈니스 통찰력 유도하기

Stephen Watt, Software Architect, IBM
Stephen Watt is a software architect working on emerging technologies within the IBM Software Group Strategy organization at the lab in Austin, Texas. Prior to working for IBM, he spent several years consulting in the Middle East and working for startups in the United States and his native South Africa. He has published a number of technical books and articles available from Wrox Press and IBM developerWorks.

요약:  방대한 양의 데이터를 프로세스하는 신흥 성능이 기술과 비즈니스 지평의 변화를 야기하고 있습니다. 이 기사에서는 추진 요인, 새 지평 및 Apache Hadoop으로 분석에 사용 가능한 기회를 조사합니다.

원문 게재일:  2010 년 6 월 29 일 번역 게재일:   2010 년 9 월 27 일
난이도:  초급 영어로:  보기 PDF:  A4 and LetterGet Adobe® Reader®
페이지뷰:  5567 회
의견:  


시장 추진 요인

최근 몇 년간 웹과 엔터프라이즈는 데이터의 폭발을 지켜보았다. 이 현상에 기여한 원인은 저렴한 테라바이트급 스토리지 하드웨어의 상품화, 세월이 흐르면서 엄청난 양에 도달한 엔터프라이즈 데이터 및 정보의 간편한 공급과 교환을 허용하는 표준 등과 같이 다양하다.

엔터프라이즈 관점에서 이러한 모든 정보를 기존의 관계형 데이터베이스 및 심지어 데이터 창고에 저장하는 것이 급격히 어려워지고있다. 이러한 문제는 수 년간 존재했던 실행에 대한 어려운 질문을 던지고 있다. 예를 들어, 일 억 개의 행이 있는 표를 어떻게 쿼리하는가? 쿼리를 데이터 센터에 모든 서버의 모든 로그 전반에 걸쳐 어떻게 실행할 수 있는가? 더 심각한 문제는 프로세스되어야 하는 많은 양의 정보가 비구조화되거나 반구조화된 텍스트이어서 쿼리하기가 어렵다는 것이다.

데이터가 이러한 양으로 존재할 때 처리 한계점 중 하나는 데이터를 이동하는 데 막대한 양의 시간이 걸린다는 점이다. Apache Hadoop은 반대의 방식이 아니라 데이터로 작업을 이동하는 고유의 접근방식으로 이러한 우려를 해결하기 위해 새롭게 부상하였다. Hadoop은 두 개의 개별적이지만 통합된 런타임으로 구성된 클러스터 기술이다. HDFS(Hadoop Distributed File System)는 데이터의 이중 스토리지를 제공하고, 맵/리듀스(map/reduce)로 사용자 제출된 작업이 병렬적으로 실행될 수 있도록 HDFS에 저장된 데이터를 처리한다. 비록 Hadoop이 모든 시나리오에 맞지는 않다고 하더라도 이는 명백한 성능 이점을 제공한다. 커뮤니티에서 Hadoop의 사용에 관해 알아낸 것은 데이터를 규모 면에서 처리할 수 있을 뿐만 아니라 모든 종류의 흥미로운 분석의 잠재성에 대한 문을 열어 놓았다는 점이다.

Hadoop을 사용하면 더 크고 더 풍성한 데이터세트를 포함시키기 위해 상품 하드웨어에서 실행하는 클러스터의 규모를 선형으로 조정할 수 있다. 이러한 데이터세트는 새로운 Perspective를 제공하여, 먼저 이전에 통합시킬 수 없었던 데이터의 이기종 소스에 걸쳐 분석을 실행한 다음에 규모 면에서 동일한 데이터에 걸쳐 분석을 실행한다. 그 결과, InfoChimps의 공동 설립자인 Flip Kromer가 설명한 대로 어느 정도의 패러다임 전환이 나타난다. "웹은 모든 것에 대한 일부분을 찾을 수 있는 장소에서 일부분에 대한 모든 것을 찾을 수 있는 장소로 진화하고 있습니다." Kromer는 다음과 같은 시나리오를 제기하면서 계속 이어간다. 즉, 시간이 흐르면서 야구 팬은 지난 100년간의 모든 야구 경기에 대한 자세한 결과(선수 세부 사항, 점수, 야구장의 위치)를 얻었다. 동일한 기간 동안 모든 기상 관측소에 공유된 위치 값을 데이터세트에 연결하려는 경우, 38세의 투수가 Wrigley Field에서 기온이 95도 이상일 때에 어떠한 성적을 냈는지 통계적으로 예측할 수 있다.


Big Data 에코시스템

Big Data 공간이 여전히 상대적으로 새롭고 이러한 기회를 활용하는 데 기술적인 장애물이 있음을 지적하는 것은 중요하다. 이미 언급한 대로 데이터는 Hadoop에서 "작업(job)"의 형태로 처리되는데, 이는 Java™ 프로그래밍 언어로 맵/리듀스로 알려진 패러다임을 사용하여 쓰여진다. 다른 언어의 사용을 허용하는 Hadoop에 기여하는 원인이 있긴 하지만, 비즈니스 문제를 분석하고 이를 맵/리듀스 작업으로 실행하는 솔루션으로 분해하는 방법을 정확하게 이해하기 위해 여전히 중요한 프로세스이다.

Hadoop과 관련된 기회를 온전히 활용하기 위해 Hadoop을 개발자의 범위로부터 이동하여 더 폭넓은 수용자에게 더 접근이 가능하도록 기술의 광범위한 사용이 필요하다.


그림 1. Big Data 에코시스템의 개요
도표에서 Hadoop 애플리케이션 계층의 그래픽의 표현을 보여준다

에코시스템은 Hadoop과 관련하여 훨씬 필요한 도구와 지원을 제공하도록 부각되었다. 각 컴포넌트는 다른 요소와 작업하여 아래 표시된 대로 대부분의 사용자 시나리오를 달성하기 위해 접근방식의 띠를 제공한다.

로드 도구

데이터를 분석하기 위해 Hadoop을 사용하려면 데이터를 HDFS에 넣어야 한다. 이를 위해 로드 도구가 필요하다. Hadoop은 자체적으로 파일 시스템으로부터 HDFS로 및 그 반대로 파일을 복사하는 기능을 제공한다. 더 복잡한 시나리오의 경우 SQL에서 HDFS까지 데이터베이스 가져오기 도구인 Sqoop과 같은 것을 활용할 수 있다(참고자료 참조). 로드 도구의 다른 형태는 웹 크롤러가 될 것이다. 예를 들어, Apache Nutch는 특정 웹 사이트를 크롤링하고 HDFS에 웹 페이지를 저장하기 때문에 수행하려고 하는 어느 분석에나 웹 내용을 사용할 수 있다.

실시간 데이터는 장보의 다른 잠재적인 소스이다. Twitter4J와 같은 기술을 Twitter Streaming API에 연결하고 JSON 형식에서 HDFS로 직접 트위트를 지속하기 위해 사용할 수 있다.

일반적인 Big Data 분석 유스 케이스는 대개 다양한 데이터세트를 함께 쿼리하는 것과 연관된다. 데이터세트는 때로는 다른 소스에서부터 나오는데, 대개 엔터프라이즈 내에서 이미 사용 가능한 데이터(내부)와 웹으로부터 얻은 데이터(외부)의 혼합이다. 내부 정보의 예제는 데이터 센터로부터의 로그 파일이고, 외부 정보는 몇 가지의 크롤링된 웹 사이트나 데이터 카탈로그로부터 다운로드된 데이터세트일 것이다.

데이터 카탈로그

데이터 카탈로그는 사용자가 데이터세트를 검색하는 데 훨씬 더 필요한 기능을 이행한다. 이를 찾으려고 해 봐야 비로소 대형 데이터 세트를 찾는 것이 얼마나 어려운지 실감할 것이다. 특히 실행하려고 시도하는 특정 분석 시나리오에 맞는 것은 더하다. 대개 사용자는 웹을 크롤링하거나 고유한 소셜 미디어 사이트를 빌드하기 위해 이를 캐내도록 강요된다. 흥미로운 주제에 관해 기존의 구조화된 데이터세트를 간단하게 찾아서 다운로드할 수 있다면 엄청난 시간을 절약하는 것이다. InfoChimps와 같은 회사는 범주 또는 검색으로 특정 데이터세트를 찾을 수 있는 통합된 카탈로그를 제공한다. 데이터 카탈로그의 다른 예로는 Amazon Public Data Sets가 있다.

분석 도구

HDFS에서 저장된 데이터를 거쳐 분석을 실행하기 위해 Hadoop을 그 자체로 사용하려면 일반적으로는 Hadoop 맵/리듀스 API를 사용하여 Java 언어에서 작업을 쓰기 위해 개발자의 기술이 필요할 것이다. API로 직접 작업하는 작업자의 경우 Hadoop 특정 IDE로부터 생산성 게인을 활용하기 위해 KarmaSphere Studio in Eclipse(참고자료 참조)와 같은 도구를 활용할 수 있다. Hadoop Streaming과 Hadoop Pipes로 다른 언어를 사용하기 위한 대안이 있지만 이는 여전히 개발자의 기술이 필요하다. 이로 인해 맵/리듀스 작업을 정의하고 실행하는 데 덜 복잡한 접근방식을 작성하기 위한 기회가 만들어졌다.

쉘 스크립팅과 UNIX® Pipes에 익숙한 경우에는 Ruby와 쉘 스크립트를 사용하여 작업을 구축 및 실행할 수 있는 WuKong(참고자료 참조)을 참조하도록 고려할 것이다. 사용자가 고차(higher-order) 언어를 통해 주어진 작업에 대한 분석을 구축하고 실행하는 방법을 표현할 수 있는 SQL과 같은 쿼리 인터페이스를 제공하여, Apache Pig 및 Hive(참고자료 참조)는 데이터 분석가의 관심을 끌 만한 두 가지의 기술이다. 다른 접근방식은 더 집중적으로 비즈니스 분석가를 목표로 하는 IBM® BigSheets (참고자료 참조)이다. 이는 분석 작업을 정의하고 실행하며 시각화하기 위한 스프레드시트와 유사한 브라우저 기반 시각적 메타포를 제공한다.

모든 접근방식은 대개 종종 사용자 정의 함수 또는 매크로라고 하는 확장을 활용한다. 이는 입력 데이터를 뽑아 구조 측정을 이에 삽입하여(시맨틱적으로나 외적으로) 기존 분석적 메소드와 유사한 방식으로 정보를 해결하고 쿼리할 수 있다. 분석 도구는 내보내기 도구와 매우 밀접하여, 내보내기 도구가 분석을 실행하면 실제로 데이터로 유용한 작업을 할 수 있게 하는 면에서 본질적이다.

내보내기 도구

Big Data 질문(독자의 분석)을 제기할 때에 Big Data 응답(그 결과로 생긴 데이터세트)을 얻으려는 경향이 있다. 때로는 응답이 너무 커서 인간이 읽을 수 없거나 복합적일 수 있다. 이러한 경우에 시각화된 결과가 제공되면 하나의 해결책이 될 것이다. 예를 들어, 태그 클라우드는 인간이 즉시 데이터에서 특정 값의 영역을 인식할 수 있는 대규모의 결과 세트를 필터링할 수 있다. 다른 접근방식은 데이터세트를 JSON, CSV, TSV 또는 ATOM과 같은 특정 형식으로 내보내는 것이기 때문에, 이는 애플리케이션의 사용으로 소모될 수 있다. 흥미로운 시각화는 꽤 일반적이지만 대체적으로 Hadoop 관련 기존 도구로 연결될 수 없다. 이는 다음 달 이후에나 어느 정도의 혁신을 보게 될 가능성이 높은 새롭게 부각되는 공간이다.

Apache Hadoop

Apache Hadoop은 에코시스템의 핵심이다. 이는 모든 데이터가 존재하는 곳이다. 이 에코 시스템의 고유한 제한조건은 Big Data가 안정을 취하려는 경향이 있다는 사실이다. 이는 관련된 다량의 데이터를 이동하는 계산 노력에 심각한 지연을 추가할 수 있기 때문에 맵/리듀스가 작업을 데이터로 이동하는 면에서 매우 효과적이다. 수평적이고 선형적으로 규모를 조정하는 기능으로 인해 Hadoop은 클라우드에서도 실행 가능한 옵션이다. Hadoop 클러스터를 공급하고 데이터를 복사하며 작업을 실행하고 결과물을 검색하며 한 번 작업이 완료되면 클러스터를 해체할 수 있기 때문이다. 이는 작업을 간헐적으로 실행하는 하드웨어를 구입하고 유지보수하는 것과 관련하여 막대한 비용이 절약된다.


IBM 및 Apache Hadoop

IBM은 Apache Hadoop의 전망에 대해 기대하고 있으며, 이에 매우 가치있는 것을 제공할 수 있을 것이라는 통찰력을 발견한다. IBM은 Hadoop에 관한 작업을 하고 있으며, 커뮤니티의 관심을 끌 만한 Apache Hadoop 이외에도 추가 기능을 제공하는 두 가지 기술 미리보기가 있다.

Apache hadoop의 IBM 분배

Apache hadoop의 IBM 분배(참고자료 참조)는 IBM Java 기술을 번들하고 IBM Java 및 IBM 플랫폼에 대해 테스트되었다. 웹 기반 설치 마법사가 포함되어 Hadoop 클러스터를 쉽게 설치하고 구성할 수 있다. 이는 Hadoop을 설치하고 실행하는 과정에서의 많은 작업과 복잡성을 없애준다. 특히 솔루션을 빌드하고 Hadoop 외의 도구뿐만 아니라 Hadoop 및 맵/리듀스와 HDFS API로 직접 작업하는 경우에 흥미를 끌 것이다.

BigSheets

프로그래머가 아닌 분석에 관심이 있는 경우 InfoSphere BigInsights는 BigSheets라는 기술 미리보기가 들어있는 새 IBM 제품 포트폴리오이다 (참고자료 참조). BigSheets는 규모 면에서 데이터를 모으고 분석하며 탐색하기 위해 강력한 시각적 인터페이스를 제공한다. BigSheets는 쉽게 구성 가능한 로드, 분석 및 Apache Hadoop외의 내보내기 도구를 제공한다는 점에서 상당히 모두를 아우르는 도구이다.


결론

데이터의 현재 폭주 현상을 알아보고, 오픈 소스 커뮤니티가 이러한 문제를 Apache Hadoop 프로젝트로 어떻게 해결하는지 살펴보았다. 또한 Big Data와 Apache Hadoop과 관련하여 발생하는 에코 시스템 내의 독점적인 도구 및 일부 오픈 소스로 새로운 통찰력을 유도하기 위한 흥미로운 기회를 조사해보았다.

Hadoop에 대해 더 자세히 이해하려는 경우에는 반드시 "Distributed computing with Linux and Hadoop"(참고자료 참조)을 확인하고 Apache Hadoop 프로젝트 Wiki에서 자세히 설명하는 WordCount 예제(맵/리듀스에 대해 Hello World에 상응하는 것)를 시도해 보아라.

분석에 대한 더 간단한 지름길을 얻고자 하는 경우에는 Apache Pig(참고자료 참조)를 시도하여 프로젝트 wiki에서 튜토리얼을 통해 실행해 보아라.


참고자료

교육

제품 및 기술 얻기

토론

필자소개

Stephen Watt is a software architect working on emerging technologies within the IBM Software Group Strategy organization at the lab in Austin, Texas. Prior to working for IBM, he spent several years consulting in the Middle East and working for startups in the United States and his native South Africa. He has published a number of technical books and articles available from Wrox Press and IBM developerWorks.

잘못된 도움말 신고

부정사용 신고

감사합니다. 이 항목은 운영자가 관심을 표시했습니다.


잘못된 도움말 신고

부정사용 신고

제출실패 신고. 나중에 다시 실행해주세요.


디벨로퍼웍스 로그인


IBM ID가 필요하세요?
IBM ID를 잊으셨습니까?


비밀번호를 잊으셨습니까?
비밀번호 변경

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

화면상에 보여지는 닉네임을 정하세요.

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

3개의 &이나 대쉬를 포함해주시고 31글자내로 제한해주세요.


developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


아티클 순위

의견

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=오픈 소스
ArticleID=548086
ArticleTitle=Big Data로 새 비즈니스 통찰력 유도하기
publish-date=06292010
author1-email=swatt@us.ibm.com
author1-email-cc=

태그

Help
검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오.

태그를 더 많이 보거나 적게 보기 위해 슬라이더 막대를 사용하십시오.

인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다.

내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.

검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오. 인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다. 내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.