거대한 mysql 테이블 (로깅 용)이 있습니다. 같은 뭔가 :mysql 파티션의 수를 결정하는 방법
로거 (SHA1) 타임 스탬프 조치가
가 너무 약 100,000 로거가있을 것으로 예상된다. 각 로깅은 평균 100 줄을 말합니다. 이렇게하면 약 1 억 개의 행을 테이블에 가져올 수 있습니다.많은 로거가 한 번에 항목을 작성하므로 꽤 빨리 삽입 (삽입)해야합니다.
일반적으로 검색어는 'logger의 모든 로그에'날짜별로 정렬 된 'x'을 입력합니다. http://dev.mysql.com/doc/refman/5.1/en/partitioning.html
내 질문, 어떻게 파티션 번호, 파티션 크기 사이의 균형을 찾을 수있다 :
그래서 나는 MySQL의 파티션을 사용하는 거라고?로거는 UUID이고 sha1 번호이므로, mysql이 각 sha1 값에 대해 하나의 파티션을 만들도록 생각했기 때문에 기본적으로 각 로거는 고유 한 DB 테이블 파일을 갖게됩니다.
다른 제안을 지정된 수들로 무언가를 분할
따라서 파티션의 최대 수는 1024입니다. 이제 sha1 값을 1024 개의 다른 파티션으로 균등하게 분할하는 알고리즘이 필요합니다. 또는 왜 1024 개의 파티션이 좋지 않은지에 대한 조언. – matiu
그래서 해시로 파티션을 생각하고 있습니다 : http://dev.mysql.com/doc/refman/5.1/en/partitioning-hash.html -하지만 파티션의 수를 결정하는 방법은 여전히 남아 있습니다. – matiu