Karaluchy pod poduchy

Jeżeli prowadzi się własny biznes, istnieje całkiem spora szansa na to, że ma się w tej firmie komputery. Oczywiście, nie ma przymusu. Żeby prowadzić warzywniak na rogu, można sobie poradzić bez komputerów (chyba). Podobnie z warsztatem kowalskim, czy szewcem. Ale „nowoczesne” biznesy raczej się bez komputerów nie obejdą.

Komputery przechowują dane, c’nie? Jak się biznes rozrasta, danych również przybywa. Najpierw mieliśy parę plików w PDF, potem wystarczały nam tabelki w Excelu, potem przerzuciliśmy się na Accessa, bo jest bardziej pojemny, potem pojawiła się „poważna” baza typu MySQL, MS SQL albo Postgres – jeżeli jednak nasz biznes idzie nadzwyczaj dobrze, może się w końcu okazać, że i tutaj trafimy na sufit w postaci ograniczeń wielkościowych, lub – co bardziej prawdopodobne – wydajnościowych, naszego „wiaderka” z danymi. Co wtedy?

Nie ma sie co oszukiwać. Danych zawsze przybywa. Megabajt dziś, gigabajt jutro, terabajt pojutrze. Okienka, zamiast otwierać się w sekundę, otwierają się teraz w minutę. Albo wcale. Okazuje się nagle, że potrzebujemy jakiegoś całkiem nowego rozwiązania, które będzie umiało sobie poradzić ze stałym przyrostem danych, bez utraty szybkości działania, spójności danych, wygody dostępu, a także takiego, które będzie równocześnie odporne na awarie sprzętu. Terabajty, a już na pewno petabajty danych, wymagają czegoś więcej, niż jedna zakurzona skrzyneczka gdzieś w kącie naszego biura. Czym więcej skrzyneczek, tym większa szansa, że któraś z nich ulegnie awarii. A system musi działać…

Rozwiązań jest – na dzień dzisiejszy – całkiem sporo. Jest Hadoop, jest MongoDB, jest Cassandra, Dynamo, Virtuoso i mnóstwo innych, mniej lub bardziej efemerycznych rozwiązań umożliwiających składowanie całkiem konkretnych ilości danych w sposób nie do końca uporządkowany, za to wydajny i bezpieczny. Wszystkie one mają jednak różnego rodzaju wady, wokół których programiści muszą budować obejścia.

Na przykład większość baz typu NoSQL nie wspiera JOIN-ów między tabelami, lub wspiera je po łebkach i po macoszemu. Programiści muszą więc budować jakieś zawiłe struktury logiczne na poziomie aplikacji, co jest upierdliwe, błędogenne i przez to droższe w utrzymaniu.

Panaceum na te bolączki – a przynajmniej tak to wygląda z zapowiedzi – ma być produkt pt. „CockroachDB”, czyli baza, która – podobnie jak karaluchy – przetrwa każdą katastrofę i będzie po prostu działać. A oprócz tego zapewni łatwy, wygodny dostęp do danych, spójność przy zapisie i odczycie oraz liniową skalowalność. W dodatku ma to być produkt OpenSource.

Twórcy CockroachDB pracowali kiedyś dla Google, mają więc sporo doświadczenia z bardzo dużymi zbiorami danych. Projekt jest jeszcze na wczesnym etapie – na tyle wczesnym, że nie są jeszcze znane szczegóły sposobu komunikacji ze światem zewnętrznym. Ma być JSON, ma być jakiś tam SQL, ale to wszystko póki co w głębokich planach. Póki co twórcy skupiają się na opracowaniu odpowiednio „pancernej” architektury, która – w razie awarii – ma zapewnić nie tylko „przeżywalność” danych, ale też brak spadku wydajności.

Co z tego wyniknie?

Niestety, jakkolwiek niewiarygodnie mogłoby to wyglądać, nie jestem wróżką i w związku z tym nie mam najbledszego pojęcia. Ale będę od czasu do czasu zaglądał na stronę projektu. Są entuzjastycznie nastawieni, mają wiedzę i pomysły. Może za piętnaście lat karaluchowe bazy danych będą napędzać jakieś wielkie biznesy.

Pożyjemy – zobaczymy…


2
Dodaj komentarz

avatar
1 Comment threads
1 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
2 Comment authors
xpilJaro Recent comment authors
  Subscribe  
najnowszy najstarszy oceniany
Powiadom o
Jaro
Gość
Jaro

danych coraz więcej, problem w tym, że nie można znaleźć tego co trzeba. I to nie tylko w moim firmowym intranecie, ale również w folderze mojego aktualnego projektu czyli budowy za jakieś sto baniek. I cała ta mrówcza robota informatyków bierze poniekąd w łeb. Swojego czasu miałem w szkole średniej przedmiot zwany „Informacją naukową”. Przedmiot nudny jak szkolenie z ISO i wydawałoby się całkiem niepotrzebny. A tu proszę! Traktuje on właśnie o katalogowaniu danych tak, żeby można było znaleźć co potrzeba. Do głowy by mi nie przyszło że ten durny przedmiot może być tak ważny. Wygląda na to, że obok informatyków powinni usiąść bibliotekarze, którzy uporządkują ten cały bałagan na firmowych serwerach, żeby te całe terabajty danych były do czegoś przydatne. Teraz jak chce się czegoś dowiedzieć to idę zapytać do koleżanki A. w sąsiednim pokoju. Ta mnie najpierw opieprza, że nie słuchałem co mówiła na zebraniu w lutym, potem zaś pokazuje gdzie można znaleźć tabele budżetowe.

%d bloggers like this: