mapping 2

Elasitcsearch 지정된 mapping 정보만 입력되도록 설정하는 방법

-사용목적 elasticsearch를 사용할때 mapping 정보를 입력해서 사용하곤 합니다. 이는 특정 필드를 특정 타입으로 저장하기 위한 일정의 정의 입니다. 그런데 es를 사용할때 위와 같은 maaping의 경우 지정된 필드명에 다른 타입이 들어가는 것은 맊을 수 있으나 지정되지 않은 다른 이름의 필드가 들어가는 것을 맊을수는 없습니다. 시스템 로그를 수집하기 위해 사용하는 ES의 경우는 지정되지 않은 다른 값이 들어와도 상관 없으나(오히려 받아야됨) 무언가 시스템을 운영하는 목적의 es에는 다른 이름의 필드값이 들어가는 것은 좋은 상환은 아닙니다. "type_num" : { "type": "integer" } 위와 같이 mapping 정보를 입력후에 다른 타입의 데이터를 넣으면 입력 에러가 발생하..

IT/elasticsearch 2023.10.10

[ElasticSearch] 인덱스 mapping / dynamic strict

ElasticSearch의 인덱스 는 기존의 RDB처럼 스키마를 생성할 필요가 없습니다. 이는 기존에 존재하지 않는 인덱스에 Create API 만 호출하면 해당 인덱스가 생성되며, 들어온 정보로 Dynamic 매핑정보를 생성합니다. 이번 블로그에서는 인덱스 필드 속성 즉 mapping에 대해 알아보겠습니다. Dynamic mapping 사용자가 전달한 정보로 ElasticSearch에서 알아서 인덱스의 mapping 정보를 생성합니다. 사용자가 전달한 정보가 스트링이라면 text/keyword , 정수숫자라면 long, 논리값이라면 boolean, 날짜라면 data이런식으로 매핑이 자동으로 생성됩니다. 이런식의 Dynamic 매핑 덕분에 최초의 데이터를 쉽게 넣어서 매핑 정보를 확인 하거나 할때 유용하..

IT/elasticsearch 2023.08.21