O tamanho do bloco do sistema de arquivos não deve ter um impacto ruim no InnoDB. Eu não estou falando sobre pequenos pedaços de desempenho de cpu, uma vez que a sobrecarga do sistema de arquivos para ele é muito pequena. O que você deve se preocupar é o desempenho do IO.
Quando o mysql precisa ler a página InnodDB dos discos, ele acessa a estrutura do inode para o arquivo. ext3 inode contém referências a 15 blocos. Primeiros 12 pontos para blocos de dados diretamente. O resto 3 aponta para blocos, contendo outras referências de blocos, que também podem ser diretos ou indiretos.
Portanto, se a página InnoDB for colocada em primeiro lugar (12 * 4) = 48KB do arquivo - ela será buscada em 2 operações IO: 1 para inode, segunda para bloco de dados, se colocar na primeira (12 * 4 + 1024 ) * 4 = 4.2MB em 3 ops, (12 + 1024 + 1024 ^ 2) * 4 = 4GB - 4 ops, (12 * bs + 1024 + 1024 ^ 2 + 1024 ^ 3) * 4 = 4TB - 5 ops.
1024 é o número de referência de bloco de 4 bytes no bloco de 4k.
Readahead (pré-alocação para gravações) e cache reduzirão essa contagem, permitindo ler / gravar vários blocos de uma só vez.
O tamanho do bloco de 4k é o mesmo que o tamanho da página de memória do Linux, tornando o cache de página mais fácil de codificar.
Quando a página Innodb for escrita pela primeira vez, o ext3 pré-aloca 8 blocos sequenciais (32kb) e grava 4 deles, outros 4 serão descartados (ou usados para mais uma página). Todas as alterações nesta página serão armazenadas nos mesmos blocos.
A redução do tamanho do bloco só traz benefícios ao economizar espaço em disco, já que 1 bloco é uma unidade mínima de dados para armazenar em disco.
Aumentá-lo (há alguns patches de kernel para fazer isso) irá melhorar o desempenho de arquivos muito grandes, mas não tanto, como você pode pensar. A correspondência com o tamanho da página InnoDB não faz sentido, já que na grande maioria dos casos os blocos de dados para uma página InnoDB serão colocados sequencialmente no disco e serão lidos / gravados em uma única operação.