나는 간단한 정규화 된 데이터베이스로 웹 사이트에서 일하고있다.합계를 비정규 화해야합니까?
페이지라는 테이블과보기라는 테이블이 있습니다. 페이지를 볼 때마다 해당보기의 고유 레코드가보기 테이블에 기록됩니다.
사이트에 페이지를 표시 할 때 간단한 MySQL COUNT()를 사용하여 표시 할 뷰의 수를 합산합니다.
데이터베이스 디자인은이 문제를 제외하고는 괜찮습니다. 수천 중에서 가장 많이 본 상위 10 개 페이지를 검색하는 방법에 대한 손실이 있습니다.
각 페이지의 총보기 수를 유지하기 위해 Pages.views 열을 추가하여 페이지 테이블을 비정규 화해야합니까? 아니면 가장 많이 조회되는 상위 10 개 페이지를 쿼리하는 효율적인 방법이 있습니까?
+1 성능 문제가 발생할 때까지 총계를 저장하지 않음에 대한 설명입니다. – Thilo