2011-12-27 6 views
1

이 질문은 성능과 관련된 것입니다. 나는 매우 적은 수의 컬럼을 가진 많은 테이블을 가지고 있지만 하나의 오브젝트에 대해 여러 개의 행을 가진 프로젝트에서 일하고 있습니다.정보가 적은 다중 레코드 또는 MySQL에 많은 정보가있는 레코드 하나가

예를 들어 "personID", "field"및 "value"열만있는 "person_data"테이블. 한 사람에게는 someID, "name", "someName"과 같은 20 개의 레코드가 있습니다. someID, "성", "someSurName"등 ...

데이터를 읽거나 쓸 때 우리는 항상 1 인의 모든 값을 쓰거나 읽습니다. 성능의 관점에서 "이름", "성"등의 테이블에 20 열만 있으면 좋을 것입니다 ...

감사합니다.

+1

0120-13d 답을 읽고 아이디어를 얻으십시오 – Darvex

+0

EAV를 사용하고 있습니다 : http://en.wikipedia.org/wiki/Entity-attribute-value_model –

+1

이 질문을 확인하십시오 : http://stackoverflow.com/questions/4066463/should -i-use-eav-model –

답변

0

일부 개체의 속성 번호가 자주 chenging되지 않으면 동일한 테이블에 해당 속성을 저장해야합니다. 하나의 테이블에서 데이터를 선택하는 것은 조인과 외래 키를 사용하여 동시에 많은 테이블에서 데이터를 선택하는 것보다 빠릅니다.

관련 문제