사용자 도구

사이트 도구


database:mysql:partition

문서의 이전 판입니다!


MySQL Partition

단점 / 제약

  • 모든 파티션은 동일한 스토리지 엔진 사용 : 파티션별 다른 엔진을 지정하여도 에러가 발생하지는 않지만 적용되는것은 아니다.
  • 테이블과 인덱스를 별도로 파티션 할수는 없다. 테이블과 인덱스를 같이 Partitioning 하여야 한다.
  • Partition 된 테이블은 foreign Key를 지원하지 않는다.
  • Partition 된 테이블은 FullText Index 를 지원하지 않는다.
  • Partition 된 테이블은 Geometry(point, geometry…) 컬럼 타입을 지원하지 않는다.
  • 한 테이블당 파티션의 갯수는 최대 1,024개이다.
  • Temp Table 은 파티션 사용 불가.
  • Partition 값은 정수형이어야 한다.
  • 테이블이 Unique 또는 Primary Key를 가지고 있다면, 파티션키는 모든 Unique 또는 Primary Key의 일부 또는 모든 컬럼을 포함해야 한다.
  • 파티션 키의 표현식은 일반적으로 컬럼 그 자체 또는 MySQL 내장 함수를 사용할 수 있는데, 여기서 MySQL 내장 함수를 모두 사용할 수 있는 것이 아니라 일부만 사용할 수 있습니다. (자세한 함수 목록은 현재 사용중인 MySQL 버전의 매뉴얼을 참고합니다.) 하지만 이 함수 중에서도 정상적으로 파티션 프루닝(Pruning)을 지원하는 함수는 YEAR()와 TO_DAYS(), TO_SECONDS()밖에 없으므로 제대로 파티션의 기능을 이용하려고 한다면 INTEGER 타입의 컬럼 그 자체 또는 이 3가지 내장 함수를 사용한 표현식을 파티션 키로 사용할 것을 권장합니다. (TO_SECONDS 함수는 MySQL 5.5부터 지원됩니다.)

출처: https://12bme.tistory.com/52?category=682920 [길은 가면, 뒤에 있다.]

참조

database/mysql/partition.1548932639.txt.gz · 마지막으로 수정됨: 2019/01/31 20:03 저자 kwon37xi