Use o
ConnectionManager::config()
função para criar conexões em tempo real e o ConnnectionManager::alias()
método para fazer com que todas as suas classes de tabela o usem por padrão. Há um artigo muito bom descrevendo o processo aqui:
http://mark-story.com /posts/view/using-cakephp-and-a-horizontally-sharded-database
A única diferença é que você pode criar a configuração de conexão em tempo real, em vez de declarar os shards manualmente, como foi mostrado nesse artigo.