post-thumbnail

검색 성능 개선 3 - Full Text Index

Full Text Index 긴 문자의 텍스트 데이터를 빠르게 검색하기 위한 MySQL의 부가적인 기능 일반 익덱스와 차이로는, 풀텍스트 인덱스는 긴 문장 전체를 대상으로 인덱싱을 하며, InnoDB와 MyISAM 테이블만 지원하며, char, varchar, text타입 문자만 인덱싱이 가능하며 여러개의 열에 풀텍스트 인덱스 지정 가능 Full-text Index 인덱싱 기법 다음 두 가지 종류의 parser를 이용하여 인덱스를 구축 Built-in parser 또는 Stop-word parser Stop-word 기법을 사용하는 기본 내장 파서 Stop-word가 나타났을 때를 기준으로 토큰을 나눔 -

2023년 2월 17일
·
0개의 댓글
·
post-thumbnail

검색 성능 개선 2 - Covering Index

커버링 인덱스 https://dev.mysql.com/doc/refman/8.0/en/glossary.html#gloscoveringindex > covering index > > > An index that includes all the columns retrieved by a query. > > Instead of using the index values as pointers to find the full table rows, the query returns values from the index structure, saving disk I/O. > > … > > 인덱스는 데이터를 효율적으로 탐색하는 방법이다. > > MySQL은 인덱스 안에 있는 데이터를 사용할 수 있다. > > 이를 잘 활용하면 실

2023년 2월 12일
·
0개의 댓글
·
post-thumbnail

CI / CD - 1

전체 CI CD 구조 우리 프로젝트의 현재(3주차) CI / CD 구조는 다음과 같다. Docker, Docker Compose, Github Actions, EC2를 이용해 CI CD를 구성했다. Docker Compose 여러 개의 도커 컨테이너를 정의하여 한번에 많은 컨테이너를 실행하고 관리할 수 있는 툴이다. 도커 컨테이너로 시스템을 구축하면 하나 이상의 컨테이너가 서로 통신할 때 의존 관계가 생긴다. 각 컨테이너를 따로 실행하여 관리하면 힘들다. docker-compose.yml 파일에 여러 컨테이너에 대한 옵션을 작성하면, docker-compose up 이라는 명령어로 서비스를 시작할 수 있다. CI Pipeline CI 과정은

2023년 1월 22일
·
0개의 댓글
·
post-thumbnail

검색 성능 개선 1 - B-Tree Index 부여

인덱스 수많은 데이터 중에서 특정 조건을 만족하는 데이터를 조회하는데 일일이 검사를 하면 조회 시간이 엄청 증가한다. 데이터를 전부다 조건을 검사하게 되면 검색 성능이 매우 떨어지는 문제가 발생한다. 이를 해결하기 위한 기술이 인덱스다. 인덱스는 일반적으로 책 뒤에 색인 처럼 어느 페이지에 어떤 단어가 있는지 대략적으로 파악할 수 있는 것을 제공하는 것고 비슷하게 해결한다. 인덱스 구조 B-Tree 인덱스 대부분 RDBMS는 B-Tree 인덱스를 사용한다. B-Tree 구조는 다음과 같다. ![](https://velog.velcdn.com/images/leehanju408/post/de0d2240-db3d-49a4-bb6d-565184402c68/image.

2023년 1월 22일
·
0개의 댓글
·