SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
Apache Flink a Quarta
Geração do Big Data
Marcio Junior Vieira
CEO & Data Scientist, Ambiente Livre
Prof. MBA Universidade Positivo
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Marcio Junior Vieira
Mini-CV
●
18 anos de experiência TI, vivência em desenvolvimento e análise de sistemas de Gestão
empresarial, analise de dados, aprendizado de máquina e BI.
●
Trabalhando com Free Software e Open Source desde 2000 com serviços de consultoria e
treinamento.
●
Graduado em Tecnologia em Informática(2004) e pós-graduado em Software Livre(2005)
ambos pela UFPR.
●
Palestrante em: FISL, TDC, LATINOWARE, Campus Party, Pentaho Day, Ticnova.
●
Organizador geral do Pentaho Day 2015, 2017 e apoio nas ed. 2013 e 2014.
●
Data Scientist na Ambiente Livre,
●
Prof. MBA em Big Data e Data Science, MBA em Business Intelligence e MBA em
Inteligência Articifial da Universidade Positivo.
●
Prof. MBA Inteligência Artificial da FIAP.
●
Data Scientist, Instrutor e consultor de Big Data e Data Science com tecnologias abertas.
●
Ajudou a capacitar equipes de Big Data e Data Science na IBM, Tivit, Accenture, Serpro,
NetShoes, Natura, Ministério Publíco, entre outras.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Nosso Ecossistema de Serviços
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Agenda
① As gerações do Big Data
② O que é o Apache Flink
③ Stack
④ Spark X Flink
⑤ Versões
⑥ Quem utiliza o Apache Flink?
⑦ Live Install e Demo…
⑧ Table API & SQL
⑨ Data Visualization
⑩ Livros e Referências
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
As Gerações do Big Data
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
O que é o Apache Flink ?
Definição
• Apache Flink é uma plataforma open source para para fluxo escalável e
processamento em lote.
• 'Flink': Palavra de origem alemã que significa brilhante, rápido, radiante.
• O núcleo do Flink é um mecanismo de fluxo de dados de streaming distribuído.
• Executa fluxos de dados em paralelo em clusters
• Fornece um back-end confiável para várias cargas de trabalho
• As abstrações de programação DataStream e DataSet são a base para programas
de usuários.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Histórico do Apache Flink
timeline
• Abr/2014 Incubado na Fundação Apache
• Abr/2014 promovido a Top Level
• Mar/2015 Lancada a versão 1.0
Comunidade
• Mais de 410 Contribuidores ( em 2016 já eram 150 )
• Quase 4000 Forks
• Quase 4000 Github stars
• Flink Meetup São Paulo – 255 Membros
https://www.meetup.com/pt-BR/Brazil-Sao-Paulo-Apache-Flink-Meetup/ ( temos que
reviver este! último meetup 2016...)
•
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Apache Flink
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438
Stack - Apache Flink
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380
Execução Distribuída
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381
Job Client / Stream Dataflow
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382
Parallel Streaming Dataflow
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383
Aplicações - Data Analytics
Stream ou Batch?
• O Apache Flink suporta streaming, bem como aplicativos analíticos em lote
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384
Aplicações - Data Pipeline
Extract-transform-load (ETL)
• ETL periódicos X pipelines de dados contínuos.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385
Seus Diferenciais...
Filosofia do Flink
• É o que existe de mais moderno em computação distribuída e engines do
ecossistema Hadoop.
• É a próxima geração para Big Data Analytics framework e não apenas uma
alternativa para Hadoop MapReduce, mas também uma alternativa ao Apache
Storm e Spark.
• Trás uma visão única e filosofia de framework engine que é verdadeiramente
híbrida (Real-Time Streaming + Batch), distribuída, suporta batch, streaming,
querys relacionais, machine learning e processamento de gráfos.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386
Seus Diferenciais em relação ao Spark
Tecnologia
• Implementa o processamento de fluxo real: quando você processa um fluxo no Spark,
ele o trata como muitos problemas de pequenos batchs, tornando o processamento de
fluxo um caso especial. O Flink trata o processamento em lote como especial e não usa
micro batching.
• Melhor suporte para processamento cíclico e iterativo: Flink fornece algumas
operações adicionais que permitem a implementação de ciclos em seu aplicativo streaming
e algoritmos que precisam executar várias iterações em dados batch.
• Gerenciamento de memória customizada: Flink é um aplicativo Java, mas não depende
inteiramente do JVM garbage. Ele implementa o gerenciador de memória personalizado
que armazena dados para processar em matrizes de bytes. Isso permite reduzir a carga
em um coletor de lixo e aumentar o desempenho.
• Menor latência e maior taxa de transferência: vários testes feitos por terceiros sugerem
que o Flink tem menor latência e maior rendimento do que seus concorrentes
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387
Seus Diferenciais em relação ao Spark
Tecnologia
• Operadores poderosos de janelas: quando você precisa processar um fluxo de dados na
maioria dos casos, é necessário aplicar uma função a um grupo finito de elementos em um
fluxo. Embora o Spark ofereça suporte a alguns desses casos de uso, o Flink fornece um
conjunto de operadores muito mais poderoso para o processamento de fluxo.
• Implementa snapshots leves e distribuídos: Isso permite que o Apache Flink forneça
baixo custo adicional e o processamento de apenas uma vez garante o processamento de
fluxo, sem usar micro batching como o Spark faz.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34388
Versão
Estável 1.5.1
• Apache Flink 1.5.1 - Lançado em 12 de Jul 2018
• Apache Flink 1.4.2 - Lançado em 12 de Mar 2018
• Apache Flink 1.4.0 - Lançado em 12 de Dez 2017
• Aproximadamente uma versão a cada 3 meses
• A versão 1.5.1 tem pacote de instalação com Hadoop 2.8 e Scala 2.11
• Pode ser instalado independente também.
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34389
Quem utiliza o Apache Flink ?
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380
WordCount Flink em Scala - Stream
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381
WordCount Flink em Java - Stream
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382
Instalando Apache Flink em 2 minutos...
Requisitos
• Java 1.8
• Realize o download de http://flink.apache.org/
cd ~/Downloads
tar xzf flink-*.tgz
cd flink-1.5.0
./bin/start-cluster.sh
acesse: http://localhost:8081
•
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383
Rodando um exemplo no Flink em 2 minutos...
Problema
• Ler um texto via socket, a cada 5 segundos, imprimir o número de ocorrências de
cada palavra (wordcount) distinta durante os 5 segundos anteriores, uma janela
rolante de tempo de processamento, contanto que as palavras estejam flutuando.
• Executando Socket: nc -l 9000
• Executando Flink:
./bin/flink run examples/streaming/SocketWindowWordCount.jar --port 9000
$ nc -l 9000
lorem ipsum
ipsum ipsum ipsum
Bye
• tail -f log/flink-*-taskexecutor-*.out
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384
Apache Flink - Cluster
Configs.
• /path/to/flink/conf/flink-conf.yaml
jobmanager.rpc.address: 10.0.0.1
• path/to/flink/conf/slaves
10.0.0.2
10.0.0.3
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385
Data Source ou Custom Stream
Arquivos do HDFS ou filesystem ou Custom Data Source.
• readTextFile(path)
• readFile(fileInputFormat, path)
• addSource(new FlinkKafkaConsumer08<>(…))
- Kafka
-Cassandra
- Hadoop HDFS
- Apache NiFi
- Twitter Streaming API
- Amazon Kinesis Stream
- RabbitMQ
• Conectores:
https://ci.apache.org/projects/flink/flink-docs-release-1.5/dev/connectors/
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386
DataStream Transformations
Transformation
• Map - dataStream.map { x => x * 2 }
• FlatMap - dataStream.flatMap { str => str.split(" ") }
• Filter - dataStream.filter { _ != 0 }
• KeyBy - dataStream.keyBy("someKey") // Key by field "someKey"
dataStream.keyBy(0) // Key by the first element of a Tuple
• Reduce - keyedStream.reduce { _ + _ }
• Fold - val result: DataStream[String] =
keyedStream.fold("start")((str, i) => { str + "-" + i })
• Aggregations - keyedStream.sum(0)
keyedStream.sum("key")
keyedStream.min(0)
keyedStream.min("key")
keyedStream.max(0)
keyedStream.max("key")
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387
Data Sinks
Arquivos do HDFS ou filesystem ou Custom Data Source.
• Data sinks consomem os DataStreams e os encaminham para arquivos, soquetes,
sistemas externos ou imprimem esses dados.
• O Flink vem com uma variedade de formatos de saída incorporados que são
encapsulados por trás das operações no DataStreams:
- writeAsText() / TextOutputFormat
- writeAsCsv(...) / CsvOutputFormat
- print() / printToErr()
- writeUsingOutputFormat() / FileOutputFormat
- writeToSocket (SerializationSchema)
- addSink
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34388
Table API & SQL
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34389
Table API & SQL
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380
Window - Table API
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381
Window - SQL
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382
Arquitetura - Table & SQL API
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383
SQL Client
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384
Data Visualization
Dashboards em Tempo Real
• Apache Flink, Elasticsearch e Kibana
https://www.elastic.co/blog/building-real-time-dashboard-applications-with-apache-flink-elasticsearch-and-kibana
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385
Data Visualization
https://www.elastic.co/blog/building-real-time-dashboard-applications-with-apache-flink-elasticsearch-and-kibana
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386
Onde Aprender Mais...
- Exercicios e Bases para Treinamento http://training.data-artisans.com/
- Documentação Oficial: http://flink.apache.org
© 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387
Referências
●
Flink
http://flink.apache.org/
Obrigado
Marcio Junior Vieira
marcio@ambientelivre.com.br
@marviojvieira @ambientelivre
https://www.linkedin.com/in/mvieira1/
Slide da Palestra será publicada em:
Linkedin….: https://www.linkedin.com/in/mvieira1/
SlideShare: http://slideshare.net/ambientelivre/
Blog……...: http://blogs.ambientelivre.com.br/marcio/

Contenu connexe

Tendances

Streaming SQL for Data Engineers: The Next Big Thing?
Streaming SQL for Data Engineers: The Next Big Thing?Streaming SQL for Data Engineers: The Next Big Thing?
Streaming SQL for Data Engineers: The Next Big Thing?Yaroslav Tkachenko
 
5分で分かるgitのrefspec
5分で分かるgitのrefspec5分で分かるgitのrefspec
5分で分かるgitのrefspecikdysfm
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Flink Forward
 
Advanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeAdvanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeMd Swawibe Ul Alam
 
Apache Spark Core – Practical Optimization
Apache Spark Core – Practical OptimizationApache Spark Core – Practical Optimization
Apache Spark Core – Practical OptimizationDatabricks
 
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAAdam Doyle
 
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)hamaken
 
Power bi勉強会 1202_小林
Power bi勉強会 1202_小林Power bi勉強会 1202_小林
Power bi勉強会 1202_小林寿 小林
 
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...Databricks
 
How We Optimize Spark SQL Jobs With parallel and sync IO
How We Optimize Spark SQL Jobs With parallel and sync IOHow We Optimize Spark SQL Jobs With parallel and sync IO
How We Optimize Spark SQL Jobs With parallel and sync IODatabricks
 
Hadoop Strata Talk - Uber, your hadoop has arrived
Hadoop Strata Talk - Uber, your hadoop has arrived Hadoop Strata Talk - Uber, your hadoop has arrived
Hadoop Strata Talk - Uber, your hadoop has arrived Vinoth Chandar
 
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...Flink Forward
 
Optimizing Apache Spark UDFs
Optimizing Apache Spark UDFsOptimizing Apache Spark UDFs
Optimizing Apache Spark UDFsDatabricks
 
High-Performance Advanced Analytics with Spark-Alchemy
High-Performance Advanced Analytics with Spark-AlchemyHigh-Performance Advanced Analytics with Spark-Alchemy
High-Performance Advanced Analytics with Spark-AlchemyDatabricks
 
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...Altinity Ltd
 
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Flink Forward
 
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016Nagato Kasaki
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
Hive Bucketing in Apache Spark with Tejas Patil
Hive Bucketing in Apache Spark with Tejas PatilHive Bucketing in Apache Spark with Tejas Patil
Hive Bucketing in Apache Spark with Tejas PatilDatabricks
 

Tendances (20)

Streaming SQL for Data Engineers: The Next Big Thing?
Streaming SQL for Data Engineers: The Next Big Thing?Streaming SQL for Data Engineers: The Next Big Thing?
Streaming SQL for Data Engineers: The Next Big Thing?
 
5分で分かるgitのrefspec
5分で分かるgitのrefspec5分で分かるgitのrefspec
5分で分かるgitのrefspec
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...
 
Advanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeAdvanced Git Presentation By Swawibe
Advanced Git Presentation By Swawibe
 
Apache Spark Core – Practical Optimization
Apache Spark Core – Practical OptimizationApache Spark Core – Practical Optimization
Apache Spark Core – Practical Optimization
 
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEA
 
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)ちょっと理解に自信がないなという皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
ちょっと理解に自信がないな という皆さまに贈るHadoop/Sparkのキホン (IBM Datapalooza Tokyo 2016講演資料)
 
Power bi勉強会 1202_小林
Power bi勉強会 1202_小林Power bi勉強会 1202_小林
Power bi勉強会 1202_小林
 
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...
 
How We Optimize Spark SQL Jobs With parallel and sync IO
How We Optimize Spark SQL Jobs With parallel and sync IOHow We Optimize Spark SQL Jobs With parallel and sync IO
How We Optimize Spark SQL Jobs With parallel and sync IO
 
Hadoop Strata Talk - Uber, your hadoop has arrived
Hadoop Strata Talk - Uber, your hadoop has arrived Hadoop Strata Talk - Uber, your hadoop has arrived
Hadoop Strata Talk - Uber, your hadoop has arrived
 
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
 
Optimizing Apache Spark UDFs
Optimizing Apache Spark UDFsOptimizing Apache Spark UDFs
Optimizing Apache Spark UDFs
 
High-Performance Advanced Analytics with Spark-Alchemy
High-Performance Advanced Analytics with Spark-AlchemyHigh-Performance Advanced Analytics with Spark-Alchemy
High-Performance Advanced Analytics with Spark-Alchemy
 
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...
OSA Con 2022 - Apache Iceberg_ An Architectural Look Under the Covers - Alex ...
 
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
 
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
Hive Bucketing in Apache Spark with Tejas Patil
Hive Bucketing in Apache Spark with Tejas PatilHive Bucketing in Apache Spark with Tejas Patil
Hive Bucketing in Apache Spark with Tejas Patil
 
Basic Git Intro
Basic Git IntroBasic Git Intro
Basic Git Intro
 

Similaire à Apache Flink a Quarta Geração do Big Data

AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration
AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration
AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration Ambiente Livre
 
Congresso iii unifacsv3
Congresso iii unifacsv3Congresso iii unifacsv3
Congresso iii unifacsv3IP10
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Marcelo Dieder
 
Template_Faculdade_Apache Kafka.pdf
Template_Faculdade_Apache Kafka.pdfTemplate_Faculdade_Apache Kafka.pdf
Template_Faculdade_Apache Kafka.pdfValdir Adorni
 
Integrando o Drupal com o ECM Alfresco usando CMIS
Integrando o Drupal com o ECM Alfresco usando CMISIntegrando o Drupal com o ECM Alfresco usando CMIS
Integrando o Drupal com o ECM Alfresco usando CMISAmbiente Livre
 
Stream Processing - ThoughtWorks Architecture Group - 2017
Stream Processing - ThoughtWorks Architecture Group - 2017Stream Processing - ThoughtWorks Architecture Group - 2017
Stream Processing - ThoughtWorks Architecture Group - 2017Otávio Carvalho
 
Congresso iv
Congresso ivCongresso iv
Congresso ivIP10
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Ambiente Livre
 
Pipeline da Engenharia de Dados
Pipeline da Engenharia de DadosPipeline da Engenharia de Dados
Pipeline da Engenharia de DadosEderson Corbari
 
Apache PHP MySQL
Apache  PHP  MySQLApache  PHP  MySQL
Apache PHP MySQLkisb1337
 
Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Ambiente Livre
 
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715Renato Groff
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
 
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...Affinitas GmbH
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013George Mendonça
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosRenan Moreira de Oliveira
 
Certificação LPI: qual sua importância no mercado de trabalho?
Certificação LPI: qual sua importância no mercado de trabalho?Certificação LPI: qual sua importância no mercado de trabalho?
Certificação LPI: qual sua importância no mercado de trabalho?Impacta Eventos
 

Similaire à Apache Flink a Quarta Geração do Big Data (20)

AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration
AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration
AEL - Adaptive Execution Layer on Spark Cluster with Pentaho Data Integration
 
De 1 a 1.000.00 de usuários
De 1 a 1.000.00 de usuáriosDe 1 a 1.000.00 de usuários
De 1 a 1.000.00 de usuários
 
Congresso iii unifacsv3
Congresso iii unifacsv3Congresso iii unifacsv3
Congresso iii unifacsv3
 
LAMP Server
LAMP ServerLAMP Server
LAMP Server
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?
 
Template_Faculdade_Apache Kafka.pdf
Template_Faculdade_Apache Kafka.pdfTemplate_Faculdade_Apache Kafka.pdf
Template_Faculdade_Apache Kafka.pdf
 
Integrando o Drupal com o ECM Alfresco usando CMIS
Integrando o Drupal com o ECM Alfresco usando CMISIntegrando o Drupal com o ECM Alfresco usando CMIS
Integrando o Drupal com o ECM Alfresco usando CMIS
 
Stream Processing - ThoughtWorks Architecture Group - 2017
Stream Processing - ThoughtWorks Architecture Group - 2017Stream Processing - ThoughtWorks Architecture Group - 2017
Stream Processing - ThoughtWorks Architecture Group - 2017
 
Congresso iv
Congresso ivCongresso iv
Congresso iv
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
 
Processamento em Big Data
Processamento em Big DataProcessamento em Big Data
Processamento em Big Data
 
Pipeline da Engenharia de Dados
Pipeline da Engenharia de DadosPipeline da Engenharia de Dados
Pipeline da Engenharia de Dados
 
Apache PHP MySQL
Apache  PHP  MySQLApache  PHP  MySQL
Apache PHP MySQL
 
Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre
 
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
 
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dados
 
Certificação LPI: qual sua importância no mercado de trabalho?
Certificação LPI: qual sua importância no mercado de trabalho?Certificação LPI: qual sua importância no mercado de trabalho?
Certificação LPI: qual sua importância no mercado de trabalho?
 

Plus de Ambiente Livre

Low Code Data Science with Pentaho Machine Intelligence
Low Code Data Science with Pentaho Machine IntelligenceLow Code Data Science with Pentaho Machine Intelligence
Low Code Data Science with Pentaho Machine IntelligenceAmbiente Livre
 
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.  Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics. Ambiente Livre
 
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...Ambiente Livre
 
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...Ambiente Livre
 
Metodologia Hacker de Ensino na Ambiente Livre
Metodologia Hacker de Ensino na Ambiente LivreMetodologia Hacker de Ensino na Ambiente Livre
Metodologia Hacker de Ensino na Ambiente LivreAmbiente Livre
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Ambiente Livre
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosAmbiente Livre
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Ambiente Livre
 
Pentaho, Hadoop , Big Data e Data Lakes
Pentaho, Hadoop , Big Data e Data LakesPentaho, Hadoop , Big Data e Data Lakes
Pentaho, Hadoop , Big Data e Data LakesAmbiente Livre
 
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoPostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoAmbiente Livre
 
Pentaho Hadoop Big Data e Data Lakes
Pentaho Hadoop Big Data e Data LakesPentaho Hadoop Big Data e Data Lakes
Pentaho Hadoop Big Data e Data LakesAmbiente Livre
 
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoBig Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoAmbiente Livre
 
SEBRAETEC - Inteligência Empresarial com CRM BI ECM e BPM
SEBRAETEC -  Inteligência Empresarial com CRM BI ECM e BPMSEBRAETEC -  Inteligência Empresarial com CRM BI ECM e BPM
SEBRAETEC - Inteligência Empresarial com CRM BI ECM e BPMAmbiente Livre
 
Carreira Profissional e Certificação de um Analista de BI Pentaho
Carreira Profissional e Certificação de um Analista de BI PentahoCarreira Profissional e Certificação de um Analista de BI Pentaho
Carreira Profissional e Certificação de um Analista de BI PentahoAmbiente Livre
 
Suporte a Geo-Mapping no Pentaho Report
Suporte a Geo-Mapping no Pentaho ReportSuporte a Geo-Mapping no Pentaho Report
Suporte a Geo-Mapping no Pentaho ReportAmbiente Livre
 
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...Ambiente Livre
 
Alfresco ECM e Gestão Eletrônica de Documentos Open Source
Alfresco ECM e Gestão Eletrônica de Documentos Open SourceAlfresco ECM e Gestão Eletrônica de Documentos Open Source
Alfresco ECM e Gestão Eletrônica de Documentos Open SourceAmbiente Livre
 
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivrePalestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivreAmbiente Livre
 
Big Data, o que é isso?
Big Data, o que é isso?Big Data, o que é isso?
Big Data, o que é isso?Ambiente Livre
 

Plus de Ambiente Livre (20)

Low Code Data Science with Pentaho Machine Intelligence
Low Code Data Science with Pentaho Machine IntelligenceLow Code Data Science with Pentaho Machine Intelligence
Low Code Data Science with Pentaho Machine Intelligence
 
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.  Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.
Orquestrando HBase, Cassandra e MongoDB com o Pentaho Big Data Analytics.
 
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...
FISL18 - Open Data Science - Elaborando uma plataforma de Big Data & Analytic...
 
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...
O Potencial Competitivo da Ciencia de Dados e da Inteligencia Artificial nas ...
 
Metodologia Hacker de Ensino na Ambiente Livre
Metodologia Hacker de Ensino na Ambiente LivreMetodologia Hacker de Ensino na Ambiente Livre
Metodologia Hacker de Ensino na Ambiente Livre
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativos
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
 
Pentaho, Hadoop , Big Data e Data Lakes
Pentaho, Hadoop , Big Data e Data LakesPentaho, Hadoop , Big Data e Data Lakes
Pentaho, Hadoop , Big Data e Data Lakes
 
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoPostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
 
Pentaho Hadoop Big Data e Data Lakes
Pentaho Hadoop Big Data e Data LakesPentaho Hadoop Big Data e Data Lakes
Pentaho Hadoop Big Data e Data Lakes
 
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoBig Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
 
SEBRAETEC - Inteligência Empresarial com CRM BI ECM e BPM
SEBRAETEC -  Inteligência Empresarial com CRM BI ECM e BPMSEBRAETEC -  Inteligência Empresarial com CRM BI ECM e BPM
SEBRAETEC - Inteligência Empresarial com CRM BI ECM e BPM
 
Carreira Profissional e Certificação de um Analista de BI Pentaho
Carreira Profissional e Certificação de um Analista de BI PentahoCarreira Profissional e Certificação de um Analista de BI Pentaho
Carreira Profissional e Certificação de um Analista de BI Pentaho
 
Suporte a Geo-Mapping no Pentaho Report
Suporte a Geo-Mapping no Pentaho ReportSuporte a Geo-Mapping no Pentaho Report
Suporte a Geo-Mapping no Pentaho Report
 
Negócios em FLOSS
Negócios em FLOSSNegócios em FLOSS
Negócios em FLOSS
 
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...
Pentaho Data Integration - Integração e Migração de Dados com ETL Open Source...
 
Alfresco ECM e Gestão Eletrônica de Documentos Open Source
Alfresco ECM e Gestão Eletrônica de Documentos Open SourceAlfresco ECM e Gestão Eletrônica de Documentos Open Source
Alfresco ECM e Gestão Eletrônica de Documentos Open Source
 
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivrePalestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
 
Big Data, o que é isso?
Big Data, o que é isso?Big Data, o que é isso?
Big Data, o que é isso?
 

Apache Flink a Quarta Geração do Big Data

  • 1. Apache Flink a Quarta Geração do Big Data Marcio Junior Vieira CEO & Data Scientist, Ambiente Livre Prof. MBA Universidade Positivo
  • 2. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Marcio Junior Vieira Mini-CV ● 18 anos de experiência TI, vivência em desenvolvimento e análise de sistemas de Gestão empresarial, analise de dados, aprendizado de máquina e BI. ● Trabalhando com Free Software e Open Source desde 2000 com serviços de consultoria e treinamento. ● Graduado em Tecnologia em Informática(2004) e pós-graduado em Software Livre(2005) ambos pela UFPR. ● Palestrante em: FISL, TDC, LATINOWARE, Campus Party, Pentaho Day, Ticnova. ● Organizador geral do Pentaho Day 2015, 2017 e apoio nas ed. 2013 e 2014. ● Data Scientist na Ambiente Livre, ● Prof. MBA em Big Data e Data Science, MBA em Business Intelligence e MBA em Inteligência Articifial da Universidade Positivo. ● Prof. MBA Inteligência Artificial da FIAP. ● Data Scientist, Instrutor e consultor de Big Data e Data Science com tecnologias abertas. ● Ajudou a capacitar equipes de Big Data e Data Science na IBM, Tivit, Accenture, Serpro, NetShoes, Natura, Ministério Publíco, entre outras.
  • 3. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Nosso Ecossistema de Serviços
  • 4. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Agenda ① As gerações do Big Data ② O que é o Apache Flink ③ Stack ④ Spark X Flink ⑤ Versões ⑥ Quem utiliza o Apache Flink? ⑦ Live Install e Demo… ⑧ Table API & SQL ⑨ Data Visualization ⑩ Livros e Referências
  • 5. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 As Gerações do Big Data
  • 6. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 O que é o Apache Flink ? Definição • Apache Flink é uma plataforma open source para para fluxo escalável e processamento em lote. • 'Flink': Palavra de origem alemã que significa brilhante, rápido, radiante. • O núcleo do Flink é um mecanismo de fluxo de dados de streaming distribuído. • Executa fluxos de dados em paralelo em clusters • Fornece um back-end confiável para várias cargas de trabalho • As abstrações de programação DataStream e DataSet são a base para programas de usuários.
  • 7. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Histórico do Apache Flink timeline • Abr/2014 Incubado na Fundação Apache • Abr/2014 promovido a Top Level • Mar/2015 Lancada a versão 1.0 Comunidade • Mais de 410 Contribuidores ( em 2016 já eram 150 ) • Quase 4000 Forks • Quase 4000 Github stars • Flink Meetup São Paulo – 255 Membros https://www.meetup.com/pt-BR/Brazil-Sao-Paulo-Apache-Flink-Meetup/ ( temos que reviver este! último meetup 2016...) •
  • 8. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Apache Flink
  • 9. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-3438 Stack - Apache Flink
  • 10. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380 Execução Distribuída
  • 11. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381 Job Client / Stream Dataflow
  • 12. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382 Parallel Streaming Dataflow
  • 13. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383 Aplicações - Data Analytics Stream ou Batch? • O Apache Flink suporta streaming, bem como aplicativos analíticos em lote
  • 14. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384 Aplicações - Data Pipeline Extract-transform-load (ETL) • ETL periódicos X pipelines de dados contínuos.
  • 15. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385 Seus Diferenciais... Filosofia do Flink • É o que existe de mais moderno em computação distribuída e engines do ecossistema Hadoop. • É a próxima geração para Big Data Analytics framework e não apenas uma alternativa para Hadoop MapReduce, mas também uma alternativa ao Apache Storm e Spark. • Trás uma visão única e filosofia de framework engine que é verdadeiramente híbrida (Real-Time Streaming + Batch), distribuída, suporta batch, streaming, querys relacionais, machine learning e processamento de gráfos.
  • 16. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386 Seus Diferenciais em relação ao Spark Tecnologia • Implementa o processamento de fluxo real: quando você processa um fluxo no Spark, ele o trata como muitos problemas de pequenos batchs, tornando o processamento de fluxo um caso especial. O Flink trata o processamento em lote como especial e não usa micro batching. • Melhor suporte para processamento cíclico e iterativo: Flink fornece algumas operações adicionais que permitem a implementação de ciclos em seu aplicativo streaming e algoritmos que precisam executar várias iterações em dados batch. • Gerenciamento de memória customizada: Flink é um aplicativo Java, mas não depende inteiramente do JVM garbage. Ele implementa o gerenciador de memória personalizado que armazena dados para processar em matrizes de bytes. Isso permite reduzir a carga em um coletor de lixo e aumentar o desempenho. • Menor latência e maior taxa de transferência: vários testes feitos por terceiros sugerem que o Flink tem menor latência e maior rendimento do que seus concorrentes
  • 17. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387 Seus Diferenciais em relação ao Spark Tecnologia • Operadores poderosos de janelas: quando você precisa processar um fluxo de dados na maioria dos casos, é necessário aplicar uma função a um grupo finito de elementos em um fluxo. Embora o Spark ofereça suporte a alguns desses casos de uso, o Flink fornece um conjunto de operadores muito mais poderoso para o processamento de fluxo. • Implementa snapshots leves e distribuídos: Isso permite que o Apache Flink forneça baixo custo adicional e o processamento de apenas uma vez garante o processamento de fluxo, sem usar micro batching como o Spark faz.
  • 18. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34388 Versão Estável 1.5.1 • Apache Flink 1.5.1 - Lançado em 12 de Jul 2018 • Apache Flink 1.4.2 - Lançado em 12 de Mar 2018 • Apache Flink 1.4.0 - Lançado em 12 de Dez 2017 • Aproximadamente uma versão a cada 3 meses • A versão 1.5.1 tem pacote de instalação com Hadoop 2.8 e Scala 2.11 • Pode ser instalado independente também.
  • 19. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34389 Quem utiliza o Apache Flink ?
  • 20. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380 WordCount Flink em Scala - Stream
  • 21. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381 WordCount Flink em Java - Stream
  • 22. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382 Instalando Apache Flink em 2 minutos... Requisitos • Java 1.8 • Realize o download de http://flink.apache.org/ cd ~/Downloads tar xzf flink-*.tgz cd flink-1.5.0 ./bin/start-cluster.sh acesse: http://localhost:8081 •
  • 23. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383 Rodando um exemplo no Flink em 2 minutos... Problema • Ler um texto via socket, a cada 5 segundos, imprimir o número de ocorrências de cada palavra (wordcount) distinta durante os 5 segundos anteriores, uma janela rolante de tempo de processamento, contanto que as palavras estejam flutuando. • Executando Socket: nc -l 9000 • Executando Flink: ./bin/flink run examples/streaming/SocketWindowWordCount.jar --port 9000 $ nc -l 9000 lorem ipsum ipsum ipsum ipsum Bye • tail -f log/flink-*-taskexecutor-*.out
  • 24. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384 Apache Flink - Cluster Configs. • /path/to/flink/conf/flink-conf.yaml jobmanager.rpc.address: 10.0.0.1 • path/to/flink/conf/slaves 10.0.0.2 10.0.0.3
  • 25. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385 Data Source ou Custom Stream Arquivos do HDFS ou filesystem ou Custom Data Source. • readTextFile(path) • readFile(fileInputFormat, path) • addSource(new FlinkKafkaConsumer08<>(…)) - Kafka -Cassandra - Hadoop HDFS - Apache NiFi - Twitter Streaming API - Amazon Kinesis Stream - RabbitMQ • Conectores: https://ci.apache.org/projects/flink/flink-docs-release-1.5/dev/connectors/
  • 26. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386 DataStream Transformations Transformation • Map - dataStream.map { x => x * 2 } • FlatMap - dataStream.flatMap { str => str.split(" ") } • Filter - dataStream.filter { _ != 0 } • KeyBy - dataStream.keyBy("someKey") // Key by field "someKey" dataStream.keyBy(0) // Key by the first element of a Tuple • Reduce - keyedStream.reduce { _ + _ } • Fold - val result: DataStream[String] = keyedStream.fold("start")((str, i) => { str + "-" + i }) • Aggregations - keyedStream.sum(0) keyedStream.sum("key") keyedStream.min(0) keyedStream.min("key") keyedStream.max(0) keyedStream.max("key")
  • 27. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387 Data Sinks Arquivos do HDFS ou filesystem ou Custom Data Source. • Data sinks consomem os DataStreams e os encaminham para arquivos, soquetes, sistemas externos ou imprimem esses dados. • O Flink vem com uma variedade de formatos de saída incorporados que são encapsulados por trás das operações no DataStreams: - writeAsText() / TextOutputFormat - writeAsCsv(...) / CsvOutputFormat - print() / printToErr() - writeUsingOutputFormat() / FileOutputFormat - writeToSocket (SerializationSchema) - addSink
  • 28. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34388 Table API & SQL
  • 29. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34389 Table API & SQL
  • 30. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34380 Window - Table API
  • 31. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34381 Window - SQL
  • 32. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34382 Arquitetura - Table & SQL API
  • 33. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34383 SQL Client
  • 34. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34384 Data Visualization Dashboards em Tempo Real • Apache Flink, Elasticsearch e Kibana https://www.elastic.co/blog/building-real-time-dashboard-applications-with-apache-flink-elasticsearch-and-kibana
  • 35. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34385 Data Visualization https://www.elastic.co/blog/building-real-time-dashboard-applications-with-apache-flink-elasticsearch-and-kibana
  • 36. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34386 Onde Aprender Mais... - Exercicios e Bases para Treinamento http://training.data-artisans.com/ - Documentação Oficial: http://flink.apache.org
  • 37. © 2018, Ambiente Livre. Todos direitos reservados. www.ambientelivre.com.br +55 (41) 3308-34387 Referências ● Flink http://flink.apache.org/
  • 38. Obrigado Marcio Junior Vieira marcio@ambientelivre.com.br @marviojvieira @ambientelivre https://www.linkedin.com/in/mvieira1/ Slide da Palestra será publicada em: Linkedin….: https://www.linkedin.com/in/mvieira1/ SlideShare: http://slideshare.net/ambientelivre/ Blog……...: http://blogs.ambientelivre.com.br/marcio/