Open Sisi55 opened 3 years ago
where sessionId=값; 사랑 키워드에 관심있는 사람들 ..곡에 관심있는 사람들 추천을 해주는 쿼리 ?
사용자 음악 데이터를 분석
click, like api 만들면, 자동화 프로그램에서 호출
click api : 가장 앞에 id 로직 playlists/{id} songs/{id}
좋아요 api like/playlists/{id} like/songs/{id}
like/click 도큐먼트 : playlist 용, song 용 playlist+sessionId song+sessionId
세션도큐먼트 id
하둡 - aws 설치, 계정 공유 : 시현
web hdfs rest api 를 이용해보면 어떨까 ? https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/WebHDFS.html
사용법 https://wikidocs.net/65812
근데 이건 multi node 설정이니까, 강의를 통해서 멀티 클러스터로 환경 구축해야 한다!
(Ctrl+5, Ctrl+x)
sudo nano /usr/local/hadoop/hadoop-3.1.4/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/data/nameNode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/data/dataNode</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<!-- configuration zookeeper -->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/usr/local/hadoop/data/dfs/journalnode</value>
</property>
<property>
<name>dfs.nameservices</name>
<value>my-hadoop-cluster</value>
</property>
<property>
<name>dfs.ha.namenodes.my-hadoop-cluster</name>
<value>namenode1,namenode2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.my-hadoop-cluster.namenode1</name>
<value>nn1:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.my-hadoop-cluster.namenode2</name>
<value>nn2:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.my-hadoop-cluster.namenode1</name>
<value>nn1:50070</value>
</property>
<property>
<name>dfs.namenode.http-address.my-hadoop-cluster.namenode2</name>
<value>nn2:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://nn1:8485;nn2:8485;dn1:8485/my-hadoop-cluster</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.my-hadoop-cluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProv
ider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/ubuntu/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/data/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/data/data</value>
</property>
</configuration>
sudo nano /usr/local/hadoop/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://nn1:9000</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://my-hadoop-cluster</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>nn1:2181,nn2:2181,dn1:2181</value>
</property>
</configuration>
sudo nano /usr/local/hadoop/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>nn1</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
</configuration>
sudo nano /usr/local/hadoop/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
</configuration>
sudo nano /usr/local/hadoop/etc/hadoop/workers
dn1
dn2
dn3
sudo nano /usr/local/hadoop/etc/hadoop/masters
nn1
nn2
이후로 ssh 설정도 있다! 길다!
할 수 있다면, sessionid 중 몇개를 골라서 그 사람을 위한 음악을 추천해주는 것도 괜찮을거 같다!!
1.
하둡 설치 https://dorongee.tistory.com/2 스파크 설치 및 하둡 연동 https://dorongee.tistory.com/3
궁금한거. 심볼릭 링크 설정이 뭐지 ?
스파크 모드 설정 글이 있는데 https://dorongee.tistory.com/4
이 설정인가 ?
아니면 지난번에 공유한 영상에도 나왔있을까 ?
2.
spark를 이용한 hdfs cluster 원격 입출력
배경
내가 플레이 리스트니까. 플레이 리스트 1개 가져올 때, 노래 가져오는 로직을 추가하자.
done
문제.
생각한 해결 방안
문제
playlist to song 매칭 뭘로 하지? song id 가 혹시 누락됐나 ? => 언니한테 물어보기
다음 진행
하둡 먼저 구축해보자. 같이 실습해보기 ?
aws 인스턴스 생성
설치
=> 하둡, 스파크 자료 명령어대로 설치만 해보고, aws 하위 계정 공유하기.
궁금한거
https://youtu.be/Il6oVtWq1MI 요 영상 마지막에서 r 스튜디오로 스파크 연동하더라!
찾은 자료 (정말 좋다!)
영상 step by step
하둡 설치하기 https://youtu.be/MqL0qfNff_I
스파크 설치하기 https://youtu.be/NOYpBnPC5YM
r studio 까지 연동 https://youtu.be/Il6oVtWq1MI