반응형
1. 일관된 데이터 모델링
- 정규화를 적용하여 중복을 최소화 하여 데이터 무결성을 유지
2. 비즈니스 로직 분리
- 데이터베이스에 직접적인 비즈니스 로직을 내장하는 것을 피하고, 서비스나 애플리케이션 레이어에서 비즈니스 로직을 처리
3. 조회 최적화
- 필요한 데이터만 조회하고, JOIN 등 복잡한 연산 최소화. 필요한 데이터를 미리 계산하여 캐싱하거나, 뷰를 활용하여 미리 계산된 결과 조회
4. 인덱스 활용
- 필요한 칼럼에 인덱스를 생성하여 검색 성능 향상, but 과도한 인덱스 생성은 쓰기 성능에 부정적 영향 끼칠 수 있음
5. 쿼리 캐싱
- 자주 사용되는 쿼리 결과를 캐시하여 반복 실행 줄이고 성능 향상
6. 트랜잭션 사용 최소화
- 트랜잭션은 데이터 일관성과 무결성을 유지하기 위해 필요하지만, 필요치 않은 범위에서 트랜잭션 사용하는 것을 피하고, 최소화
7. 배치 처리
- 대량의 데이터 처리를 할 때는 배치 작업을 활용하여 효율적으로 처리.
8. 프로시저 및 함수 활용
- DB 내부에서 로직을 처리하는 스토어드 프로시저나 함수를 사용하여 앱과 DB간 통신 최소화하고 성능 개선
9. 데이터 캐싱
- 자주 사용되는 데이터를 캐싱
10. 적절한 인덱스 및 제약 조건 활용
- 테이블의 인덱스와 제약 조건을 활용하여 무결성 보장하고 검색 성능 향상
반응형
'TIL ✍️' 카테고리의 다른 글
24년 1월 30일(화요일) - 79번째 TIL :레디스(2) : 복제 & 센티널 (1) | 2024.01.31 |
---|---|
24년 1월 29일(월요일) - 78번째 TIL :레디스(1) : 캐싱 전략 (0) | 2024.01.31 |
24년 1월 24일(수요일) - 76번째 TIL : StringRedisTemplate (1) | 2024.01.31 |
24년 1월 23일(화요일) - 75번째 TIL (0) | 2024.01.31 |
24년 1월 22일(월요일) - 74번째 TIL : 쿼리 최적화 (0) | 2024.01.31 |