On Wed, Mar 23, 2005 at 01:33:52PM +0200, Sertys wrote: > On Wed, 23 Mar 2005 12:52:19 +0200, Sertys <[EMAIL PROTECTED]> wrote: > >Досега съм разработвал главно уеб и не-crucial бази данни и mySQL е бил > >перфектният ми избор. Сега обаче пиша нещо по сериозно и минахме на > >pgsql. Структурата е прекрасна, езика ми харесва, но получавам много > >ниска производителност. Нещо от сорта на 57 реда за 222 милисекунди, > >което ме ужасява. И времето скалира по геометрична прогресия. Сега > >сървъра не е на продукшън машината, а на някакъв windows и се опасявм, > >че е оттам. И въпреки това за 160000 реда ми отнема около 2 минути, > >което е немислимо при mysql да речем, а да не говорим за комерсиалните > >решения. Тъпото е, че данните са помпани от MSSQL server и няма никакви > >индекси по таблиците. Някакви performance tips? > > Ми не, истината е че е с postgreSQL 8.0.1 нейтив компилиран пакет. И > въпреки това се ВЛАЧИ! > Ше го пусна скоро под любимия ми линукс и ще видя как се държи.
В 98% от случаите няма смисъл да задаваш въпроси от сорта на 'как да подобря производителността', преди да си сложил поне един-два индекса... Останалите два процента са случаите, когато наистина правиш SELECT или UPDATE *без* WHERE-клауза, така че наистина не би имало смисъл от ползване на индекси. Първо, сложи поне няколко индекса. Второ, пусни си query logging и сложи log_min_duration_statement=0, така че да логва всички заявки; после сложи и log_duration=true, за да видиш какво наситина за колко време се случва. Виж кои са бавните заявки, виж дали не можеш с още един-два индекса да ги подобриш. Чак след това започваш да мислиш за истински performance tuning :) Поздрави, Петър -- Peter Pentchev [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 Hey, out there - is it *you* reading me, or is it someone else?
pgpYISIBGSgzB.pgp
Description: PGP signature
