작가의 말
대규모 기업 조직에서 생성되는 데이터의 양은 기하급수적으로 늘어나고 있으며, 이러한 방대한 양의 정보를 하둡 같은 저비용 플랫폼에 저장하는 것이 가능한 시대가 되었다. 최근 이 조직들은 이렇게 모은 데이터로 무엇을 할 것인지, 데이터로부터 어떻게 중요한 통찰을 얻을 것인지에 대한 문제에 직면해 있으며, 그 해결책으로 R이 주목받고 있다. R은 데이터로부터 고급 통계 모델링을 수행하고, 유도된 모델을 화려한 그래프나 시각화로 표현하며, 그 외에 데이터 과학에 연관된 다양한 기능들을 더욱 쉽게 수행하게 도와주는 매우 놀라운 도구다. 그렇지만 R의 중요한 단점 중 하나는 확장성이 부족하다는 점이다. R 코어 엔진은 매우 제한된 양의 데이터만 처리할 수 있으며, 이러한 점을 보완하기 위해 빅데이터를 처리하는 데 많이 사용하는 하둡을 R과 연동하는 것은 자연스러운 일이다. 이 책은 R과 하둡, 그리고 하둡 플랫폼을 사용해서 어떻게 R의 데이터 분석 작업을 확장성 있게 만들 수 있는지에 대한 복잡한 내용들을 다룬다. 또한, 데이터 과학자, 통계학자, 데이터 아키텍트, 엔지니어같이 문제를 해결하기 위해 R과 하둡으로 대량의 데이터를 처리, 분석하려는 다양한 독자들의 요구를 충족시켜줄 것이다. R을 하둡과 연동해 사용함으로써 분석할 데이터셋의 크기에 따라 확장이 가능한 탄력적인 데이터 분석 플랫폼이 제공된다. 이를 통해 경험 많은 프로그래머는 맵리듀스 모듈을 R로 작성할 수 있고, 하둡의 병렬 처리 맵리듀스 메커니즘을 사용하면 데이터셋에서 패턴을 알아내기 위해 해당 모듈을 실행할 수 있다. - 저자 비그니쉬 프라자파티
번역 작업을 마무리하고 이 글을 작성하기 위해 문서 편집기를 열고 있으니, 업무상 프로젝트를 위해 처음으로 R과 하둡의 연동 작업을 수행할 당시의 기억이 새록새록 떠오릅니다. 그 당시에는 이 책은 물론이고 변변한 R 책도 시중에 없었으며, 하둡도 빅데이터 처리 기술로써 사람들의 입에 막 오르내리기 시작하던 시절이었습니다. 그렇게 정보가 열악한 상황 속에서 웹사이트를 찾아가며 프로젝트를 수행하던 때를 돌이켜보니 그 시절에 이 책이 있었더라면 얼마나 좋았을까 하는 생각이 듭니다. 당시에는 분석 기능은 뛰어나지만 확장성에 한계가 있는 R과 빅데이터의 저장 및 처리 능력에 독보적인 위치를 차지하고 있던 하둡을 연동하는 기술이 빅데이터 분석 분야의 은탄환(silver bullet)이 되지 않을까 생각했던 적이 있습니다. 하지만 세상 모든 일이 그렇듯이 모든 문제를 한 번에 해결해주는 솔루션은 존재하기 힘듭니다. 실제 현업에서는 빅데이터에 대한 분석 및 학습을 위해 이 책에서 소개하는 내용뿐만 아니라 머하웃이나 스파크 MLlib(Spark MLlib) 같은 오픈소스 기술이나 벤더에서 제공하는 상용 제품들을 잘 조합해서 용도와 특성에 맞게 활용하는 지혜가 필요합니다. 이 책이 이런 지혜를 발휘하는 데 조금이나마 도움이 되었으면 좋겠습니다. - 역자 송주영
출판사 서평
★ 이 책에서 다루는 내용 ★
■ R과 하둡의 설치
■ 하둡 맵리듀스 애플리케이션 생성
■ RHIPE, RHadoop, 하둡 스트리밍을 이용한 R과 하둡의 연동
■ R과 하둡 기반으로 동작하는 맵리듀스 애플리케이션 개발과 실행
■ RHIPE와 RHadoop을 이용해 R 환경에서 HDFS 데이터 처리
■ R 환경에서 하둡 스트리밍 맵리듀스 실행
■ 다양한 데이터 소스로부터 R에 데이터 가져오기와 내보내기
■ 다양한 분석을 위한 데이터 수집
★ 이 책의 대상 독자 ★
하둡으로 빅데이터 분석을 수행하는 방법을 찾고 있는 R 개발자를 위한 책이다. 또한 R 패키지를 이용해 빅데이터상에서 지능적인 애플리케이션을 구축하려는 하둡 경험자에게도 유용할 것이다. 기본적인 R 지식을 갖고 있다면 이 책을 읽는 데 많은 도움이 된다.
★ 이 책의 구성 ★
1장, ‘R과 하둡 준비’에서는 간단한 개요와 함께 R과 하둡을 설치하는 과정을 알아본다.
2장, ‘하둡 맵리듀스 프로그램 작성’에서는 하둡 맵리듀스의 기초를 소개하고 하둡을 이용해 맵리듀스를 실행하는 방법을 설명한다.
3장, ‘R과 하둡 연동’에서는 RHadoop과 RHIPE를 위한 맵리듀스 프로그램 샘플을 배포하고 실행하는 것을 다양한 데이터 처리 과정을 통해 설명한다.
4장, ‘R로 하둡 스트리밍 사용’에서는 R로 하둡 스트리밍을 사용하는 방법을 알아본다.
5장, ‘R과 하둡으로 데이터 분석’에서는 실제 데이터 분석 문제의 시연을 통해 데이터 분석 프로젝트 라이프 싸이클을 살펴본다.
6장, ‘기계학습을 이용한 빅데이터 분석’에서는 RHadoop을 이용해 기계학습 기법을 적용하는 빅데이터 분석 수행을 다룬다.
7장, ‘다양한 DB에서 데이터 가져오기와 내보내기’에서는 데이터를 가져오고 내보내기 위해 R에서 대중적인 관계형 데이터베이스와 상호작용하는 방법을 설명한다.
부록, ‘참고자료’에서는 모든 장에서 다루는 내용의 추가적인 자료에 대한 링크를 제공한다.