2012-11-13 2 views
0

나는 MySQL 데이터베이스가있는 프로젝트를 가지고 있으며 다양한 데이터 세트를 업로드 할 수 있기를 원합니다. 내가 레스토랑 리뷰 어 그리 게이터를 만들고 있다고 가정 해보십시오. 그래서 우리는 우리가 손에 넣을 수있는 식당 리뷰의 모든 출처를 계속 추가하고 모든 정보를 유지하고자합니다.알 수없는 열의 RDBMS 스키마

내가 테이블이

========================= 
| id | name    | 
========================= 
| 1 | Zagat   | 
| 2 | GoodEats Magazine| 
| ...     | 
| 50 | Allergy News  | 
========================= 

review_sources이 이제 그들이 필드가

===================================================================== 
| id | Restaurant Name  | source_id | Star Rating | Description | 
===================================================================== 
| 0 | Joey's Burgers  | 1   | 3.5   | Wow!  | 
| 1 | Jamal's Steaks  | 1   | 3.5   | Yummy!  | 
| 2 | Jenny's Crepes  | 1   | 4.5   | Sweet!  | 
| ....                | 
| 253| Jeeva's Curries  | 3   | 4   | Spicy!  | 
===================================================================== 

이제 누군가가 "알레르기 뉴스"의 평가 의견을 추가하고 싶은 생각 나는 테이블 리뷰가 "nut- 말 비어 있는". 또는 리뷰의 소스는 kashrut 컴플라이언스 또는 할랄 컴플라이언스 또는 완전 채식주의 자의 정도를 나타낼 수 있습니다. 나는 디자이너로서 미래의 데이터 소스가 가질 수있는 가능한 선택적 필드를 모른다. 질문에 답변 할 수 있기를 바랍니다.

  • Zagat 리뷰의 모든 필드는 무엇입니까?
  • 검토를 위해 id = x 인 경우 '채식주의 자 친화적 인'입력란의 값은 무엇입니까?

그렇다면 이러한 서로 다른 데이터 소스를 처리하고 이러한 쿼리에 응답 할 수있는 스키마를 어떻게 디자인해야합니까? NoSQL을 사용하지 않는 이유는 특정 유형의 정규화가 필요하고 이것이 기존 MySQL 기반 프로젝트의 일부라는 것입니다.

답변

0

review_id, field (예 : "비건 친화적 인") 및 필드 값을 포함하는 테이블과 다 - 대 - 다 관계를 사용할 것입니다. 그럼 물론 review_fields 테이블을 다른 테이블과 매핑합니다.

건배

관련 문제