개발/Data Engineering

개발/Data Engineering

태블로 데이터 원본 구성 방법 - 관계와 조인

태블로(tableau) BI(Business Intelligence) 툴에서는 다양한 형태의 데이터들을 연동하여 분석할 수 있다. 엑셀 파일, csv 파일, MySQL, Oracle, HDFS, HIVE, Google drive, drop box 등... 1회성으로 분석하고 끝날 것이 아니라 엔터프라이즈 환경에서 지속적으로 사용할 시스템을 만들려면 데이터 구성을 잘 해둘 필요가 있는데 이를 위한 내용을 정리해본다. 아직 그렇게 경험이 많지 않지만 알아가고 있는 내용을 정리하는 것이다. 데이터 원본을 구성할 때 단일 테이블로만 구성할 때는 크게 고민할 것이 없는데 여러 테이블을 묶어서 데이터 원본을 구성할 때는 좀 생각해봐야할 부분들이 있다. 일단 테이블을 연결하는 방법에는 조인과 관계 방식이 있다. 조인..

개발/Data Engineering

HDFS 네임노드 OutOfMemory 에러

hdfs 네임노드(namenode) 운영 시 OutOfMemory 에러가 나면서 data node들이 dead 상태가 되고block들이 corrupt 되었다고 메시지가 나오는 경우가 있었다. Namenode 프로세스 메모리는 디폴트가 1000m라서 1000m으로 되어있었는데 이 용량이 부족해지듯 하다.찾아보니 HDFS는 작은 파일들을 저장하는데 적합하지 않다고 한다. 파일 갯수가 많아질 수록 네임노드가 필요한 메모리 용량도 커지는데 파일을 작게 생성하고 지우지 않으면 문제가 될 수 있다. 일단 메모리를 3G로 늘렸고 파일 관리 방법에 대해서는 좀 더 찾아봐야겠다. 메모리를 늘리려면 {HADOOP_HOME}/etc/hadoop/hadoop-env.sh 파일에 다음 항목을 수정하면 된다.(데이터노드를 수정하..

개발/Data Engineering

직접해보는 하둡 프로그래밍 - 1. 빅데이터와 하둡이해하기 - 하둡이해하기

[하둡이란]대용량의 데이터를 분산처리하게 해주는 아파치 톱 레벨 오픈소스 프로젝트HDFS와 MapReduce라는 이름의 분산처리 시스템으로 구성 특징오픈소스데이터가 있는 곳으로 코드를 이동 대부분의 경우 데이터의 크기가 소스코드보다 훨씬 크기 때문에스케일 아웃(vs. 스케일 업) 다수의 저렴한 서버를 사용병렬처리를 가능하게 해주는 단순한 데이터 모델 처리하는 레코드만 보고 작업하면 되므로 병렬성이 높고 다수의 서버에서 실행하기 쉬움 프로그래머는 맵, 리듀스 함수만 구현하고 처리할 입력 데이터가 HDFS상 어디에 있는지 처리된 데이터가 어디 저장될지만 지정해주면 나머지는 프레임워크가 알아서 병렬로 처리오프라인 배치 프로세싱에 최적화 실시간 처리가 필요한 환경에서는 사용할 수 없다 [하둡 아키텍처]HDFS나..

개발/Data Engineering

hdfs에서 name node is safe mode 라고 나올 때

hdfs 접근 시에 name node is safe mode 라는 메시지와 함께 접근이 되지 않는 경우가 있다. hdfs가 비정상적으로 종료되었을 때 안전 모드로 진입되어 그런듯 하다. 이렇게 실행하면, {HADOOP_HOME}/bin/hdfs dfsadmin -safemode leave 이렇게 나오면서 해제된다. Safe mode is OFF

개발/Data Engineering

hdfs stop 시 no namenode to stop 에러

hdfs stop 시에 다음과 같은 에러가 발생하는 경우가 있다. anymousehostname : no namenode to stopanymousehostname : no datanode to stop 분명히 hdfs는 구동하고 있었는데 정지시킬 노드가 없다는 것인데 찾아보니 정지시키기 위한 node의 pid 정보를 디폴트로 /tmp 디렉토리에 저장해놓는데임시디렉토리라서 /tmp 디렉토리 내의 데이터를 10일이 지나면 삭제하도록 되어있다고 한다.그래서 찾을 수 없다는 것인데 해결 방법은 pid가 저장되는 위치를 변경하면 된다. ${HADOOP_HOME}/etc/hadoop/hadoop-env.sh 파일을 열어서 HADOOP_PID_DIR을 수정한다. # The directory where pid fil..

bebeside77
'개발/Data Engineering' 카테고리의 글 목록 (2 Page)