MyBB Community Forums

Full Version: MyBB database's Quality
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5
(2011-12-18, 02:23 PM)TheGarfield Wrote: [ -> ]I'm just talking about organization and fast db response, you really can't imagine how fast a BCNF or 3NF database is, compared to a 1NF or no Normal Form database...
There is no way you can know that without benchmarks. Joining tables is an expensive operation and it's going to take a long time to render a thread page if user names and posts have to be fetched from different tables. Normal forms are optimal for maintaining data integrity, NOT necessarily for speed, which you should measure before making any claims. Wink
(2011-12-18, 02:23 PM)TheGarfield Wrote: [ -> ]This way, automatically all the chosen parameters for "Guests" group will apply to him.

waste of DB space, incorrect stats on number of users, etc.
Fed up with people who think 3NF or BCNF consists of join queries... I maintain what I said and I'm totally aware, a 3NF / BCNF is much faster than any other not normalized database...

(2011-12-18, 08:51 PM)pavemen Wrote: [ -> ]
(2011-12-18, 02:23 PM)TheGarfield Wrote: [ -> ]This way, automatically all the chosen parameters for "Guests" group will apply to him.

waste of DB space, incorrect stats on number of users, etc.

That was just a point of view, the basic suggestion is to improve the quality of MyBB's database, if you don't agree with that it's OK!
(2011-12-18, 09:30 PM)TheGarfield Wrote: [ -> ]Fed up with people who think 3NF or BCNF consists of join queries... I maintain what I said and I'm totally aware, a 3NF / BCNF is much faster than any other not normalized database...

i dont think that anyone is arguing that a 3NF/BCNF database is not fast in its simplest form, but you'd be hard pressed to find a forum type application of those types of DBs without needing a join. The only other option is multiple queries, but that is not efficient either.

So your suggestion is valid, its just not always practical.
This is like saying burgers will taste better and be fresher if McDonalds slaughtered the cows in the kitchen.

I don't see how your suggestions are practical. You can't claim all you want that Normal Forms and blah blah are better but I don't see it. At least not for implementation with MyBB. You'd have to rewrite a huge portion of it. And yes I know you're suggesting this for 2.0 but 2.0 is likely going to make small changes to actual database because it will need to be somewhat compatible. The data can't simply be ported to a new application method without the possibility of breaking functionality.

Quote:I don't think many bulletin board really care about that fact, but I think we should...

Maybe that's because they're practical too.

Quote:I'm studying databases right now at the university and we've just learned something about "Database Quality" and "Normal Forms"

Then you admit you're only just learning and you're still a student.

Forums happen to be one of the most complex data structures on the web. Data needs to be drawn not just in ways that are efficient but written in ways that make sense. No redundant data seems not only impossible but actually impractical. At some level uids, pids, tids, and fids will need to be in multiple tables. Called for various queries.

The only redundant info I think is wasteful in MyBB but completely practical is the posts table has the username too. I really can't see much else that's wasted.
Sarcastic how you CAN'T make a suggestion without people destroying it for whatever reason..

Forget about this thread y'all please...
Thanks!
Sorry man, there are plenty of suggestions that are accepted and just as many that are not. Its good you are looking into ways to improve MyBB
(2011-12-19, 01:25 AM)TheGarfield Wrote: [ -> ]Sarcastic how you CAN'T make a suggestion without people destroying it for whatever reason..

Forget about this thread y'all please...
Thanks!

Suggestions can be accepted by the majority but we are a very realistic community. Even if we think it may be nice if it's not useful for almost everyone we'll probably toss it to the side to be a plugin.
(2011-12-19, 01:25 AM)TheGarfield Wrote: [ -> ]Sarcastic how you CAN'T make a suggestion without people destroying it for whatever reason..

Forget about this thread y'all please...
Thanks!

Spoken like a person who has lost an argument. Easier to walk away then actually proving why we are wrong.

btw my understanding is that 2.0 will be InnoDB default which does support foreign keys.

Found this article too which was great in explaining some things to me.
http://www.phpbuilder.com/columns/barry20000731.php3

But seriously when you start doing crap like this:
http://www.phpbuilder.com/columns/barry2...hp3?page=6

I really wonder how efficient the whole DB can be when every query is just a mess to run.

Quote:Fed up with people who think 3NF or BCNF consists of join queries

And yet that's the main premise in it's implementation. You join tables related with foreign keys. You create more mini tables then join them. The data isn't is duplicated but the keys are. MySQL even with InnoDB doesn't deal with temporary tables from joins as well as you might think.

Unsure what you've learned so far in your class but you must realize that not everything they teach you is correct or implemented practically.
Well, no one said that we should have the 4NF or 5NF database which will be kind of inefficient..., a good database is a database in 3NF or BNCF (the most popular structures), and you said that forums are one of the most complicated structures of databases, well Normal Forms aren't meant to be implemented on small databases but on large and complex databases, to make them simpler.

Supporting foreign keys is in fact a good thing for normal forms and normalized databases...

And the way you've answered when I said "I'm studying" was sarcastic, I've finished studying that by the way...

The whole purpose of normalizing databases is to get a non redundant information, a 0 loss of information, a very good functional dependency a simpler queries and a faster results...

If you read about them just a little bit, you'll see how efficient they are.
Pages: 1 2 3 4 5