Pochodzenie DB2
Doświadczenia firmy
IBM związane z
bazami danych sięgają początku ich istnienia.
To właśnie pracownicy opracowali podstawy relacyjnych baz danych oraz język SQL, a baza danych IBM DB2 uznawana jest za pierwszą komercyjną implementację relacyjnej bazy danych.
Relacyjne bazy danych były rozwijane w IBM w ramach projektów z rodziny System R. W roku 1982 rozwiązanie o nazwie SQL/DSTM zostało zintegrowane w ramach systemu serwerowego SYSTEM/38. Następnie w roku 1983 wyodrębnił się formalnie projekt ochrzczony nazwą DB2 na systemie MVSTM - pierwotnie określany mianem DATABASE 2.
Aktualnie z DB2 Universal Database korzysta ponad 60 milionów użytkowników w ponad 425 000 firmach na całym świecie.
Cechy bazy danych DB2
- DB2 to pierwsza baza ze wsparciem dla języka Java
- DB2 to pierwsza na świecie baza certyfikowana na Windows 2000
- DB2 posiada silne wsparcie dla systemów Linux, także 64-bitowych
- DB2 to pierwsza baza z optymalizatorem kosztowym (rozwijanym od ponad 20 lat)
- DB2 to pierwsza baza z przepisywaniem SQL do optymalnej postaci
- DB2 to pierwsza baza relacyjna pozwalająca na obiektowe rozszerzenia
- DB2 jest dostępna na wszystkie wiodące platformy sprzętowe
- AIX (32, 64 bit)
- Solaris UltraSparc (32, 64 bit)
- HP-UX oparte na HP PA-RISC (32, 64 bit)
- HP-UX oparte na Intel Itanium (32, 64 bit)
- iSeries (OS/400)
- zSeries (OS/390 oraz z/OS)
- GNU/Linux 32, 64 bit na platformach Intel, pSeries, iSeries oraz zSeries (S/390)
- Microsoft Windows 32 bit (Intel+AMD)
- Microsoft Windows 64 bit oparte na Intel Intanium i AMD Athlon/Opteron
- DB2 posiada możliwości auto-konfiguracji i samo-zarządzania
- DB2 Posiada pełne wsparcie dla istniejących przemysłowych standardów tworzenia aplikacji, w tym również w szczególności możliwości tworzenia procedur składowanych w języku Java, C, C++, C# i środowisku .NET.
Cechy funkcjonalne DB2
Optymalizator zapytań DB2 - LEO (ang. Learing Optimizer) wybiera najwydajniejszą strategię realizacji zapytań w oparciu o doświadczenia z przeszłości. Optymalizator LEO uwzględnia fizyczne aspekty instalacji DB2 (ilość i wydajność procesorów, pamięć operacyjną dostępną dla bazy, wydajność dysków) oraz zgromadzone wcześniej informacje o samych danych, tzw. statystyki. Statystyki określają zakres informacji o danych, jakimi powinna dysponować baza, by najefektywniej obsłużyć wykonywane zapytania SQL. Optymalizator DB2 może zostać wprowadzony w tryb uczenia się, który pozwoli samoczynnie przygotować profile statystyk na podstawie danego obciążenia. Dzięki tej funkcjonalności znacząco może być skrócony czas strojenia systemu, ale także baza może elastycznie dostosować się do późniejszych zmian w aplikacji oraz właściwie zareagować na znaczny przyrost danych. Optymalizator DB2 wykorzystuje wiele opatentowanych algorytmów pozwalających na przepisywanie złożonych zapytań do optymalnej postaci (np. uwzględnienie więzów spójności w filtracji warunków zapytania, wykorzystanie tabel zawierających częściowo przetworzone wyniki zapytania). Optymalizator zapytań DB2 wybiega znacznie poza możliwość konkurencyjnych baz. Pozwala nie tylko optymalizować zapytania skierowane do bazy DB2, ale także rozproszone zapytania z wykorzystaniem innych systemów baz danych (np. Oracle, MsSQL, itd.). Tak jak pokazano na poniższym rysunku tabele innych systemów baz danych mogą być obsługiwane jak lokalne tabele DB2.
DB2 gromadzi w tzw. globalnym katalogu informacje o zdalnych tabelach i podczas optymalizacji bierze pod uwagę także aspekty zdalnej bazy (np. indeksy założone na tabeli, wielkość tabel, wydajność zdalnej bazy, buforowanie zdalnych obiektów).
Do innych unikalnych funkcjonalności można także zaliczyć:
- Wielowymiarowe klastrowanie danych (ang. Multidimensional Clustering) pozwalające na fizyczną organizację danych na dysku, zgodnie ze zdefiniowanymi kombinacjami pól
- Budowanie rozwiązań klastrowych w architekturze „Shared-nothing” z możliwością dołączania do 1000 klastrów (ADTmag.com, „DB2 for Linux Clustering scales to 1000 nodes”)
- Rozwiązania wysokiej dostępności bazy danych z przełączaniem się na serwer zapasowy bez utraty połączenia do bazy danych (HADR)
- Zintegrowane mechanizmy replikacji transakcji (także dwukierunkowej) z wykorzystaniem kolejki komunikatów WebSphere MQ
- Połączenie autonomicznych cech samo-zarządzania bazy z możliwością pełnej kontroli administratora:
- pamięć może być dynamicznie alokowana, przy czym administrator może narzucić określone ograniczenia, co do maksymalnej wielkości zaalokowanej pamięci dla odseparowania obciążenia
- dla wybranych tabel administrator może zdefiniować dowolną liczbę puli buforów bądź pozostawić jedną i zdać się na optymalizację bazy
- w każdym momencie administrator może dynamicznie obniżyć priorytet działających operacji administracyjnych, także tych wyzwalanych automatycznie.
Systemy baz danych
DB2 | DB2 | DB2 | DB2 | DB2 | DB2UDB | DB2 | DB2 | DB2