본문 바로가기

전체 글

(113)
[Hadoop] Python으로 MapReduce 구현하기 mapper.py import sys for line in sys.stdin: words = line.strip().split() for word in words: print(f"{word}\t{1}") mapper.py 리눅스 서버로 옮기기 [root@localhost hadoop-3.3.6]# chmod +x mapper.py [root@localhost hadoop-3.3.6]# echo "hello world python and hadoop"| ~/hadoop-3.3.6/mapper.py mapreduce.py #!/usr/bin/env python from operator import itemgetter # 다양한 방법으로 딕셔너리를 정렬 import sys # 필요한 변수 초기화 result ..
[Git] 추가한 git repository 삭제하기 내 프로젝트를 github에 올릴 목적으로 git repository를 추가했는데 안올리고 싶어져서 .. 알아본 저장소 삭제하는 방법 git bash에 들어가서 연결한 프로젝트 경로로 이동하고 rm -rf .git 이렇게 하면 저장소가 삭제된다 ~~ 참고로 나는 아무 커밋도 하지 않고 올리지 않은 상태에서 저렇게 삭제했다.
[Hadoop] Java로 MapReduce 구현하기 rocky linux 환경에 intellij 다운받고 실행 다운받은 intellij 파일 root로 옮기고 압축 푼 후 [root@localhost ~]# cd idea-IC-233.14475.28/bin [root@localhost bin]# ./idea.sh 실행 MapReduce를 위한 Java Project 설정 pom.xml에 dependencies 추가 - mvn repository에서 검색 org.apache.hadoop hadoop-mapreduce-client-core 3.3.6 org.apache.hadoop hadoop-common 3.3.6 org.apache.hadoop hadoop-hdfs 3.3.6 org.apache.hadoop hadoop-client 3.3.6 scp [j..
[Hadoop] hdfs 명령어 정리 및 실행 Hadoop 환경변수 설정 ~/.bashrc 수정 [root@localhost ~]# hadoop fs -mkdir /tmp mkdir: `/tmp': File exists 앞으로 이렇게 'hadoop'으로 접근 가능 기본적인 HDFS의 파일을 조작하기 위해서 hadoop fs 또는 hdfs dfs 커맨드를 사용한다. 우리는 hadoop 경로 설정해 주었으니 hadoop fs 로 사용 가능 -mkdir [root@localhost ~]# hadoop fs -mkdir -p /user/kimnayoung/hadoop_edu/test -p : 존재하지 않는 중간의 디렉토리를 자동으로 생성 -ls [root@localhost ~]# hadoop fs -ls -R /user -R : /user 하위의 모든 폴더..
[Python] 문자열 겹쳐쓰기 def solution(my_string, overwrite_string, s): over_len = len(overwrite_string) answer = my_string[:s] + overwrite_string + my_string[s+over_len:] return answer
[Python] 추억 점수 def solution(name, yearning, photo): answer = [] name_dict = dict(zip(name, yearning)) for each_photo in photo: sum = 0 for each_name in each_photo: if each_name in name_dict: sum += name_dict[each_name] answer.append(sum) return answer dict(zip(name, yearning)) : name, yearning 배열을 하나의 dictionary로 만들기 zip : 두개의 리스트를 묶어줄 때 사용 해당 키 값이 딕셔너리에 있는지 확인 : if each_name in name_dict
[PLAYDATA 데이터 엔지니어링] 3월 1주차 회고 1. 전반적인 느낌(일주일 동안 한 일) 저번주 월~목을 휴가로 빠졌었다. 오래전부터 계획되어 있었기도 하고, 이번 방학을 이 여행만 보고 살았기 때문에 ,,,, 가서 열심히 놀고 flex하고 왔다 😎 이번주에는 플레이데이터에서 크롤링, numpy, pandas, hadoop을 공부했다. 크롤링 정적, 동적 사이트 크롤링과 api을 연동하여 크롤링을 진행한 부분을 복습했다. python에서 DB 연결하는 부분까지 진행하였다. 이전에 진행했던 프로젝트들에서 크롤링은 내파트가 아니어서 제대로 해본적은 없었는데, 이번기회에 크롤링 코드들을 자세히 보고 익힐 수 있었다. Numpy, Pandas numpy와 pandas 부분을 공부했다. 데이터분석하면서 numpy는 많이 사용하지 않았어서 numpy에서 배열을 ..
[Hadoop] Hadoop 다운로드 및 환경설정 Hadoop 다운로드 Apache Hadoop에 들어가서 binary로 들어간다 http의 링크 복사하고 리눅스에서 wget 명령어로 hadoop을 다운로드 받는다 tar.gz 를 압축 해제하는 명령어 tar -zxvf [압축 파일명] java 다운로드 hadoop 3.3.x 버전은 java 8이랑 11 버전만 가능! java 11 버전을 다운로드 받는다. jdk-11.0.21이 root에 오게 파일 위치 변경해야함 JAVA 환경변수 설정 /root/.bashrc 파일 수정 export JAVA_HOME=/root/jdk-11.0.21 export PATH=$JAVA_HOME/bin:$PATH 수정된 파일 적용하려면 source /root/.bashrc 수정 완료! Hadoop 환경변수 설정 [root@..