どちらも大きなテーブルを分割しますが、そのレベルが異なります。partitioningは、単一のMySQLサーバー内で1つのテーブルを複数のファイルに分割します。shardingは、複数の独立したサーバーにデータを分割します。partitioningは1ファイルに収まらないほど大きなテーブルに役立ち、shardingは1台のマシンに収まらないほど大きなワークロードに役立ちます。
partitioning(1台のサーバー)
sql
events (
id , created_at DATETIME, payload JSON,
(id, created_at)
) ((created_at)) (
p2024 LESS THAN (),
p2025 LESS THAN (),
p2026 LESS THAN ()
);
