Infra/DB9 [ElasticSearch]기초 알아가기 03. 분석기엘라스틱 서치는 역인덱싱 기술을 통해 전문 검색을 지원한다.이 때 문자열을 나누는 기준이 아주 중요하다.전문 검색: 장문의 문자열에서 부분 검색을 수행하는 것역인덱싱: 장문의 문자열을 분석해 작은 단위로 쪼개어 인덱싱하는 기술엘라스틱 서치는 이를 지원하기 위해 캐릭터 필터, 토크나이저 tokenizer, 토큰 필터로 구성되어 있는 분석기 모듈을 갖고 있다.분석기에 토크나이저는 반드시 하나가 포함되어야 하고, 캐릭터 필터와 토큰 필터는 옵셥이므로 없어도 되고 여러 개를 함께 사용할 수도 있다.엘라스틱 서치에서 제공하는 분석기를 사용할 수 있고, 필터와 토크나이저 조합을 구성하여 분석기를 커스텀해서 사용할 수도 있다.토큰과 용어토큰 token: 토크나이저를 이용해 필터링된 문자열을 자르게 되는데, 이 .. 2025. 6. 23. [Elasticsearch]기초 알아가기 02. 매핑스키마: 관계형 데이터베이스에서 테이블을 구성하는 구성요소 간의 논리적인 관계와 정의를 의미엘라스틱서치에서 스키마 역할을 수행하는 것이 매핑이다.JSON 형태의 데이터를 루씬이 이해할 수 있도록 바꿔주는 작업이다.전문 검색과 대용량 데이터를 빠르게 실시간 검색할 수 있도록 돕는다.엘라스틱 서치가 자동으로 처리하는 다이내믹 매핑과 직접 사용자가 설정하는 명시적 매핑 방식으로 구분할 수 있다.다이내믹 매핑엘라스틱서치는 유연한 활용을 위해 인덱스 생성 시 매핑 정의를 강제하지 않는다.매핑을 따로 설정하지 않는 경우 다이내믹 매핑이 수행된다.JSON 도큐먼트의 데이터 타입에 맞춰 아래와 같이 자동으로 인덱스 매핑을 수행한다.다이내믹 매핑 사용시 인덱스 규모가 커지는 경우 효율이 떨어질 수 있다.예를 들어 숫.. 2025. 6. 18. [Elasticsearch]기초 알아가기 01. elastic search 기초데이터 구조클러스터: 하나의 프로젝트에 하나의 클러스터를 생성해 사용인덱스: 도큐먼트를 저장하는 논리적 구분자도큐먼트: 실제 데이터를 저장하는 단위, JSON 형태, 복수의 필드를 갖는다.MySQL과 비교MySQL엘라스틱서치테이블인덱스레코드도큐먼트컬럼필드스키마매핑매핑 mapping엘라스틱서치 매핑으로 인덱스 스키마와 필드들의 데이터 타입을 지정할 수 있다.타입 type엘라스틱 7.x 이전 버전에 존재했던 데이터 구조이나, 현재는 더 이상 사용하지 않는다. 이전에 인덱스(테이블)처럼 동작했다.하나의 인덱스 내부에서 여러 타입을 지정할 수 있었다.즉, 인덱스 내부에 타입에 따라 각각 다른 스키마의 도큐먼트들을 저장할 수 있었다.도큐먼트데이터가 저장되는 기본 단위로 JSON 형태.. 2025. 6. 17. 몽고DB 구성(Replica Set/Sharded Cluster) 간단히 알아보기 MongoDB ArchitectureReplica SetReplica set은 HA 솔루션이다. Sharding 은 스케일 아웃을 위한 솔루션이다.데이터를 들고 있는 멤버의 상태는 Primary와 Secondary가 있다.데이터가 모두 동일하게 저장되어 한 대가 죽어도 데이터가 유지될 수 있다.장애 발생 시 투표를 위해 과반수가 살아있어야 하므로 홀수 개로 구성해야 한다.Replica Set 구성 시 최소 3대로 구성한다.Failover 시에 자동으로 투표를 통해 Secondary 중 하나가 Primary가 된다.서로 heartbeat을 주고 받으며 상태를 체크한다.동일한 크기의 데이터를 저장할 때, RDB와 비교하여 장비 수가 매우 많이 필요하고 메모리도 더 많이 필요하다는 단점이 존재한다.하나의 Re.. 2025. 5. 31. 이전 1 2 3 다음