Twitter i Digg rezygnują z MySQL
Digg
"Rezygnujemy ze środowiska MySQL ze względu na narastające trudności związane z obsługą i zapewnieniem wysokiej wydajności nieustannie rozszerzającego się zbioru danych" - twierdzi John Quinn, wiceprezes firmy Digg. Według niego w ostatnim czasie nastąpiły istotne zmiany w środowisku informatycznym stojącym za serwisem. W ramach modernizacji przepisano cały kod serwisu Digg. Aplikacje obsługujące serwis przeniesiono do architektury rozproszonej. Zrezygnowano również z platformy LAMP (Linux, Apache, MySQL, PHP). Jednak najpoważniejszą zmianą ma być właśnie odejście od relacyjnej bazy danych MySQL na rzecz rozwijanej przez Fundację Apache bazy Cassandra. John Quinn dodaje, że do tej pory do nowego środowiska bazodanowego przeniesiono większość funkcjonalności serwisu Digg. Firma aktywnie zaangażowała się również w rozwój tej bazy danych.
Z kolei w przypadku firmy Twitter rezygnacja z MySQL ma być pośrednio związana m.in. z chęcią zmniejszenia kosztów utrzymania środowiska bazodanowego przechowującego coraz większe ilości danych. Obecnie serwis Twitter korzysta ze środowiska bazodanowego obsługiwanego przez klaster serwerów, na których działa baza MySQL. Ryan King, inżynier systemowy w firmie Twitter, twierdzi, że w obliczu konieczności zmiany bazy danych pod uwagę brano zarówno przemodelowanie struktur w obrębie środowiska MySQL, jak i wykorzystanie innych nierelacyjnych baz danych. Brano pod uwagę również bazy takie jak: HyperTable, HBase, Voldemort i Remis. Ostatecznie z punktu widzenia potrzeb Twittera to baza Cassandra okazała się być bardziej skalowalna, stabilna i łatwiejsza w obsłudze.
Według Ryana Kinga liczba wpisów dokonywanych przez użytkowników serwisu Twitter rośnie w ogromnym tempie. W styczniu 2009 roku w serwisie publikowano ok. 2 milionów wiadomości dziennie. W zeszłym miesiącu ta liczba przekroczyła 50 milionów. Modernizacja bazy danych ma zaś dodatkowo umożliwić na automatyzację części procesów towarzyszących rozwojowi całej infrastruktury oraz przyczynić się do ograniczenia liczby awarii i podniesienia dostępności serwisu. Warto dodać, że w ostatnim roku Twitter nie działał tylko przez nieco ponad 24 godziny. Ostatnia awaria nastąpiła dzisiaj rano - serwis był niedostępny przez ok. 30 minut. Niewykluczone, że miało to związek właśnie z migracją danych do nowej bazy.
Baza, czy duża tablica?
Przedstawiciele obu firm liczą również na wsparcie ze strony społeczności open source skupionej wokół rozwoju bazy Cassandra. Pierwotnie baza Cassandra stanowiła uzupełnienie dla stworzonego na potrzeby serwisu Facebook środowiska opartego właśnie na bazie MySQL. Jako nierelacyjna baza danych miała przyspieszyć szybkość działania infrastruktury bazodanowej firmy Facebook. Dwa lata temu baza została opublikowana na zasadach open source. Od tego czasu jej rozwój koordynuje Fundacja Apache.
Cassandra, podobnie jak inne nierelacyjne bazy, zyskuje na szybkości działania m.in. dzięki odrzuceniu niektórych założeń stanowiących podstawę działania konwencjonalnych relacyjnych baz danych. Model tej bazy przewiduje maksymalizację dostępności danych oraz skrócenie czasu potrzebnego na zapisanie informacji. Według osób zaangażowanych w rozwój bazy Cassandra w niektórych zastosowaniach jest ona nawet 2,5 tys. razy szybsza od bazy MySQL. Obecnie baza wykorzystuje model danych z systemu bazodanowego Google BigTable oraz opracowany przez firmę Amazon rozproszony system składowania informacji Dynamo. Na największe, uruchomione produkcyjnie środowisko oparte na silniku Cassandra składa się 150 serwerów obsługujących wspólnie ponad 100TB danych.
Czytaj też:
Java EE 6, czyli nowa generacja Javy
Facebook przebija Google
Francuski producent systemów ERP daje 1 euro za bazę MySQL
- ~gość
- 2010-03-18 18:10:55
Twitter zmienia bazę danych, ale czy zostaje przy Ruby On Rails? Bo rozumiem, że nadal będą używali Linuksa i Apacha...
- ~D.
- 2010-03-18 18:17:32
"praw do języka MySQL " ? Czy czasem nie chodzilo o przejecie praw do ''produktu'' jakim jest MySQL ? AFAIK MySQL nie jest jezykiem
- ~gość
- 2010-03-19 10:48:12
...zrezygnowano również z platformy LAMP czyli m.in. z Linuxa...
- ~enkidu
- 2010-03-19 11:19:51
@tad i dlatego Digg szuka osób doświadczonych w programowaniu i paczkowaniu w środowisku Debiana, który dla Ciebie najwyraźniej Linuksem nie jest... Artykuł jest napisany tendencyjnie. Z platformy LAMP usunięto jeden składnik (MySQL, a i to nie do końca - w niektórych zastosowaniach nadal będzie używany), dlatego nie można już o niej mówić, ale PHP, Linux i Apache używane są nadal (chociaż mam nadzieję, że PHP poleci na rzecz skompiilowanych modułów CGI).
- ~gość
- 2010-03-19 11:55:45
enkidu: ok, zapewne reforma rozłożona na etapy. Jednak używanie tak starych i fatalnych w większych zastosowaniach (np. koszty rozwoju) jak CGI, php czy nawet poleganie na własnych skryptach javascript jest chore - ale wiadomo stara kadra i stare zaszłości więc koszty ludzkie i niepeweności większe.
- ~enkidu
- 2010-03-19 15:17:34
@tad to nie jest migracja całej platformy. Po prostu do niektórych nierelacyjnych zastosowań nie warto zaprzęgać takiej krowy, jak MySQL, a starczy lekki koliberek, jakim jest (rozwijany obecnie przez Fundację Apache zresztą) silnik Cassandra (nazywanie tego bazą danych to jak nazwanie Notepada - platformą RAD). Cała reszta (z różnych względów) pozostanie na Linuksie i PHP, może jedynie Apache poleci na rzecz Lighttpd (które z powodzeniem obsługuje youtube), znacznie lżejszego i naprawdę wystarczającego dla tak prostych serwisów. Osobiście mam nadzeję, że zakończy się era wytaczania "haubicy na wróble". PHP na przykład może być już teraz tłumaczone maszynowo na kod C++, gotowy do kompilacji i uruchomienia w trybie fastCGI. Idzie lepsze ;)
- ~czarodziej
- 2010-03-19 16:22:11
jezyk MySQL???? oświecie mnie proszę co to za język
- ~autor
- 2010-03-19 16:38:47
@~D, czarodziej, Oczywiście chodziło o bazę MySQL i język SQL. Tekst poprawiony, dziękuję.PW
TV LED SAMSUNG UE40D5500
Konsola SONY Playstation 3 Slim 320GB
Konsola MICROSOFT Xbox 360 4 GB
Pobierz bezpłatnego e-booka 




