Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Quali sono i problemi con un join tra due tabelle in due database diversi?

Se si trovano sullo stesso server, non c'è alcun problema reale nell'estrazione da un database separato. In effetti, potresti volerli separare per buoni motivi. Ad esempio, se si dispone di una combinazione di tabelle transazionali e tabelle di ricerca importate da file. I dati transazionali necessitano di un ripristino completo e di frequenti backup dei log transazionali per poter essere ripristinati correttamente, i dati di ricerca no e possono trarre vantaggio dall'essere in un database in modalità di ripristino semplice.

Abbiamo molti database diversi utilizzati dalle nostre applicazioni e incrociamo i database nelle query tutto il tempo. Finché l'indicizzazione viene eseguita correttamente, non si sono verificate differenze di prestazioni notevoli. Il problema più grande potenziale riguarda l'integrità dei dati poiché non è possibile impostare chiavi esterne tra i database. Questo può essere gestito nei trigger, se necessario.

Ora, quando i database si trovano su server diversi, può esserci un problema di prestazioni e ottenere i dati è più complicato.