Re: Compare rows
От | Greg Spiegelberg |
---|---|
Тема | Re: Compare rows |
Дата | |
Msg-id | 3F857E1C.1040209@cranel.com обсуждение исходный текст |
Ответ на | Re: Compare rows (Josh Berkus <josh@agliodbs.com>) |
Ответы |
Re: Compare rows
|
Список | pgsql-performance |
Josh Berkus wrote: > Greg, > > >>You lost me on that one. What's a "vertical child table"? > > > Currently, you store data like this: > > id address uptime speed memory tty > 3 67.92 0.3 11.2 37 6 > 7 69.5 1.1 NULL 15 NULL > 9 65.5 0.1 NULL 94 2 > > The most efficient way for you to store data would be like this: > > main table > id address > 3 67.92 > 7 69.5 > 9 65.5 > > child table > id value_type value > 3 uptime 0.3 > 3 speed 11.2 > 3 memory 37 > 3 tty 6 > 7 uptime 1.1 > 7 memory 15 > 9 uptime 0.1 > 9 memory 94 > 9 tty 2 > > As you can see, the NULLs are not stored, making this system much more > efficient on storage space. > > Tommorrow I'll (hopefully) write up how to query this for comparisons. It > would help if you gave a little more details about what specific comparison > you're doing, e.g. between tables or table to value, comparing just the last > value or all rows, etc. > Got it. I can see how it would be more efficient in storing. At this point it would require a lot of query and code rewrites to handle it. Fortunately, we're looking for alternatives for the next revision and we're leaving ourselves open for a rewrite much to the boss's chagrin. I will be spinning up a test server soon and may attempt a quick implementation. I may make value_type a foreign key on a table that includes a full and/or brief description of the key. Problem I'll have then will be categorizing all those keys into disk, cpu, memory, user, and all the other data categories since it's in one big table rather than specialized tables. Greg -- Greg Spiegelberg Sr. Product Development Engineer Cranel, Incorporated. Phone: 614.318.4314 Fax: 614.431.8388 Email: gspiegelberg@Cranel.com Cranel. Technology. Integrity. Focus.
В списке pgsql-performance по дате отправления: