Re: How number of columns affects performance
От | Josh Berkus |
---|---|
Тема | Re: How number of columns affects performance |
Дата | |
Msg-id | 200308011044.03493.josh@agliodbs.com обсуждение исходный текст |
Ответ на | Re: How number of columns affects performance (Francisco J Reyes <fran@natserv.net>) |
Ответы |
Re: How number of columns affects performance
Re: How number of columns affects performance |
Список | pgsql-performance |
Francisco, > Yes all fields belong to the same entity. I used 100 as an example it may > be something like 60 to 80 fields (there are two tables in question). I > don't formally do 3rd normal form, but for the most part I do most of > the general concepts of normalization. > > > If not, then good design says to split the table. Actually, no, it doesn't. If all 60-80 fields are unitary and required characteristics of the row-entity, normalization says keep them in one table. The only time NF would recommend splitting the table is for fields which are frequenly NULL for reasons other than missing data entry. For those, you'd create a child table. Although while this is good 4NF, it's impractical in PostgreSQL, where queries with several LEFT OUTER JOINs tend to be very slow indeed. My attitude toward these normalization vs. performance issues is consistenly the same: First, verify that you have a problem. That is, build the database with everything in one table (or with child tables for Nullable fields, as above) and try to run your application. If performance is appalling, *then* take denormalization steps to improve it. I'm frequently distressed by the number of developers who make questionable design decisions "for performance reasons" without every verifying that they were, in fact, improving performance ... -- Josh Berkus Aglio Database Solutions San Francisco
В списке pgsql-performance по дате отправления: