PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Várias tabelas de metadados Flyway em um esquema


Uma solução ideal para você seria dividir seus módulos em esquemas. Isso oferece uma unidade efetiva de isolamento por módulo e também é uma opção natural para aplicativos modulares (módulos completamente isolados e autogerenciáveis), em vez de despejar tudo em um único esquema (especialmente público). por exemplo
application_database
    ├── public
    ├── module_1
    │   ├── schema_version
    │   ├── m1_t1
    │   └── m1_t2
    ├── module_2
    │   ├── schema_version
    │   ├── m2_t1
    │   └── m2_t2
    ...

Sua segunda opção é continuar usando o esquema público para hospedar todas as tabelas, mas usar um esquema individual para cada schema_version . Isso é menos esforço de refatoração, mas certamente um design menos elegante do que o mencionado acima. por exemplo
application_database
    ├── public
    │   ├── m1_t1
    │   ├── m1_t2
    │   ├── m2_t1
    │   └── m2_t2
    ├── module_1
    │   └── schema_version
    │
    ├── module_2
    │   └── schema_version
    ...