Re: Compare rows
От | Christopher Browne |
---|---|
Тема | Re: Compare rows |
Дата | |
Msg-id | m3u16i4p07.fsf@wolfe.cbbrowne.com обсуждение исходный текст |
Ответ на | Compare rows (Greg Spiegelberg <gspiegelberg@cranel.com>) |
Список | pgsql-performance |
The world rejoiced as josh@agliodbs.com (Josh Berkus) wrote: > Chris, >> Some time in the late '80s, probably '88 or '89, there was a paper >> presented in Communications of the ACM that proposed using this sort >> of "hypernormalized" schema as a way of having _really_ narrow schemas >> that would be exceedingly expressive. They illustrated an example of > <snip> >> The entertaining claim was that they felt they could model the >> complexities of the operations of any sort of company using not >> more than 50 tables. It seemed somewhat interesting, at the time; >> it truly resonated as Really Interesting when I saw SAP R/3, with >> its bloat of 1500-odd tables. > > One can always take things too far. Trying to make everying 100% > dynamic so that you can cram your whole database into 4 tables is > going too far; so is the kind of bloat that produces systems like > SAP, which is more based on legacy than design (I analyzed a large > commercial billing system once and was startled to discover that 1/4 > of its 400 tables and almost half of the 40,000 collective columns > were not used and present only for backward compatibility). With R/3, the problem is that there are hundreds (now thousands) of developers trying to coexist on the same code base, with the result tables containing nearly-the-same fields are strewn all over. It's _possible_ that the design I saw amounted to nothing more than a clever hack for implementing LDAP atop a relational database, but they seemed to have something slightly more to say than that. -- wm(X,Y):-write(X),write('@'),write(Y). wm('cbbrowne','ntlug.org'). http://www3.sympatico.ca/cbbrowne/emacs.html Why does the word "lisp" have an "s" in it?
В списке pgsql-performance по дате отправления: