소프트웨어 개발 165

Spark 의 애플리케이션 실행할때의 프로세스

spark-submit 을 이용해서 애플리케이션 실행spark-submit은 드라이버 프로그램을 실행, 사용자는 main()메서드 호출드라이버 프로그램은 클러스터 매니저에게 익스큐터 실행을 위한 리소스 요청클러스터 매니저는 익스큐터 실행드라이버는 단위 작업 형태로 익스큐터에게 보냄.익스큐터는 이를 실행끝이나면 익스큐터 중지 후 클러스터 매니저에 사용했던 자원 반환

Spark 멀티노드 슬레이브 활성화 및 에러노트

Spark를 설치하려면, 일단은 아래를 따라한다http://data-flair.training/blogs/install-deploy-run-spark-2-x-multi-node-cluster-step-by-step-guide/설치는 그렇게 어렵지 않다. 1) 모든 노드에 자바 및 스파크 , 스칼라 설치2) 비밀번호 필요없도록 ssh키 공유3) hosts파일 변경 (/etc/hosts)4) conf파일 변경 (spark-env.sh, slave)5) sbin/start-all.sh 밑에는 에러노트starting org.apache.spark.deploy.master.Master, logging to /usr/local/spark/logs/spark-rakyunkoh-org.apache.spark.deplo..

로그인시 비밀번호가 필요없도록 ssh key를 이용하는 방법.

키가 있는 파일을 여러군데다 복사하면 된다. 일단 키를 제너레이트 시킨다. $ssh-keygen -t rsa -P "" 그리고 파일을 뒤져보면 .ssh/id_rsa.pub이 생겨있을텐데 이 파일의 내용을 슬레이브의 홈 디렉터리에서 (id는 마스터와 같은 상태).ssh/authorized_keys로 생성하면 비밀번호가 필요없이 바로 접속가능하다.

Hadoop 관련 오픈소스 나열

Zookeeper - 분산환경에서 서버간의 상호조정이 필요한 다양한 서비스.https://zookeeper.apache.org/ Oozie - 하둡 워크플로우 제어http://oozie.apache.org/ Hbase - 컬럼 기반 데이터베이스https://hbase.apache.org/ Pig - 대량의 데이터를 분석하기 위한 고차원 언어 제공https://pig.apache.org/ Hive - SQL을 통한 데이터워어하우징https://hive.apache.org/ Mahout - 머신러닝http://mahout.apache.org/ Sqoop - 대량 데이터 인터페이스 솔루션http://sqoop.apache.org/ Impala - 실시간 SQL질의 시스템http://impala.incubato..

라즈베리파이와 똥컴으로 하둡 구성 (작업중)

그동안 이짓을 해보려고 사놨던 라즈베리파이2, 라즈베리파이3, 그리고 집에 놀고있던 대학교 초년생때 산 넷북과 심폐소생술로 살려낸 맥북 2009년형이 있다.1) 구조짜기가지고 있는 뭔가 계산할수 있는 계산기들은 다음과 같다. 클러스터를 구성하기 위해 아래와같이 온갖 잡다한 돌덩이 컴퓨터들을 연결해놓았다. 허브나 공유기를 통해 하나의 네트워크로 연결해줄수 있다. 공유기로 192.168.0.X로 모두 설정했다.클러스터라고 하기에는 뭔가 이상하긴 하지만, 어쨌든 집에서 놀고있는 기계들을 하나로 뭉쳐서 뭔가 쓸모있게 한다는 점에서는 만족스럽다. 모양새가 좀 그렇지만 어쨌든 돌아가기만 하면 되지 않능가 2) 라즈베리파이 OS설치나머지 컴에 우분투와 맥이 있으니 이건 놔두고, 라즈베리파이 OS를 설치한다.https..

Spark를 이용한 데이터분석 (1) - 준비하기

본 포스팅은 Advanced Analytics with Spark, 한빛미디어스칼라와 기계학습, PACKT참조. 스파크와 스칼라의 조합을 쓰는 이유 - 보통은 R에서 프로토타입을 만들고 (REPL) 파이썬으로 래핑되어있는 라이브러리를 이용하거나 C / Java계열로 포팅해서 쓰는데 반해, 스칼라는 그 자체로 운영에 적용할수 있는 JVM기반의 언어이며 스파크 쉘로 탐색적 분석을 가능케 한다.- 스칼라 언어에서 오는 반복적인 모델링이나 전처리등의 깔끔함.- 하둡생태계와 통합하기에 좋은 점.- 맵 이후 리듀스 단계를 지키지 않아도 되며 바로 다음 단계로 임시 결과를 넘길 수 있음 1) UC어바인 기계학습저장소로 표본 데이터 발췌 (curl은 data transfer tool로, https://www.lesst..

파이썬3 시스템 입력시 바로 리스트로 환산

대상이 되는 알고리즘 문제, 백준알고리즘 1912번 (https://www.acmicpc.net/problem/1912) 파이썬3를 쓸때, 입력을 한번에 리스트로 저장하고 싶을때는? 파이썬2보다 문법들이 조금씩 바뀌고, 라이브러리도 호환이 잘 안되어서 어려움을 겪은 기억이 있는데, 어쨌든 아래와 같다.10 10 -4 3 1 5 6 -35 12 21 -1 만약 int로 컨버전을 해주지 않는다면, 스트링 형태로 들어가게 된다.

간단한 객체가 들어있는 어레이리스트 정렬 후 바이너리 서치

package etc;import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; public class BinarySearchClassTest { public static void main(String[] args) { ArrayList list = new ArrayList(); list.add(new Car(1000, "hi")); list.add(new Car(12350, "hi")); list.add(new Car(123400, "hi")); list.add(new Car(11100, "hi")); list.add(new Car(500, "hi")); list.add(new Car(130, "hi"));..