[SQL] 데이터베이스 효율 - 사용자의 사용자 대 테이블 당 테이블
SQL데이터베이스 효율 - 사용자의 사용자 대 테이블 당 테이블
웹 사이트에 대한 사용자를 가진. 우리는 "게시물"을 전화 할게의 금액을 만들 수있는 능력을 가진 각 사용자 :
효율성 - 현명한 - 생성 단지 게시물 또는 각 사용자에 대해 다른 별도의 테이블을 생성하고 거기에 넣어 - 더 나은 각 게시물에 대한 게시물을 작성한 사용자의 사용자 ID를 절약 모든 게시물에 대한 하나 개의 테이블을 만드는 것입니다 해당 사용자에 의해?
해결법
-
==============================
1.당신이 그것에 더 많은 데이터를 추가 할 때 사용자 데이터가 확실히 하나 개의 테이블에 있어야하므로 데이터베이스 레이아웃은 변경하지 마십시오.
당신이 그것에 더 많은 데이터를 추가 할 때 사용자 데이터가 확실히 하나 개의 테이블에 있어야하므로 데이터베이스 레이아웃은 변경하지 마십시오.
또한:
-
==============================
2.그런데 특정 질문에 답 : 쿼리의 효율성 측면에서를, 항상 작은 테이블을 가지고 더 좋을 것이다, 따라서 사용자 당 테이블이 가장 효율적인 것으로 예상된다.
그런데 특정 질문에 답 : 쿼리의 효율성 측면에서를, 항상 작은 테이블을 가지고 더 좋을 것이다, 따라서 사용자 당 테이블이 가장 효율적인 것으로 예상된다.
이 게시물과 많은 사용자가 않는 한,이 문제 가능성이 없습니다. 심지어 수백만 개의 행과 함께, 당신은 잘 배치 인덱스 좋은 성능을 얻을 것이다.
이 솔루션에 많은 복잡성을 추가하기 때문에 난 강력하게, 테이블 당 사용자 전략에 대해 조언한다. 당신은 어떻게 당신이 년 이내에있는 피사체에 게시 한 사용자, 말, 찾을 필요가있을 때 쿼리 것?
최적화 당신이 필요할 때. 당신이 생각하지 때문에 / 두려워 무언가가 느려질 수 있습니다. (그리고 당신은 최적화가 필요한 경우에도, 테이블 당 사용자가 더 쉽게 옵션이있을 것입니다)
-
==============================
3.테이블의 가변 번호 스키마는 일반적으로 나쁘다. 게시물에 대한 하나 개의 테이블을 사용합니다.
테이블의 가변 번호 스키마는 일반적으로 나쁘다. 게시물에 대한 하나 개의 테이블을 사용합니다.
-
==============================
4.성능이 필요한 경우, 데이터베이스 인덱스에 대해 배워야한다. 인덱스는 SQL 표준의 일부는 아니지만, 거의 모든 데이터베이스는 성능을 개선하는 데 도움을 지원합니다.
성능이 필요한 경우, 데이터베이스 인덱스에 대해 배워야한다. 인덱스는 SQL 표준의 일부는 아니지만, 거의 모든 데이터베이스는 성능을 개선하는 데 도움을 지원합니다.
난 당신이 모든 사용자의 게시물에 대한 하나의 테이블을 만든 다음 검색의 성능을 향상시키기 위해이 테이블에 인덱스를 추가하는 것이 좋습니다. 신속 특정 사용자에 대한 모든 게시물을 찾을 수 있도록 예를 들어, 당신은 사용자 컬럼에 인덱스를 추가 할 수 있습니다. 당신은 또한 응용 프로그램의 요구 사항에 따라, 다른 인덱스를 추가하는 것이 좋습니다.
-
==============================
5.단일 사용자와 단일 포스트 테이블을 갖는 첫 번째 제안은 취할 수있는 표준 방법입니다.
단일 사용자와 단일 포스트 테이블을 갖는 첫 번째 제안은 취할 수있는 표준 방법입니다.
현재 게시물에서 귀하의 사이트에있는 유일한 사용자 고유의 기능을 할 수 있지만, 메시지, 환경 설정 등 폭발에 이제 별도의 테이블 사용자 별 접근 리드를 가진 지원 사용자에게 미래의 성장해야 할 수도 상상할 수 있습니다 테이블 수에 당신은 만들 필요가 것입니다.
from https://stackoverflow.com/questions/7544544/database-efficiency-table-per-user-vs-table-of-users by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] ㄱ 열 합을 행을 제한하는 MySQL은 소정의 값과 같다 (0) | 2020.05.04 |
---|---|
[SQL] 지역 시퀀스는이 포함 제외한 쿼리 연산자의 SQL 구현 () 연산자에 LINQ에서 사용할 수 없습니다 (0) | 2020.05.04 |
[SQL] 어떻게 Doctrine2에서 SQL의 YEAR (), MONTH () 및 DAY ()를 사용할 수 있습니까? (0) | 2020.05.04 |
[SQL] SQL, 어떻게 연결할 결과에? (0) | 2020.05.04 |
[SQL] 제공되지 않은 저장 프로 시저 또는 기능이 기대 파라미터 (0) | 2020.05.04 |