Oracle. Optymalizacja wydajności - Helion
Tytuł oryginału: Oracle Performance Tunning
Tłumaczenie: Bartłomiej Jabłoński
ISBN: 83-7197-797-2
stron: 408, Format: B5, okładka: miękka
Data wydania: 2003-06-16
Księgarnia: Helion
Cena książki: 49,00 zł
Uzyskanie maksymalnej wydajności złożonego systemu, jakim jest Oracle, to zadanie skomplikowane i trudne. Książka "Oracle. Optymalizacja wydajności", napisana przez czołowych specjalistów w dziedzinie strojenia wydajności i optymalizacji baz danych, pomoże Ci stawić mu czoła.
Wyjątkowość tej książki polega na jej całościowym podejściu do tematu. Uzyskanie maksymalnej wydajności i dostrojenie bazy Oracle wymaga nie tylko optymalizacji zapytań SQL; należy również zastanowić się nad konfiguracją sprzętu, na którym ma być uruchomiony system, wydajnością podstawowych operacji wykonywanych na twardych dyskach, a także rozważyć, jakie cechy najnowszej wersji Oracle"a 9i mogą być przydatne do przyspieszenia pracy aplikacji.
Książka omawia:
- Podstawowe pojęcia
- Parametry konfiguracyjne Oracle"a
- Strojenie serwera
- Zaawansowane opcje wpływające na wydajność
- Strojenie wydajności przetwarzania
- Perspektywy wydajnościowe
- Skrypty UTLBSTAT i UTLESTAT
- Wpływ sprzętu na Oracle"a
- Operacje wejścia-wyjścia i ich znaczenie dla strojenia serwera
- Wykorzystywanie planu wykonania i śledzenie SQL, strojenie indeksów
- Użycie optymalizatora Oracle"a
- Strojenie zapytań SQL
- Oracle 9i Real Application Clusters
- Strojenie procesu tworzenia kopii zapasowych
- Konfiguracja systemu odpornego na awarie
- Wydajność Oracle"a w sieci
Osoby które kupowały "Oracle. Optymalizacja wydajności", wybierały także:
- PL/SQL. Kurs video. Od podstaw do zagadnień zaawansowanych. Programowanie baz danych 79,00 zł, (31,60 zł -60%)
- Linux Server. Kurs video. Usługi serwerowe, skrypty i środowisko graficzne 69,00 zł, (34,50 zł -50%)
- Tablice informatyczne. SQL. Wydanie III 16,98 zł, (8,49 zł -50%)
- SQL w 24 godziny. Wydanie VI 69,00 zł, (34,50 zł -50%)
- Oracle PL/SQL w mgnieniu oka 44,90 zł, (22,45 zł -50%)
Spis treści
Oracle. Optymalizacja wydajności -- spis treści
O Autorach (11)
Wstęp (13)
Część I Strojenie instancji (15)
Rozdział 1. Podstawy strojenia (17)
- Podstawowe pojęcia (17)
- Czym jest strojenie? (17)
- Czy strojenie jest konieczne? (18)
- Kiedy zaprzestać strojenia? (18)
- Cele strojenia (19)
- Strojenie wydajności przetwarzania (19)
- Strojenie czasu odpowiedzi (19)
- Strojenie dla dużej liczby użytkowników (20)
- Strojenie niezawodności (20)
- Strojenie ładowania danych (21)
- Metodologia strojenia (21)
- Badanie problemu (22)
- Wyznaczenie problemu (24)
- Wyznaczenie rozwiązania i ustanowienie celów (24)
- Testowanie rozwiązania (26)
- Analiza rezultatu (27)
- Co wpływa na wydajność serwera Oracle? (27)
- Wąskie gardła systemu (28)
- Strojenie systemu (29)
- Ograniczenia systemowe (31)
- Wyznaczanie rozmiaru i pojemności systemu (31)
- Różnica między rozmiarem a pojemnością (32)
- Etapy wyznaczania rozmiaru systemu (32)
- Etapy wyznaczania pojemności (33)
- Podsumowanie (33)
Rozdział 2. Parametry konfiguracyjne systemu Oracle (35)
- Uruchamianie instancji Oracle (36)
- Łączenie się z Oracle (36)
- Polecenie STARTUP (37)
- Uruchamianie instancji (37)
- Usuwanie typowych błędów (38)
- Zatrzymywanie instancji (39)
- Parametry inicjalizacyjne (42)
- Parametry strojenia instancji (43)
- Parametry wyznaczające wielkości zasobów (43)
- Podsumowanie (44)
Rozdział 3. Strojenie serwera Oracle (45)
- Parametry inicjalizujące wymieniane w niniejszym rozdziale (46)
- Parametry SGA (46)
- Parametry obszaru PGA i obszaru użytkownika (47)
- Parametry Undo (48)
- Inne parametry (48)
- Skalowanie SGA (49)
- Strojenie systemu operacyjnego (49)
- Strojenie prywatnych obszarów SQL i PL/SQL (50)
- Strojenie obszaru wspólnego (51)
- Strojenie bufora danych (56)
- Zarządzanie segmentami wycofania i informacją wycofania (61)
- Strojenie serwera w trybie SMU (62)
- Strojenie serwera w trybie RBU (63)
- Podsumowanie strojenia obszarem wycofania (69)
- Bufor dziennika powtórzeń (70)
- Rywalizacja o bufor dziennika (70)
- Strojenie punktów kontrolnych (70)
- Strojenie sortowań (71)
- Strojenie obszaru SORT AREA (72)
- Strojenie pozostawianego obszaru sortowania (72)
- Strojenie obszarem tymczasowym (72)
- Minimalizacja rywalizacji o listę wolnych bloków (73)
- Podsumowanie (74)
Rozdział 4. Wydajność - opcje zaawansowane (75)
- Parametry wykorzystywane w tym rozdziale (75)
- Indeksy (77)
- Koncepcja indeksu (77)
- Rodzaje indeksów (78)
- Indeksy B*-tree (78)
- Jak działają indeksy bitmapowe (81)
- Co warto indeksować? (82)
- Sposób indeksowania (83)
- Równoległe wykonywanie zapytań w systemie Oracle (85)
- Wykonywanie równoległe (85)
- Równoległe tworzenie indeksu (91)
- Równoległe ładowanie (92)
- Równoległe odtwarzanie (92)
- Klastry (93)
- Klastry haszowe (96)
- Kiedy haszować? (97)
- Odczyty wieloblokowe (98)
- Partycjonowanie (99)
- Koncepcja partycjonowania (99)
- Partycjonowanie zakresowe (100)
- Partycje z listą wartości (101)
- Partycjonowanie z kluczem haszowym (102)
- Partycje złożone (102)
- Korzyści z partycjonowania (103)
- Partycje a indeksy (104)
- Stabilność planu (104)
- Serwer wielokanałowy (104)
- Serwer dedykowany (105)
- Serwer wielokanałowy (105)
- Podsumowanie (107)
Rozdział 5. Strojenie wydajności przetwarzania (109)
- Parametry zaprezentowane w niniejszym rozdziale (109)
- Korzystanie z mechanizmu Grupy Konsumenckiej (110)
- Przegląd Grup Konsumenckich (110)
- Konfiguracja Grup Konsumenckich (111)
- Dodawanie użytkowników do planu (114)
- Monitorowanie grup konsumenckich (115)
- Strojenie zasobów użytkownika (115)
- Systemy OLTP (116)
- Czas odpowiedzi (116)
- Przenoszenie niektórych funkcji do innego systemu (116)
- Dystrybucja raportów historycznych (117)
- Dystrybucja bieżących raportów (118)
- Obsługa rozproszenia w aplikacjach (118)
- Podsumowanie (119)
Rozdział 6. Perspektywy wydajnościowe systemu Oracle (121)
- Perspektywy V$ a perspektywy G$ (122)
- Przegląd dynamicznych perspektyw wydajnościowych (122)
- Wykorzystywanie perspektyw (127)
- Zapytania wykorzystujące perspektywy dynamiczne (127)
- Skrypty UTLBSTAT/UTLESTAT i pakiet STATSPACK (128)
- Narzędzia do badania wydajności (128)
- Podsumowanie (129)
Rozdział 7. Skrypty UTLBSTAT i UTLESTAT (131)
- UTLBSTAT/UTLESTAT (131)
- Uruchamianie skryptów UTLBSTAT/UTLESTAT (131)
- Wynik wykonania skryptów UTLBSTAT/UTLESTAT (132)
- Interpretacja statystyk BSTAT/ESTAT (132)
- Pakiet STATSPACK (148)
- Instalowanie pakietu STATSPACK (149)
- Korzystanie z pakietu STATSPACK (149)
- Administrowanie pakietem STATSPACK (150)
- Raport STATSPACK (151)
- Podsumowanie (166)
Część II Strojenie sprzętu komputerowego (167)
Rozdział 8. System Oracle i sprzęt komputerowy (169)
- Parametry opisane w tym rozdziale (169)
- Instancja Oracle od środka (170)
- Struktura pamięci (171)
- Procesy (173)
- Architektura systemu (175)
- Procesory i bufory (175)
- Rodzaje procesorów (176)
- Procesory 32- i 64-bitowe (179)
- Architektura pamięci komputera (180)
- Rodzaje magistral (181)
- Magistrale wejścia-wyjścia (182)
- Sieć (182)
- Klastry (182)
- Podsumowanie (182)
Rozdział 9. Operacje wejścia-wyjścia (183)
- Dysk twardy (183)
- Przegląd (184)
- Wydajność dysku (187)
- Macierze RAID (190)
- Macierze sprzętowe i programowe (191)
- Rozcinanie (191)
- RAID 0 (192)
- RAID 1 (192)
- RAID 10 (193)
- RAID 2 (194)
- RAID 3 (195)
- RAID 4 (195)
- RAID 5 (197)
- Podsumowanie kontroli parzystości (198)
- Przegląd wydajności RAID-ów (199)
- Optymalizacja wydajności (201)
- Optymalizacja ruchu głowicy (201)
- Bufor kontrolera (202)
- Sprzętowy XOR (203)
- Rozmiar paska (203)
- RAID wewnętrzny i zewnętrzny (204)
- Wewnętrzne systemy RAID (204)
- Zewnętrzne systemy RAID (204)
- Systemy SAN (205)
- Systemy sieciowego przechowywania danych NAS (207)
- Podsumowanie (208)
Rozdział 10. System Oracle i operacje wejścia-wyjścia (209)
- Parametry przedstawione w tym rozdziale (209)
- Zależność Oracle od urządzeń wejścia-wyjścia (210)
- Dlaczego opóźnienie odczytu jest ważne (211)
- Opóźnienie zapisu (212)
- Odporność na awarie (213)
- Konfiguracja operacji wejścia-wyjścia w bazie Oracle (214)
- Wydajność, odporność na awarie i koszty (214)
- Bezpieczeństwo inwestycji (214)
- Strojenie operacji wejścia-wyjścia (217)
- Rywalizacja o dysk (217)
- Badanie rywalizacji dysków (218)
- Rozwiązywanie problemów rywalizacji o dysk (220)
- Redukcja niepotrzebnych odwołań (224)
- Migracja rekordów i łańcuchy bloków (225)
- Dynamiczne rozszerzanie (226)
- Parametry PCTFREE i PCTUSED (227)
- Przegląd technik zmniejszania liczby operacji wejścia-wyjścia (231)
- Rozmiar bloku (231)
- Bloki różnych rozmiarów (233)
- Fragmentacja (234)
- Podsumowanie (236)
Część III Strojenie aplikacji i zapytań SQL (237)
Rozdział 11. Wykorzystywanie planu wykonania i śledzenie SQL (239)
- Śledzenie SQL (240)
- Przygotowania do śledzenia (240)
- Kontrolowanie śledzenia (240)
- Funkcjonalność śledzenia SQL (241)
- Funkcjonalność TKPROF (242)
- Interpretowanie raportu śledzenia (244)
- Polecenie EXPLAIN PLAN (249)
- Przygotowanie do analizy planu wykonania (249)
- Wywołanie EXPLAIN PLAN (250)
- Pobieranie wyniku analizy (250)
- Rejestracja aplikacji (251)
- Podsumowanie (252)
Rozdział 12. Strojenie indeksów (255)
- Parametry omówione w tym rozdziale (256)
- Rodzaje indeksów (257)
- Korzystanie z indeksów B*-tree (258)
- Co powinno być indeksowane? (259)
- Utrzymywanie indeksów (261)
- Tabele zorganizowane indeksowo (262)
- Indeksy bitmapowe (262)
- Kiedy korzystać z indeksów bitmapowych (263)
- Indeksy oparte na funkcji (264)
- Wskazówki optymalizatora (264)
- Monitorowanie i analiza indeksów (265)
- Monitorowanie indeksów (265)
- Podsumowanie (265)
Rozdział 13. Optymalizator Oracle (267)
- Co to jest optymalizator? (268)
- Jak pracuje optymalizator? (268)
- Parametry inicjalizujące (269)
- Metody optymalizowania (270)
- Korzystanie z pakietu DBMS_STATS (272)
- Tworzenie tabel statystyk (272)
- Zbieranie statystyk (273)
- Kasowanie statystyk (274)
- Odtwarzanie statystyk (274)
- Inne funkcji pakietu DBMS_STATS (275)
- Praca ze statystykami (275)
- Polecenie ANALYZE (276)
- Wywoływanie polecenia ANALYZE (276)
- Statystyki słownika danych (278)
- Przetwarzanie transakcyjne (280)
- Realizacja polecenia SQL (282)
- Tworzenie kursora (282)
- Parsowanie polecenia (282)
- Przygotowanie zapytania SELECT (284)
- Zmienne wiązane (284)
- Wykonywanie polecenia (284)
- Równoległe wykonywanie poleceń (285)
- Przesyłanie rekordów (285)
- Analiza poleceń SQL (286)
- Projektowanie poleceń SQL (287)
- Pakiety, procedury i funkcje (288)
- Używanie wskazówek (288)
- Podsumowanie (289)
Rozdział 14. Strojenie poleceń SQL (291)
- Optymalne polecenia SQL (291)
- Jak zidentyfikować niepoprawnie zoptymalizowane polecenia (292)
- Rodzaje złączeń (292)
- Algorytm nested loops (292)
- Algorytm sort-merge (293)
- Algorytm hash join (294)
- Strojenie poleceń SQL (294)
- Strojenie istniejącej aplikacji (295)
- Projektowanie nowych aplikacji (299)
- Podsumowanie (304)
Rozdział 15. Wskazówki optymalizatora (307)
- Implementacja wskazówek (308)
- Składnia wskazówek (308)
- Błędy stosowania (309)
- Wskazówki wielokrotne (309)
- Wskazówki (310)
- Cele optymalizatora (310)
- Metody dostępu (312)
- Kolejność łączenia (316)
- Operacje łączenia (317)
- Wskazówki zapytań równoległych (319)
- Transformacje zapytań (321)
- Pozostałe wskazówki (323)
- Podsumowanie (326)
Część IV Zagadnienia zaawansowane (327)
Rozdział 16. Oracle9i Real Application Clusters (329)
- Przegląd technologii RAC (329)
- Systemy komputerowe (331)
- Podsystem dysku wspólnego (331)
- Połączenie międzyserwerowe (331)
- Blokady (332)
- Konfiguracja klastra (333)
- Kiedy używać konfiguracji RAC (338)
- Strojenie RAC (338)
- Konfiguracja i określanie mocy komputera (339)
- Instancja i strojenie blokad (339)
- Strojenie aplikacji (339)
- Podsumowanie (339)
Rozdział 17. Strojenie tworzenia kopii zapasowych i odtwarzania (341)
- Parametry wymieniane w tym rozdziale (342)
- Zapis na dysk - przypomnienie (343)
- Tworzenie kopii bezpieczeństwa (343)
- Proces odtwarzania (344)
- Sposoby tworzenia kopii zapasowej (344)
- Ręczne wykonywanie zimnej kopii zapasowej (344)
- Ręczne wykonywanie gorącej kopii zapasowej (345)
- Wykonywanie gorącej kopii zapasowej za pomocą narzędzia RMAN (345)
- Wykonywanie gorącej kopii zapasowej w architekturze SAN (346)
- Charakterystyka dostępu do danych podczas ręcznego tworzenia kopii zapasowej (346)
- Charakterystyka dostępu do danych w narzędziu RMAN (347)
- Obciążenie systemu w czasie tworzenia kopii bezpieczeństwa (347)
- Cele wykonywania kopii zapasowej (348)
- Dopasowywanie metody do systemu (348)
- Wykonywanie zimnej kopii zapasowej bazy (349)
- Gorąca kopia zapasowa (350)
- Strojenie ręcznego sporządzania kopii zapasowych (354)
- Strojenie sporządzania kopii zapasowej wykonywanej narzędziem RMAN (354)
- Bufor RMAN (354)
- Synchroniczne i asynchroniczne operacje wejścia-wyjścia (355)
- Parametry strojenia narzędzia RMAN (355)
- Monitorowanie pracy narzędzia RMAN (356)
- Wydajność tworzenia kopii (356)
- Procesor (356)
- Operacje wejścia-wyjścia (357)
- Sieć (358)
- Podział kopii (358)
- Weryfikacja wydajności (360)
- Co można testować na serwerze? (360)
- Co można testować w systemie operacyjnym? (360)
- Podsumowanie (363)
Rozdział 18. Tworzenie systemu odpornego na awarie (365)
- Parametry opisane w niniejszym rozdziale (365)
- Dlaczego należy planować awarie (366)
- Jak przetrwać awarię? (366)
- Odległa kopia lustrzana (367)
- Oracle9i Data Guard (367)
- Replikacja (369)
- Planowanie awarii (370)
- Etapy planowania (370)
- Dokumentacja (371)
- Scenariusze (372)
- Odtwarzanie po awarii (373)
- Strojenie kopii systemów (373)
- Podsumowanie (374)
Rozdział 19. Wydajność systemu Oracle w sieci (375)
- Architektura sieci (375)
- Komponenty sprzętowe (376)
- Protokoły sieciowe (378)
- Strojenie komponentów sieciowych (379)
- Strojenie oprogramowania (379)
- Strojenie Oracle (379)
- Projekt sieci (380)
- Rozważania na temat przepustowości (380)
- Segmentacja sieci (381)
- Mostki, routery i koncentratory (381)
- Podsumowanie (382)
Dodatki (383)
Skorowidz (385)