2011-08-12 3 views
3

사용자와 관리자간에 메시지를 보내는 작은 메시지 시스템이 있습니다.내 스키마, SQL 방식 및 NOSQL 방식을 설계하는 방법

우리는 다른 관리자가 있으므로 응답을 작성하면 초기 메시지를 알아야합니다.

하나의 대화에서 너무 많은 메시지가 없습니다.

 
conversation{ 
id, 
kind, (the type of conversation, like publish request, edit request, other request) 
user_id, 
} 

message(
id, 
flag,(read and unread or some) 
conversation_id, 
create_time, 
) 

좋은 해결책인지 나는 몰랐다.

이상, 우리 시스템에서도 nosql 데이터베이스를 사용합니다. 그래서이되는 NoSQL 데이터베이스 내 데이터가이 같은 것 생각 : 내가되는 NoSQL 데이터베이스를 사용하는 경우, 그것은 좋은 해결책

 
conversation(
id, 
kind, (the type of conversation, like publish request, edit request, other request) 
user_id, 
message_list[m1, m2, m3, m4.........], 
) 

message_list is a dict: 

message_list{ 
text:text, 
time:time, 
type:(user or system admin), 
} 

입니까?

답변

0

NOSQL은 스키마와 정확히 일치하지 않는 데이터를 가질 계획 인 경우에만 유용 할 것입니다. 위의 코드는 SQL에 잘 맞을 것으로 보이지만 둘 중 하나만 작동합니다.

+0

덕분에 개발자를 쉽게 이해할 수 있습니다. 구현 방법이 다릅니다. –