2014-02-22 3 views
2

create_timeupdate_time에 어떤 테이블을 추가해야하는지 궁금합니다.타임 스탬프 생성/업데이트 - 추가/사용시기?

내가 video 테이블, video_detail 테이블, tag 테이블과 tag_video_relation 테이블이있는 경우.

나는 테이블 (예 : tag``tag_video_relation 등) create_timeupdate_time column.But 필요하지 않습니다 알고 videovideo_detail에 대해?

video 테이블에 백만 개의 행이있는 경우 create_timeupdate_time은 많은 저장 공간이 필요합니다.

그래서 어떤 상황에서 어떤 시간에 create_timeupdate_time이 필요합니까?

답변

2

필자는 모든 테이블에 필드를 추가하는 것이 가장 좋은 것으로 밝혀졌습니다.

문제 및 문제를 조사하고 문제가 발생한시기를 식별하는 데 도움이됩니다. 이들은 진단 및 디버깅 문제에서 매우 중요합니다.

새 모델/테이블의 기본 템플릿 ('skeleton')이 created_at 및 updated_at를 자동으로 포함하는 Ruby On Rails와 같은 프레임 워크에서이 접근법을 볼 수 있습니다.

tag_video_relation의 경우 create_time 및 update_time이 필요하지 않습니다. 실제로 이러한 종류의 관계에 유용한 열이라고 생각합니다. 많은 경우 관계가 만들어 졌는지 알 수있는 능력이 유용한 정보입니다. 관계에 대한 'updated_at'열은 관계가 작성되거나 삭제 된 경우에만 업데이트 필드가없는 경우 일 수 있습니다.

스토리지 측면에서 볼 때, Oracle, SQL Server 및 Postgres와 같은 현대 rdmbs에서는 일반적으로 문제가되지 않는 사소한 문제라고 생각합니다. 수백만 행의 정보를 신속하게 검색 할 수 있도록하기위한 것입니다. 수천 개의 테이블.

필자는 오랜 기간 (오래된 기술과 새로운 기술 모두) 응용 프로그램과 데이터웨어 하우징에서 많은 작업을 해오 고 있으며 많은 테이블에 필드를 자주 추가하는 추세로 인해이 의견을 제시하게되었습니다. 레일즈와 같은 프레임 워크가이 개념을 사용한다는 사실은 이제 내 자신의 연습에 대한 좋은 검증처럼 보입니다.