배지 시스템을 구현하려는 중입니다. 배지는 변경 될 수있는 사용자의 메타 데이터를 기반으로합니다.EAV 대 직렬화 된 객체 대 Xpath가있는 SQL?
이러한 메타 데이터는 가변적이며 즉시 설정됩니다. 메타 데이터의
예 : isActiveMember
commentCount
hasCompletedProfile
- 나중에, 내가 이런 이유로,
hasGravatar
메타 데이터를 추가 할 것 등 난 쉽게 할 수 없습니다 테이블을 디자인하고 정규화하십시오.이러한 데이터는 응용 프로그램에서 중요한 부분을 차지하지만 '합리적인'것이 아니기 때문에 거의 모든 메타 데이터를 다시 계산할 수 있습니다. 이는 데이터의 무결성이 제약 조건이 아니라는 것을 의미합니다.
현재 내가 알지는 못하더라도 세 가지 옵션을 알고 있습니다.
- EAV
- 직렬화 된 객체
- XML 필드 (나는 열에 XML을 저장하는 것이 가능하다는 것을 어딘가에 읽고, 데이터를 쿼리하는 XPATH 또는 무언가를 사용)
이 모든 옵션은 프로 & 죄수 팀을 가지고있는 것처럼 보이지만, 나는 결코 그들과 실험을 해본 적이 없기 때문에, 나는 정말로 모른다.
의견이나 조언이 있으십니까? 당신은 가능성이 임의의 데이터를 저장하기 위해 1 열을 사용하는 것 같은 나는 현재 MySQL 서버