• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치
 

RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치

on

  • 2,733 views

RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치 (한글판)

RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치 (한글판)

Statistics

Views

Total Views
2,733
Views on SlideShare
2,733
Embed Views
0

Actions

Likes
0
Downloads
94
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치 RHive tutorial supplement 3: RHive 튜토리얼 부록 3 - RStudio 설치 Document Transcript

    • RHive 튜토리얼 부록 3 - RStudio 설치RHive 를 위한 RStudio 설치이 튜토리얼에서는 RHive 를 보다 편리하게 사용하기 위해 RStudio 를 셋업하는 방법에대해서 설명한다.RStudio 의 셋업방법은 http://rstudio.org/ 에서 자세한 문서를 찾을 수 있다.여기서는 RHive 사용자를 위해서 RStudio 를 설치하고 사용하는 방법에 대해서소개한다.RHive 는 대용량데이터 처리를 위해서 Hadoop 과 Hive 를 이용하는 R 의 패키지 중하나이다. RHive 를 사용해서 작성한 R 코드들은 실행시키고 난 후에 짧은 시간에결과를 보여주고 실행을 종료할 수 있는 것들도 있겠지만 매우 큰 데이터를 처리하는코드는 결과를 만들고 실행코드가 종료되기까지 매우 오랜 시간이 걸릴 수 있다.상황에 따라 다르지만 데이터의 크기와 처리하는 연산의 복잡도에 따라 최소수십분에서 최대 몇주가 걸릴 수도 있다.이 경우의 문제는 사용자가 실행한 task 가 완전히 완료되기까지 R 의 세션을 계속유지해야 해야만 한다는 것이다.사용자가 랩탑을 이용해서 코드를 실행했다면 코드가 종료될 때까지 랩탑에 세션을유지하고 랩탑을 계속 켜두어야 한다.데스크탑을 사용하고 있다고 해도 작업이 끝날 때까지 데스트탑이 리부팅되거나 하는등의 일은 세션을 유지하는 동안 하기 어렵다.이 외에도 세션을 유지해야만 하는데 따른 많은 불편함이 있다.이 것은 원래 RHive 와 상관없이 Hadoop 이나 Hive 만을 이용할 때도 발생하는문제이며 RHive 도 다르지 않다.이러 문제를 해결하기 위해서 Hadoop client(Hadoop gateway)를 만들어 두고터미널로 접속을 하여 코드를 백그라운드로 실행하는 방법을 쓸 수도 있다.하지만 이것은 R 사용자를 위해서는 그리 편한 방법이 아니며 R 이 가지고 있는작업환경이나 자신이 사용하는 IDE 환경의 편리함을 이용하기 어렵다.또 사용자가 터미널을 사용하는데 익숙하지 않다면 그것을 배워야 하는 불편함이발생한다.RStudio 는 이것을 해결해주는 가장 좋은 솔루션이다.RStudio 는 desktop 과 server 버전을 제공하는데 desktop 버전은 그 자체로 R 의IDE 로써 매우 좋다.
    • 그리고 RStudio server 는 서버에 설치하여 웹 브라우저로 접속하여 서버의 자원을여러사람이 공유하여 사용할 수 있으며 사용자가 사용하던 세션을 그대로 유지할 수있다는 장점이 있다.또한 사용자가 구성한 Hadoop, Hive, RHive 환경이 폐쇄된 네트워크의 레이어에위치하고 있어 보안망을 통해서 접근해야 한다면 RStudio port 를 열어주는 것만으로도보안절차를 간소화할 수 있다.Rstudio server 를 RHive 와 함께 사용한다면 더욱 편하게 RHive 를 사용할 수 있다.마지막으로 RStudio 는 서버의 R 환경을 그대로 사용하므로 RHive, Hadoop, Hive 를셋업해둔 환경을 여러사람이 함께 공유할 수 있도록 만들어 준다.이 튜토리얼에서 RStudio 를 설치하고 접속해서 RHive 를 사용하는 데모를 보여줄것이다.RStudio server 설치RStudio 는 공식사이트에서 다운로드 받을 수 있다.http://rstudio.org/RStudio 의 공식사이트인 rstudio.org 에서는 RStudio 를 쉽게 설치하고 사용할 수있도록 도와주는 자세한 문서들을 제공하고 있다.아래 페이지에서 설치법을 안내하고 있으므로 설치에 대해 이 튜토리얼을 참조하지않고 사이트의 문서를 참조하는 것도 좋다.http://rstudio.org/download/server이 튜토리얼에서는 CentOS5 에 RStudio server 를 설치하는 예를 설명한다.설치법의 대부분은 위 사이트에서 인용하고 일부 수정했음을 알려둔다.RStudio server 를 설치하기 위해서는 당연히 R 을 먼저 설치해야만 한다.이 문서를 보는 사용자가 이미 이전의 RHive tutorial 을 읽고 RHive 를 설치했다면 이미R 을 설치하는 과정은 완료했을 것이다.하지만 여기서는 다시 설명을 한다.아래와 같이 R 의 최신버전을 yum 을 이용해 설치하기 위해서 package 에 관한 내용을udpate 한다.$   sudo   rpm   -­‐Uvh  http://download.fedora.redhat.com/pub/epel/5/i386/epel-­‐release-­‐5-­‐4.noarch.rpm  이제 R 을 설치한다.$  sudo  yum  install  R  R-­‐devel
    • RHive 를 설치할 때는 R 뿐만아니라 R-devel 도 설치해야 하는 것을 기억하자.RStudio server 를 설치하기 전에 자신의 서버가 32bit architecture 인지 64bitarchitecture 인지 알아야 한다.최근의 서버라면 대부분 64bit 일 것이며 아래와 같이 uname 명령어로 확인할 수 있다.uname  -­‐m  x86_64위의 경우에는 64bit architecture 임을 알 수 있다.이제 각각 자신의 architecuture 에 맞는 RStudio version 을 다운로드하고 설치한다.32-bit 설치 방법 $   wget   http://download2.rstudio.org/rstudio-­‐server-­‐0.94.110-­‐ i686.rpm   $  sudo  rpm  -­‐Uvh  rstudio-­‐server-­‐0.94.110-­‐i686.rpm64-bit 설치 방법 $   wget   http://download2.rstudio.org/rstudio-­‐server-­‐0.94.110-­‐ x86_64.rpm   $  sudo  rpm  -­‐Uvh  rstudio-­‐server-­‐0.94.110-­‐x86_64.rpm개인계정만들기RStudio server 에 접속하기 위해서 RStudio server 가 설치된 server 자체에 사용자의계정이 있어야(exist) 한다.RStudio server 는 root 계정으로 접속하는 것을 허용하지 않으므로 서버에 개인사용자를 위한 계정들을 만들어야 한다.서버에 접속하여 RStudio server 를 사용할 사용자들의 계정을 만들고 password 를설정한다. ssh  root@10.1.1.1   adduser  user1   passwd  user1위에서의 user1 은 임의로 설정한 계정이며 실제로 사용할 계정을 생성하기 바란다.
    • RStudio server 시작하기RStudio server 는 Daemon 으로 실행되어야 한다.아래와 같이 서버에 접속해서 Daemon 실행한다.ssh  root@10.1.1.1  /etc/init.d/rstudioserver  start위와 같이 간단히 실행할 수 있다.RStudio server 접속하기RStudio server 는 web browser 를 이용해서 접속할 수 있다.웹 브라우저를 실행하고 아래와 같이 RStudio server 의 주소로 접속한다.http://10.1.1.1:8787RStudio 에 접속할 수 있는 port 는 기본값으로 8787 이다.이것은 설정을 변경해서 바꿀 수 있다.이제 RStudio 에 접속해서 R 과 RHive 를 이용한 대용량 분석 작업을 할 수 있을 것이다.RHive 를 위한 RStudio 작업RStudio 에서 작업을 하는 도중에 environment variable 이 잘 설정되지 않아 RHive 를loading 하는데 실패하는 경험을 할 수 있다.이런 경우에는 소스코드에 환경변수를 지정하는 코드를 넣어 해결 할 수 있다.Sys.setenv(HADOOP_HOME="/mnt/srv/hadoop-­‐0.20.203.0")  Sys.setenv(HIVE_HOME="/mnt/srv/hive-­‐0.7.1")  Sys.setenv(RHIVE_DATA="/mnt/srv/rhive_data")      library(RHive)위에서 HADOOP_HOME 과 HIVE_HOME 은 사용자의 컴퓨터가 아닌 RStudio 가설치되어 있는 서버의 Hadoop 과 Hive 의 Home 디렉토리를 지정해야 하며RHIVE_DATA 는 RHive 가 사용할 임시 디렉토리를 말하며 각 Hadoop 노드에 생성된다.환경변수를 세팅하는 것은 RHive 를 library 함수를 이용해서 loading 하기 전에수행해야 하며 만약 환경변수를 설정하지 않고 RHive 를 loading 했다면 환경 변수를설정하고 rhive.init() 펑션을 이용해서 RHive 를 초기화 할 수 있다.
    • library(RHive)      Sys.setenv(HADOOP_HOME="/mnt/srv/hadoop-­‐0.20.203.0")  Sys.setenv(HIVE_HOME="/mnt/srv/hive-­‐0.7.1")  Sys.setenv(RHIVE_DATA="/mnt/srv/rhive_data")      rhive.init()이제 RStudio 를 통해서 R 코드를 작성하고 RHive 를 이용해서 Hive 와 Hadoop 을다룰 수 있는 환경 셋업을 마쳤다.