CrazyEngineers
  • Prasad
    Prasad

    MemberFeb 14, 2008

    Normalization

    All right techies of the world, answer me this.

    Do you remember all the different types of normalization we learnt? 1NF, 2NF, 3NF, 4NF, 5NF (yes there is one), BCNF ... are there any more?

    If there are, why do we need so many? Can someone honestly tell me that they have made an application which is truly past 3NF?

    The debate is open sires ...

    My $0.02 -

    So far, I have worked on 4 online live applications -
    1. a finance portal, portfolio management
    2. a CMS, news feed, et al
    3. 2 e-commerce portals

    All of them are handling a decent amount of traffic, and in all the 4 applications, trying for more than 2NF resulted in nightmares. Effectively, we had to stop just short of 3NF.

    What are the real life applications of higher forms of normalization then?
    Replies
Howdy guest!
Dear guest, you must be logged-in to participate on CrazyEngineers. We would love to have you as a member of our community. Consider creating an account or login.
Replies
  • mahul

    MemberFeb 15, 2008

    well being a student i'm not really aware of the actual industrial design norms, but maybe this is something that again exposes the lack of practical knowledge that is overlooked in our education system.
    Are you sure? This action cannot be undone.
    Cancel
  • Prasad Ajinkya

    MemberFeb 15, 2008

    Lets make it a little bit more interactive here .. what do you think would be the normalization used in the DB structures of this forum?
    Are you sure? This action cannot be undone.
    Cancel
  • mahul

    MemberFeb 16, 2008

    no idea kidakaka, i'm not a pro and it will have 2 be a blind guess from my part, maybe _k could throw some light?
    Are you sure? This action cannot be undone.
    Cancel
  • jinx

    MemberFeb 17, 2008

    hi,
    normalisation techniques as told by one of my professors seems to b a little outdated since now there are much advanced techniques available...
    also a friend working in Wipro informed that it is still used for mainframes . in wipro they use DB2 and that's where its currently used
    Are you sure? This action cannot be undone.
    Cancel
  • shalini_goel14

    MemberMay 27, 2009

    *bump*

    Nice discussion was stopped. Can anyone tell me how trying more than 2NF resulted in nightmares in those 4 projects ?
    Are you sure? This action cannot be undone.
    Cancel
  • Prasad Ajinkya

    MemberMay 27, 2009

    Shalini,

    Here is what happened. Over a period of time, we realized that due to higher no. of tables in the application, the query execution time would increase. To reduce the execution times, we realized the easiest way was to de-normalize the tables!!
    Are you sure? This action cannot be undone.
    Cancel
  • MaRo

    MemberMay 27, 2009

    I wish someday get to know more about databases, I entered a long DSP tunnel not coming back any soon...
    Are you sure? This action cannot be undone.
    Cancel
  • manusaluja

    MemberMay 27, 2009

    More the normalization is, more will be the tables, and the queries will contain more joins.
    take for example -- for 10,000 records i have to add some country name like United Arab Emirates/ United Kingdom / United States of America.
    Denormalized database will contain 24-digit * 10000 entries. And normalized will contain a numeral digit for the name and 10000 * 1-digit code. So normalization would certainly save space, but we can easily imagine of some situations in which queries will be joining lots of data from lots of table, making query slower.

    So normalization is merely moving a slider between performance and space. more normalized will have less performance and less space usage, and vice versa.
    Are you sure? This action cannot be undone.
    Cancel
  • safwan

    MemberMay 27, 2009

    kidakaka
    All right techies of the world, answer me this.

    Do you remember all the different types of normalization we learnt? 1NF, 2NF, 3NF, 4NF, 5NF (yes there is one), BCNF ... are there any more?

    i until now i have studied only till 3NF can you define 4NF,5NF,NCNF
    please if require then explain also 😕
    Are you sure? This action cannot be undone.
    Cancel
  • manusaluja

    MemberMay 27, 2009

    3NF is holy, if you don’t normalize till it hurts you’re a bad developer and you’ll be contracted by an awful disease soon 😁
    Are you sure? This action cannot be undone.
    Cancel
  • shalini_goel14

    MemberMay 28, 2009

    Okies, if it affects exceution time then what is "SQL Performance and Tuning" for hmm? I agree no one goes beyond BCNF (ie. 4NF and 5NF) , is the reason is the person who made these higher level normal forms just for creating another burden on CS students for studying and gain fame or he got confused after creating so many normal forms.

    PS: I could never ever get an example that explains 4NF and 5NF clearly. May be when people don't know tabout hese forms clearly then how can they use it properly right.
    Are you sure? This action cannot be undone.
    Cancel
  • manusaluja

    MemberMay 28, 2009

    shalini_goel14
    person who made these higher level normal forms just for creating another burden on CS students for studying and gain fame or he got confused after creating so many normal forms.
    Correct.... well said :dance:
    Are you sure? This action cannot be undone.
    Cancel
  • Corpse-Thrust

    MemberMay 28, 2009

    I still have nightmares remembering the moment when I was asked for an example of 4NF in viva lol.

    Kidakaka is right, sometimes denormalization is the only way to speed up the whole process. It's just the same old time versus space issue that haunts us CS engineers often.
    Are you sure? This action cannot be undone.
    Cancel
Home Channels Search Login Register