The playground

More information here

Przeszłość, teraźniejszość i przyszłość streamingu: Flink, Spark i gang

Spark: narzędzie big data du jour uzyskuje automatyzację Streaming jest jednym z najlepszych trendów, za którymi nadążamy. Najnowszym epizodem tej sagi było dodanie możliwości ACID do Apache Flink, o czym mówił w zeszłym tygodniu Tony Baer z ZDNet. To ogłoszenie, dokonane na Flink Forward w Berlinie, było tłem dla dogłębnych rozmów, które odbyliśmy z kierownictwem, […]

Spark: narzędzie big data du jour uzyskuje automatyzację

Streaming jest jednym z najlepszych trendów, za którymi nadążamy. Najnowszym epizodem tej sagi było dodanie możliwości ACID do Apache Flink, o czym mówił w zeszłym tygodniu Tony Baer z ZDNet. To ogłoszenie, dokonane na Flink Forward w Berlinie, było tłem dla dogłębnych rozmów, które odbyliśmy z kierownictwem, inżynierami i użytkownikami, które mogą pomóc umieścić rzeczy w kontekście.

na początek, jak zauważył Baer, istnieje API dla Flink, które można pobrać z Githuba, ale działa tylko dla jednego strumienia. Wersja z „runner” dla wielu równoległych strumieni jest częścią platformy Data Artisans-komercyjnego wcielenia Flink.

również: Apache Flink bierze ACID

nie jest to wcale zaskakujące, ponieważ Data Artisans, dostawca, który zapewnia wsparcie dla Flink i zatrudnia dużą część swoich pełnoetatowych współpracowników, ma otwartą politykę podstawową. Jest to bardzo powszechna polityka w świecie open source i taka, którą podejmuje główny konkurent Data Artisans/Flink, Databricks / Apache Spark.

ile silników strumieniowych potrzebuje świat?

jak by powiedział Baer, ile silników strumieniowych potrzebuje świat? Dobre pytanie, które można również sformułować jako dwa pytania uzupełniające: ilu dostawców może przetrwać, robiąc to, co robią twórcy danych i Databricks, lub jak wybrać silnik strumieniowy?

odpowiedź na pierwsze pytanie jest w tym momencie dokładnie dwie: Data Artisans i Databricks. Trzeci konkurent, DataTorrent, i jego silnik Apache Apex, który objęliśmy jakiś czas temu, poszedł brzuchem w górę. Wydaje się, że niezwykły komunikat „zrobimy wszystko, w tym opierając się na silniku naszego konkurenta” był ostatnim wysiłkiem, aby utrzymać się na powierzchni, przyjmując podejście bardziej adekwatne do doradztwa niż dostawcy stojącego za projektem open source.

również: aplikacje w czasie rzeczywistym idą na miejsca

tak czy inaczej, oznacza to, że w przestrzeni open-source streaming solutions jest teraz wiele sierot: Platformy bez dostawcy do zapewnienia wsparcia, utwardzona wersja i kierowanie ich rozwojem. Oprócz Apex, lista obejmuje również Apache Storm i Apache Samza. Storm jest starszy i bardziej dojrzały niż Samza, a także ma pewne wsparcie od Hortonworks.

podstawowa działalność Hortonworks nie jest jednak streamowana, a jeśli chcesz korzystać z Storm i mieć poziomy wsparcia dla przedsiębiorstw, wydaje się, że będziesz musiał przejść na cały stos Hortonworks. Nie wiemy, czy Hortonworks ma w planach wkroczenie do akcji Storm, ale na razie nie mamy takich sygnałów.

istnieje również wiele rozwiązań closed-source do streamingu, ale wygląda na to, że mają pod górkę do walki. Mogą mieć swoje zalety i bazę klientów do pokazania, ale wiele z nich opiera się na starszych umowach i relacjach. W dynamicznym, otwartym świecie” spróbuj zanim kupisz ” i rozwijającym się rynku streamingu, zdobywanie nowych kontraktów nie będzie łatwe.

również: przyszłość przyszłości: Spark i Big Data Insights

a potem mamy również dostawców chmury, oczywiście: AWS z Kinesis, Google Cloud z Dataflow i Azure z Stream Analytics. Tutaj również występuje zwykły motyw. Silniki te mogą, ale nie muszą, być tymi najlepiej dopasowanymi do Twoich potrzeb. Jeśli jednak korzystasz już z AWS, Google Cloud lub Azure, rejestracja i integracja ich rozwiązania do przesyłania strumieniowego z aplikacjami będzie naprawdę łatwa i kusząca.

zastosowanie i konkurencja silników strumieniowych

omawiając rynek strumieniowy z Kostasem Tzoumasem, dyrektorem generalnym Data Artisans, Tzoumas jasno określił to, co uważa za największą konkurencję dla Data Artisans: dziedzictwo. Tzoumas celowo powstrzymał się od porównywania danych rzemieślników / Flink do innych opcji, koncentrując się zamiast tego na ich wysiłkach, aby dotrzeć i zwiększyć skalę pod względem ewangelizacji i sprzedaży.

jego poglądy rezonowały z wieloma osobami, w tym z niektórymi z najbardziej znanych klientów. Delegaci z mnóstwem praktycznych doświadczeń technicznych z Alibaba, Netflix i Microsoft, wszyscy podkreślili, że zmiana paradygmatu i nauka pracy z strumieniowaniem jest czymś, co muszą opanować i rozpowszechniać na co dzień.

także: przerywamy tę rewolucję: Apache Spark zmienia zasady

niektóre z ich komentarzy dotyczyły takich rzeczy, jak potrzeba pracy strumieniowej z całą niezawodnością, która jest dana w świecie wsadowym, aby nauczyć się programować w bardziej przemyślany sposób w porównaniu do aplikacji jednowątkowych i podnieść poziom abstrakcji. twórcy danych wydają się słuchać, sądząc po tym, co jest w jego programie.

flink7.jpg

ewolucja streamingu. (Obraz: Data Artisans)

wspominaliśmy już o wprowadzeniu ACID w celu zapewnienia niezawodności, co w dużej mierze wynikało z wymagań dużych organizacji finansowych i e-commerce, które korzystają z platformy data Artisans. Innym ważnym zakładem dla Flink jest postęp w kierunku unifikacji interfejsów API do przesyłania strumieniowego i wsadowego, nad którym Alibaba pracuje i ma zostać zintegrowany z podstawową bazą kodu Flink.

również: zapowiedź Spark Summit 2018: Wprowadzenie AI z przodu

Flink ma wiele interfejsów API — strumienie danych, zestawy danych, funkcje procesowe, API tabeli, a od późnej, SQL, które deweloperzy mogą używać do różnych aspektów ich przetwarzania. Idealnie, ludzie chcieliby używać SQL do wszystkiego. To nie tylko uprościłoby życie programistów, ale także sprawiłoby, że Flink byłby bardziej przystępny dla nietechnicznych użytkowników.

potrzeba zapewnienia trwałości danych może mieć coś wspólnego z innymi dokonanymi wyborami. Fakt, że platforma data Artisans nie jest dostępna w chmurze, na przykład, jest uderzającą różnicą w przypadku Databricks, który promuje strategię tylko w chmurze dla własnej platformy, grając kartą iPaaS.

ale kiedy Twoi główni klienci to behemoty z własną infrastrukturą, jak się wydaje w przypadku twórców danych, oferowanie im wersji w chmurze ma mniej sensu. Może to również tłumaczyć komentarz Tzoumasa, gdy powiedział, że nie konkurują z Databricks/Spark zbytnio. Nie to, że Flink nie jest atrakcyjny dla mniejszych organizacji, ale historia korzystania z Flink plus trochę wsparcia i doradztwa, a nie Platformy Data Artisans, był jeden słyszeliśmy częściej od nich.

Data Artisans i Apache Flink idąc dalej

wersje Apache Flink 1.4 i 1.5 były w rodzaju wprowadzenia nieco nieszkliwionych, niezbyt popularnych, ale bardzo potrzebnych ulepszeń. Chodziło o wdrożenie produkcji i opcje stabilności, co oznaczało, że trzeba było złamać wsteczną kompatybilność. Dlatego słyszeliśmy, że wielu użytkowników nadal toczy się z 1.3, mimo że ulepszenia w 1.6, głównie w streamingu SQL, skusiły niektórych do zanurzenia się i aktualizacji.

również: 10 najlepszych frameworków big data używanych w enterprise TechRepublic

teraz ta ciężka, nieszkliwiona praca jest w większości skończona. Ważną częścią, którą twórcy danych mają zająć się, jest konteneryzacja Flink lub możliwość korzystania z niej jako biblioteki z Dockerem i Kubernetes, w tzw. trybie reaktywnym.

inne punkty programu na najbliższą przyszłość to automatyczne skalowanie, czasowe łączenie tabeli (bardzo potrzebna funkcja w świecie, w którym dane są stale aktualizowane) i SQL do analizy wzorców. SQL został rozszerzony o funkcję MATCH_RECOGNIZE w tym celu, a twórcy danych chcą to przenieść do Flink.

kolejnym ciekawym kierunkiem jest otwarcie Pythona przez Apache Beam. Chociaż Beam i Flink są koncepcyjnie dość blisko, jak zauważył dyrektor techniczny ds. danych Stephan Ewen, do tej pory Flink nie miał żadnych wymiernych korzyści, aby czerpać dzięki dostosowaniu do Beam. Ale wsparcie dla Pythona to zmienia.

Beam wprowadza framework, dzięki któremu API w językach innych niż Java mogą być obsługiwane, a Python jest pierwszym. Według ludzi z Apache Beam, jest to bez nieznośnych kompromisów w szybkości wykonywania w porównaniu z Javą-coś w stylu 10% w scenariuszach, które byli w stanie przetestować.

oznacza to, że Flink może być teraz zaprogramowany również w Pythonie za pomocą Beam, co jest dość ważne ze względu na rozpowszechnienie Pythona w scenariuszach nauki o danych i uczenia maszynowego. Ewen przyznał to, zauważając jednak, że nie zamierza w najbliższym czasie zrezygnować z Javy.

również: Hortonworks prezentuje plan, aby Hadoop cloud-native

Databricks / Spark z drugiej strony ma wsparcie dla Pythona od jakiegoś czasu, co może pomóc wyjaśnić, co postrzegamy jako szerokie rozróżnienie między tymi dwoma platformami: Flink jest używany bardziej jako szybki proces przetwarzania stateful engine, z acid wzmacnia swoją pozycję jako Centrum Integracji dla przedsiębiorstwa w czasie rzeczywistym, podczas gdy Spark jest używany bardziej jako data science – Analytics szkielet, z Python i integracji notebooka przyczyniając się do jego popularności.

oczywiście są nakładki, a sprawy nie są tak jednoznaczne. W każdym razie warto zauważyć, że obsługa Data Artisans ACID jest opatentowana i stanowi część platformy data Artisans, co oznacza, że w przeciwieństwie do strumieniowania stateful, Databricks nie będzie w stanie tak łatwo wprowadzić jej na własną platformę. Niezależnie od tego, Databricks i Spark robią postępy na własnej ścieżce, a wkrótce podzielimy się więcej na ten temat.

poprzedni i powiązany zakres:

Cisco składa Spark w Webex jako Webex Teams

Webex Teams wykorzystuje wszystkie funkcje współpracy w Cisco Spark i oferuje je wraz z funkcjami opartymi na platformie konferencyjnej Webex.

ten startup myśli, że wie, jak przyspieszyć analizę w czasie rzeczywistym ton danych

sens ogromnej ilości danych zebranych przez firmy jest problemem dla biznesu, który twierdzi, że jest pęknięty.

Apache Flink: czy świat potrzebuje innego silnika strumieniowego?

chociaż nie ma jeszcze przyciągnąć masy krytycznej wsparcia komercyjnego, Apache Flink obiecuje wypełnić lukę, której nie rozwiązują inne Silniki strumieniowe open source: dodając powtórkę i rollback do aplikacji strumieniowej.

idąc ze strumieniem: nieograniczone przetwarzanie danych za pomocą Apache Flink

Streaming jest gorący w big data, A Apache Flink jest jedną z kluczowych technologii w tej przestrzeni. Co go wyróżnia, jakie nowe funkcje pojawiają się w najnowszym wydaniu i jaka jest jego rola w podbijaniu świata big data?

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.