안녕하세요.
운영 중인 솔루션의 데이터가 갑자기 많이 늘어서 조회가 느려져서 옵티마이징 고민 중에 있는 몹쓸 개발자입니다.
일단 인덱스는 제대로 걸려있고 실행계획 자체도 제대로 나와서 인덱스로는 한계를 느끼고 있어서 문의드립니다.
현재 sharding(로직적으로 푸는)을 고민중에 있습니다.
몇몇 데이터가 많은 테이블에는 basic_date 컬럼이 있어서 해당 컬럼으로 키값으로 파티셔닝하면 될거같은데
member(사용자) 테이블과 속성이 거의 같은 테이블이 하나 있습니다. 해당 테이블에도 데이터가 많구요
지역 속성의 컬럼으로 수평 파티셔닝을 하자니 한쪽으로만 데이터가 너무 몰릴것같고 다른 속성으로 파티셔닝하기에는 속성값이 좀 힘들거같습니다.
다른 방식의 sharding이나 다른 방법이 있는지 문의드립니다.
그리고 현재 사용중인 조회 페이징 처리 방식은 오라클 방식으로 rownum으로 자르는 방식을 사용 중입니다.
이 방식 말고 더 좋은 방식이 있으면 가르침 부탁드립니다. |