A resposta curta é que é mais fácil ter instâncias separadas de todos eles para ambos os bancos de dados. É possível criar um único roteamento sessão , mas tem suas ressalvas.
O
criador de sessões
e Sessão
também suporta passando vários liga como argumento
e confirmações de duas fases
, que também pode permitir o uso de uma única sessão com vários bancos de dados. Por sorte, os 2 bancos de dados que suportam commits de 2 fases são PostgreSQL e MySQL. Sobre a relação entre
Base
e metadados
:Base
é uma classe base que tem uma metaclasse usada para criar declarativamente Tabela
objetos a partir de informações fornecidas na própria classe e suas subclasses. Todas as Tabela
objetos declarados implicitamente por subclasses de Base
compartilhará o mesmo MetaData
. Você pode fornecer metadados como argumento ao criar uma nova base declarativa e, assim, compartilhá-la entre várias
Base
s, mas no seu caso não é útil. MetaData
é uma coleção de Tabela
objetos e suas construções de esquema associadas. Ele também pode manter uma ligação a um Engine
ou Sessão
. Resumindo, você pode ter
Tabela
se MetaDados
sem uma Base
, mas uma Base
requer MetaData
funcionar.