Elasticsearch

    [Elastic] DB 데이터 dump하는 방법 : Elasticsearch 데이터를 export, import 하자! (feat. elasticdump)

    엘라스틱덤프를 이용하여 인덱스의 export, import를 진행 보고자 한다. elasticdump 설치 elasticdump 설치가 되어있지 않다면 설치를 진행 npm install elasticdump -g 잘 설치 되었는지 확인 elasticdump --version index의 document 내보내기(export) & 가져오기(import) index의 document 내보내기 로컬 엘라스틱서치에 있는 bank인덱스의 데이터를 bank.json파일로 내보내고자 한다 elasticdump --input=http://localhost:9200/bank --output=./bank.json 만약 프로토콜이 https라면 NODE_TLS_REJECT_UNAUTHORIZED=0 옵션을 명령어 앞에 추가..

    [Elastic] Elasticsearch 인덱스 생성 및 삭제: shards, replica, mapping...

    인덱스 생성 1. 인덱스 생성: 샤드, 레플리카 설정 1.1 인덱스 생성: shards=3, replicas=2 PUT /$index { "settings": { "index": { "number_of_shards": 3, "number_of_replicas": 2 } } } shards 개수는 생성 이후 변경 불가능하고 replicas 개수는 변경 가능합니다. 1.2 인덱스 생성: default shards, replicas // default shards: 1, replicas: 0 PUT /$index 2. 인덱스 생성: 스키마(mapping) 생성 + 샤드, 레플리카 2.1 스키마리스(schemaless) Elastic Search는 RDB 처럼 데이터를 insert하였을 때 테이블이 없다면데이터..

    [Elastic] Elasticsearch 구문 검색: 기본 Query 정리(Elastic Query DSL)

    Query DSL( Domain Specific Language ) json 포맷으로 query를 만들어서 검색을 해보는 Query DSL에 대해 알아보겠습니다. 물론 SQL 문으로 검색할수도 있지만, elastic에서는 검색할 때 대부분 Query DSL을 사용하므로 이 방법을 익혀두는 것이 좋습니다. 앞으로 소개 할 query 절은 Query Context 또는 Filter Context에서 사용되는지 여부에 따라 다르게 동작합니다. Query Context: "해당 document가 query 절과 얼마나 잘 일치하는가?"라는 질문에 응답하는데, document가 얼마나 잘 일치하는지를 _score( 관련성 점수, relevance score )로 표현합니다. Filter Context: "해당 d..

    [Elastic] Elasticsearch 구문 검색: 원하는 데이터를 삭제하자

    Elasticsearch에서 원하는 데이터 삭제하기 POST 인덱스명/타입명/_delete_by_query e.g. 인덱스: test, 타입: _doc인 document 내용(json 데이터)를 모두 삭제 POST test/_doc/_delete_by_query { "query": { "match_all": {} } } e.g. 인덱스: test, 타입: _doc인 document 내용(json 데이터) 중 "data"라는 필드가 없는 데이터를 삭제 POST test/_doc/_delete_by_query { "query": { "bool": { "must_not": [ { "exists": { "field": "data" } } ] } } } + 특정 필드가 존재하는 인덱스를 추출하는 쿼리 GET te..

    [Elastic] Elasticsearch CRUD 정리: 데이터 다루기

    1. 데이터 제어하기 1.1 Elasticsearch 저장 구조 (RDB VS Elasticsearch) 엘라스틱서치에 데이터를 넣고 조회해보기 전에 기존의 RDB와는 다른 저장 구조를 먼저 파악해야합니다. database column data schema RDB table column row schema Elasticsearch index field Json mapping Elasticsearch는 http프로토콜을 통해 데이터를 삽입하거나 조회, 수정, 삭제 CRUD 작업을 할 수 있습니다. 사이트중에 http통신을 지원하는 사이트를 통해 진행하거나 크롬 확장앱인 Postman등을 사용하시면 됩니다. 요청하는 포멧은 아래처럼 맞춰줘야 합니다. http:// :/// 2. HTTP Method 2.1 ..