Esta é, na verdade, uma discussão sobre Singe - Tabela - Herança vs. Tabela por herança de classe e perder a herança unida. O primeiro está relacionado ao Método A, o segundo ao seu Método B e Método C seria como ter todos os IDs de suas postagens em uma tabela e adiar atributos específicos para grupo ou usuário - postagens para tabelas diferentes. tem seus impactos negativos relacionados a verificações completas de tabelas, a abordagem de divisão de tabelas também tem seu próprio . Depende de quantas vezes seu aplicativo precisa acessar toda a lista de postagens versus apenas recuperar determinados tipos de postagem. Outra consideração que você deve levar em consideração é o particionamento de dados que pode ser feito com MySQL ou Oracle Database, por exemplo. que é uma forma de organizar seus dados dentro de tabelas dadas oportunidades para o ciclo de vida das informações (quais dados são acessados quando e com que frequência, parte deles pode ser movido e compactado reduzindo o tamanho do banco de dados e aumentando a velocidade de acesso à parte esquerda dos dados no table), que é basicamente dividido em três técnicas principais:particionamento baseado em intervalo, particionamento baseado em lista e particionamento baseado em hash. certo período de tempo expirou. O que de fato é uma decisão importante de design de aplicativo e pode aumentar o desempenho é distinguir entre acessos de leitura e gravação ao banco de dados no nível do aplicativo. poderia configurar uma instância MySQL para escrever no banco de dados e outra como replicante o f isso para os readaccesses, embora isso também seja discutível, principalmente quando se trata de RDT (decisões em tempo real), onde a consistência absoluta dos dados a qualquer momento é uma obrigação. Usar pools de objetos como uma camada entre seu aplicativo e o banco de dados também é uma técnica para melhorar o desempenho do aplicativo embora eu ainda não conheça as soluções existentes no mundo PHP. O Oracle Hot Cache é um exemplo bastante sofisticado disso. Você pode construir o seu próprio implementado em cima de um banco de dados na memória ou usando o memcache.