CQRS(Command And Query Responsibility Segregation) 명령과 조회의 책임을 분리한다.
비즈니스 로직은 적절히 나눠지지만, 조회하는데 사용하는 모델은 하나의 모델이 명령과 조회에 모두 사용되는 경우가 많음.
히스토리를 다 알고있지 않은 경우, 자칫 잘못하면 특정 데이터를 사용할수 있고, 리펙토링을 시도할때 다른 영역에 영양을 줄 수 있다보니 훨씬 더 까다로워지고 어려워지는 문제를 마지함.
이 문제를 해결하기 위해 큰 도메인 안에서 명령과 조회에 해당하는 영역을 나눠 문제를 해결하는 것이 CQRS가 바라는 방향
고객에게 전달되는 데이터 흐름대로 DB 스키마를 설계하는 경우는 많지 않다.
데이터 스키마는 정규화 형태로, 전시 도메인에선 비정규화 하는 작업 필요.