2013-08-21 2 views
0

장르별로 분류 된 거대한 영화 목록이 있다고 가정 해 보겠습니다. 사용자는 영화에 투표 할 수 있으며 각 영화는 여러 장르에있을 수 있습니다.카산드라 데이터 모델 디자인

카테고리별로 상위 X 영화를 표시하려면 카산드라에 이것을 저장하는 좋은 방법은 무엇입니까? 필요한 다른 열 패밀리를 가질 수 있으므로 다른 사용 사례는 무시하십시오 (예 : 자세한 동영상 정보 제공).

액션

  1. 한 영화
  2. 영화 B
  3. 동영상 C

코메디

  1. 영화 D
  2. 영화 E
  3. 영화 '

답변

0

당신이 제출 한 정보 - 난 당신이 단 하나의 컬럼 패밀리를 작성하는 요구 사항을 준 말을 기준으로합니다.

열은 - 영화 이름, 범주 및 영화에 대한 다른 속성이됩니다.

원본 열 패밀리의 '구체화 된 뷰'와 같은 다른 구조로 여러 열 패밀리를 작성하는 것이 일반적입니다.

Cassandra에서는 응용 프로그램이이를 사용하는 방법에 따라 열 패밀리를 설계합니다. 따라서 먼저 쿼리를 설계 한 다음이를 지원할 열 패밀리를 설계하십시오.

+0

예,이 단일 열 패밀리를 설계하는 방법에 대한 지침이 필요합니다. 제가 물어 보려고하는 것은이 기둥 패밀리가 어떻게 생겼는지입니다. 예를 들어 필자의 컬럼 계열은 genre, number_of_votes 및 movie_name을 기반으로하는 복합 기본 키를 가질 것이며 'select * FROM movies WHERE genre ='라고 말할 수있는 방식으로 'number_of_votes desc'만큼 클러스터링 순서를 사용한다고 말할 수 있습니다. '액션'리밋 5 '로 상위 5 액션 영화를 제작합니다. 이 문제는 장르마다 하나의 쿼리를 작성해야하며 가장 중요한 것은 기본 키의 일부이기 때문에 투표 수를 업데이트 할 수 없다는 것입니다. – user1845791

관련 문제