Este repositório foi criado para fazer a implementação em Scala do exemplo usado no curso Apache Kafka Series - Learn Apache Kafka for Beginners v2.
To see this ReadMe in english click here 🇺🇸
- Java 11
- Kafka
- Docker e Docker-Compose (Caso você não queria rodar o kafka localmente)
- Scala (2.12.11)
- Uma IDE (Eclipse, Intelij...)
- Uma conta de desenvolvedor do Twitter
- Uma conta no Bonsai ElasticSearch (caso voce não queira colocar local)
-
Rode o kafka, caso seja local necessário subir o zookeeper e o kafka-server, caso seja por docker só usar
docker-compose up -d
-
Coloque as chaves de acesso do Twitter e do ElasticSearchnas variáveis de ambiente da sua IDE (Intellij, Eclipse). Caso você não vá subir essa aplicação no github pode-se colocar as variáveis como String direto no texto.
-
Abra o projeto em sua IDE e execute nesta ordem: TwitterProducer, KafkaStream e KafkaConsumer.
-
Quando o Consumer estiver em execução, o console irá mostrar os "ids" que foram inseridos no Elastic, vá até o bonsai, console e faça um get pelo ID
/twitter/tweets/{id}
[1] Caso você execute o ElasticSearch localmente pode remover a parte de BasicAuth.
[2] Necessário criar um index "twitter" e um type "tweets" dentro do elastic, senão dá erro na inserção.