단일 Table의 row수가 1억건을 넘어가게 되어서 관련 table의 partition을 검토 중입니다.postgresql로는 partition을 해보지 않아서 혹시 postgres 만의 주의 점이 있을런지 고수분들의 의견 여쭤봅니다.
구글링 결과로는 아래 3가지 정도 질문 사항이 생겼습니다.
1. 구글링 해본 봐로는 postgresql은 상속 개념으로 partition을 구현해서 빈 부모 table 밑에 자식 table들의 존재하는 형태로 구현이 되는것같은데요...
insert / update / delete 시에 function / trigger 가 필요한데 속도 저하 이슈가 있음. (10에서는 개선이 되었다고 하던데 아직 베타버전이라 논외)
=> 많이 저하되나요? 다른 개선 방법은 없을까요?? 추가 partition 생성시엔 자식 table 추가하고 function /trigger 만 수정하면 되나요??
2. global index는 안되고 각각의 자식 table의 local index 만 가능한 점도 관리 요소일수 있음
=> 자식 table에 각각 index 를 달수있다는 장점이자.. 단점 외에 고려할 사항이 뭐가 더 있을가요?? fk는 사용할수있을것같긴 한데 제약이 있나요?
3. pg_partman 을 사용하는것은 어떤가요??
그외에도 운영상 이슈가 될만한 고려 사항들이 있을런지 고수님들의 의견 부탁드립니다.