http://grepcode.com/file/repository.cloudera.com/content/repositories/releases/com.cloudera.hadoop/hadoop-core/0.20.2-320/org/apache/hadoop/fs/FileUtil.java#FileUtil.copyMerge%28org.apache.hadoop.fs.FileSystem%2Corg.apache.hadoop.fs.Path%2Corg.apache.hadoop.fs.FileSystem%2Corg.apache.hadoop.fs.Path%2Cboolean%2Corg.apache.hadoop.conf.Configuration%2Cjava.lang.String%29 에서 찾은 hdfs file merge 코드Fil..
1. Introduction HDFS 는 상용 하드웨어에서 동작하도록 디자인됨HDFS 는 어플리케이션 데이터에 high throughput access 를 제공하고 large data sets 를 가진 어플리케이션에 적합하다원래 Apache Nutch Web Search Enging 프로젝트에서 시작되어 Apache Lucene Project 로 파생되어 나왔음 2. Assumptions and Goals 2-1. Hardware Failure중요한 건 수많은 HDFS 컴퍼넌트사이에서 발생하는 장애는 개연성을 가지고 있기 때문에 사소하게 지나치면 안된다는 것이다.이 말인 즉슨 HDFS 의 몇몇 컴포넌트들은 항상 오동작하고 있을 수도 있다(?)따라서 fault 를 찾고, 빨리, 자동으로 복구시키는게 HDF..
balancer 성능 개선을 위한 포인트는 찾지 못했으나 전체적인 코드의 구조는 이해할 수 있었다. 1. init(); initNodes(); 과정에서의 conf 설정으로 성능개선이 가능할 수도 있을 것 같다. 2. dispatchBlockMoves() 가 Balancing 의 핵심 함수이다. 아직 이해하지 못했는데 좀더 차근차근 살펴봐야 한다. 3. dispatch 전 chooseNodes(); 의 로직을 고친다면 balancer 를 실행시키는 rebalancer 서버가 중심이 되는 개량된 balancer 를 만들 수 있을 것 같다.
초기 0.x 버전부터 현재까지 hadoop feature 를 정리하며 공부중이다.Hadoop 은 upgrade 기능을 제공하는데, 이번 글은 v0.14 upgrade 에 관한 가이드를 요약 정리한 것이다. 원문은 아래에서 확인할 수 있다.http://wiki.apache.org/hadoop/Hadoop_0.14_Upgrade Upgrade Path- 0.12 또는 0.13.1 에서 0.14 로 업그레이드 가능함 그 이하 버전에서는 테스트해보지 않았지만 가능할 것임 Brief Upgrade Procedure- 클러스터의 기동을 멈춰야 한다. MR 을 내리고, DFS 도 중단시켜라- 새 버전의 Hadoop 을 인스톨하고 업그레이드가 완료될 때 까지 기다린다.- Hadoop cluster 를 다시 시작하면 된..
네임노드는 block 분배를 위한 몇가지 규칙을 가지고 있기 때문에 HDFS 는 항상 균일하게 데이터를 가지고 있지 않는다.- block 을 쓰고 있는 노드는 replica 1 로 지정한다.- replica 1 을 소유한 node 와 다른 rack 에 있는 노드에게 block 을 spread 한다. ( 재해내성을 위해 )- replica 1 을 소유한 node 와 동일한 rack 에 있는 노드에게 block 을 spread 한다. ( network I/O 를 줄이기 위해) balancer 는 HDFS 사용률의 밸런싱을 맞추기 위한 관리자 도구이다. datanode full 또는 신규 datanode 추가시 수동으로 사용할 수 있고, stop-balancer.sh 로 중단시킬 수도 있다. balancer ..
발란서의 동작 ./bin/hadoop balancer -threshold [threshold] ./hadoop-daemon.sh start balancer ./bin/start-balancer.sh./bin/stop-balancer.sh밸런싱은 네트워크 부하를 줄수 있으므로 대역폭 제한을 걸수 있다.dfs.balance.bandwidthPerSec 밸런서 실행을 해보면 결국 1개 노드에서의 밸런싱을 담당한다. 전체 노드에서 밸런서를 관리하는 방안은?? 1개 노드에서 밸런싱할 때 데이터를 가져오는것이 목적인가, 데이터를 덜어내는 것이 목적인가? 당연히 자동으로 덜어내고, 가져오고 하면 밸런스를 맞춰야 할 것 같은데 실제로는 아래와 같이 3일 동안 수행했을때 효과가 없었다 Time Stamp Iteratio..
이전 글에서는 hadoop datanode 를 제거하는 과정에 대해 알아보았다. hadoop datanode 를 추가하는 과정은 아래와 같다. 1. hadoop 설치 - 기존의 sgapp 에서 /nds 아래의 hadoop directory copy 2. linux config 설정- /etc/senius.conf 배포- /etc/bashrc 배포- /etc/hosts 배포- /etc/security/limits.conf 배포- ssh authorized key 배포 : sgapp 에서 scp /root/.ssh/authorized.keys sgasXXX:/root/.ssh/- /etc/sysconfig/i18n 배포- java 설치 3. hadoop config 설정- namenode 에서 slaves ..
효율적인 운영을 위해 hadoop cluster 에서 slave server 를 교환하려고 한다. 이를 위해 hadoop 에서는 기존 slave server 를 제거하고 새로운 slave server 를 추가해야 한다. 이때의 작업 절차는 다음과 같다. 1. 기존 slave server 에서 tasktracker 중지 2. 기존 slave server 에서 datanode 중지 3. 기존 slave server 의 ip 변경(새 장비가 기존 slave 역할을 대신해야 하므로) 4. 신규 slave server 에서 hadoop config, ip 설정 5. 신규 slave server 에서 datanode 기동 6. 신규 slave server 에서 tasktracker 기동 slave 에 직접 접속해서..
hive 를 사용하는데 아래와 같은 에러가 발생한다.실제로 몇몇개 데이터 노드에서 아래 taskTracker 경로를 확인해보면 hadoop-root 100만개 이상의 파일, 하위 디렉토리가 생성되었고 hive-root 에서도 6만개 이상의 파일, 하위 디렉토리가 생성된 것을 확인할 수 있다. Killed Tasks Task Complete Status Start Time Finish Time Errors Counters task_201209142207_44543_m_000490 0.00% 8-10월-2013 06:56:02 8-10월-2013 06:56:44 (42sec) org.apache.hadoop.util.DiskChecker$DiskErrorException: Could not find any ..
- Total
- Today
- Yesterday
- Encode
- 리터럴
- find
- 풀이
- ssh
- BASE64
- grep
- tr
- gz
- bz2
- 웹보안
- Linux
- Strings
- Natas
- HTTPS
- 압축파일
- OverTheWire
- OpenSSL
- nc
- X32
- 32bit
- over the wire
- tar
- solution
- 웹보안공부
- natas7
- java
- 리눅스
- Bandit
- SSL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |