Apache Hive - Hive to Phoenix Table
·
DataPipeline/Hive
[ 사전셋팅 (Prerequisites) ] phoenix-version-hive.jar 파일을 찾고, 해당 하이브 설정파일에 value를 추가하여 하이브 맵리듀스 잡이 jar파일 사용하게 한다. 1) hive-env.sh : HIVE_AUX_JARS_PATH= 2) hive-site.xml hive.aux.jars.path file:// [ 테이블 생성 ] jar파일에 있는 storage Handler는 internal과 external 하이브테이블 생성을 지원한다. 1) Create Internal Table Hive에서 테이블생성시 Phoenix에도 자동으로 테이블 생성되며, Hive나 Hue에서 데이터 조회와 같은 쿼리가 가능하다. Internal Phoenix테이블은 Hive테이블 lifecyc..
Apache Kafka - 재시작시 meta.propertie 에러
·
DataPipeline/Kafka
에러메세지 ] ERROR Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer) kafka.common.InconsistentClusterIdException: The Cluster ID lTeGi4hnRaKFOHhVMQnfEg doesn't match stored clusterId Some(eaVbu41vRfSi-XzD7DxMog) in meta.properties. The broker is trying to join the wrong cluster. Configured zookeeper.connect may be wrong. at kafka.server.KafkaServer.startup(KafkaSe..
Apache Nifi - Queued 설정
·
DataPipeline/Nifi
Queued 우측클릭->구성설정 버튼을 클릭하면 아래와 같이 설정할 수 있는 창이나온다.  FlowFile ExpirationFlowFile Expiration은 특정기간에 쌓인 데이터들 중 처리할 수 없는 데이터를 자동으로 제거할 수 있는 개념이다.예를 들어 큐의 데이터 볼륨이 초과할 것으로 예상됬을 때,유통기한을 우선 순위자와 함께 사용하여 우선 순위가 가장 높은 데이터를 먼저 처리한 후일정 기간(예: 1시간) 내에 처리할 수 없는 것은 모두 삭제할 수 있다.  만료 기간은 데이터가 NiFi 인스턴스에 들어간 시간을 기준으로 한다.즉, 특정 연결의 FlowFile Expiration가 '1시간'으로 설정되어 있고NiFi 인스턴스에 1시간 동안 있었던 파일이 해당 연결에 도달하면 만료된다.  기본값 0..
Apache Hive - Json 컨트롤
·
DataPipeline/Hive
Hive에서 Json파일 컨트롤 1. get_json_objecthive 0.7.0 이하로는 아래와 같이 사용한다. [ 데이터 ] [ 쿼리문 ]SELECT get_json_object(StudentsOneLine, '$.StudentDetails.FirstName'), get_json_object(StudentsOneLine, '$.StudentDetails.LastName')FROM StudentsOneLine;  2. json_tuple 사용아래와 같은 json 파일이 있다.{ "memberId":817090,"campaigns": [ {"id":"40718","amount":"10"}, {"id":"40801","amount":"26"}, {"id":"40..
Apache Hive - 조인 (Join)
·
DataPipeline/Hive
[ 쿼리시 테이블 배치 ]테이블 간의 Join은 부하가 매우크므로 스키마설계시 최대한 Join을 하지 않도록 구성해야 한다.하이브에서 조인 사용시 왼쪽에서 오른쪽 FROM절 순서로 쿼리가 실행되므로일반적으로 가장 데이터가 큰 테이블을 맨 오른쪽(마지막)에 실행되도록 쿼리를 짠다. 작은 테이블이 먼저 처리되면, 큰 데이터와의 조인이 더 효율적으로 이루어지는 이유는Mapper에서 작은 테이블을 먼저 읽고 메모리에 올려둔 뒤, 큰 테이블의 데이터와 비교하기 때문이다.큰 데이터는 메모리에 적재되지 않고 디스크 기반 스트리밍 방식으로 처리된다.따라서 큰 테이블을 오른쪽에 배치하면 성능 최적화가 가능하다. * HUE이용시 Error while processing statement: FAILED: Execution ..
Apache Kafka - 명령어
·
DataPipeline/Kafka
* 카프카 PATH로 cd하여 실행함을 가정한다. [ 실행과 중지 ][ 카프카 실행 ]./bin/kafka-server-start.sh ./config/server.properties --daemon [ 카프카 중지 ]./bin/kafka-server-stop.sh  [ 토픽 ][ 토픽생성 ]# 카프카 서버3대 (broker)에 복제를 3번하는 토픽을 만든다../bin/kafka-topics.sh --create \--zookeeper 172.123.123.111:2181, 172.123.123.222:2181, 172.123.123.333:2181 \--replication-factor 3 --partitions 3 \--topic kafka-topic-name [ 토픽확인 ]./bin/kafka-to..
Apache Hive - 파일 병합 (File Merge)
·
DataPipeline/Hive
[ 파일Merge ] 너무 많은 파일이나 중복된 파일이 HDFS블록 크기보다 작을경우 네임노드의 메모리를 소진시킨다.Hive의 경우 작은 파일을 많이 만들지 않도록 파일병합을 설정할 수 있다. 1. Merge 설정SET hive.merge.mapfiles : 맵전용 잡의 작은 파일들을 병합한다.(Default true)SET hive.merge.mapredfiles : 맵리듀스 잡의 결과들을 병합한다.SET hive.merge.size.per.task: 작업 종료시 병합된 파일을 크기를 정의한다(Default 256MB)SET hive.merge.smallfiles.avgsize : 파일 병합을 실행하는 트리거 임계값이다. (Default 16MB) 출력파일의 크기가 hive.merge.smallfile..
Apache Hive - 파일압축 (File Compression)
·
DataPipeline/Hive
Hive는 TextFile, SequenceFile, RcFile, OrcFile, ParquetFile 포맷을 지원한다.테이블의 파일형식을 지원하는 방법은 아래와 같다.1. CREATE TABLE … STORE AS 2. ALTER TABLE … [PARTITION partition_spec] SET FILEFORMAT 3. SET hive.default.fileformat= (the default fileformat for table)  [1] File CompressHive의 압축은 Full압축이 아닌 중간파일압축(Intermediate compression)을 통해매퍼와 리듀스 사이의 데이터전송량을 현저하게 줄인다.Hive가 생산한 중간파일을 여러 맵리듀스 작업간에 압축하려면SET hive.exe..
wave35
'DataPipeline' 카테고리의 글 목록 (10 Page)