Database/Redis
Redis 디자인 방법론
최-코드
2024. 9. 19. 22:21
방법론
- 어떤 쿼리가 필요한지 먼저 알아내야 한다. 즉, 어떤 데이터에 접근하고 어떤 식으로 변경이 필요한지 쿼리 목록을 작성한다.
- 이 쿼리에 대해 데이터를 어떻게 구조화해야하는지 고민하면 된다.
디자인 고려사항( 단계별 절차 )
- 어떤 타입의 데이터를 저장할 것인지
- string, list, ...
- 데이터의 총 크기를 고려해야 하는지
- 데이터를 너무 많이 저장하는 경우가 발생하는지에 대한 여부
- 만약 데이터를 많이 저장해야 한다면 특정 데이터만 저장하는 방식으로 고려해야 한다.
- ex) html 페이지를 캐싱할 때 사용자마다 다른 페이지를 보여주는 동적인 페이지를 저장하기 보단, 회원가입, 로그인 페이지 같이 정적인 페이지를 저장하도록 해야한다.
- 데이터의 만료가 필요한지
- 키 명명 정책을 어떻게 할 것인지
- 보통 키에 콜론을 넣어 여러 부분으로 나누는 방식을 사용한다.
- 데이터명:ID와 같은 꼴이다.
- ex) users:45, users:posts:901
- ID 바로 앞에 #을 통해 검색을 더 용이하게 할 수 있다.
- ex) users:posts#901
- 비즈니스 로직을 고려해야 하는지