Temat: Oracle kupuje Sun'a
Marcin Przepiórowski:
Błażej O.:
Akurat powyższe przykłady nie stanowią według mnie jakiś istotnych punków o których można powiedzieć, że Oracle coś wymyślił a później inny poszli w jego ślady - być może Oracle wprowadził nazwę PL/SQL, ale wywoływanie procedur wewnątrz systemu (niekoniecznie SQL) to była nawet wtedy rzecz oczywista, redo logi to idea/algorytm wręcz banalny (niekoniecznie prosty w implementacji) także i w tym przypadku mechanizmy te były już znane.
Witam,
Ja nie mowie o wywolywaniu procedur ale o jezyku proceduralnym
wbudowanym w baze - a nie interfejsie to zewnetrzych bibliotek
http://www.orafaq.com/wiki/PL/SQL
Jaki widac PL/SQL jest od 1991 roku. Jesli znasz przyklady
kto byl wczesniej chetnie zobacze.
Ale już Ci napisałem, że nie wykluczone że PLSQL Oracle wprowadził wcześniej i również Ci napisałem, że jak dla mnie wywoływanie procedur wewnątrz systemu (przypomnę, że SQL wtedy był jednym z rozwiązań bazodanowych - to teraz jest on standardem) jest tak oczywiste że nie wyobrażam sobie aby tego nie było. Także to nie jest dla mnie jakiś wyróżnik standardu czy bycia prekursorem.
Jesli chodzi o redo logi - mowisz ze mechanizmy byly znane ?
Jakis przyklad implementacji ?
Chetnie sie dowiem
Z życia wzięte - rok 1994 jedna z moich pierwszy prac nad bazami danych w dbf-ach (przypomnę wtedy nie było internetu, nie wiedziałem co to ORACLE i SQL i inne takie):
Problem - aplikacja przetwarzająca dbf-y (wtedy takie rzeczy pisało się samemu, nawet obsługę dbf-ów też się pisało samemu) lubiła się wywalać po paru godzinach pracy, trzeba było więc opracować mechanizm pozwalający na dotworzenie stanu przed walnięciem systemu - zrobiłem to w ten sposób, że przed puszczeniem przetwarzania ustalałem liczbę a następnie każdy rekord w dbf-ie po przetwarzaniu w polu "deleted" (nie było do tego dedykowanego pola) oznaczało się tą liczbą - stąd się wiedziało które rekordy w danym procesie były przetworzone i można było się cofnąć w razie jakiś problemów.
I proszę Cię bardzo oto implementacja - na takiej zasadzie to działa i nie ma w tym czegoś niezwykłego - czy uważasz że tak banalny algorytm nie mógł powstać przy właściwie dowolnym systemie bazodanowym?
Ja myślę, że "redo logi" były znane od zawsze tylko że Oracle to nazwał i już.
I jeszcze jedno WAL w PG to cała infrastruktura - niewykluczone że w taka lub inna funkcjonalnośc istniała wcześniej (tego nie wiem i trzeba by było to sprawdzic).
Z mojego punktu widzenia uważam, że zastanawianie się kto co zrobił wcześniej i ustalanie kto od kogo kopiuje rozwiązania zostawmy historykom, dużo bardziej interesujące może okazac się porównanie obu funkcjonalności.
Popatrz jaka jest obecnie wiedza nt. "nowych technologii", niektórzy myślą, że SQL-a wymyślił Microsoft (bardzo często się z tym spotykam) i ku zaskoczeniu rozmówców okazuje się, że Oracle to też SQL i dodatkowo jest wiele innych baz to też SQL a generalnie SQL jest standardem opracowanym pierwotnie przez IBM-a. Także jak widać Oracle wcale nie jest wcale taki innowacyjny jak to się może wydawać.
A czy ja gdzies napisalem ze SQL-a wymyslil Oracle ?
Oni tylko zrobili swoja skladnie polaczen ;)
I znów zauważ, że jak coś wprowadza firma komercyjna typu Oracle dajmy na to wsparcie w Oracle XML, to mówi się o tym jako technologii, w przypadku OS mówi się o jakiś tam rozszerzeniach czy innych udogodnieniach i generalnie nie uważa się tego za coś co może być wykorzystane komercyjnie (w Polsce jest to powszechne, na zachodzie już niekoniecznie). A to duży błąd, bo zazwyczaj różne ciekawe rzeczy są robione w ramach OS, ponieważ można je w tych projektach stworzyć.
W tym znaczeniu udogodnienie = technologia.
A kto Ci powiedział, że nie znam Oracle - samo pojęcie "znam" oczywiście jest subiektywne i codziennie okazuje się że uczę się czegoś nowego.
Zresztą zauważyłem też interesującą rzecz, prawdziwi specjaliści od Oracle z którymi współpracowałem i do których mam duży szacunek nigdy nie powiedzieli, że znają Oracle.
Ja tez nigdzie nie napisalem ze znam Oracla ;)
Ale uwazam ze po 9 latach pracy z nim - jako administrator
konsultant i wykladowca widzialem na tyle duzo przykladow ze
radze sobie z ta technologia.
Natomiast w chwili obecnej jeżeli mam zrobić coś nietypowego, to Oracle nie jest pierwszą bazą do której sięgam aby przygotować koncepcję rozwiązania. W przypadku rozwiązań standardowych to i owszem.
Też nie przeceniałbym swoich sił, postawić bazę może "humanista" znający jako tako angielski wykorzystując do tego celu dokumentację. Projekt i wdrożenie rozwiązania to zupełnie inna bajka i zapewne mało jeszcze widziałeś skoro jesteś tak pewny siebie.
Widzialem moim zdaniem juz duzo (pracuje w IT od 10 lat)
- a szczegolnie projektow w ktorych kazdemu sie wydawalo ze wszystko bedzie dzialac.
Ale malo kto przewidywal np efekt skali (dane, uzytkownicy)
czy to ze system potem trzeba utrzymywac a czasami nawet odtwarzac z backupu
(pod warunkiem ze ktos wogole go przewidzial)
Jak widzialem lata temu wersje chyba 6 PG to nie miala ona jeszcze
WAL ... Oracle juz dawno mial ;)
Ja nie mowie ze PG jest kopia Oracle ale to co najlepsze w Oracle
znalazlo sie tez w PG. Ciekawe czemu nie poszli w rozwiazanie logowania takie jest w Sybase a pozniej w MS SQL-u.
PG od zawsze był systemem transakcyjnym (z tego co pamiętam), także miał jakiś mechanizm rejestrowania zmian, czy to było w wersji takiej czy innej i kiedy to nazwali WAL to bym musiał sprawdzić.
Czekam !
Strona PG mowi ze WAL to kolo roku 2000
http://www.postgresql.org/about/history
Redo w Oracle bylo ciut wczesniej.
Natomiast tak jak napisałem wcześniej uważałbym na to kto to wprowadził pierwszy i kto kopiuje rozwiązania od kogo - Oracle wcale nie jest w mojej ocenie firmą która wprowadza innowacyjne technologie - raczej kopiuje lub kupuje istniejące rozwiązania.
O tak teraz kupuje wszystko ;)
To się cieszę - interesujący artykuł jest poniżej (gdzieś w sieci jest fajniejszy artykuł z diagramem dotyczącym jakie bazy wyszły z jakiego projektu).
http://www.experiencefestival.com/a/Ingres_-_History/i...
Raczej nie bawię się w historyka informatyki ale w tym przypadku warto o pewnych rzeczach wiedziec.
Generalnie "na początku" był System R IBM-a - Oracle powstało na bazie tej specyfikacji. Prace nad System R były kontynuowane i w ich wyniku narodził sie Ingres a po nim Postgres i PostgreSQL.
To tak w wielkim skrócie - natomiast zwróc uwagę na dwa fakty (to o czym wcześniej wspominałem) - Oracle to bardzo "toporne" rozwiązanie (w sensie projektu) i w wielu miejscach bardziej przypomina system operacyjny niż bazę danych - wzięło się to właśnie stąd że powstał na bazie System R i jako całośc jest w takiej konwencji utrzymywany.
PostgreSQL powstał w wyniku rozwoju Ingres-a (również na bazie System R).
Dwa systemy w wielu miejscach są do siebie podobne bo mają te same korzenie, jednak od strony projektu Oracle ciągnie za sobą spory balast pierwszej architektury Systemu R, PostgreSQL jest dużo nowocześniejszą architekturą ponieważ nie było tu tak dużego parcia komercyjnego (Ingres rozwijany był na uczelni Berkeley) - żeby było jasne mówię tu o architekturze obu systemów.
Także porównywac oba systemy można i trzeba ale powinno odbywac się to na rzetelnych informacjach a nie na domysłach lub stwierdzeniach że tak jest i już.
Dla wielu osób na pewno będzie to zaskoczenie, że Oracle, Informix, Sybase, PostgreSQL bazują w wielu miejscach na tych samych kodach i są do siebie w wielu miejscach bardzo podobne, ale piszę o tym aby Tobie i wielu innym uświadomic, że PostgreSQL jest bardzo zaawansowaną technologicznie i funkcjonalnie bazą i spokojnie może konkurowac z najlepszymi na rynku rozwiązaniami komercyjnymi.
Z znasz inne bazy w architekturze shared storage ?
RAC a kiedys parallel server istnieje od wersji 7.
To napisali prawie sami ;)
I znów mam wątpliwości czy napisali to sami lub prawie sami czy skopiowali istniejące rozwiązanie w ramach projektu Ingres (artykuł powyżej).
Teraz o ile pamietam pojawila sie jakas baza co ma dzialac jak
RAC - ale nazwy nie pamietam.
W obszarze którym działam czyli hurtownie danych OLAP i analityka RAC nie jest najszczęśliwszym rozwiązaniem, powiem więcej spowalnia rozwiązanie zamiast coś wnosic, a testy które robiłem tak ok 4 lat temu wypadły wręcz fatalnie (może teraz jest lepiej).
Wąskim gardłem bazy danych przetwarzającej duże ilości danych (odczyt, zapis) jest I/O, dostawienie kolejnych instancji kiedy macierz nie wyrabia powoduje że cały system zwalnia (obsługa nowej instancji). Tak też to wypadło w testach - dla czterech maszyn był już dramat - równoległa obsługa ich w systemie plików bazy danych.
Byc może są zastosowania (np instacje aplikacyjne DB - mało operacji I/O) w których RAC dobrze się sprawuje ale mi było potrzebne co innego.
Zresztą kierunek rozwoju w PG (ale też w innych produktach np. MS) jest raczej synchronizacja lub farmy/klastry baz danych (zapytania rozproszone) - czyli rozpraszanie składowanych danych.
Także dywagacje na ten temat z mojego punktu widzenia są bezcelowe, chyba że czysto informacyjnie, że Oracle ma RAC i że istnieją inne systemy w tej architekturze.
PG świetnie sobie radzi z dużymi zbiorami danych, ponieważ od początku był projektowany jako system do składowania olbrzymich danych (z tego co pamiętam pierwotne przeznaczenie PG to było składowanie danych astronomicznych czy synoptycznych).
Zresztą widać to w modelu składowania danych - klaster plików.
Musze popytac czy jakis telekom ma baze na PG.
W sumie mogli by zaoszczedzic tysiace EUR/$ na licencjach ;)
Jeszcze cztery lata temu z tego co ja wiem - nie - ale może się coś zmieniło od tego czasu. Od strony komercyjnej z tymi licencjami to jest właśnie to co tygrysy lubią najbardziej - mniejsze koszty licencji więcej można zarobi na usługach.
A nie prosciej zalozyc ze DBMS jest tylko NARZEDZIEM i to jakie wybrac zalezy od konkretnego projektu ?
Niedościgniony ideał, wszystkie bazy mają w różnym stopniu zaawansowaną implementację standardu SQL.
Natomiast jak dla mnie jeżeli ktoś uważa, że Oracle jest cool a PG jest beee i potrafi to uzasadnić - to jest to niezwykle cenna informacja (ale nie na zasadzie ogólników).
Zgadzam sie ze to niedoscigniony ideal
A nie na tym polega praca projektanta ?
Tak jest ale do tej pory na tym forum rozmawiamy o ogólnikach i historii a nie o technologii - uczestniczeę w tej dyskusji aby się dowiedziec byc może czegoś nowego i o to w tych chyba chodzi?
A tak szczerze to uzasadnic mozna wszystko ;) pytanie kto ma wygrac
Kazda baza ma swoje plusy i minusy i wystarczy to ladnie opisac.
Oracle jest świetny w marketingu (to jego najmocniejsza bez wątpienia strona) co zresztą widac również tu.
Błażej O. edytował(a) ten post dnia 08.05.09 o godzinie 07:26