[firebird]Wydajnosc systemu
Floran - 08-03-2007 00:02
[firebird]Wydajnosc systemu
Witam !
Od dłuższego czasu mam problemy wydajnościowe bazy danych. Długie czasy wykonywania zapytań, różne przeliczenia wykonują się nawet 5-8 godzin. Wdrożeniowiec systemu twierdzi, że w innych firmach tego typu operacje wykonują się góra godzinę - na podobnym sprzęcie. Niestety nie potrafię podać konkretnie jak te operacje wyglądają z pkt. widzenia sql, ale za to mogę podać trochę innych danych: Serwer to firebird 1.5 na Linuksie uruchomiony na xinetd Klienci to aplikacje windowsowe, ok.60 użytkowników w trakcie pracy. Sieć LAN oparta o 100Mbit. Baza ma ok. 5GB. Serwer fizycznie to optimusowy NSERVER VE230 G3 (2xIntel 64-bit XEON 3,8GHz, 4GB RAM, kontroler RAID jest ale nie wiem jak jest podłączony z dyskami - do sprawdzenia podczas restartu serwera) Kilka statystyk: free -m total used free shared buffers cached Mem: 4049 3533 516 0 88 1740 -/+ buffers/cache: 1704 2344 Swap: 1983 8 1975
netstat -an|grep 3050|wc -l 42
top top - 09:32:50 up 6:46, 2 users, load average: 1.53, 1.68, 1.98 Tasks: 182 total, 3 running, 178 sleeping, 0 stopped, 0 zombie Cpu(s): 16.7% us, 2.0% sy, 0.0% ni, 79.8% id, 1.4% wa, 0.0% hi, 0.1% si Mem: 4146792k total, 3622724k used, 524068k free, 90212k buffers Swap: 2031608k total, 8992k used, 2022616k free, 1778436k cached
xinetd.conf instances = 60 log_type = SYSLOG authpriv log_on_success = HOST PID log_on_failure = HOST cps = 50 10
Możecie coś zaproponować do sprawdzenia, polepszenia szybkości działania tego systemu ? Może coś jeszcze jest istotne czego nie napisałem-sprawdziłem ? Musze coś zrobić, bo wydajność tego systemu jest już na pograniczu akceptacji.
pozdrawiam
Marcin Mankiewicz - 08-03-2007 00:02
On Wed, 7 Mar 2007 10:05:06 +0100, Floran <floran@op.pl> wrote: > Od dłuższego czasu mam problemy wydajnościowe bazy danych. Długie czasy > wykonywania zapytań, różne przeliczenia wykonują się nawet 5-8 godzin. > Wdrożeniowiec systemu twierdzi, że w innych firmach tego typu operacje > wykonują się góra godzinę - na podobnym sprzęcie. Niestety nie potrafię [..] > Możecie coś zaproponować do sprawdzenia, polepszenia szybkości działania > tego systemu ?
Może powinieneś backup/restore bazy zrobić - jeśli było dużo rekordów usuniętych to baza się mocno fragmentuje i potem chodzi mniej wydajnie.
> Może coś jeszcze jest istotne czego nie napisałem-sprawdziłem ?
mogę poprosić o wyciąg z firebird.conf: grep -v '^#' /opt/firebird/firebird.conf | grep -v '^$'
> Musze coś zrobić, bo wydajność tego systemu jest już na pograniczu > akceptacji.
coś się zapewne da zrobić - zawsze jeszcze jest wersja 2.0 firebirda
-- Marcin Mankiewicz
Floran - 08-03-2007 00:02
> Może powinieneś backup/restore bazy zrobić - jeśli było dużo rekordów > usuniętych to baza się mocno fragmentuje i potem chodzi mniej wydajnie.
Backup/restore jest robiony codziennie - zapomniałem dodać
> mogę poprosić o wyciąg z firebird.conf: > grep -v '^#' /opt/firebird/firebird.conf | grep -v '^$'
DefaultDbCachePages = 6044 ProcessPriorityLevel = 5
Marcin Mankiewicz - 08-03-2007 00:02
On Wed, 7 Mar 2007 11:04:59 +0100, Floran <floran@op.pl> wrote: >> Może powinieneś backup/restore bazy zrobić - jeśli było dużo rekordów >> usuniętych to baza się mocno fragmentuje i potem chodzi mniej wydajnie. > > Backup/restore jest robiony codziennie - zapomniałem dodać > >> mogę poprosić o wyciąg z firebird.conf: >> grep -v '^#' /opt/firebird/firebird.conf | grep -v '^$' > > DefaultDbCachePages = 6044 > ProcessPriorityLevel = 5
Czy w czasie tych przeliczeń do bazy jest podłączonych wielu użytkowników? Jeśli tak to możnaby próbować podstroić ilość semaforów, i pamięci do blokad. Jeśli nie jest obciążona, to pewnie warto popatrzeć na system plików, a nawet na macierz. Baza lepiej powinna się zachowywać na RAID1 niż na RAID5 (choć przyznam, że nie znam porówanania - a tylko słyszałem o wyższości RAID1). Zawsze też warto zerknąć na wydajność dysków. Jeszcze jedno pytanie - czy tam chodzi tylko baza czy coś dodatkowego może obciążać procesor/dyski?
-- Marcin Mankiewicz
Floran - 08-03-2007 00:02
> Czy w czasie tych przeliczeń do bazy jest podłączonych wielu > użytkowników? Jeśli tak to możnaby próbować podstroić ilość > semaforów, i pamięci do blokad. Jeśli nie jest obciążona, to > pewnie warto popatrzeć na system plików, a nawet na macierz. > Baza lepiej powinna się zachowywać na RAID1 niż na RAID5 (choć > przyznam, że nie znam porówanania - a tylko słyszałem o > wyższości RAID1). Zawsze też warto zerknąć na wydajność dysków. > Jeszcze jedno pytanie - czy tam chodzi tylko baza czy coś > dodatkowego może obciążać procesor/dyski?
Tak, do bazy praktycznie 8-10 godzin dziennie są stale podłączeni użytkownicy wykonujący swoje czynności przy pomocy aplikacji. Średnia użytkowników to 45-50 non-stop. Każdy z nich wykonuje mniej lub bardziej zaawansowane funkcje w aplikacjach. Serwer udstępnia pliki exe do aplikacji windowsowych (samba), gdyż częste zmiany wersji wiążą się z podmianą kilku plików na serwerze a nie na wielu stacjach roboczych (prostsze oraz szybsze zarządzanie wersjami). Serwer w zasadzie 99% czasu jest zajęty bazą danych - reszta mało istotna, 2,3 połączenia via ssh i jedna sesja Xów w tle. Żadnych dodatkowych czynności obciążających system i dyski.
Roman Kolasiewicz - 08-03-2007 00:02
Floran wrote:
>> Może powinieneś backup/restore bazy zrobić - jeśli było dużo rekordów >> usuniętych to baza się mocno fragmentuje i potem chodzi mniej wydajnie. Nie tylko - do tego dochodzi problem z dlugo otwartymi transakcjami - to jest najczesciej spotykany problem powodujacy spowolnienie dzialania calej bazy.
> Backup/restore jest robiony codziennie - zapomniałem dodać
Sprawdz jak sie zachowuja dyski podczas wykonywania tego zapytania: vmstat -d
Z tego co pamietam na starym serwerze mielismy podobna sytuacje - okazalo sie ze najpierw nie wydalaly dyski (softraid), po dolozeniu kontrolera sprzetowego przestaly wydalac procesory. Po wlaczeniu HT (o dziwo pomoglo) jeszcze przez kilka miesiecy jakos to pociagnelo az do wymiany na nowy serwer.
Sama maszynka wedlug specyfikacji na stronie nie jest zla, ale jesli dyski masz podpiete do tego kontrolera na plycie glownej to byc moze to jest wlasnie waskim gardlem - nie nalezy do jakichs wypasionych modeli (znam z autopsji - stara maszynka miala toto).
Jaki system plikow? Jesli masz ksiegowanie to zawsze mozesz z niego zrezygnowac na rzecz jak najszybszego dostepu do danych (kosztem bezpieczenstwa), ale za to robic regularnie backupy. Oczywiscie robienie backupa na lokalnej maszynie rowniez bedzie ja obciazalo (i to calkiem sporo).
Co prawda przy takiej bazie zrobienie backupa trwa dobra chwile, chyba ze jestes w stanie poswiecic dzienna zawartosc bazy i robic backup tylko raz dzienie (np. w nocy).
Ewentualnie backup zrzucac na fizycznie innej maszynie - przynajmniej zaoszczedzisz na zapisywaniu backupa na lokalnym dysku/macierzy: gbak -b -ig -g -user <user -pas <haslo> ip.serwera:/sciezka/do/bazy/zdalnej plik_lokalny
Ogolnie temat rzeka :)
Floran - 09-03-2007 00:02
> Sprawdz jak sie zachowuja dyski podczas wykonywania tego zapytania: > vmstat -d Wiem że temat jest trudny, jak zawsze jeśli chodzi o strojenie systemu. Jak zachowują się podczas pracy, hmmm Wartości mam tylko przy sda (read/write/IO) i oczywiście się zmienają, lecz nie bardzo wiem czym mam się kierować :/ Możesz coś podpowiedzieć ?
> Z tego co pamietam na starym serwerze mielismy podobna sytuacje - okazalo > sie ze najpierw nie wydalaly dyski (softraid), po dolozeniu kontrolera > sprzetowego przestaly wydalac procesory. Po wlaczeniu HT (o dziwo pomoglo) > jeszcze przez kilka miesiecy jakos to pociagnelo az do wymiany na nowy > serwer. Jaki serwer mógłbyć polecić ? Ten, który mam dobrała mi firma wdrożeniowa, lecz chyba wybór nie był zbyt dobry :/
> Sama maszynka wedlug specyfikacji na stronie nie jest zla, ale jesli dyski > masz podpiete do tego kontrolera na plycie glownej to byc moze to jest > wlasnie waskim gardlem - nie nalezy do jakichs wypasionych modeli (znam z > autopsji - stara maszynka miala toto). Jakiś zewn. kotroler dokupić? Ew. jaki ?
> Jaki system plikow? ext3
> Jesli masz ksiegowanie to zawsze mozesz z niego zrezygnowac na rzecz jak > najszybszego dostepu do danych (kosztem bezpieczenstwa), ale za to robic > regularnie backupy. Oczywiscie robienie backupa na lokalnej maszynie > rowniez bedzie ja obciazalo (i to calkiem sporo). > Co prawda przy takiej bazie zrobienie backupa trwa dobra chwile, chyba ze > jestes w stanie poswiecic dzienna zawartosc bazy i robic backup tylko raz > dzienie (np. w nocy). Sam gbak -b -g -v -t trwa jakieś 15 min. lecz jego odtwarzanie już ponad godzinę. Więc cała operacja 'dświeżenia' bazy to czas rzędu ok.1,5h, więc podczas pracy taka optymalizacja odpada. Backupy regularne, lecz raz dziennie - w nocy.
> Ewentualnie backup zrzucac na fizycznie innej maszynie - przynajmniej > zaoszczedzisz na zapisywaniu backupa na lokalnym dysku/macierzy: > gbak -b -ig -g -user <user -pas <haslo> > ip.serwera:/sciezka/do/bazy/zdalnej > plik_lokalny Backup robiony na serwerze (zadanie crona), lecz wtedy nikt nie pracuje, więc nie ma problemu z obciążeniem systemu. Później plik backupu zrzucany fizycznie na inną maszynę.
> Ogolnie temat rzeka :) Wiem, i dlatego proszę o pomoc i podpowiedzi ludzi, którzy stanęli lub stoją przy problemie poprawienia wydajności firebirda.
Czy dołożenie pamięci RAM (mam 4GB) poprawi pracę ?
Floran - 17-03-2007 00:02
Użytkownik "Floran" <floran@op.pl> napisał w wiadomości news:eson59$esh$1@news.onet.pl... >> Sprawdz jak sie zachowuja dyski podczas wykonywania tego zapytania: >> vmstat -d > Wiem że temat jest trudny, jak zawsze jeśli chodzi o strojenie systemu. > Jak zachowują się podczas pracy, hmmm > Wartości mam tylko przy sda (read/write/IO) i oczywiście się zmienają, > lecz nie bardzo wiem czym mam się kierować :/ > Możesz coś podpowiedzieć ? > >> Z tego co pamietam na starym serwerze mielismy podobna sytuacje - okazalo >> sie ze najpierw nie wydalaly dyski (softraid), po dolozeniu kontrolera >> sprzetowego przestaly wydalac procesory. Po wlaczeniu HT (o dziwo >> pomoglo) >> jeszcze przez kilka miesiecy jakos to pociagnelo az do wymiany na nowy >> serwer. > Jaki serwer mógłbyć polecić ? > Ten, który mam dobrała mi firma wdrożeniowa, lecz chyba wybór nie był zbyt > dobry :/ > >> Sama maszynka wedlug specyfikacji na stronie nie jest zla, ale jesli >> dyski >> masz podpiete do tego kontrolera na plycie glownej to byc moze to jest >> wlasnie waskim gardlem - nie nalezy do jakichs wypasionych modeli (znam z >> autopsji - stara maszynka miala toto). > Jakiś zewn. kotroler dokupić? Ew. jaki ? > >> Jaki system plikow? > ext3 > >> Jesli masz ksiegowanie to zawsze mozesz z niego zrezygnowac na rzecz jak >> najszybszego dostepu do danych (kosztem bezpieczenstwa), ale za to robic >> regularnie backupy. Oczywiscie robienie backupa na lokalnej maszynie >> rowniez bedzie ja obciazalo (i to calkiem sporo). >> Co prawda przy takiej bazie zrobienie backupa trwa dobra chwile, chyba ze >> jestes w stanie poswiecic dzienna zawartosc bazy i robic backup tylko raz >> dzienie (np. w nocy). > Sam gbak -b -g -v -t trwa jakieś 15 min. lecz jego odtwarzanie już ponad > godzinę. > Więc cała operacja 'dświeżenia' bazy to czas rzędu ok.1,5h, więc podczas > pracy taka optymalizacja odpada. > Backupy regularne, lecz raz dziennie - w nocy. > >> Ewentualnie backup zrzucac na fizycznie innej maszynie - przynajmniej >> zaoszczedzisz na zapisywaniu backupa na lokalnym dysku/macierzy: >> gbak -b -ig -g -user <user -pas <haslo> >> ip.serwera:/sciezka/do/bazy/zdalnej >> plik_lokalny > Backup robiony na serwerze (zadanie crona), lecz wtedy nikt nie pracuje, > więc nie ma problemu z obciążeniem systemu. > Później plik backupu zrzucany fizycznie na inną maszynę. > >> Ogolnie temat rzeka :) > Wiem, i dlatego proszę o pomoc i podpowiedzi ludzi, którzy stanęli lub > stoją przy problemie poprawienia wydajności firebirda. > > Czy dołożenie pamięci RAM (mam 4GB) poprawi pracę ? > >
Jakieś sugestie do tego tematu ?
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Firebird - zmiana NULL na NOT NULL
[firebird] Czym =?ISO-8859-2?Q?zast=B1pi=E6_postgresowy_inte?==?ISO-8859-2?Q?rval_=3F?=
Insert do tabeli danymi z innej tabeli Firebird
Insert do tabeli z danych innej tabeli plus dodatkowa wartośćpola (Firebird)
[PostgreSQL] - jak =?ISO-8859-2?Q?zabezpieczy=E6_interesy_tw?==?ISO-8859-2?Q?=F3rcy_systemu_=3F=3F=3F?=
firebird - dostep do roznych baz na podstawie nazwy usera,hasla i adresu IP
=?iso-8859-2?q?Konfiguracja_Firebirda_pod_k=B1tem_wykorzystan ia_pami=EAci?=
=?ISO-8859-2?Q?[firebird]_gdzie_si=EA_podzia=B3y_polskie_literki?=
[foxpro] To =?ISO-8859-2?Q?zachcia=B3o_mi_si=EA_64_bitow?==?ISO-8859-2?Q?ego_systemu__=28XP=29_=3A-=29?=
Re: [Firebird] BDE problem z zapisem konfiguracji pod Windows Vista
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|