1. enable ppd(predicate pushdown) 


   hive.optimize.ppd = true;


   select시 filter 조건으로 인한 효율성이 더 클 경우 join보다 filter 조건을 먼저 수행하도록 함.


   select a.*, b.* from user a join department d on a.part_id = b.pard_id

   where b.part_name = '영업부';


   part_name은 DB에서 처리에서 처리되고 나머지 표현은 hive에서 처리됨.


   

2. map number 최적화

   1) mappers 수를 조정하기 위해 아래 옵션을 사용하여 조정

      mapreduce.input.fileinputformat.split.maxsize

      mapreduce.input.fileinputformat.split.minsize    -- old version 설정


      mapred.max.split.size = 3000

      mapred.min.split.size = 3000      -- new version


      작업할 파일 대상이 10000bytes라면 해당 파일에 대한 작업 3개로 나누어서

      진행함, 만약 input split 사이즈가 지정되어 있지 않으면 hdfs block 사이즈에

      맞춰 mapper 개수가 지정됨


      hive.merge.mapfiles=true

      map job이 끝나면 작업 파일들을 merge함


      hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;

      같은 노드에 있는 minsize보다 작은 파일들을 merge 함

  

'NoSQL > Hive' 카테고리의 다른 글

Hive DML  (0) 2016.10.15
Hive DDL  (0) 2016.10.15
Hue 구성  (0) 2016.06.14
Hive 실행계획  (0) 2016.06.14
HiveServer2 avaliability  (0) 2016.06.14

+ Recent posts