일래스틱서치는 첨부 파일 타입을 플러그인으로 지원한다. (플러그인 설치가 필요하다)
일반 문서를 base64로 인코딩해서 검색할 수 있는 attachment 타입을 지원한다.
내부는 아파치 Tika 프로젝트를 기반으로 되어 있다. 아직도 개발 중이니. 적당하게 쓸만하리라 생각된다.
지원되는 문서가 상당히 많다. 압축파일/동영상 이미지까지 가능하다.
(http://tika.apache.org/1.5/formats.html#Supported_Document_Formats)
PUT /test/person/_mapping
{
"person" : {
"properties" : {
"file" : {
"type" : "attachment",
"fields" : {
"file" : {"index" : "no"},
"title" : {"store" : "yes"},
"date" : {"store" : "yes"},
"author" : {"analyzer" : "myAnalyzer"},
"keywords" : {"store" : "yes"},
"content_type" : {"store" : "yes"},
"content_length" : {"store" : "yes"},
"language" : {"store" : "yes"}
}
}
}
}
}
PUT /test/person/1
{
"my_attachment" : "... base64 encoded attachment ..."
}
참조
https://www.elastic.co/guide/en/elasticsearch/reference/1.4/mapping-attachment-type.html
https://github.com/elastic/elasticsearch-mapper-attachments
http://tika.apache.org/1.5/formats.html#Supported_Document_Formats
'Elasticsearch' 카테고리의 다른 글
[elasticsearch] copy_to 용법 (0) | 2015.07.04 |
---|---|
[elasticsearch] 색인(index) 변경을 별명(alias)로 이용하는 방법 (0) | 2015.07.01 |
[elasticsearch] Geo shape 확장 - spatial4j, jts (0) | 2015.06.29 |
[elasticsearch] geo point 매개변수 (0) | 2015.06.28 |
[elasticsearch] 객체 간의 관계 관리 방법 (object, nested, child) (0) | 2015.06.27 |