elasticsearch과 hadoop을 바인딩해서 사용할 수 있다.
https://www.elastic.co/guide/en/elasticsearch/hadoop/current/reference.html
요구사항은 다음과 같다. 특이점음 1.x부터 5.5까지 하위 호환성은 유지시켜 준닥.
https://www.elastic.co/guide/en/elasticsearch/hadoop/5.5/requirements.html
하이브 주요 내용은 다음과 같다.
https://www.elastic.co/guide/en/elasticsearch/hadoop/current/hive.html
다음과 비슷하게 hive 테이블을 생성할 수 있다.
CREATE EXTERNAL TABLE IF NOT EXISTS artists (...)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'radio/artists',
'es.index.auto.create' = 'false') ;
주요 하이브 테이블 설정은 다음과 같다.
https://www.elastic.co/guide/en/elasticsearch/hadoop/current/configuration.html
1. 'es.resource'=하둡 디렉토리
2. 'es.input.json` = 'yes'
json 입력을 가능케 해준다. 기본값은 false이다. 문서에는 true가 아니라 'yes'라고 입력되어 있다.
es.input.json
(default false)3. 'es.nodes'='${target_es_dns}'
elasticsearch node는 대부분 클러스터이기 때문에. es.node를 사용할 때는 해당 노드로 저장케 한다.
es.nodes
(default localhost)mynode:9600
).4. 'es.mapping.id' = did
document ID 로 사용한 다큐먼트 필드/프로퍼티
es.mapping.id
(default none)5. 'es.query' = '?q=me*'
쿼리 결과도 저장할 수 있다.
6. batch 관련 설정
'es.batch.write.refresh'='false'
'es.batch.size.bytes'='10mb'
'es.batch.size.entries'='0'
es.batch.size.bytes
(default 1mb)es.batch.size.entries
(default 1000)es.batch.size.bytes
, once one matches, the batch update is executed. Similar to the size, this setting is per task instance; it gets multiplied at runtime by the total number of Hadoop tasks running.es.batch.write.refresh
(default true)es.batch.write.retry.count
(default 3)'Elasticsearch' 카테고리의 다른 글
[일래스틱서치] “Hot-Warm” architecture - 퍼옴 (0) | 2017.09.01 |
---|---|
[elasticsearch5] dynamic template (0) | 2017.08.23 |
[elasticsearch5] queue size 변경 (0) | 2017.08.22 |
[elasticsearch] 쿼리 취소하기 (0) | 2017.08.21 |
[elasticsearch5] thread pool status (0) | 2017.08.18 |