일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 형변환
- eclipse 설정
- JavaScript
- Excel
- elasticsearch
- tomcat
- 엘라스틱서치
- 한글 깨짐
- docker
- 쿼리
- 도커
- JSP
- spring 오류
- 데이터베이스
- Java
- Eclipse
- 자바스크립트
- java 오류
- 엑셀
- jQuery
- spring form
- 이클립스
- 자바 리스트
- 자바
- CSS
- db
- 인텔리제이
- 에러
- 이클립스 설정
- HTML
- Today
- Total
목록Programming/ElasticSearch (10)
개발노트
1. UpsertUpsert는 Elasticsearch에서 문서가 존재하면 업데이트하고, 존재하지 않으면 새로 삽입하는 작업을 수행하는 기능입니다. 2. Upsert 동작 방식1) 문서가 존재하는 경우 upsert 데이터는 무시됩니다.doc 또는 script를 사용해 기존 문서의 일부만 업데이트합니다.2) 문서가 존재하지 않는 경우upsert 데이터를 사용해 새로운 문서를 생성합니다. 3. Upsert 구조POST /index_name/_update/document_id{ "doc": { "field1": "value1", "field2": "value2" }, "upsert": { "field1": "default_value1", "field2": "default_value..
Elasticsearch에서 script는 쿼리나 집계(Aggregation) 실행 시 커스텀 로직을 적용하기 위해 사용하는 기능입니다.스크립트를 사용하면 데이터 검색, 필터링, 집계, 업데이트 등 다양한 작업을 더 동적으로 처리할 수 있습니다.[주요 기능 및 용도]필드 값 계산예: 특정 필드 값을 조합하거나 계산하여 검색 조건에 사용._source에서 데이터를 불러와 계산 가능.조건부 로직 적용특정 조건에 따라 문서를 필터링하거나 결과를 조정.예: 특정 필드 값이 특정 범위 안에 있는 문서만 검색.커스텀 점수 계산 (Scoring)기본 점수 계산 로직을 덮어쓰고 커스텀 점수를 적용.예: 특정 키워드가 포함된 문서에 높은 점수를 부여.집계 결과 조정집계 도중 데이터를 가공하거나 커스텀 계산 수행.예: 평..
1. doc기능: 특정 필드의 값을 지정된 값으로 대체합니다.용도: 문서에서 일부 필드를 수정하거나 추가할 때 사용합니다.작동 방식:요청에 지정된 필드만 변경됩니다.지정되지 않은 필드는 유지됩니다.doc은 간단한 값을 업데이트할 때 적합합니다.POST /my_index/_update/15{ "doc": { "author" : "John Doe" }, "upsert": { "title" : "Elasticsearch Basics", "author" : "Jane Doe", "publish_date" : "2024-05-09", "tags" : ["search", "analytics"] }} 기존 문서에서 author 필드만 "John Doe"로 수정됩니다.기존 데이터에서 ..
Health 체크 GET /_cluster/health 샤드 확인GET /_cat/shards?v 인덱스 확인GET /_cat/indices?v 인덱스 생성PUT /my_index -- 인덱스명{ "settings": { "index" : { "number_of_shards" : 1, -- 샤드수 "number_of_replicas" : 1 -- 레플리카 샤드수 } }} document 생성POST /인덱스명/_doc/아이디번호{ 정보}POST /my_index/_doc/100{ "title" : "Elasticsearch Basics", "author" : "John Doe", "publish_date" : "2024-05-09", "tags" : ["searc..
Elastic Stack(이전에는 ELK Stack이라고도 불림)은 Elasticsearch, Logstash, Kibana 그리고 Beats로 구성된 데이터 수집, 저장, 분석, 시각화 솔루션입니다. Elastic Stack은 다양한 소스에서 데이터를 수집하여 실시간으로 검색, 분석하고 대시보드를 통해 시각화할 수 있게 해줍니다. 주로 로그 관리, 시스템 모니터링, 보안 분석 등 데이터 분석과 모니터링에 널리 사용됩니다.Elastic Stack의 구성 요소는 다음과 같습니다:1. Elasticsearch검색 및 분석 엔진: Elastic Stack의 핵심인 Elasticsearch는 검색 및 분석을 위한 분산형 데이터 저장소입니다. JSON 형식의 문서를 인덱싱하고 빠르게 검색할 수 있는 기능을 제공합..
공통점 → 둘 다 문자열을 나타내기 위한 타입니다. 차이점TEXT 타입KEYWORD 타입전문 검색(Full-text search)을 위한 토큰 생성Exact Matching을 위한 토큰 생성 1. TEXT 타입 - 전문 검색(Full-text search) "I am a boy"라는 데이터가 색인되면, "I", "am", "a", "boy"로 공백을 기준으로 데이터가 색인된다. → "boy"를 입력하면 "I am a boy"가 검색 결과에 보여진다. 2. KEYWORD 타입 - Exact Matching "I am a boy"라는 데이터가 색인되면, "I am a boy" 그대로 데이터 자체로 색인된다. → "boy"를 입력하면 "I am a boy"가 검색되지 않고, "I am a boy" 색인..
매핑(Mapping) 이란? 문서의 구조를 나타내는 정보이다. ElasticSearchRDBMSmappingschema 매핑(Mapping)의 종류종류정의동적 매핑(Dynamic Mapping)처음 색인되는 문서를 바탕으로 매핑 정보를 ElasticSearch가 동적(자동)으로 생성정적 매핑(Static Mapping)문서의 매핑 정보를 미리 정의 1) 동적 매핑 (Dynamic Mapping) - 어떤 문서가 색인될지 스키마를 미리 정의하지 않아도 된다. - 동적 매핑에 의해 매핑 정보가 생성된 후에는 타입이 맞지 않을 경우 파싱 에러가 발생한다. 2) 정적 매핑 (Static Mapping) - 어떤 문서가 색인될지 스키마를 미리 정의한다. - 모든 필드를 미리 정의할 필요가 없으며(정하지 않은 필..
인덱스(Index) 란? JSON문서가 저장되는 논리적인 공간이다. = 문서의 모음을 유지하는 논리적 네임스페이스이며, 각 문서는 필드의 모음이고, 필드는 데이터를 포함하는 키-값 쌍입니다. (출처 : 엘라스틱 서치 블로그 https://www.elastic.co/kr/blog/what-is-an-elasticsearch-index ) RDBMS를 이용한 비유를 하자면, 아래의 표와 같다. ElasticSearchRDBMS인덱스 (index) 데이터베이스 (database)매핑 (mapping)스키마 (schema)문서 (document)행 (row)[RDBMS의 경우]1. 데이터베이스를 생성하여 데이터가 저장되는 논리적인 공간을 생성2. 스키마를 통해 행(row)의 이름, 데이터유형(number, va..