Sul nostro SQL Server, abbiamo un database per ciascuna delle nostre app Web. Per i report, utilizziamo Reporting Services e tutti i dati dei report (inclusi i parametri dei report) provengono da stored procedure.
Le procedure memorizzate si trovano nello stesso database dei dati nel report. Quindi, ad esempio, i proc che servono i report sugli stock si trovano nel database degli stock. Alcuni report mostrano informazioni da più di un database e quindi il proc sarà in uno di quei database di origine. I parametri del report ottengono i loro dati dai proc in un database Enterprise che contiene dati come negozi, dipendenti, ecc.
Ciò significa che tutti i report hanno almeno una connessione al database Enterprise e un'altra connessione a un altro database - e talvolta più di questo.
La mia domanda è: c'è un vantaggio nel spostare i processi di reporting in un database "Report" separato . Conosco i vantaggi dello spostamento di report su un altro server e non ne sto parlando - questo sarebbe sullo stesso server.
Le cose che potrebbero influenzare questo sono:
- Avere più di una connessione al database per un report influisce sulla velocità del report?
- Avere il proc di reporting in un database separato dai dati, ci impedirebbe di utilizzare le viste indicizzate?
- Hai trovato più facile / difficile gestire i rapporti in un database separato?
Per favore fatemi sapere cosa ne pensate.