2012-02-17 6 views
0

내 포럼 시스템을 만들고 싶습니다. 포럼은 이제 모든 메시지를 포함하는 하나 개의 큰 테이블에 대해 응답 할 수 있습니다 다시 (트리 구조)포럼 데이터베이스 디자인

내 데이터베이스 설계를 주요 주제 및 응답에 대한 사용자 캔 응답을 의미 스레드 항목이 포함되어 있습니다. 모든 메시지에는 응답하는 메시지의 ID를 보유하는 'response_to'필드가 있습니다.

나에게 직관적 인 소리가 들더라도, 모든 메시지를 하나의 큰 테이블에 넣는 것이 좋은 디자인인지는 잘 모르겠습니다. 응답 메시지에서 주제를 분리해야합니까?

결론적으로, 포럼 시스템을위한 DB를 설계하는 가장 좋은 방법은 무엇입니까? 모범 사례 디자인을 따라 한 번 해보고 싶습니다.

여러분의 도움에 감사드립니다. 감사합니다, sock.socket :)

+0

가능한 복제본 [스레드 된 포럼을위한 최적의 DB 구조는 무엇입니까?] (http://stackoverflow.com/questions/362215/whats-the-optimal-db-structure-for-a-threaded-forum) –

답변

0

어떤 응답이 (원래 스레드와는 별도로) 응답 할 수 있으면 자체 참조 테이블이 유효합니다. 멀티 레벨 계층 구조에서 정확히 같은 것을 찾을 수 있습니다. 직원 및 관리자.

FROM 내 경험으로 볼 때 중대한 문제는 중첩 된 트리 구조의 코딩이 아니라 많은 수의 스레드를 검색하여 표시 할 때 페이지로드가 발생하거나 자체 참조가 많은 수의 레벨.

MessageID 및 RespondTo 열에 조인 할 때 도움이되는 인덱스가 있는지 확인하십시오.

+0

안녕하세요, 먼저 답변 해 주셔서 감사합니다. 나는 성능에 대해 당신이 말한 것을 이해하지 못했습니다. 빠르게 작동 시키려면 어떻게해야합니까? 감사합니다. – socksocket