Informix

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Informix – rodzina produktów Systemów Zarządzania Bazami Danych (SZBD) firmy IBM. Informix jest oferowany jako flagowy serwer dla przetwarzania transakcyjnego (OLTP) jak i rozwiązań zintegrowanych. IBM nabył technologię Informix w 2001 od Informix Software.

Historia[edytuj | edytuj kod]

1980: Wczesna historia[edytuj | edytuj kod]

Roger Sippl i Laura King pracowali w firmie Cromemco, która zajmowała się wczesnymi systemami S-100/CP/M. Tam opracowali małą relacyjną bazę typu ISAM w ramach pakietu oprogramowania do tworzenia raportów.

Sippl i King opuścili Cromemco by założyć Relational Database Systems (RDS) w roku 1980. Ich pierwszy produkt, Marathon, był w zasadzie 16-bitową wersją ich wcześniejszej pracy, przeznaczoną dla systemu operacyjnego Onyx, będącego wersją Uniksa dla rodziny mikroprocesorów ZiLOG.

Będąc w RDS zwrócili swoją uwagę na wschodzący rynek SZBD i wydali swój własny produkt pod nazwą Informix (INFORMation on unIX) w roku 1981. Zawierał on swój własny język Informer. Zawierał on generator raportów ACE, używany do wyciągania danych z bazy i prezentowania ich w prosty sposób użytkownikom. Posiadał także narzędzie do tworzenia formatek ekranowych PERFORM, które pozwalało użytkownikom na interaktywne wyszukiwanie i modyfikowanie danych w bazie. Ostatnią wersją tego produktu była 3.30 wydana w roku 1986.

W roku 1985, wprowadzili nowy oparty na SQL-u język zapytań jako część INFORMIX-SQL (lub też ISQL) wersja 1.10 (wersja 1.00 nie była nigdy wydana). Produkt ten zawierał również SQL-ową odmianę ACE i PERFORM. Najbardziej znaczącą różnicą pomiędzy ISQL i wcześniejszym produktem Informix było wydzielenie kodu dostępu do bazy danych do procesu silnika bazy danych (sqlexec), a nie zawieranie go bezpośrednio po stronie klienta bazy danych – ustanawiając w ten sposób platformę dla przetwarzania klient-serwer z bazą danych uruchomioną na wydzielonej maszynie, innej niż maszyna użytkownika. Zastosowana technologia niskopoziomowego dostępu do danych ISAM została nazwana C-ISAM.

We wczesnych latach 80. Informix pozostawał niewielkim graczem, ale w miarę jak w połowie lat 80. rosłą popularność Uniksa i SQL-a zaczęło się to zmieniać. W 1986 stał się wystarczająco duży, żeby pomyślnie zadebiutować na giełdzie w publicznej ofercie, zmieniając przy tym nazwę na Informix Software. Lista produktów obejmowała INFORMIX-SQL wersja 2.00 i INFORMIX-4GL 1.00, oba zawierające zarówno motor bazy danych jak i narzędzia klienckie (I4GL dla programistów, ISQL dla nie programistów).

Wydano kilka kolejnych wersji, w tym nowy motor zapytań do bazy, nazywany początkowo INFORMIX-Turbo. Turbo wykorzystywało nową bibliotekę RSAM, mającą znaczną przewagę wydajnościową nad poprzednią C-ISAM w środowiskach wieloużytkownikowych. Wraz z wydaniem wersji 4.00 w 1989, Turbo został przemianowany na 'INFORMIX-OnLine' (w dużej części dlatego, że pozwalał wykonywać spójną kopię bezpieczeństwa bazy w trybie online podczas gdy użytkownicy mogli dalej modyfikować swoje dane), natomiast oryginalny serwer bazujący na C-ISAM (odmiana ISAM) został oddzielony od narzędzi (ISQL i I4GL) i nazwany INFORMIX-SE (ang. Standard Engine – standardowy motor bazy). Wersja 5.00 Informix OnLine została wydana pod koniec 1990, i zawierała pełne wsparcie dla transakcji rozproszonych z protokołem dwufazowego zatwierdzania i procedurami przechowywanymi w bazie (ang. stored procedures). Wraz z wersją 5.01 dodano wsparcie dla wyzwalaczy baz danych (ang. triggers).

1988: Akwizycja firmy Innovative Software[edytuj | edytuj kod]

W 1988, Informix zakupił firmę Innovative Software, która stworzyła dla DOS i Uniksa system biurowy o nazwie SmartWare oraz WingZ, innowacyjny arkusz kalkulacyjny dla Apple Macintosh.

WingZ zapewniał graficzny interfejs użytkownika, umożliwiał pracę z bardzo dużymi arkuszami danych oraz programowanie w języku HyperScript, podobnym do HyperCard . Oryginalne wydanie okazało się być wielkim sukcesem, stając się numerem dwa wśród arkuszy kalkulacyjnych za Microsoft Excel, chociaż wielu użytkowników WingZ uważało go za najlepszy produkt. W 1990 zaczęły się pojawiać wersje WingZ dla wielu innych platform, głównie wariantów Uniksa. W tym czasie wiele instytucji finansowych rozpoczęło inwestycje w uniksowe stacje robocze w celu zwiększenia możliwości przetwarzania dużych modeli finansowych. Przez pewien czas Wingz pomyślnie zajmował tę niszę na rynku. Pomimo to brakowało zasobów do marketingu i rozwijania aplikacji, być może ze względu na ogólne niezrozumienie rynku nie-serwerowego. We wczesnych latach 90. WingZ stał się niekonkurencyjny, aż w końcu Informix sprzedał go w 1995. Informix sprzedał licencję firmie Claris, która połączyła go ze zmodernizowanym GUI jako Claris Resolve.

1994: Dynamiczna Skalowalna Architektura[edytuj | edytuj kod]

Wraz z porażką produktów do automatyzacji biura, Informix ponownie skupił się na rosnącym rynku serwerów baz danych. W 1994 przy współpracy z Sequent Computer Systems, Informix wydał wersję 6.00 swojego serwera baz danych, zawierającą nową architekturę DSA (ang. Dynamic Scalable Architecture – Dynamiczna Skalowalna Architektura).

DSA związana była z przepisaniem od nowa dużej części jądra motoru produktu, wspierając zrównoleglenie zarówno poziome jak i pionowe. Była ona oparta na wielowątkowym rdzeniu dedykowanemu dla dobrej obsługi systemów wieloprocesowości symetrycznej której Sequent był pionierem, przed takimi dostawcami jak Sun Microsystems i Hewlett-Packard. Obydwie formy zrównoleglenia spowodowały, że produkt znalazł się na rynku w czołówce systemów skalowalnych, zarówno dla OLTP jak i hurtowni danych.

Obecnie znany pod nazwą Informix Dynamic Server (przez krótki okres znany jako Obsidian a potem znów jako Informix OnLine Dynamic Server), w wersji 7 został udostępniony na rynku w 1994, właśnie kiedy systemy SMP zaczynały być popularne, a Unix w szczególności zaczął być traktowany jako system z wyboru dla serwerów. Wersja 7 wyprzedzała konkurencję o całą generację, stale wygrywając w testach wydajnościowych. W wyniku tego sukcesu Informix w 1997 wspiął się na drugą pozycję w świecie baz danych, spychając z niej Sybase z zadziwiającą łatwością.

Opierając się na sukcesie wersji 7, Informix podzielił rozwój silnika bazy na dwie linie produktowe. Pierwsza z nich, znana na początku pod nazwą XMP (od ang.eXtended Multi-Processing – rozszerzona wieloprocesowość), stała się wersją 8, znaną także jako XPS (od ang. eXtended Parallel Server – rozszerzony serwer równoległy). Ta linia rozwojowa skupiła się na rozszerzeniach dla hurtowni danych i obsłudze zrównoleglenia na platformach wysokiej klasy, włączając w to platformy typu shared-nothing takie jak RS-6000/SP firmy IBM.

1995: Akwizycja firmy Illustra[edytuj | edytuj kod]

Drugi kierunek rozwoju, po zakupie firmy Illustra w 1995 koncentrował się na technologii obiektowo-relacyjnej (O-R). Illustra, napisana przez byłych członków zespołu tworzącego bazę Postgres i kierowana przez pioniera baz danych Michaela Stonebrakera, zawierała różne cechy umożliwiające jej zwracać gotowe obiekty bezpośrednio z bazy, która to cecha w wielu przypadkach może znacząco skrócić czas programowania. Illustra zawierała również możliwość podłączania zewnętrznych modułów użytkownika znanych jako DataBlades, które pozwalały na dodawanie nowych typów danych i funkcji do serwera bazodanowego. Było to rozwiązaniem dla wielu kłopotliwych dla SQL-a problemów, takich jak szeregi czasowe, dane geoprzestrzenne i multimedialne. Informix zintegrował mapowanie obiektowo-relacyjne oraz DataBlades z firmy Illustra z wersją 7.x produktu OnLine, w wyniku czego powstał Informix Universal Server (IUS), lub też ogólnie wersja 9.

Obydwie nowe wersje, 8 (XPS) i 9 (IUS), pojawiły się na rynku w 1996, czyniąc z Informixa pierwszą z "wielkiej trójki" firm bazodanowych (pozostałe dwie to Oracle i Sybase), która oferowała wbudowane wsparcie obiektowo-relacyjne. Komentatorzy zwrócili szczególną uwagę na DataBlades, które wkrótce stały się bardzo liczne: dziesiątki pojawiły się w ciągu roku, przeniesione do nowej architektury dzięki współpracy z Illustra. To tak wstrząsnęło innymi dostawcami, że Oracle "przeszczepił" pakiet ze wsparciem dla szeregów czasowych do swojego produktu w 1997, a Sybase zwrócił się do firmy zewnętrznej o opracowanie niezależnego pakietu, co było jednak nieprzekonującym rozwiązaniem.

1996 i 1997: Problemy wewnętrzne[edytuj | edytuj kod]

Pomimo że technologicznie Informix przewodził na rynku baz danych, przed końcem 1996 roku pojawiły się opóźnienia w wydawaniu nowych wersji produktu. Trapiony technicznymi i marketingowymi problemami nowy produkt do tworzenia aplikacji, Informix-NewEra, szybko został zepchnięty w cień przez rozwijający się język programowania Java. Michael Stonebraker obiecywał, że technologia Illustra mogłaby być zintegrowana w ciągu roku od nabycia pod koniec 1995, ale tak jak przewidywał Gartner Group integracja wymagała więcej niż dwóch lat. Na początku 1997 niezadowolony z nowego kursu firmy główny architekt XPS Gary Kelley nagle zrezygnował i dołączył do odwiecznego rywala Oracle Corporation, zabierając 11 swoich deweloperów ze sobą[1]. Skończyło się to tym, że Informix pozwał Oracle aby zapobiec utracie tajemnic handlowych.

1997: Błędy w zarządzaniu[edytuj | edytuj kod]

Błędy w marketingu i niefortunne zarządzanie przesłoniły techniczne sukcesy Informixa. 1 kwietnia 1997 Informix musiał ogłosić, że przychody za pierwszy kwartał są niższe od oczekiwań o 100 milionów dolarów.

Prezes Phillip White był obwiniany o niedostateczne koncentrowanie się na podstawowej działalności bazodanowej oraz poświęcanie zbyt wielu zasobów technologii obiektowo-relacyjnej[2]. Wystąpiły duże straty operacyjne i redukcja zatrudnienia. Informix skorygował swoje dochody z lat 1994-1996. Znaczne kwoty dochodów wykazanych w połowie lat 90. pochodziła ze sprzedaży licencji partnerom, którzy nie sprzedali ich użytkownikom końcowym; ta i inne nieprawidłowości doprowadziły do zawyżenia dochodów o ponad 200 milionów dolarów. Już po odejściu White'a w lipcu 1997, firma nadal borykała się z nieprawidłowościami księgowymi, ponownie korygując przychody na początku 1998[3].

Następstwa złego zarządzania[edytuj | edytuj kod]

Pomimo że zarzuty złego zarządzania nadal prześladowały firmę Informix, możliwości Informix Dynamic Server (IDS) stawały się coraz większe. Wybrano również nowe kierownictwo. Fragment z PC Magazine z 22 września 1998 artykułu na temat czołowych 100 firm zmieniających sposób w jaki przetwarzamy dane:

...Informix walczy z Oracle na arenie obiektowo-relacyjnej poprzez rozszerzenie swojego flagowego produktu Informix Dynamic Server za pomocą Universal Data Option. Po burzliwym roku w którym nastąpił problematyczny audyt, Robert Finnocchio został mianowany nowym prezesem w Menlo Park, Kalifornia. Wraz z przychodami w roku 1997 w wysokości 662,3 milionów dolarów Informix zaczął wzmacniać swoją pozycję na rynku baz danych.

W listopadzie 2002 Phillip White, były prezes Informixa wyrzucony w 1997, został oskarżony przed sądem federalnym pod ośmioma zarzutami oszustw dotyczących obrotu papierami wartościowymi. W ugodzie sądowej trzynaście miesięcy później przyznał się do jednego zarzucanego mu czynu sfałszowania pisma o rejestracji i dopuszczeniu do obrotu amerykańskiej komisji papierów wartościowych United States Securities and Exchange Commission.

W maju 2004 Departament Sprawiedliwości skazał White'a na dwa miesiące więzienia federalnego za oszustwa giełdowe, grzywnę w wysokości 10 000 dolarów, oraz dwuletni okres nadzoru kuratorskiego i 300 godzin prac społecznie użytecznych. W wyroku stwierdzono, że kwota strat poniesionych przez akcjonariuszy wynikłych z naruszenia prawa nie mogą być oszacowane na podstawie dowodów przedstawionych w sprawie [1]. Wcześniejsza ugoda White'a ograniczyła okres więzienia do nie więcej niż 12 miesięcy.

Niemiecki obywatel i rezydent Walter Königseder, będący wiceprezesem odpowiedzialnym za operacje w Europie, był również poszukiwany przez ławę przysięgłych, ale Stany zjednoczone nie były w stanie uzyskać jego ekstradycji.

W listopadzie 2005 ukazała się książka opisująca szczegóły wzlotu i upadku Informixa i jego prezesa Phila White'a. Napisana przez długoletniego pracownika Informixa Prawdziwa historia Informixa i Phila White'a: Lekcje biznesu i zarządzania dla wyższej kadry kierowniczej [2] jest relacją osoby z kierownictwa firmy, pokazującą szczegółową chronologię początkowego sukcesu, końcowej porażki i tego jak prezes Phil White skończył w więzieniu.

2001: Inne nabytki[edytuj | edytuj kod]

Począwszy od roku 2000 przez kilka kolejnych lat, najważniejsze wydarzenia w historii Informixa nie koncentrują się już na jego technologicznych innowacjach. W tym roku w marcu Informix nabył Ardent Software, firmę która już posiadała swoją historię fuzji i przejęć. Ta akwizycja dodała technologię wielowymiarowych motorów UniVerse i UniData (razem określanych jako U2) do już i tak obszernej listy posiadanych wówczas motorów bazodanowych. Lista ta zawierała nie tylko produkty o rodowodzie Informixowym, ale też silnik dla hurtowni danych Red Brick i napisany w 100% w Javie silnik SQL Cloudscape (który później został włączony do implementacji referencyjnej J2EE).

Przed zakupem Informixa przez IBM jego linia produktowa zawierała:

  • Informix C-ISAM – ostatnia wersja oryginalnej bazy Marathon
  • Informix SE – prosty silnik bazy danych do osadzania w aplikacjach
  • Informix OnLine – sprawny system do obsługi baz średniej wielkości
  • Informix Extended Parallel Server (XPS, V8) – wysokiej klasy wersja dla dużych rozproszonych instalacji
  • Informix Universal Server (V9) – połączenie silnika OnLine z wersji 7 z rozszerzeniami obiektowymi i technologią DataBlade od Illustra
  • Informix-4GL – Język czwartej generacji dla tworzenia aplikacji
  • Red Brick Warehouse – produkt dla hurtowni danych
  • Cloudscape – SZBD napisany w całości w Javie, mieszczący się w urządzeniach przenośnych z jednej strony i obsługujący architekturę J2EE z drugiej. W 2004 Cloudscape został przez IBM przekazany na zasadach Open Source do Apache Software Foundation pod nazwą Derby.
  • Zestaw U2: UniVerse i UniDatawielowymiarowe bazy oferujące sieciowe, hierarchiczne, tablicowe i inne typy danych trudne do zamodelowania w SQL

Przejęcie Informixa przez IBM[edytuj | edytuj kod]

W lipcu 2000 były prezes Ardenta Peter Gyenes zostaje prezesem Informixa, i wkrótce reorganizuje go tak by stał się bardziej atrakcyjny jako cel do nabycia. Najważniejszym krokiem było oddzielenie technologii bazodanowych od narzędzi i aplikacji.

W kwietniu 2001 IBM, zachęcony sugestią ze strony Wal-Mart (największy klient Informixa) skorzystał z tej reorganizacji,[4] kupił od Informixa technologię bazodanową, markę, plany dalszego rozwoju (wewnętrzny projekt o nazwie kodowej "Arrowhead"), oraz bazę ponad 100 000 klientów.[5] Pozostała część firmy, obejmująca narzędzia i aplikacje, zmieniła nazwę na Ascential Software. W maju 2005 IBM kupił Ascential, ponownie łącząc aktywa Informixa w ramach działu IBM-a o nazwie Information Management Software.

Obecne plany[edytuj | edytuj kod]

IBM ma długoterminowe plany zarówno dla Informixa, jak i DB2 w których obydwie bazy dzielą się ze sobą technologiami. Na początku roku 2005 IBM wydał wersję 10 Informix Dynamic Server (IDS). IDS 11 (v11.10, nazwa kodowa "Cheetah", czyli z ang. gepard) stała się ogólnie dostępna od 6 lipca 2007. Publiczna dostępność produktu została oficjalnie ogłoszona w Leneksa, KS 12 lipca 2007. IBM wydał również wersję IDS 11.5 (nazwa kodowa "Cheetah2") w maju 2008. Rozszerzyła ona IDS o cechy zapewniające nieprzerwaną wysoką dostępność i ułatwienia dla programistów aplikacyjnych.

Szkolenie i certyfikacja[edytuj | edytuj kod]

Lista szkoleń IBM na stronie [3] zawiera kompletny zestaw najważniejszych kursów szkoleniowych dotyczących baz danych Informixa. Kursy te poruszają wiele istotnych koncepcji Informi'x'a, oraz SQL od zagadnień podstawowych do zaawansowanych .

Zobacz też[edytuj | edytuj kod]

Przypisy

Linki zewnętrzne[edytuj | edytuj kod]