Não é inteiramente verdade que o RDBMS não possa ser escalado. No entanto, a verdade parcial na declaração depende da arquitetura. Na lista que você forneceu, o Oracle RAC é diferente do restante (MySQL e Teradata). A principal diferença é o disco compartilhado versus as arquiteturas de nada compartilhado.
As arquiteturas de disco compartilhado, como o Oracle RAC, sofrem com o dimensionamento, porque em algum momento ou em todas as máquinas em execução devem ser sincronizadas em alguma parte dos dados. Por exemplo, o global lock manger é um assassino. Você pode continuar ajustando-o até certo ponto, mas acabará atingindo uma parede. Se você não pode adicionar máquinas facilmente, deve ter menos, mas máquinas super poderosas, que podem queimar seu bolso. No caso de arquiteturas compartilhadas (ou dados fragmentados), cada máquina possui a propriedade de alguns dados. Ele não precisa ser sincronizado com outros máquinas, se quiser atualizar alguns dados.
Depois vem a geração de bancos de dados NoSQL. Eu os trataria como um subconjunto de bancos de dados RDBMS tradicionais. Nem todos os aplicativos deste mundo precisarão de todas as funcionalidades oferecidas pelo RDBMS. Se eu quiser usar o banco de dados como cache, não me importo com durabilidade. Pode ser que em alguns casos eu também não me importo com consistência. Se toda a minha pesquisa de dados for baseada em uma chave, não preciso de suporte para consultas de intervalo. Talvez eu não precise de índices secundários. Eu não preciso de toda a camada de processamento / otimização de consulta que todos os bancos de dados tradicionais possuem.