This project is read-only.

Very Large Database Issue

Dec 15, 2009 at 10:53 AM

Hi

I have a very large database (1.5TB), which is currently in use, and has in excess of 1000 tables and over 2000 SP's.  I understand that the database installer that is generated dops and regenerates the foreign keys and indexes, within the model.  I obviously would not want to create a single model with all the tables in the above example, but even so, there is no way that I can drop keys of any sort during the initiation or release of the application.  I might want to utilise multiple front-end's that share some tables, in which case the installer will drop and recreate keys that might affect other applications.  What would you recommend?

regards

James

Dec 15, 2009 at 2:42 PM

The strategy here will be two fold

  • Manage upgrade and installation by hand

The only thing that needs to be in the database for the  tool to work is the stored procedures. These stored procedures are generated into a single file so pulling these files out of the project and writing a tool that can re-install the stored procedures should not be a big task. You should be able to manage upgrade files by hand.

  • Create several different models.

With over 1000 tables  you certainly have different logical schema's within the database. It would be prudent to separate each one of these logical schema's into their own module. There would not be a problem having the same table in multiple models. However you would need to manage both models to ensure the tables stayed in sync.

 

Easiest way to create several different models. Is to import all tables into one. model. Then create copies of the file. Finally open the model and set generate to false (Or Delete The Table) for the tables that you do not want generated as part of that model.

 

 

Dec 16, 2009 at 8:35 AM

Hi Msktenn1,

Thanks for this,  I will try this as soon as I get back from leave!  We currently use NetTiers, but some of the features are very cumbersome.  The main goal of our application is location transparancy, and this tool seems to provide a relatively simple model to work with both with WCF and ASP.NET. 

Kind Regards

James.