IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Re: Question for you
Software design involves gambles. Non-normalizing may help for certain kinds of usage, but at the risk of not being able to handle future requirements that are not favored by the unnormalized stuff. Whether it is worth gambling away future flexibility to get performance for a specific usage pattern today is a business decision similar to financial decision cost analysis. I would suggest looking for ways to improve performance under normalization before giving in to denormalization for speed.

And as somebody pointed out, historical (read-only) data is sometimes easier to sift or use if denormalized. This is because most of such research is done from a customer sales perspective rather than concerned with internal processes about already-completed stuff.
________________
oop.ismad.com
New Also called trade-offs.
... I would suggest looking for ways to improve performance under normalization before giving in to denormalization for speed.


I would agree. IMO, far too many people underestimate maintainability problems with a difficult schema, normalized or not.

And as somebody pointed out, historical (read-only) data is sometimes easier to sift or use if denormalized. This is because most of such research is done from a customer sales perspective rather than concerned with internal processes about already-completed stuff.


This is actually true right now for the application I'm maintaining.

I've found normalizing wins points when it eliminates clearly duplicated and errant data. However, it is possible to hide the normalization in the interface rather than do it right down at the database. Whilst this makes for hairy code, it is doable and is sometimes the solution. But it sacrifices maintainability.

Then, too, I've found that completely normalising the data can sometimes make it harder to use the database. In the simplest case, code to fetch data might change from reading one or two tables to having to dance on 6 or 7. Often not a huge problem, true, until an update is required, too.

Wade.

Is it enough to love
Is it enough to breathe
Somebody rip my heart out
And leave me here to bleed
 
Is it enough to die
Somebody save my life
I'd rather be Anything but Ordinary
Please

-- "Anything but Ordinary" by Avril Lavigne.

New re: Also called trade-offs
Then, too, I've found that completely normalising the data can sometimes make it harder to use the database. In the simplest case, code to fetch data might change from reading one or two tables to having to dance on 6 or 7. Often not a huge problem, true, until an update is required, too.

I generally only see this if somebody creates a lot of 1-to-1 or 1-to-0:1 relationships. I generally frown on that. When in doubt, make one bigger table instead of multiple smaller (or skinnier) tables.

________________
oop.ismad.com
     Concurrency: the race is on - (FuManChu) - (40)
         Interesting, but ... - (Another Scott) - (4)
             I think he's talking to shrinkwrappers - (FuManChu)
             I'd criticize it differently - (ben_tilly) - (2)
                 That's true for servers, less so for workstations - (drewk) - (1)
                     True... - (ben_tilly)
         Favorite quote - (drewk) - (1)
             Speaking of quotes... (new thread) - (folkert)
         Just use databases and transactions. Fixed! -NT - (tablizer) - (32)
             Yes and no... - (Simon_Jester)
             And again, you demonstrate yourself to be wrong - (ben_tilly) - (30)
                 Up with people - (FuManChu) - (24)
                     No connection - (ben_tilly) - (23)
                         Questions - (tablizer) - (22)
                             Don't try to solve the problem - (ben_tilly) - (7)
                                 Dude, you are rude. Grow some people skills - (tablizer) - (4)
                                     This was one of your most hilarious posts ever, Bryce. -NT - (CRConrad) - (2)
                                         I am learning NOT to flame back. Me grow up........I think -NT - (tablizer) - (1)
                                             A: Doubt it. B: Still, YOU calling SOMEONE ELSE rude=>funnee -NT - (CRConrad)
                                     Yes, you did answer something - (ben_tilly)
                                 lock and load - (cforde) - (1)
                                     re: lock and load - (tablizer)
                             Question for you - (drewk) - (13)
                                 All the damn time - (broomberg) - (9)
                                     No hints from the peanut gallery - (drewk) - (8)
                                         Give him the benefit - (broomberg) - (7)
                                             Fairy nuff - (drewk) - (6)
                                                 Barry's right; overnormalization is 1 of Bryce's hobbyhorses -NT - (CRConrad) - (4)
                                                     Huh? What did I over-normalize? -NT - (tablizer) - (3)
                                                         It means the opposite of what you seem to think it does. HTH -NT - (CRConrad) - (2)
                                                             Okay then, what did I UNDER-normalize? - (tablizer) - (1)
                                                                 SIGH... "A hobby-horse" means, something you like to... - (CRConrad)
                                                 Note: in this case it really is a bad idea - (ben_tilly)
                                 Re: Question for you - (tablizer) - (2)
                                     Also called trade-offs. - (static) - (1)
                                         re: Also called trade-offs - (tablizer)
                 Ah yes, the Upperson procedure - (tuberculosis)
                 Guilty until proven innocent? -NT - (tablizer) - (3)
                     No, you said something stupid - (ben_tilly) - (2)
                         You don't seem to disagree anywhere - (tablizer) - (1)
                             I disagree with, "Fixed!" - (ben_tilly)

I don't think these were sliced from anything.
219 ms