Articles

The 5 V’s of Big Data

Posted on

Google, Facebook, Netflix, LinkedIn, Twitter i wszystkie inne platformy mediów społecznościowych wyraźnie kwalifikują się jako centra technologii big data. Ale kiedy zaczęto się martwić o dane, które posiadają? Odpowiedź jest prosta – wszystko zależy od charakterystyki big data oraz od tego, kiedy przetwarzanie danych zaczyna wkraczać w obszar 5 V.

Poznajmy 5 V Big Data:

  1. Volume, ilość danych
  2. Velocity, jak często nowe dane są tworzone i muszą być przechowywane
  3. Variety, jak bardzo heterogeniczne są typy danych
  4. Veracity, prawdziwość” lub „bałaganiarskość” danych
  5. Wartość, znaczenie danych

# Objętość

Nie jesteś naprawdę w świecie big data, jeśli objętość danych nie wynosi eksabajtów, petabajtów lub więcej. Giganci technologii big data, tacy jak Amazon, Shopify i inne platformy e-commerce, otrzymują w czasie rzeczywistym, ustrukturyzowane i nieustrukturyzowane dane, leżące między terabajtami a zettabajtami co sekundę od milionów klientów, zwłaszcza użytkowników smartfonów z całego świata. Przetwarzają one dane w czasie zbliżonym do rzeczywistego, a po uruchomieniu algorytmów uczenia maszynowego w celu przeprowadzenia analizy danych, podejmują decyzje, aby zapewnić klientom najlepsze doświadczenia.

Kiedy wolumen staje się problemem:

Szybkie wyszukiwanie w sieci ujawnia, że przyzwoity dysk twardy o pojemności 10 TB kosztuje co najmniej 300 USD. Aby zarządzać jednym petabajtem danych, potrzeba 100 x 300 USD = 30 000 USD. Może dostaniesz zniżkę, ale nawet przy 50% off, jesteś dobrze ponad 10.000 USD w koszty przechowywania sam. Wyobraź sobie, że chcesz tylko zachować nadmiarową wersję danych do odzyskiwania po awarii. Potrzebowałbyś jeszcze więcej miejsca na dysku. Stąd ilość danych staje się problemem, gdy rośnie poza normalne limity i staje się nieefektywnym i kosztownym sposobem przechowywania na lokalnych urządzeniach pamięci masowej.

Rozwiązanie:

Amazon Redshift, który jest zarządzaną usługą hurtowni danych w chmurze przez AWS jest jedną z popularnych opcji przechowywania danych. Przechowuje ona dane rozproszone na wielu węzłach, które są odporne na katastrofy i szybsze w obliczeniach w porównaniu do lokalnych relacyjnych baz danych, takich jak Postgres i MySql. Łatwo jest również replikować dane z relacyjnych baz danych do Redshift bez żadnych przestojów.

Aby dowiedzieć się więcej o Redshift, spójrz na Redshift vs relacyjne bazy danych, Redshift vs Hadoop i Redshift vs tradycyjne hurtownie danych.

# Velocity

Wyobraź sobie usługę uczenia maszynowego, która nieustannie uczy się na podstawie strumienia danych, lub platformę mediów społecznościowych z miliardami użytkowników zamieszczających i przesyłających zdjęcia 24x7x365. W każdej sekundzie dochodzi do milionów transakcji, a to oznacza, że z milionów urządzeń do centrum danych przesyłane są petabajty i zettabajty danych w każdej sekundzie. To tempo napływu dużej ilości danych na sekundę definiuje prędkość danych.

Kiedy Velocity staje się problemem:

Wysoka prędkość danych brzmi świetnie, ponieważ – prędkość x czas = ilość, a ilość prowadzi do wglądu, a wgląd prowadzi do pieniędzy. Jednakże, ta droga do wzrostu przychodów nie jest pozbawiona kosztów.

Jest wiele pytań, które się pojawiają, jak przetwarzać każdy pakiet danych, który przechodzi przez firewall, pod kątem złośliwości? Jak przetwarzać tak częste dane strukturalne i niestrukturalne w locie? Ponadto, kiedy masz dużą prędkość danych, prawie zawsze oznacza to, że będą duże wahania w ilości danych przetwarzanych w każdej sekundzie, tweety na Twitterze są znacznie bardziej aktywne podczas Super Bowl niż w przeciętny wtorek, jak sobie z tym poradzić?

Rozwiązanie:

Na szczęście, rozwiązania „danych strumieniowych” pojawiły się na ratunek. Organizacja Apache posiada popularne rozwiązania takie jak Spark i Kafka, gdzie Spark jest świetny zarówno do przetwarzania wsadowego jak i strumieniowego, Kafka działa na mechanizmie publish/subscribe. Rozwiązaniem jest również Amazon Kinesis, który posiada zestaw powiązanych API przeznaczonych do przetwarzania danych strumieniowych. Google Cloud Functions (Google Firebase również posiada swoją wersję) to kolejne popularne API funkcji bezserwerowych. Wszystkie te rozwiązania są świetnym rozwiązaniem black-box do zarządzania złożonym przetwarzaniem ładunków w locie, ale wszystkie wymagają czasu i wysiłku, aby zbudować rurociągi danych.

Jeśli nie chcesz zajmować się czasem i kosztami tworzenia własnego rurociągu danych, to właśnie tam coś takiego jak FlyData może się przydać. FlyData bezproblemowo i bezpiecznie replikuje dane z Postgres, MySQL lub RDS do Redshift w czasie zbliżonym do rzeczywistego.

# Różnorodność

Świat rzeczywisty jest nieuporządkowany z powodu różnych typów danych, więc ma sens, że każdy, kto zajmuje się ekscytującymi wyzwaniami, musi również radzić sobie z nieuporządkowanymi danymi. Heterogeniczność danych jest często źródłem stresu przy tworzeniu hurtowni danych. Nie tylko filmy, zdjęcia i wysoko zhierarchizowane posty i tweety na platformach społecznościowych, ale także podstawowe informacje o użytkownikach mogą występować w szalenie różnych typach danych. Te heterogeniczne zbiory danych są dużym wyzwaniem dla analityki big data.

Kiedy różnorodność jest problemem:

Przy konsumpcji dużej ilości danych, dane mogą mieć różne typy (JSON, YAML, xSV (x = C(omma), P(ipe), T(ab), etc.), XML) zanim będzie można je zmasakrować do jednolitego typu danych do przechowywania w hurtowni danych. Przetwarzanie danych staje się jeszcze bardziej bolesne, gdy kolumny danych lub klucze nie mają gwarancji istnienia na zawsze, np. zmiana nazwy, wprowadzenie i/lub wycofanie wsparcia dla kluczy w API. Tak więc nie tylko próbujemy wcisnąć różnorodne typy danych do jednolitego typu danych, ale również typy danych mogą się zmieniać od czasu do czasu.

Rozwiązanie:

Jednym ze sposobów radzenia sobie z różnorodnością typów danych jest zapisywanie każdego kamienia milowego transformacji zastosowanego do nich wzdłuż trasy Twojego potoku przetwarzania danych. Po pierwsze, przechowuj surowe dane jako takie w jeziorze danych (jezioro danych jest hiperelastycznym repozytorium danych zebranych i przechowywanych w ich surowej formie, jak magazyn plików Amazon S3). Następnie przekształć surowe dane z różnymi typami danych w pewien zagregowany i dopracowany stan, który następnie może być przechowywany w innej lokalizacji wewnątrz jeziora danych, a później może być załadowany do relacyjnej bazy danych lub hurtowni danych w celu zarządzania danymi.

# Prawdziwość

Dane w prawdziwym świecie są tak dynamiczne, że trudno jest wiedzieć, co jest dobre, a co złe. Prawdziwość odnosi się do poziomu zaufania lub bałaganu danych, a jeśli wyższa jest wiarygodność danych, to niższy jest bałagan i odwrotnie. Prawdziwość i wartość razem definiują jakość danych, która może dostarczyć naukowcom wspaniałych spostrzeżeń.

Kiedy zauważamy, że Prawdziwość jest problemem:

Rozważmy przypadek tweetów na Twitterze, które używają takich rzeczy jak hashtagi, niecodzienne slangi, skróty, literówki i potoczna mowa, wszystkie te dane mają dużo bałaganu lub szumu, a wraz ze wzrostem objętości danych rośnie również szum, który może być czasami wykładniczy. Szumy obniżają ogólną jakość danych, wpływając na ich przetwarzanie, a później na zarządzanie przetworzonymi danymi.

Rozwiązanie:

Jeśli dane nie są wystarczająco wiarygodne, ważne jest, aby wydobyć tylko dane o wysokiej wartości, ponieważ nie zawsze ma sens zbieranie wszystkich danych, ponieważ jest to kosztowne i wymaga więcej wysiłku. Odfiltrowanie szumów z danych na jak najwcześniejszym etapie przetwarzania danych podczas ich ekstrakcji. To pozostawia tylko wymagane i godne zaufania dane, które mogą być następnie przekształcone i załadowane do analizy danych.

# Wartość

Do czasu i dopóki big data, którą mamy nie może być przekształcona w coś wartościowego, jest bezużyteczna. Bardzo ważne jest, aby zrozumieć koszt zasobów i wysiłku zainwestowanego w gromadzenie big data i ile wartości dostarcza na końcu przetwarzania danych. Wartość jest bardzo ważna, ponieważ to właśnie ona napędza biznes, wpływając na decyzje biznesowe i zapewniając przewagę konkurencyjną.

Patrz przypadek Netflixa, gdzie dane dotyczące wzorców przeglądania i przeglądania stron przez użytkowników są zbierane z różnych źródeł danych, a następnie są ekstrahowane i przekształcane wewnątrz potoku przetwarzania danych, aby wygenerować tylko informacje o wysokiej wartości, takie jak zainteresowania użytkowników, w celu zapewnienia użytecznych rekomendacji. To z kolei pomaga Netflixowi uniknąć odpływu użytkowników i przyciągnąć ich jeszcze więcej do swojej platformy. Wygenerowane informacje mogłyby mieć niską wartość, gdyby nie satysfakcjonowały użytkownika. Stąd wartość big data ma wpływ na wiele decyzji biznesowych i zapewnia przewagę konkurencyjną nad innymi.

# Wnioski

W dzisiejszych czasach mamy do czynienia z ciągłym przepływem danych w czasie rzeczywistym z urządzeń takich jak smartfony, urządzenia IoT, laptopy, wszystkie te strumienie tworzą Big Data, a 5 V to ważne cechy (ramy dla big data, jeśli chcesz), które pomagają zidentyfikować, co należy wziąć pod uwagę, gdy napływ danych jest skalowany. Big data odgrywa kluczową rolę w wielu dziedzinach, takich jak sztuczna inteligencja, analityka biznesowa, nauki o danych i uczenie maszynowe, gdzie przetwarzanie danych (ekstrakcja-transformacja-ładowanie) prowadzi do nowych spostrzeżeń, innowacji i lepszego podejmowania decyzji. Podział big data daje również przewagę konkurencyjną tym, którzy dokonują analizy danych przed podjęciem decyzji, nad tymi, którzy wykorzystują tradycyjne dane do prowadzenia biznesu. Rozwiązania takie jak Amazon Redshift z pewnością zapewnią przewagę nad relacyjnymi bazami danych dla hurtowni danych, podczas gdy Spark i Kafka są obiecującymi rozwiązaniami dla ciągłego strumieniowania danych do hurtowni danych.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *