Database
mysql limit, offset과 id 기반 조회 비교 분석
안녕하세요. 최근 mysql database를 사용하여 데이터를 가져오는 테스트를 하고 있었는데, 유의미한 결과가 있어 공유하려 합니다. 먼저 간략하게 테스트하는 환경과 조건을 말씀드리겠습니다. 1. 테이블에 데이터는 모두 100만 건이 들어가 있습니다.2. paging 처리하는 쿼리와 id 기반으로 검색하는 두 개의 쿼리를 비교하였습니다. 테이블create table exmaple( id bigint auto_increment primary key NOT NULL, version bigint default 0 not null comment '상품 버전', product_id ..
MongoDB를 활용하여 Repository 구현
모든 소스 코드는 https://github.com/lkimilhol/matchingProject 에서 확인 가능합니다. 안녕하세요. 저번에 MongoDB(이하 몽고) 설치하였고, 계속해서 간단하게 데이터가 들어가는지 정도 확인을 했었는데요. 이번에는 기획 단계를 하나 추가해 볼까 해요. 바로 주문 히스토리를 몽고를 사용하여 쌓도록 하는 것입니다. 다음과 같은 생각으로 이런 기획을 결정하였어요. NOSQL에서 업데이트가 빈번하지 말아야 한다. 히스토리 기록은 계속해서 데이터를 쌓는다. 히스토리 기록을 통해 데이터를 조회하고 이를 가공해서 추후에 지표를 추출 할 수 있다. 이 때 몽고디비가 적절할 것이라고 판단했다. 몽고는 확장에 용이하기에 서비스의 트래픽이 증가하면 이에 대한 관리가 쉬울 것. 위의 내용..
Spring-data-mongodb + docker 사용해보기
안녕하세요. 오늘은 토이프로젝트에 몽고 디비(이하 몽고) 설정을 추가해 보려고 합니다. 실무에서 몽고를 사용한 적은 있었는데요. 뭔가 깊게 사용해보지 않았다는 생각이 많았었어요! 이번 기회로 프로젝트에 몽고 의존성을 추가해보고 기획 내용을 추가하여 몽고를 사용 해보도록 하겠습니다. 모든 소스 코드는 https://github.com/lkimilhol/matchingProject 에서 확인 가능 합니다! 1. 도커에 몽고 설치 일단 저는 도커를 이용하려고 해요. docker를 pull 받도록 해보겠습니다. docker pull arm64v8/mongo 잘 추가가 되었네요. 이제 아래 명령어를 사용하여 몽고를 띄워놓겠습니다. docker run -d -p 27017:27017 --name mongo 3941..