목록2024/11 (2)
DHistory
개요대용량 데이터 검색을 진행함에 있어 ElasticSearch, MySQL FullText, MySQL Like의 성능을 비교를 했습니다.검색을 진행한 조건은 다음과 같습니다. 1. "abc" 로 시작하는 단어가 포함된 경우 → "def abcd gcf"2. "abc" 문자가 포함된 경우 → "def dabc gcf" Performance 비교는 hey를 활용하였습니다. Table Schema현재 데이터 건수는 275,684건이며 title에 index / fulltext 가 정의되어있습니다.Create Table: CREATE TABLE `post` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '(AI) ID', `title` varchar(100) COL..
개요SNS NewsFeed 조회 시 팔로잉 유저들의 최신 게시글을 조회해야합니다.팔로잉한 유저의 수가 1800명이고 각 유저들이 1000개씩 글을 작성했다고 가정합니다.게시글의 전체 데이터 개수는 1,800,000 건입니다. 팔로잉한 유저들의 게시글 중 최근 100개의 게시글을 조회를 진행해보겠습니다. 일반 쿼리 조회 구현 시 피드 목록 조회 시 비용이 비싼 쿼리를 조회해야합니다.(Post의 Dummy Data를 대규모 데이터로 넣기 위해선 시간이 오래 걸리므로 비싼 쿼리로 만들어 진행)@Service@RequiredArgsConstructorpublic class FeedService { private final PostRepository postRepository; private fina..