Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i

Podobne dokumenty
Biuletyn techniczny. CDN OPT!MA 8.5 Wskazówki dotyczące instalacji programu. Copyright 2006 COMARCH SA

Audyt serwera bazy danych Oracle Database 12c

Przepełnienie bufora. SQL Injection Załączenie zewnętrznego kodu XSS. Nabycie uprawnień innego użytkownika/klienta/administratora

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Dysk twardy kontra dysk SSDNow V+ serii 200 o pojemności 240GB firmy Kingston: test

Instalacja aplikacji

Działanie systemu operacyjnego

Konfiguracja komputera przeznaczonego do pracy z IndustrialSQL Server 8.0 (komputer serwer)

Wpływ ustawień parametru wieloblokowego sekwencyjnego czytania danych na czas wykonywania zapytania SQL w bazie danych Oracle 11g

2. Jakie i ile licencji Oracle 10g posiada zamawiający i czy posiada do tych licencji wsparcie techniczne?

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski

Block Change Tracking

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

Parametry techniczne. Testy

IBM SPSS Statistics Wersja 23. Konfigurowanie ułatwień dostępu

Technologie informacyjne (2) Zdzisław Szyjewski

Audyt oprogramowania. Artur Sierszeń

Systemy plików FAT, FAT32, NTFS

CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu

Wymagania sprzętowe i systemowe

Baza danych Oracle 11g Express Edition

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Szyfrowanie połączeń między serwerem Oracle i klientem

Działanie systemu operacyjnego

Architektura komputerów

Wymagania sprzętowe i systemowe

Administracja systemem Linux

Działanie systemu operacyjnego

Instalacja programu dreryk

INSTRUKCJA INSTALACJI I PIERWSZEGO URUCHOMIENIA APLIKACJI Rodzajowa Ewidencja Wydatków plus Zamówienia i Umowy

Rozbudowa dwóch posiadanych serwerów blade HP BL860c i2 do BL870c i2

Monitorowanie wydajność w bazie Oracle11g

Cloud Customers Relationships Wymagania wersja systemu:

Przegląd dostępnych hypervisorów. Jakub Wojtasz IT Solutions Architect

Zarządzanie pamięcią w systemie operacyjnym

System. Instalacja bazy danych MySQL. Autor : Piotr Zielonka tel Piotrków Tryb., sierpień 2018r.

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA. Wieloprocesorowa typu SMP

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki

Zarządzanie pamięcią operacyjną

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

Test dysku Intel SSD DC S GB. Wpisany przez Mateusz Ponikowski Wtorek, 22 Październik :22

Systemy operacyjne III

GSMONLINE.PL. Twój smartfon Huawei może być jeszcze szybszy Akcja. partnerska

1. Podstawy...P Polecenia podstawowe...p... 18

Zarządzanie partycjami

Wewnętrzny Pomiar Ryzyka* (WPR)

Zarządzanie rolami jakie może pełnić serwer System prosi o wybór roli jaklą ma spełniać serwer.

Instrukcja instalacji v2.0 Easy Service Manager

dr inż. Jarosław Forenc

AE/ZP-27-16/14. Załącznik nr Z2

Instrukcja obsługi programu CMS Dla rejestratorów HANBANG

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

Program Windykator I Moduły do programu. Wymagania systemowe oraz środowiskowe dla programów

Część II: Instalacja systemu Mediqus

Specyfikacja wymagań systemowych (może podlegać edytowaniu na kolejnych etapach)

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki Promotor dr inż. Paweł Figat

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

Zaawansowane funkcje systemów plików. Ewa Przybyłowicz

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

Referat pracy dyplomowej

UNIFON podręcznik użytkownika

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Software RAID funkcje dostarcza zaimplementowane oprogramowanie, bez wykorzystania z dedykowanych kontrolerów.

Technologie klastrowe Oracle

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Systemy operacyjne III

Cele RAID. RAID z ang. Redundant Array of Independent Disks, Nadmiarowa macierz niezależnych dysków.

Działanie systemu operacyjnego

Odpowiedź: System, który posiada support producenta.

Podstawy technologii informacyjnej. Beata Kuźmińska

Win Admin Replikator Instrukcja Obsługi

Kinowa Biblioteka Filmowa KINOSERWER. KinoSerwer

Sieciowe Systemy Operacyjne

SAP BASIS Architektura systemu klient Server

Program Płatnik Instrukcja instalacji

Instrukcja instalacji programu e STOMis wraz z pakietem Microsoft SQL Server 2005 Express Edition. e STOMis

Szczegółowy harmonogram rzeczowy realizacji prac systemu B2B

Partition Wizard Home Edition Aplikacja przeznaczona do partycjonowania dysków twardych, obsługująca również macierze RAID oraz dyski o pojemności

NASI SPONSORZY I PARTNERZY

Prezentacja systemu RTLinux

K. Konopko; Toolchain. Jądro Linuksa. dr inż. Krzysztof Konopko

Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

LEKCJA TEMAT: Zasada działania komputera.

Załącznik nr 1 Do Umowy nr z dnia. . Wymagania techniczne sieci komputerowej.

SSI Katalog. Program do katalogowania zawartości dysków. Dariusz Kalinowski

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2

Instalacja serwera Firebird

SYSTEMY INFORMACJI PRAWNEJ LEX i ABC - WYMAGANIA TECHNICZNE. SYSTEMY INFORMACJI PRAWNEJ LEX i ABC. WYMAGANIA TECHNICZNE ver. 1.11

Kinowa Biblioteka Filmowa KINOSERWER. KinoSerwer

1 Implementowanie i konfigurowanie infrastruktury wdraŝania systemu Windows... 1

Instrukcjainstalacji KS-CRM

MESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra

1. Instalacja jednostanowiskowa Instalacja sieciowa Instalacja w środowisku rozproszonym Dodatkowe zalecenia...

Wymagania systemowe. Wersja dokumentacji 1.9 /

Procedura wdrożeniowa program MERKURY QUATTRO wer. 1.0

Wymagania systemowe. Wersja dokumentacji 1.12 /

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus

Dokument zawiera instrukcję samodzielnej Instalacji Microsoft SQL Server 2005 Express Edition Service Pack 3 na potrzeby systemu Sz@rk.

Opis efektów kształcenia dla modułu zajęć

Transkrypt:

VI Seminarium PLOUG Warszawa Styczeñ 2003 Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i Marcin Przepiórowski

Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 7 1. Wstęp Strojenie bazy danych Oracle możemy podzielić na kilka etapów. Każdy z nich ma wpływ na ostateczną wydajność naszego środowiska bazodanowego. Błędy popełnione w poszczególnych etapach strojenia mogą wpływać w niekorzystny sposób na działanie serwera bazy danych. Niektóre z błędów można poprawić stosunkowo niskim nakładem pracy, niektóre z błędów są właściwie nie do naprawienia po wdrożeniu aplikacji. Błędy które można poprawiać dotyczą tylko i wyłącznie parametrów działania serwera Oracle oraz systemu operacyjnego na którym on działa. Błędy ciężko naprawialne dotyczą całej reszty, tj: analiza potrzeb projekt aplikacji implementacja aplikacji dobór rozwiązań sprzętowo-programowych - zmiana jest możliwa ale często bardzo kosztowna Jeżeli nasze środowisko zostało dobrze przeanalizowane i zaprojektowane, a faza implementacji aplikacji oraz dobór rozwiązań sprzętowych okazał się dobry, możemy spróbować przyspieszyć działanie naszego serwera poprzez dobór odpowiednich parametrów jego pracy oraz poprzez nastrojenie systemu operacyjnego. Ten ostatni punkt powyższego wstępu będzie tematem niniejszej pracy. Jak i o ile możemy przyspieszyć pracę serwera Oracle dokonując strojenia parametrów systemu operacyjnego. Środowisko testowe: serwer bazy danych Linux RedHat 7.3 Pentium III 700 Mhz 256 MB Dysk SCSI IBM Oracle 9.2.0.2 - stacja kliencka Windows 2000 Pentium III 700 Mhz 256 MB oprogramowanie Quest BenchMark Factor

8 Marcin Przepiórkowski 2. Ustawianie parametrów jądra SO. W przypadku środowiska opartego o system operacyjny Linux, ważnym zadaniem jest odpowiednie skonfigurowanie a następnie kompilacja jądra SO. W systemach komercyjnych pozostaje nam faza konfiguracje a następnie relinkowanie jądra SO. Jako punkt wyjścia do porównań przyjąłem standardową instalację Linux-a RedHat 7.3 wraz z kernelem 2.4.18-3. Jest to jądro patchowane przez firmę RedHat pod kątem ich dystrybucji. 13.039 Avg Time 0.211 s Ładowanie danych SQLLDR (90000 rekordów) 11.281 s 5 m 21 s Jądro dostarczane standardowo przez firmę RedHat skompilowane jest z wieloma modułami dołączanymi dynamicznie do jądra w miarę potrzeb. Ta modularność wpływa niekorzystnie na wydajność działania systemu operacyjnego. Kolejny test polegał na skompilowaniu jądra bez modułów, przy okazji zmieniając wersje z 2.4.18-3 (RedHat) na wersję 2.4.19 (www.kernel.org). Zmiany tej dokonano, aby uniezależnić testy od danej dystrybucji i zmian jakie dokonywane są przez jej producentów w jądrze SO. 13.442 Avg Time 0.19 s Ładowanie danych SQLLDR (90000 rekordów) 10.608 5 m 16 s Kolejny test był wykonany na najnowszej dostępnej w chwili wykonywania testów wersji jądra Linux-a czyli na wersji 2.4.20 13.973 Avg Time 0.183 s Ładowanie danych SQLLDR (90000 rekordów) 9.747 5 m 17 s Nowszy kernel zwiększa wydajność a również niezawodność działania, poprzez poprawienie błędów znalezionych w wersjach poprzednich. Idąc za ciosem, do następnej próby został wykorzystany najnowsza niestabilna wersja jądra 2.5.53. 15.159 Avg Time 0.168 Ładowanie danych SQLLDR (90000 rekordów) 10.321 5 m 19 s Przyrost jest dość znaczny, ale w serii 2.5.x dokonano dużo zmian i ulepszeń w stosunku do wersji 2.4.x. Pojawienie się serii 2.6.x będącej stabilną (produkcyjną) wersją linii 2.5.x będzie dużym krokiem naprzód w budowaniu wydajnych i tanich rozwiązań bazodanowych.

Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 9 Podsumowanie: 2.4.18-3 2.4.19 2.4.20 2.5.53 13.039 13.442 + 3,09 % 13.973 + 7,16 % 15.159 + 16,25 % Avg Time 0.211 s 0.19 s - 9,95 % 0.183 s - 13, 27 % 0.168-20,37 % Ładowanie SQLLDR 11.281 s 10.608-5, 96 % 9.747-13, 59 % 10.321-8,50 % Ładowanie 5 m 21 s 5 m 17 s 5 m 16 s 5 m 19 s 15,5 15 14,5 14 13,5 13 12,5 12 11,5 2.5.53 2.4.20 2.4.19 2.4.18-3 2.4.18-3 2.4.19 2.4.20 2.5.53 Czas transakcji Średni czas 0,25 0,2 0,15 0,1 0,05 0,211 0,19 0,183 0,168 0 2.4.18-3 2.4.19 2.4.20 2.5.53

10 Marcin Przepiórkowski 3. Strojenie parametrów jądra Strojenie parametrów jądra możemy podzielić na dwa etapy: 1. strojenie parametrów związanych z pamięcią dzieloną oraz semaforami 2. strojenie działania mechanizmów buforowania dostępu do plików Pierwszy etap musi być wykonany w większości systemów operacyjnych aby dostosować system do wymagań serwera Oracle pod kątem pamięci współdzielonej i liczby semaformów dostępnych w systemie. Niedostosowanie tych parametrów może wpływać na możliwości konfigurowania instancji Oracle, przedewszystkim na liczbę procesów (parametr PROCESS) oraz na maksymalny rozmiar pamięci SGA. Etap drugi pozwala na dostosowanie (polepszenie) działania systemu buforowania plików do charakteru pracy bazy danych Oracle. 14.903 Avg Time 0.168 Ładowanie danych SQLLDR (90000 rekordów) 12.302 5 m 10 s 4. Ustawianie parametrów filesystemu Wszystkie dotychczasowe testy były prowadzone w oparciu o system plików ext2 standardowy system plików Linux-a, bez opcji journalingu. W większości systemów operacyjnych, każda modyfikacji pliku, powoduje zmianę parametru access time czyli czas ostatniego dostępu do pliku. Modyfikacja tego parametru, wymaga czasu i zasobów procesora oraz urządzenia dyskowego. W większości systemów można wyłączyć tę właściwość systemu plików uzyskując przy tym polepszenie wydajności I/O, a co za tym idzie polepszenie działania serwera Oracle. 15.082 Avg Time 0.165 Ładowanie danych SQLLDR (90000 rekordów) 12.766 5 m 51 s Kolejna rzecz do właściwy dobór rozmiaru bloku w systemie plików. Blok ten powinien być mniejszy lub równy blokowi bazy danych Oracle. Dzięki temu nie na nadmiarowych odczytywanych bajtów przy dostępnie do konkretnego bloku bazodanowego. Wszystkie testy były przeprowadzane z blokiem o rozmiarze 4 kb. Dla porównania został wykonany test na bloku o rozmiarze 2 kb. 14.908 Avg Time 0.167 Ładowanie danych SQLLDR (90000 rekordów) 9.89 s 5 m 01 s

Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 11 Poniższe zestawienie obrazuje nam przyrost wydajności serwera bazy danych w zależności od modyfikacji parametrów jądra i parametrów systemu plików. Standard Zmiana buforowanie i pamięci współdzielonej Brak modyfikacji access time 13.973 14.903 15.082 Avg Time 0.183 s 0.168 0.165 Ładowanie 9.747 12.302 12.766 SQLLDR Ładowanie 5 m 16 s 5 m 10 s 5 m 51 s Porównanie wydajności przy różnych rozmiarach bloku systemu operacyjnego. Większy blok lepsza wydajność Mniejszy blok szybsze ładowanie głownie z uwagi na częste zapisy bufora redo na dysk mniejszy blok SO szybsze zapisy. Blok 4 kb Blok 2 kb 15.082 14.908 Avg Time 0.165 0.167 Ładowanie 12.766 9.89 s SQLLDR Ładowanie 5 m 51 s 5 m 01 s 15,2 15 14,8 14,6 14,4 14,2 14 13,8 13,6 13,4 14,903 15,082 13,973 Standard Tuning jądra no "access time"

12 Marcin Przepiórkowski Czas transakcji 0,185 0,18 Średni czas 0,175 0,17 0,165 0,16 0,183 0,168 0,165 0,155 Standard Tuning jądra no "access time" 5. Wybór optymalnego filesystemu Ponieważ w systemie Linux dostępne są różne systemy plików, zostały one porówane pod kątem ich wydajności przy używaniu bazy danych Oracle. Punktem wyjściowym był standardowy system plików Linux-a czyli ext2. 15.082 Avg Time 0.165 Ładowanie danych SQLLDR (90000 rekordów) 12.766 5 m 51 s Kolejny system plików to rozwinięcie ext2 o możliwości journalingu, czyli system ext3. 14.593 Avg Time 0.173 Ładowanie danych SQLLDR (90000 rekordów) 13.370 5 m 20 s Następnie przetestowany został system resier fs 14.961 Avg Time 0.166 Ładowanie danych SQLLDR (90000 rekordów) 14.804 6 m 49 s

Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 13 7Następne dwa systemy plików zostały zaimplementowane na innych systemach operacyjnych i przeniesione na Linux-a. Pierwszy z nich jest produktem firmy IBM i nazywa się JFS. 15.396 Avg Time 0.159 Ładowanie danych SQLLDR (90000 rekordów) 13.046 5 m 01 s Drugi z nich to XFS firmy SGI, używany w systemie IRIX. 14.344 Avg Time 0.159 Ładowanie danych SQLLDR (90000 rekordów) 11.292 5 m 24 s Zestawienie Ext2 Ext3 Reiser FS JFS XFS 15.082 14.593-3,24 % 14.961-0.8 % 15.396 + 2,08 % 14.344-4,89 % Avg Time 0.165 0.173 + 4,84 % 0.166 + 0,6 % 0.159-3,63 % 0.159-3,63 % Ładowanie 12.766 13.370 14.804 13.046 11.292 SQLLDR Ładowanie 5 m 51 s 5 m 20 s 6 m 49 s 5 m 01 s 5 m 24 s 15,6 15,4 15,2 15 14,8 14,6 14,4 14,2 14 13,8 15,396 15,082 14,961 14,593 14,344 Ext2 Ext3 Reiser FS JFS XFS

14 Marcin Przepiórkowski Czas transakcji 0,175 0,17 Średni czas 0,165 0,16 0,155 0,165 0,173 0,166 0,159 0,159 0,15 Ext2 Ext3 Reiser FS JFS XFS 6. Pamięć SGA i swap. W przypadku, gdy kończy nam się pamięć w systemie operacyjnym i zaczyna się proces swapownia, wydajność bazy danych Oracle spada dość szybko. Jeżeli nie możemy zwiększyć zasobów pamięciowych sewera można spróbować wymusić zablokowanie całej pamięci SGA w pamięci RAM, za pomocą parametru lock_sga=true. Bez swapowania Ze swapowaniem 15.396 Avg Time 0.159 bez parametru z parametrem 14.320 14.981 Avg Time 0.180 0.165 Oczywiście wydajność spadała w porówaniu do ostatniego wyniku, nawet przy zabokowaniu pamięci SGA, ponieważ procesy użytkowników już korzystają z która została umieszczona w obszarze swap. 7. Podsumowanie Strojenie systemu operacyjnego powinno być ostatnim etapem strojenia środowiska bazodanowego opartego o bazę Oracle i nie może zastępować poprzednich etapów. Przyspieszenie, jakie możemy uzyskać jest stosunkowo niewielkie, w porównaniu do zysku z innych etapów, ale etap ten nie powinien być pomijany, ponieważ pozwala on zgrać wszystkie elementy środowiska w jedną całość.