대형 테이블에 대한 MySQL 및 최적화에 관한 질문. MySQL 서버는 제한된 용량의 서버에서 실행되며 가능한 한 많이 최적화해야합니다.최적화 대형 테이블 용 MySQL
우리는 초당 하나의 측정 속도로 데이터를 샘플링하고이를 웹 응용 프로그램에 그래프로 그리는 데 사용합니다.
현재 이러한 모든 데이터는 단일 테이블 안에 있으며 수억 개의 데이터 포인트가 있습니다.
우리는 모두 두 개의 ID가있는 여러 데이터 소스를 가지고 있습니다. 하나는 위치에 대한 것이고 다른 하나는 소스 자체에 대한 것입니다. 우리는 두 ID를 함께 사용하여 고유 한 ID를 가지며 우리는 데이터의 크기를 줄이기 위해 MySQL id를 사용하지 않습니다. posix와 id 두 개를 테이블 기본 키로 함께 사용하고이를 DB 쿼리에 사용합니다. 이 ID는 SQL에 의해 생성되지 않습니다.
보통 우리는 시간 세그먼트와 여러 소스에서 약 400 포인트를 사용하여 그래프를 그립니다.
질문 : 이러한 디자인을위한 최적의 최적화는 무엇입니까?
첫 번째 질문 : 모든 데이터를 단일 테이블에 보관하거나 여러 테이블로 분할하는 것이 더 좋습니까? 동적 테이블이있는 것처럼 코드를 복잡하게하는 단점이 있습니다.
단일 테이블에 두는 것이 더 좋은 경우 ID 및 POSIX를 기반으로하는 기본 키를 사용하는 올바른 방법입니까?
그런 목적을위한 특정 MySQL 최적화가 있습니까?
감사
귀하의 짧은 설명에서 우리의 요구, 시간 또는 소스에 의한 분열 여부에 완벽하게 부합하는 것으로 보입니다. 나는 그것에 더 많은 독서를 얻을 것이다. – Damien
실제로, 시간 소인 분열은 요인 8로 쿼리를 개선했습니다. – Damien
Splendid! 그래서 내가 도울 수있어서 기뻐! – lucasnadalutti