products에 category_name을 함께 저장
products(id, name, category_id, category_name)
조회 시 조인 없이 바로 읽을 수 있지만, 같은 이름이 여러 상품 행에 중복됩니다.
상품 목록에 카테고리명을 보여줘야 할 때, DB에 값을 복제하면 조회는 단순해지지만 변경이 무거워지고, Redis 캐시는 정규화를 유지한 채 조회 시 조합하도록 바꿉니다.
조회 시 조인 없이 바로 읽을 수 있지만, 같은 이름이 여러 상품 행에 중복됩니다.
DB는 category_id만 유지하고, 조회 시 캐시에서 이름을 붙입니다.
읽기 편의를 위해 만든 복제 값이 쓰기 비용과 일관성 관리 부담으로 돌아옵니다.
변경 전파 범위가 캐시 키 단위로 좁아져 정규화를 유지한 채 운영하기 쉽습니다.
카테고리 이름이 바뀔수록 중복 데이터와 대량 UPDATE 비용이 눈에 띄게 커집니다.
캐시 미스, 재구성, 장애 시 DB fallback 같은 운영 전략을 함께 준비해야 합니다.