본문 바로가기

Hadoop64

[hadoop] 리소스매니저 UI의 Memory Reserved 리소스 매니저 UI의 클러스터 메트릭 부분을 보면 Memory Reserved라는 항목이 있습니다.이 부분은 YARN이 동작할 때 큰 크기의 메모리를 요구하는 작업이 있을 때 동작을 보장하기 위해서 예약해 두는 항목입니다. 예를 들어 작업 A는 1G의 메모리, 작업 B는 2G의 메모리를 할당 한다고 하겠습니다. 작업 A가 먼저 실행되어 클러스터 전체의 메모리를 할당 받고 작업이 종료될 때 마다 1G의 메모리 여유가 발생하고, 작업 B는 메모리가 맞지 않아서 작업을 진행하지 못하여 작업 A만 계속 처리하게 됩니다. 그러면 작업B는 작업A가 종료될 때까지 계속 대기해야 하는 기아(starving) 상태가 됩니다. 이를 방지하기 위해서 작업B에 할당할 수 있게 메모리의 여유분을 할당하지 못하게 막아두는 것이 .. 2019. 5. 15.
[hadoop] 하둡 오존(ozone) - 분산 객체 저장소(Object Storage) 오존(Ozone)은 하둡을 위한 확장성(scalable) 있는 분산 객체 저장소(distributed object store)입니다. 2019년 5월 7일에 0.4.0-알파버전이 발표되었습니다. 스파크, 하이브, YARN은 별도의 수정 없이 오존을 이용할 수 있습니다. 오존은 자바 라이브러리와 CLI환경을 지원합니다. 자바 라이브러리는 RPC와 REST 프로토콜을 지원하고 있습니다. 오존 구성 오존은 볼륨, 버켓, 키로 구성됩니다. 볼륨은 사용자 계정과 유사합니다. 관리자만 볼륨을 생성하거나 삭제할 수 있습니다. 버켓은 디렉터리와 유사합니다. 버켓은 여러 개의 키를 저장할 수 있지만, 다른 버켓은 저장할 수 없습니다. 키는 파일과 유사합니다. 버켓은 여러 개의 키를 저장할 수 있습니다. 오즌은 REST .. 2019. 5. 8.
[hdfs] HDFS 디렉토리 최대값 설정 변경 HDFS 조회중 item limit 으로 인해 발생하는 다음의 오류는 hdfs-site.xml 에 설정된 dfs.namenode.fs-limits.max-directory-items 의 값보다 많은 수의 개체가 생성되어서 그렇습니다. ERROR [uber-SubtaskRunner] org.apache.hadoop.hive.ql.Driver: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: org.apache.hadoop.ipc.RemoteException The directory item limit of /user/ is exceeded:.. 2018. 12. 10.
[hadoop] 세컨더리네임노드(secondary namenode) 하둡 HDFS는 동작하면서 HDFS에 파일을 생성, 삭제 하는 등의 작업에 대한 트랜잭션 로그를 기록합니다. 해당 로그는 Edits_XXX 이름으로 네임노드의 dfs.namenode.edits.dir 에 설정된 위치에 저장됩니다. 이 트랜잭션 로그는 트랜잭션이 많아질 수록 빠르게 해당 위치에 쌓이게 됩니다. 로그는 세컨더리네임노드를 이용하여 정리할 수 있습니다. 세컨더리네임노드는 다음과 같이 실행합니다. > hdfs secondarynamenode 세컨더리 네임노드는 설정값에 따라 기본 한시간에 한번씩 Edits 로그를 확인하면서 설정값이상의 파일이나, 트랜잭션 횟수를 넘어서면 Edits 파일을 정리하여 사이즈를 줄여줍니다. dfs.namenode.checkpoint.period: 체크포인트 확인 시간 .. 2018. 9. 14.
[hive][error] 셔플 과정에서 발생하는 OutOfMemoryError: Java heap space, error in shuffle in fetcher 오류 해결방법 hive를 이용하여 MR 작업 처리중 shuffle 과정에서, OutOfMemory 오류가 발생하면 다음과 같이 수정하면 된다. Error: org.apache.hadoop.mapreduce.task.reduce.Shuffle$ShuffleError: error in shuffle in fetcher#12 at org.apache.hadoop.mapreduce.task.reduce.Shuffle.run(Shuffle.java:134) at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:377) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at java.security.AccessCo.. 2018. 7. 2.
[hadoop] YARN, 맵리듀서 메모리 설정 Yarn의 설정은 다음과 같다. yarn.nodemanager.resource.memory-mb- 노드의 메모리 크기 설정 yarn.nodemanager.resource.cpu-vcores- 노드의 코어 개수 설정 yarn.scheduler.minimum-allocation-mbyarn.scheduler.maximum-allocation-mb- RM이 컨테이너당 할당하는 최소, 최대 메모리 yarn.scheduler.minimum-allocation-vcoresyarn.scheduler.maximum-allocation-vcores- RM이 컨테이너당 할당하는 최소, 최대 코어 매퍼 설정은 다음과 같다 a. mapreduce.map.memory.mbb. mapreduce.map.cpu.vcoresc. m.. 2018. 5. 17.
[빅데이터/강좌] 실무자가 알아야 할 하둡 #2.구조 하둡의 구조 하둡은 크게 분산저장과 병렬처리 프레임워크로 나눌수 있다. 분산저장(HDFS) 분산저장은 마스터 슬레이브 구조로 구성되는 네임노드와 데이터노드로 처리 한다. 하나의 네임노드에 다수의 데이터 노드로 구성되고, 각각의 노드는 다음과 같은 역활을 한다. 네임노드(Namenode) 데이터 노드 관리 메타데이터 관리 디렉토리, 파일 정보 관리 블록과 디렉토리간 매핑 정보 관리 파일 시스템의 관리를 위해 fsimage와 edits 를 이용 데이타노드 데이터 파일을 블록단위로 나누어서 저장 체크포인트 노드, 세컨더리 네임노드 fsimage와 edits를 주기적으로 체크하여 체크포인트를 생성하고 이를 이용하여 파일의 수정사항을 관리 체크포인트 노드는 fsimage를 네임노드에 업로드 하고, 세컨더리 네임노.. 2018. 5. 16.
[hadoop] 맵리듀스 동작 순서 맵리듀스는 8단계로 나누어져 있다고 할 수 있습니다. 각 단계는 작업에 따라서 생략될 수도 있습니다. 입력 -데이터를 입력하는 단계 -텍스트, csv, gzip 형태의 데이터를 읽어서 맵으로 전달 맵(Map) -입력을 분할하여 키별로 데이터를 처리 컴바이너(Combiner) -네트워크를 타고 넘어가는 데이터를 줄이기 위하여 맵의 결과를 정리 -로컬 리듀서라고도 함 -컴바이너는 작업의 설정에 따라 없을 수도 있음 파티셔너(Partitoner) -맵의 출력 결과 키 값을 해쉬 처리하여 어떤 리듀서로 넘길지를 결정 셔플(Shuffle) -각 리듀서로 데이터 이동 정렬(Sort) -리듀서로 전달된 데이터를 키 값 기준으로 정렬 리듀서(Reduce) -리듀서로 데이터를 처리하고 결과를 저장 출력 -리듀서의 결과를.. 2018. 4. 17.
[hadoop] shuffle 단계 메모리 설정 정보 셔플단계는 Map task와 Reduce task 단계에서 데이터를 전달하는 과정이다. 맵리듀스는 다음의 단계를 거치는데, 3~7 단계가 셔플 과정에 있다고 볼 수 있다. 1. 스플릿 생성2. 맵3. 스필4. 병합5. 복사6. 정렬7. 리듀스 이 셔플 단계에서 설정할 수 있는 설정값은 다음과 같다. mapred.reduce.shuffle.parallelcopiescopy phase 에서 데이터를 병렬로 전송하는 thread의 수 (default 5)reduce task는 클러스터 내에 퍼져 있는 많은 map task로부터 특정 파티션에 해당하는 output을 필요로 하여 map task의 출력이 끝나는 즉시 복사하기 시작함. 그 때 데이터를 전송하는 thread 수를 조정하는 설정값mapreduce.re.. 2018. 3. 26.
[hadoop] yarn 아키텍처 Yarn 아키텍처는 하둡2에서 도입되었다. 하둡1의 병목지점인 잡트래커(jobTracker)의 기능을 리소스 관리, 잡 관리로 나누어서 노드 매니저(리소스 관리), 애플리케이션 마스터(잡 관리)에거 권한을 나누어 주었다. 리소스 매니저- 어플리케이션마다 자원을 할당하고, 애플리케이션 마스터를 관리한다. - 클러스터당 1개 노드 매니저 - 노드의 컨테이너를 관리하고 자원 상태를 리소스 매니저에 통지한다. - 노드당 1개 애플리케이셔 마스터- 어플리케이션의 실행을 관리하고 상태를 RM에 통지한다. - 어플리케이션당 1개 컨테이너- 애플리케이션을 실행- 제한된 자원을 가지고, 상태를 AM에 통지한다. http://skccblog.tistory.com/1883 2018. 1. 16.
[hadoop] hadoop1, 2, 3의 특징 및 장단점 Haodoop 1클러스터당 최대 4000개의 노드를 등록 가능 MR 잡을 수행할 수 있음작업 처리를 슬롯 단위로 수행 Hadoop 2클러스터 당 10000개 이상의 노드가 가능MR 잡외에 Spark, Hama, Giraph 등 다른 분산 처리 모델도 수행 가능Hadoop1의 잡트래커가 리소스 관리, 잡 스케줄링을 동시에 처리하여 병목 지점이 되어 YARN 추가YARN은 리소스매니저, 애플리케이션 마스터가 리소스 관리, 잡 스케줄링을 담당 Hadoop 3 HDFS erasure coding 추가 기존의 Replication 을 대체하는 방식으로 복제를 하지 않고 오류에 대응YARN 타임라인 서비스 v2 기존 타임라인 서비스보다 많은 정보 확인 가능쉘스크립트 재작성오래된 쉘스크립트를 재작성하여 버그 수정 J.. 2017. 12. 21.
[개념] HCatalog, HCatalog Server HCatalog는 하이브 0.11.0 버전에 통합되었습니다. [바로가기] HCatalog Server는 Hive Metastore와 같습니다. 따라서 EMR의 경우 hive-hcatalog-server 로 실행되는 프로세스가 하이브 메타스토어 입니다. 개요 HCatalog는 하둡 에코 시스템의 데이터 처리 도구(Pig, MR, Hive)들 간의 테이블, 저장공간 관리 계층을 제공한다. HDFS 상의 파일들에 대한 추상계층을 제공하여, 사용자가 데이터의 위치, 저장 형태에 대하여 신경쓰지 않아도 되도록 제공한다. HCatalog는 파일을 읽고, 쓰기 위한 SerDe 를 제공한다. RCFile, CSV, JSON, SequenceFile, ORC 포맷을 지원한다. 사용자가 커스텀 포맷을 생성하여 처리할 수도.. 2017. 11. 28.
[hadoop] 하둡 커패시티 스케줄러(capacity-scheduler) 하둡의 스케줄러중 하나인 커패시티 스케줄러는 큐별로 사용할 수 있는 자원의 총량을 정해놓고 처리하는 방식이다. 하둡설정의 capacity-scheduler.xml 파일을 이용하여 설정할 수 있다. * 운영중에 큐의 추가는 가능하다. * capacity-scheduler.xml 을 수정하고, yarn rmadmin -refreshQueues 를 입력한다. ** 운영중에 큐의 삭제는 불가능하다. ** capacity-scheduler.xml 을 수정하고, 리소스 매니저를 재시작하면 된다. YARN overview from SeongHyun Jeong https://hadoop.apache.org/docs/r2.7.2/hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html 2017. 10. 18.
[hadoop][fsck] HDFS의 상태를 점검 할 수 있는 명령어 HDFS의 fsck 명령- HDFS 상의 다양한 불일치(블록 누락, 복제 되지 않은 블록)를 확인- 오류를 발견하고 수정하지는 않음(NameNode가 복구가능한 오류는 자동으로 수정)- 열린 파일은 무시함 > hadoop fsck /Status: HEALTHY Total size: 3984631262 B # 현재 사용중인 byte (hadoop fs -du -s / 명령어와 동일한 값) Total dirs: 678 Total files: 3453 Total symlinks: 0 Total blocks (validated): 3450 (avg. block size 1154965 B) # 최소 개수로 복제된 블록 Minimally replicated blocks: 3450 (100.0 %) # 기본 설정값 .. 2017. 4. 10.
[hive] ORC 파일 포맷 ORC(Optimized Row Columnar) 파일 포맷 ORC 파일 포맷은 하이브의 처리 속도를 높이기 위하여 개발 되었다. 하이브가 처음에 사용한 TextFile, SequenceFile 포맷의 처리속도를 높이기 위하여 RCFile 포맷이 개발 되었다. RCFile 포맷은 각 컬럼을 하나의 파일 묶음으로 만들었기 때문에 각 노드에 분산 처리된 데이터를 모으는 비용이 많이 들어가게 된다. 이를 극복하기 위하여 제안된 것이 ORC 파일 포맷이다. ORC 포맷은 칼럼 단위로 데이터를 기록하고, 인덱스를 기록하여 컬럼에 바로 접근할 수 있기 때문에 속도가 빨라진다. ORC 포맷은 호튼웍스의 부사장 오웬오말리가 제안한 것으로 하나의 파일에 칼럼을 json 처럼 중첩구조로 구성할 수 있고, 리스트, 맵과 같.. 2016. 12. 28.
[hadoop][EMR] 하둡 리소스매니저(resource manager)의 기본 포트 하둡은 현재 리소스 사용현황을 확인할 수 있는 웹 페이지를 제공하고, 이 웹페이지의 포트는 yarn-site.xml 파일을 수정하여 변경할 수 있다. yarn-default.xml 의 기본값은 http는 8088, https는 8090 이다. 하둡이 실행된 서버에서 웹앱으로 접속하기 위해서는아래와 같이 alias를 등록해 두고 사용하면 편리하다. alias rm='lynx http://IP:8088' 2016. 12. 7.
[hadoop][hive] 맵리듀스 처리시 오류가 발생해도 무시하고 진행하게 하는 프로퍼티 하둡은 형식이 없는 데이터를 처리하다보니 처리중 오류가 발생할 경우가 있다. 예를 들어 텍스트 파싱을 진행하는 매퍼 작업의 경우 10개중 1개가 실패할 경우 성공으로 인식하여 처리하게 할 수 있다. 이런 경우 다음의 설정값을 이용하여 처리하면 된다. 매퍼작업과 리듀스 작업을 나눠서 설정이 가능하다. [신버전]mapreduce.map.failures.maxpercent=10;mapreduce.reduce.failures.maxpercent=10; [구버전 Deprecated]mapred.max.map.failures.percent=10;mapred.max.reduce.failures.percent=10; 하둡의 버전이 달라지면서 기존의 설정과 이름이 바뀌었기 때문에 하둡 버전에 맞게 사용해야 한다. 2016. 11. 24.
[hadoop] 하둡 처리중 NoClassDefFoundError 오류가 발생하는 경우 하둡과 스내피 압축을 이용하여 맵리듀스 처리중 NoClassDefFoundError 오류가 발생하는 경우가 있다. 지라에서 버그라고 하는데 스내피 압축을 풀지못해서 발생하는 경우도 있다. 이럴때는 입력 파일의 스내피 압축이 정상적인지 확인해 보아야 한다. https://issues.apache.org/jira/browse/HADOOP-12033 2016. 10. 27.
[hadoop] distcp 사용하기 하둡은 대규모 데이터의 이동을 위해서 맵리듀스를 이용한 DistCp를 제공한다. * 여러군데의 파일을 각각의 폴더 위치로 이동시키는 것은 불가* 목적지(destination) 폴더에 파일이 존재하면 파일이 전달되지 않을 수도 있다. 파일 이동시 확인하도록 하자. # distcp 명령hadoop distcp hdfs://source hdfs://destination # update or overwrite# 파일 이름이 동일할 경우 update는 파일사이즈를 비교해서 옮기고, overwrite는 그냥 덮어쓴다. hadoop distcp -update hdfs://source hdfs://destinationhadoop distcp -overwrite hdfs://source hdfs://destination.. 2016. 10. 26.
[hadoop][python][linux] sudo: no tty present and no askpass program specified 오류 처리하기 하둡을 이용하여 파이썬 프로그램을 실행하던중로컬에서는 실행이 되는데, MR을 이용하여 실행하면 다음과 같은 오류가 발생하는 경우가 있다. os.system("sudo apt-get -y install python-pip") sudo: no tty present and no askpass program specified 로컬에서 바로 실행을 하면 sudo 명령을 사용할 수 있는데,mr 을이용하면 사용이 불가능하다. 이는 mr을 이용하여 실행하면, 프로그램을 실행하는 노드로 ssh를 이용하여 접속을 하고해당 프로그램을 실행시키는데 이때 mr은 yarn 계정으로 접근을 하고 이 yarn 계정은 sudo 실행 권한이 없기 때문이다. 이 문제를 해결하기 위해서는 하둡시스템의 모든 노드의 yarn 계정의 권한에 s.. 2016. 10. 5.
[hdfs] Non DFS used 용량 hdfs dfsadmin -report 명령을 이용하여 hdfs의 사용량을 확인할 수 있다. 이때 출력되는 정보를 통하여 디스크이 사용량 확인이 가능하다. 이중에서 Non DFS used 항목의 정보가 궁금하여 다음과 같이 확인해 본다. Configured Capacity = Total Disk Space - Reserved Space.사용 가능 용량 = 디스크의 전체 용량 - 예약 용량 디스크의 전체 용량: hdfs-site.xml에서 지정한 디스크의 총용량예약용량: hfds-site.xml에서 dfs.datanode.du.reserved 로 저징한 용량 Non DFS used = Configured Capacity - DFS Remaining - DFS Used 100G 디스크에서 예약용량을 30G로.. 2016. 8. 25.
[hadoop] HDFS의 유용한 명령어 [파일 정보 확인] ls- 지정한 디렉토르의 lsr- ls 는 현재 디렉토리만 출력하는 반면 lsr 명령어는 현재 디렉토리의 하위 디렉토리 정보까지 출력한다. count- 파일 사이즈, 디렉토리 용량, 폴더 수 등을 확인합니다. [파일 용량 확인]du- 지정한 디렉토리나 파일의 사용량을 확인하는 명령어로, 바이트 단위로 결과를 출력합니다. dus- du 명령어는 디렉토리와 파일별로 용량을 출력하지만, dus는 전체 합계 용량만 출력합니다. [파일 내용보기]cat- 지정한 파일의 내용을 화면에 출력합니다. text- cat 명령어는 텍스트 파일만 출력할 수 있습니다. text 명령어는 압축된 파일도 확인이 가능합니다. - 확장자에 따라 압축방법을 선택하여 보여주기 때문에 확장자가 다르면 올바르게 출력이 되.. 2016. 7. 27.
s3 블록파일 시스템과 s3 네이티브 파일시스템의 차이 아마존 AWS 에서 사용하는 파일 시스템에는 S3 블록파일 시스템과 S3 네이티브 파일 시스템이 존재한다. 하둡을 지원하기 위해 처음 등장한 블록파일 시스템은 "s3://" 스키마를 사용한다. HDFS와 유사하게 동작하며, 파일을 블록형태로 저장한다. 이 블록파일 시스템은 다른 파일 관리도구로 읽을 수 없고, 블록 형태로 저장되어 일반적인 파일 시스템과 달라서네이티브 파일 시스템이 등장하였다. 네이티브 파일 시스템은 's3n://' 스키마를 사용한다. 이 네이티브 파일 시스템은 다른 파일 관리 도구로도 읽을 수 있다. 처음 등장하였을 때는 5GB의 파일당 제한이 있었지만, 나중에 5TB로 수정되었다. * 블록과 네이티브 파일 시스템의 차이는 우선 URI 스키마의 차이, 저장 방식의 차이, 접근 도구의 차.. 2016. 4. 28.
[오류] 리듀서 처리중 Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. 오류 다음의 오류가 발생하면 해결방법은 2개가 있는 것 같다. 우선 하나는 mapreduce.tasktracker.http.threads 를 수정하는 것이고, 다른하나는 slave 파일에 호스트 정보를 추가하는 것이다. 또는 작업을 다시한번 돌려도 될 것 같다. Caused by: java.io.IOException: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. 1번 mapred-site.xml 의 mapreduce.tasktracker.http.threads 값을 기본 40에서 더 큰수로 설정 하고 하둡을 재시작한다. mapreduce.tasktracker.http.threads: 맵의 출력 데이터를 리듀스 태스크에게 제공하기 위한 태스크 트래커의 워커 스레드개수 .. 2016. 2. 15.
[팁] JVM을 재사용하여 성능을 향상 시키기 맵, 리듀스 태스크는 처리될 때 JVM를 새로 생성한다. 따라서 짧은 작업이 여러개 생성될 경우 JVM을 신규로 생성하는 오버헤드가 클 수도 있다. 이때 JVM을 재사용하여 작업을 처리하는 시간은 줄일 수 있다. 아래의 설정은 JVM에서 처리할 수 있는 작업의 개수를 설정한다. 기본 설정은 1이지만, -1로 설정하면 제한없이 사용할 수 있다. hadoop v1mapred.job.reuse.jvm.num.tasks=-1hadoop v2 mapreduce.job.jvm.numtasks=-1 http://www.nexr.co.kr/upload/mapli_deux.pdfhttps://hadooptips.wordpress.com/2013/03/19/improving-performance-with-jvm-reuse.. 2016. 2. 12.
[hadoop] 하둡 명령어, 자주 사용하는 커맨드(hadoop command) 하둡에서 자주 사용하는 명령어는 다음과 같다. * 폴더의 용량을 확인할 때 count 를 사용* 파일의 내용을 확인할 때는 cat 보다는 text를 사용하면 더 좋다. 파일 타입을 알아서 판단하기 때문 hadoop fs -cat [경로] - 경로의 파일을 읽어서 보여줌 - 리눅스 cat 명령과 동리함 hadoop fs -count [경로] - 경로상의 폴더, 파일, 파일사이즈를 보여줌 hadoop fs -cp [소스 경로] [복사 경로] - hdfs 상에서 파일 복사 hadoop fs -df /user/hadoop - 디스크 공간 확인 hadoop fs -du /user/hadoop - 파일별 사이즈 확인 hadoop fs -dus /user/hadoop - 폴더의 사이즈 확인 hadoop fs -get.. 2016. 1. 25.
[Tip/프로퍼티] hive에서 load 할 파일이 없을 때 발생하는 NullPointerException 회피하기 하이브에서 load 명령을 이용하여 테이블에 데이터를 적재하고 파일을 select 할때 지정한 경로나 지정한 경로에 파일이 없으면 NullPointerException 또는 IndexOutBoundException 오류가 발생한다. 이를 회피 하기 위해서는 다음의 프로퍼티를 설정하면 된다. set hive.merge.mapfiles=false; 하이브 설정 2016. 1. 6.
[하둡/AWS/오류] 우지와 하둡 연동중 발생하는 Could not find or load main class 오류 AWS에서 우지와 하둡 연동중 다음과 같은 오류가 발생할 경우 Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster 이는 우지에서 지정한 클래스패스와 하둡이 사용하는 클래스패스의 경로가 달라서 그렇다. 따라서 EMR의 하둡에 설정된 yarn-site.xml 의 내용에서 yarn.application.classpath 를 복사하여 우지의 설정에서 하둡으로 전달하는 yarn-site.xml 을 수정한다. source(emr) : hadoop/conf/yarn-site.xml target(oozie) : oozie/conf/hadoop-conf/yarn-site.xml 참고 2015. 8. 21.
[spark] 아파치 스파크 아파치 스파크 실시간 분산형 컴퓨팅 프로젝트이다. 스트림 지향형 프로세스를 지원한다. 기존 하둡 클러스터에서 실행시킬 수 있다. 스칼라로 작성이 되어 있지만, 스칼라, 자바, 파이선 API를 지원한다. In-Memory 방식으로 처리를 하기 때문에 하둡에 비해 처리속도가 빠르다. 하둡에 비해 100배정도 빠르다고 한다. 예제 코드 # /spark/bin/pyspark 를 실행후 콘솔에서 입력 # README.md 파일은 hdfs 상에 업로드 되어 있어야 함 # hdfs://user/name/README.md 에 위치 # README.md 파일을 입력하여 라인 카운트 확인 lines = sc.textFile("README.md") print lines.count() # README.md 파일의 문장을 공백.. 2015. 6. 24.
[하둡] 기본명령어 사용 팁 하둡의 기본 명령어 사용 팁 mkdir 지정한 디렉토리를 만들어 주는 mkdir 명령에는 –p 옵션이 있다. -p 옵션을 사용하면 주어진 경로의 디렉토리를 만들 때 상위 디렉토리부터 하위 디렉토리까지 모두 만들어 준다. mkdir 의 옵션 hadoop fs [generic options] -mkdir [-p] ... Hadoop fs –mkdir –p /dir1/dir2/dir3 명령어 사용시 mkdir: `/dir1/dir2/dir3: No such file or directory 오류가 발생하면 –p 옵션을 사용하여 디렉토리를 생성하도록 하자. 2015. 5. 27.