Ujarzmić firmowe dane

Duże zbiory danych sprawiają problemy, ale mogą być także szansą na pozyskanie informacji, których organizacja nie jest w stanie uzyskać w inny sposób.

W dzisiejszych systemach IT przetwarza się coraz więcej danych - nawet w małej firmie serwery dysponują zasobami liczonymi w dziesiątkach lub nawet setkach terabajtów. Dane pochodzą z różnych zasobów - począwszy od wewnętrznych dokumentów, transakcji w bazach danych, a skończywszy na plikach dostarczanych przez klientów. Szczególnie dobrze widać to w firmach świadczących usługi hostingowe, w dużych przedsiębiorstwach handlowych lub u operatorów dużych portali.

Z badań zrealizowanych przez Johna Gantza i Davida Reinsela z firmy IDC wynika, że 75% informacji w całym cyfrowym świecie jest generowanych przez indywidualne osoby, ale aż 80% ogółu informacji na pewnym etapie swojego życia miało coś wspólnego z dużymi przedsiębiorstwami. Oznacza to, że te informacje muszą być gdzieś przechowywane, także w firmach. Stało się to możliwe dzięki postępowi technicznemu, który umożliwił sześciokrotne zmniejszenie kosztów tworzenia, przechwytywania, zarządzania oraz przechowywania informacji w porównaniu do roku 2005. Jednocześnie od 2005 r. przedsiębiorstwa zainwestowały aż 4 biliony dolarów w infrastrukturę związaną ze światem cyfrowej informacji. Inwestycja ta dotyczy sprzętu, oprogramowania, usług oraz pracy ludzi, umożliwiając przy tym pozyskanie przychodów z treści zawartych w cyfrowym świecie.

Drugie dno danych

Samo pojęcie dużej ilości danych (big data) nie pochodzi znikąd, podobnie jak same zbiory informacji. Wiele firm zaczęło korzystać z informacji, gdyż spadł koszt składowania danych, upowszechniły się narzędzia, które umożliwiają pozyskanie informacji z różnych źródeł, a wirtualizacja, nowe technologie przetwarzania danych i usługi dostarczyły narzędzi o wysokiej skalowalności. IDC samo pojęcie technologii obsługi dużych zasobów danych (big data) definiuje jako zbiór technologii i architektur zaprojektowanych do ekonomicznie uzasadnionego pozyskiwania wartości z bardzo dużych woluminów różnych danych, dzięki pozyskiwaniu, znajdowaniu zależności oraz analizie - wszystko to odbywa się szybko.

Zasoby big data są poziomym przecięciem świata cyfrowej informacji i mogą zawierać dane transakcyjne, zasoby w hurtowniach danych, a także informacje zalegające w bardzo dużych plikach. Nowym segmentem, który dopiero oczekuje na sprawniejszą analizę, są informacje czysto rozrywkowe, zdrowotne oraz pochodzące z systemów nadzoru wizyjnego. Technologią, która to umożliwi, jest oprogramowanie do automatycznego rozpoznawania twarzy, dostępne w modelu cloud.

Sieci społecznościowe, takie jak Facebook, Twitter, Foursquare czy NK.pl, stanowią najnowsze źródło danych, które również można podłączyć do systemów analizy informacji. W tych sieciach użytkownicy dostarczają niemal ciągłego strumienia danych o sobie, przy czym ilość informacji rośnie w postępie geometrycznym. Tak radykalny wzrost wynika stąd, że człowiek jest istotą społeczną i chętnie dzieli się informacjami za pomocą różnych mediów.

Najważniejszą różnicą między samym składowaniem dużej ilości informacji a pojęciem big data jest koncentrowanie się nie tylko na składowaniu zasobów informacji konsumowanych i tworzonych przez użytkowników, ale na informacji związanej z procesem jej konsumpcji. Dobrym przykładem są smartfony, które poza samą treścią dostarczają dodatkowych informacji, takich jak: położenie geograficzne, wiadomości SMS, historia przeglądania oraz przemieszczaniu się użytkownika (dzięki akcelerometrom i systemom GPS). Skojarzenie oryginalnych danych z takimi informacjami jest o wiele cenniejsze niż każde z tych danych z osobna. Zatem wykorzystywanie zasobów big data oznacza nie tyle skoncentrowanie się na tworzeniu lub konsumpcji informacji, ile na analizie wszystkiego, co jest związane z tym procesem.

Wiele plików w jednym systemie

Im więcej zasobów organizacja przechowuje w swoich zasobach, tym większe problemy napotyka. Podstawowym problemem, który dotyczy typowych serwerów plików, są ograniczenia związane z możliwościami systemu plików stosowanego w danym serwerze. Mogą to być ograniczenia ilościowe, takie jak maksymalna liczba i-węzłów w systemach typu UNIX lub plików w systemie NTFS (4 miliardy), ograniczenie rozmiaru woluminu (przy NTFS wynosi to 16 TB dla bloku o 4 kB, ale zaimplementowane ograniczenie w systemie Windows to 16 TB dla bloku 64 kB) lub długości pełnej ścieżki pliku. Innym limitem są ograniczenia wydajnościowe, takie jak liczba pojedynczych obiektów w katalogach (szczególnie odczuwalne w systemie NTFS przy przeglądaniu bardzo dużej ilości drobnych obiektów za pomogą powłoki systemu Windows). W miarę wzrostu ilości składowanych danych ograniczenia te zaczynają wpływać na ciągłość działania systemów, zatem organizacje są zmuszone do migracji do środowisk, które charakteryzują się lepszą skalowalnością. Oprogramowanie stosowane w radzi sobie o wiele lepiej od systemów Windows czy Linux, ponadto jest przystosowane do natywnego współdzielenia zasobów w mieszanym środowisku praktycznie niezależnie od skali wdrożenia.

John Gantz oraz David Reinsel z IDC uważają, że problem ten będzie jeszcze poważniejszy niż obecnie, gdyż liczba plików stale rośnie, szybciej niż same zasoby informacji. Problem ten dotyczy także potrzeb ludzkich, związanych z dostępnością specjalistów, którzy będą zarządzać tymi zasobami. John Gantz stwierdza: "w ciągu najbliższych pięciu lat ilość plików wzrośnie ośmiokrotnie, przy czym pula specjalistów IT, którzy mają nimi zarządzać, tylko nieznacznie wzrośnie".

Szybka decyzja

Gdyby chcieć analizować wielowymiarową kostkę OLAP w typowej hurtowni danych, należy taką strukturę zasilić danymi w procesie ETL (Extract, Transform, Load): pobrania strumienia informacji ze źródła, transformacji do postaci właściwej dla hurtowni, a następnie załadowania danych do właściwych struktur OLAP. Dopiero po załadowaniu danych baza może dokonywać przeliczeń dla poszczególnych przekrojów kostki, zatem przy dużej zmienności informacji już hurtownia załadowana danymi przestaje być aktualna.

Proces ETL oraz obliczenia zabierają dużo czasu, dlatego też są mało przydatne w tych scenariuszach, gdy trzeba bardzo szybko analizować duże zbiory ciągle zmieniających się danych. Przykładem takich zastosowań w branży finansowej jest poszukiwanie fraudów w ciągłym strumieniu transakcji dostarczanym online z systemów transakcyjnych. Dane powinny być analizowane na tyle szybko, by wykryć transakcje, które wskazują na możliwość nadużyć - na przykład pobranie gotówki w bankomacie w Warszawie i dwie godziny później podobna operacja dokonana za pomocą tej samej karty płatniczej przeprowadzona w Nowym Jorku. System, który potrafi dokonać takiej analizy w bardzo krótkim czasie, umożliwi oznaczenie transakcji jako podejrzanych i podniesie alarm. Aby dokonać tak szybkiej analizy, niezbędne jest zrównoleglenie procesów i posiadanie struktur danych, które w oczekiwanym czasie dokonają zapytań obejmujących dane w zorganizowany sposób.

Analiza dużych zbiorów danych

Oprócz wymagań związanych z szybkością przetwarzania strumienia informacji przedsiębiorstwa potrzebują narzędzi, które umożliwią analizę bardzo dużych zbiorów danych. Potrzeby biznesowe związane z analizowaniem różnych wariantów wymagają szybkiej odpowiedzi systemu.

Gdy ilość zgromadzonych danych liczy się w terabajtach, tradycyjny model hurtowni korzystający z wielowymiarowych modeli OLAP działa zbyt wolno, a niekiedy w ogóle nie nadaje się do analizy podobnej wielkości danych. Kluczem jest przeprowadzanie obliczeń równolegle, dzięki czemu zadanie może być rozłożone na wiele maszyn i różne porcje danych. W ten sposób zadanie, które w modelu OLAP wykonywałoby się kilka dni, może być zrealizowane w czasie liczonym w sekundach. Typowym zastosowaniem jest modelowanie i analiza zapisów w dużych systemach, takich jak zapisy sprzedaży w supermarkecie lub raporty aktywności online.

Co można wychwycić z powodzi danych

Jedną z analiz przeprowadzanych przez sklepy jest skład koszyka, ale są to jedynie najprostsze statystyki. W sklepie internetowym lub przy korzystaniu z programów lojalnościowych identyfikujących klienta z ogromu informacji zgromadzonych w systemach można wyciągnąć o wiele więcej, gdyż możliwe jest sporządzenie profilu i typowych zakupów dla danego klienta.

Mając takie informacje, można opracować profile reklamowe, które po zastosowaniu do odpowiedniej grupy klientów będą znacznie skuteczniejsze od standardowej reklamy. Aby to osiągnąć, niezbędne są narzędzia, które mogą szybko zrealizować wiele różnych zapytań. Hurtownia danych korzystająca z OLAP nie dostarczy oczekiwanej wydajności, gdyż nie można tych obliczeń dostatecznie zrównoleglić i rozłożyć na wiele maszyn.

Przetwarzanie w chmurze

Dostawcy rozwiązań cloud computing będą grali istotną rolę we wszystkich zagadnieniach związanych z technologią przetwarzania i analizy dużej ilości danych. Po pierwsze, będą najważniejszym podmiotem, który zbiera strumienie danych z różnych źródeł i gromadzi zawartą w nich treść. Po drugie, to właśnie oni będą najsilniej wykorzystywać wszelkie technologie do prowadzenia własnej działalności - zatem będą to robić dobrze. Po trzecie, będą mogli udostępnić technologię podmiotom, które nie mogłyby zakupić jej w żaden inny sposób, gdyż nie byłoby to ekonomicznie uzasadnione. Na przykład platformy analizy danych pracujące w chmurze będzie mogła wynająć także mała firma z branży inżynierskiej lub architektury, by mieć dostęp do zasobów, które umożliwią bardzo duże ilości obliczeń w stosunkowo krótkim czasie. W ten sposób przedsiębiorstwo nie będzie musiało budować swojego data center i pozyskiwać tej technologii samodzielnie.


TOP 200