Skip to main content
QUICK REVIEW

[논문 리뷰] Integrating R and Hadoop for Big Data Analysis

Bogdan Oancea, Raluca Mariana Drăgoescu|arXiv (Cornell University)|2014. 07. 18.
Data Mining Algorithms and Applications참고 문헌 2인용 수 14
한 줄 요약

이 논문은 R의 통계 및 시각화 기능을 Hadoop의 확장 가능한 대용량 데이터 처리 기능과 통합하기 위한 세 가지 통합 방법—R with Streaming, RHipe, RHadoop—을 제안하고 평가한다. 연구 결과, RHadoop가 가장 원활한 통합을 제공하며, Hadoop 클러스터에서 효율적인 분산 컴퓨팅을 가능하게 하면서도 R의 분석적 강점을 그대로 유지함을 입증한다.

ABSTRACT

Analyzing and working with big data could be very diffi cult using classical means like relational database management systems or desktop software packages for statistics and visualization. Instead, big data requires large clusters with hundreds or even thousands of computing nodes. Offi cial statistics is increasingly considering big data for deriving new statistics because big data sources could produce more relevant and timely statistics than traditional sources. One of the software tools successfully and wide spread used for storage and processing of big data sets on clusters of commodity hardware is Hadoop. Hadoop framework contains libraries, a distributed fi le-system (HDFS), a resource-management platform and implements a version of the MapReduce programming model for large scale data processing. In this paper we investigate the possibilities of integrating Hadoop with R which is a popular software used for statistical computing and data visualization. We present three ways of integrating them: R with Streaming, Rhipe and RHadoop and we emphasize the advantages and disadvantages of each solution.

연구 동기 및 목표

  • 기존 통계 소프트웨어와 관계형 데이터베이스의 능력을 초월하는 대규모 데이터셋을 분석하는 데 도전하는 것.
  • R을 통계 분석 분야의 선도적 도구로 활용하고 Hadoop의 분산 처리 프레임워크와 통합함으로써 확장 가능한 통계 컴퓨팅을 가능하게 하는 것.
  • R의 분석적 강력함과 Hadoop의 분산 스토리지 및 계산 기능을 조합하기 위한 가장 효과적인 방법을 특정하기 위해 다양한 통합 접근 방식을 평가하는 것.
  • 성능, 사용성, 기능성을 바탕으로 데이터 과학자와 연구자가 최적의 R-Hadoop 통합 기법을 선택할 수 있도록 안내하는 것.

제안 방법

  • 일반적인 하드웨어 클러스터에 걸쳐 데이터 처리 작업을 분산하기 위해 Hadoop의 MapReduce 프로그래밍 모델을 활용한다.
  • R with Streaming을 구현하기 위해 R 스크립트를 Hadoop 작업의 맵퍼 및 리듀서 함수로 간주하고 표준 입력/출력 스트림을 통한 데이터 흐름을 허용한다.
  • RHipe(R Hadoop Integrated Programming Environment)를 활용해 R 코드를 Hadoop 노드에서 직접 실행함으로써 JVM 내부에서 실행되도록 하여 스트리밍 대비 성능 향상을 이룬다.
  • RHadoop를 사용해 HDFS 및 Hadoop의 YARN 리소스 관리자와 직접 인터페이스를 구축함으로써 R의 네이티브 함수가 대용량 데이터를 처리할 수 있도록 한다.
  • 개발 복잡성, 실행 속도, 복잡한 통계 연산 지원 능력 측면에서 세 방법을 벤치마크하고 비교한다.
  • 대규모 데이터셋에서 분석 정밀도를 유지하기 위해 분산 환경 내에서 R의 풍부한 통계 및 시각화 라이브러리를 활용한다.

실험 결과

연구 질문

  • RQ1대용량 데이터에서 확장 가능한 통계 분석을 위해 R을 Hadoop과 효과적으로 통합하는 방법은 무엇인가?
  • RQ2분산 데이터 처리에서 R with Streaming, RHipe, RHadoop 간의 성능 상충 관계는 어떠한가?
  • RQ3Hadoop 클러스터에서 효율적으로 실행되면서도 R의 분석 능력을 가장 잘 유지하는 통합 방법은 무엇인가?
  • RQ4세 통합 접근 방식 간의 개발 복잡성과 구현 용이성은 어떻게 다름?
  • RQ5R의 통계 및 시각화 기능이 분산된 Hadoop 환경에서 얼마나 효율적으로 실행될 수 있는가?

주요 결과

  • RHadoop는 코드 수정 최소화로 Hadoop 클러스터에서 R 함수를 직접 사용할 수 있도록 가장 원활하고 효율적인 통합을 제공한다.
  • R with Streaming은 단순하고 이식성이 높은 접근 방식이지만, 프로세스 생성과 I/O 직렬화로 인해 성능 오버헤드가 발생한다.
  • RHipe는 R 코드를 Hadoop JVM 내부에서 실행함으로써 스트리밍 대비 I/O 지연을 줄이고 메모리 관리 효율성을 향상시켜 성능을 향상시킨다.
  • RHadoop는 HDFS 및 YARN과의 완전한 통합을 지원하여 R에서 네이티브로 데이터에 접근하고 작업을 제출할 수 있도록 하여 사용성과 확장성을 향상시킨다.
  • 통합 방법의 선택은 개발 시간, 실행 효율성, 복잡한 통계 워크로드 지원 능력에 크게 영향을 미친다.
  • 세 방법 모두 대용량 데이터에서의 통계 분석을 가능하게 하지만, RHadoop는 기능성과 견고성 면에서 생산 규모의 분석에 가장 적합한 것으로 나타났다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.