Hadoop został pierwotnie zaprojektowany do przetwarzania wsadowego. Oznacza to, że weź duży zbiór danych wejściowych jednocześnie, przetwórz go i napisz duże wyjście. Sam pomysł MapReduce jest ukierunkowany na partie, a nie na czas rzeczywisty. Ale szczerze mówiąc, tak było tylko na początku Hadoop, a teraz masz mnóstwo możliwości wykorzystania Hadoop w bardziej realistyczny sposób.
Najpierw myślę, że ważne jest zdefiniowanie, co masz na myśli w czasie rzeczywistym. Możliwe, że interesuje Cię przetwarzanie strumieniowe lub że chcesz uruchamiać zapytania dotyczące danych, które zwracają wyniki w czasie rzeczywistym.
Do przetwarzania strumienia na Hadoop, natywnie Hadoop nie zapewni Ci takiej możliwości, ale można zintegrować kilka innych projektów z Hadoop łatwo:
- Storm-YARN pozwala na użycie Burza na klastrze Hadoop przez YARN.
- Spark integruje się z HDFS, aby umożliwić przetwarzanie danych strumieniowych w czasie rzeczywistym.
w czasie rzeczywistym zapytania istnieje również kilka projektów, które wykorzystują Hadoop:
- Impala z Cloudera używa HDFS ale omija MapReduce całkowicie ponieważ jest zbyt dużo napowietrznych inaczej.
- Apache Drill to kolejny projekt, który integruje się z Hadoop, aby zapewnić funkcje zapytań w czasie rzeczywistym.
- Celem projektu Stinger jest uczynienie z Hive bardziej rzeczywistego czasu rzeczywistego.
Prawdopodobnie istnieją inne projekty, które zmieściłyby się na liście "Making Hadoop w czasie rzeczywistym", ale są to najbardziej znane.
Tak więc, jak widać, Hadoop coraz bardziej zbliża się do kierunku czasu rzeczywistego, a nawet, jeśli nie był do tego przystosowany, ma wiele możliwości rozszerzenia go na potrzeby czasu rzeczywistego.
+1 ma to jakiś sens – Backtrack