Posted By: ZippyV | Aug 12th @ 6:26 AM
page 1 of 1
Comments: 6 | Views: 454
ZippyV
ZippyV
Fired Up

I saw this question on Serverfault: "I'm in the middle of designing a software system storing data in about 4000 tables in Microsoft SQL Server 2008."

 

Even for an ERP system it looks like normalization taken too far or am I a n00b with my (on average) 15 table db design. I know some people on Channel 9 work with very big databases but how many tables do they contain?

Yeah that's a lot of tables. We have the majority of our company's data stored in one big Oracle database and we only have about 2400 tables.

 

On SQL Server I imagine we'd have one server and each app's tables split up in separate databases.

W3bbo
W3bbo
The Master of Baiters

PHP webapps on MySQL seem well-geared towards sharing databases with other applications by using table prefixes, or even sharing the same tables by using colum prefixes (wtf, lol). I wonder why we don't see this kind of flexibility in enterprise apps; I guess they assume the client can afford more databases.

 

...but 4000 tables? even 2400 tables seems a lot; I assume these are permament tables and not temp tables? Even so, what are they used for? SSMS kinda falls apart if you have more than a hundred tables.

 

I don't want to see your DB diagrams.

figuerres
figuerres
???

heh, kind of reminds me of a system i had to work with around 1998 time frame, it was Oracle DB and thier forms package on the front end.  the diagram was the only info i had, the folks that built it were a total mess to get help from.

 

that diagram was like a giant 3 foot by 3 foot thing that reminded me of a CPU or other large scale electronics circut layout Expressionless

 

one of the best features was how they did customer accounts....  every edit created a new record with a counter updated.

so every lookup took longer and longer and longer as account 1234 might have 30 rows and they did a nested select on max(version)

so when the owners chose to abandom that mess i had the fun of extracting all the valid data to the new system....

and i had to tell the accounting folks i was not able to figure out how to export the old invoice details format, but i did get them a balance fwd that was right!  when they asked why not i showed them the diagram and they started to have much sympathy for my job and were very glad that i could get so much of the data converted right.

 

should have seen the war-room for that, i took over our conf room for about 6 weeks.

we had stacks and stacks of data and reports printed out to help check things.... and i had about 3 folks helping me as needed

an accountant, a billing/cs rep and an accountant from our parent company who also acted as a pm for the project.

 

no docs, no specs , 25K billing accounts

stevo_
stevo_
Human after all

The versioning thing isn't that crazy if you need strong auditing, only you would generally sit another db on top of it that just kept the latest revision and use that for read access.

MasterPie
MasterPie
I'm white because I smelt an onion

I don't want to see your DB diagrams.

 

Ooh, I do. 1000+ tables, I really want to see what that kind of structure looks like. Big Smile

figuerres
figuerres
???

well recall when this was, and they did not spec a big db server for that db. so a 1995 ish cpu and more ram ten pc's of that day but not enough for oracle 7.xxx  with like 50 users connected.

 

and shure have an audit trail / log  but *NOT IN THE MAIN TABLE* use a second logging table to hold the prior history.

so that the PK and the record lookup are clean and simple.  and they did this with several tables.... so every time you opened a customer it took time to find the "current" version of each part of a customers account.

by the time we switched we have like 80,000 account records for 25,000 accounts.

and thats not counting all the other bloated tables like that.

 

at the end you could count on having a customer on hold for 3-5 minutes per call waiting for the data to show up. and the db server was on the same wired LAN as the csr or tech ....

 

heck i have a system i am working on right now that's over 50 gigs on disk and has a very large row count on some tables and i never have that kind of problem with normal lookups.

there are one or two reports that take a few minutes, but they are mostly monthly summary reports that are only ran 1-2 times a month.

page 1 of 1
Comments: 6 | Views: 454
Microsoft Communities