
Introduction and overview on the course
Overview of Spring Cloud Data Flow Architecture
List of run times Spring Cloud Data Flow runs on (YARN, Cloud Foundry, Kubernetes)
Various applications which interacts with message broker
Details on event driven system
Various interaction points of Spring Cloud Data Flow
Overview of various components like Web Dashboard, Shell, Data Flow Server, Skipper Server
List of databases Spring Cloud Data Flow can interact
Installation and configuration of RabbitMQ
Starting Skipper Server and Spring Data Flow Server
Using Spring Cloud Data Flow Shell
Introduction to Spring Cloud Data Flow dashboard
Features of Dashboard
Working with Apps, Runtime, Streams, Tasks and Jobs
Creating sample stream using time source and log sink
Deploying the stream and configuring the properties
Verifying the message broker, sink log files
Registering application using Task app starters
Creating task with Timestamp app
Configuring and deploying the tasks
Verifying the execution of tasks with start time, end time and exit code
Verifying the log files for result
Creating AWS EC2 instance with CentOS operating system
Login to EC2 instance using Putty
Install required packages and updates
Installing Docker service and starting
Installing Docker compose
Downloading required docker compose yml file
Overview of various service in Spring Cloud Data Flow docker yml file
Customizing yml file
Setting required environment variables
Bring up docker compose
Verifying list of running services
Create and verify sample stream using timestamp and log
Verifying Grafana dashboard for results
Check status of various container
Login to skipper server
Check log files of streaming application in skipper server
Login to spring cloud data flow server and data flow shell
Login to mysql container and check the database created by Spring Cloud Data Flow Server
Terminate the instance
Adding Spring Cloud Stream App Starters
Create and populate database data
Create stream with datasource and driver configuration
Post sample data with http post method
Check the logs and database for verification
Deploy stream using webUI
Post data using postman application
Verify data in Grafana dashboard
High level overview of twitter stream application layout
Set up Twitter Authentication details Consumer API keys and tokens, Access token and access token secret
Create twitter stream with configured authentication details
Deploy the stream and check the logs for harvested tweets
Verify structure of harvested JSON structure
Validate twitter JSON for language expression using JSONPath Syntax
Extract language value and count using counter processor
Use fan-out architecture to get the language counter along with twitter logs
Create new panel in Grafana dashboard
Edit Query to have pie chart on languages count
Try various types of graphs like Bubble chart
Monitor real time data getting reflected in dashboard
Creating JSONPath expression to extract hash tags
Creating stream to count hash tags using counter processor
Importing template to Grafana
Visualizing the twitter harvested information in Grafana dashboard
Designing stream to extract twitter for sentiment analysis
Overview on using pre-built model for sentiment analysis
Configuring Vocabulary and model for sentiment analysis
Deploying sentiment analysis stream
Verify real time tweet sentiment in Grafana dashboard
Overview on Object Detection Tensor Flow porcessor
Registering starter application
Creating and deploying stream using data flow shell
Adding source image and verifying detected object in result image
Trying various samples like animals and birds
Overview on Pose estimation Tensor Flow Processor
Creating and deploying stream for Tensor Flow pose estimation processor
Verifying pose estimation with sample image
Overview on Spring Cloud Task
Creating starter project using spring Initializr
Importing project into Spring Tool Suite (STS)
Creating class implementing ApplicationRunner interface
Creating required pom dependencies
Verifying the application in STS
Building jar file using maven build
Hosting the application in web server and registering it as app in spring cloud data flow server
Verifying the result in log file
Overview of processor application architecture
Role played by binder and messaging middle ware
Creating bootstrap application using Spring Initializr by adding required dependencies
Importing the project into Spring Tool Suite (STS)
Using the annotations like @EnableBinding, @Transformer
Verifying the queues getting created in RabbitMQ
Verifying by posting sample message in RabbitMQ
Build custom processor as jar file and register in maven local repository
Deploying application using maven uri maven://
Registering custom created processor
Creating and deploying stream using http source, custom processor and log sink
Verifying deployed stream using http post method
Creating the stream using Shell and Web UI
Architecture and working of Source application
Role played by poller
Creating Initializr application and importing to STS
Using annotations like @EnableBinding, @InboundChannelAdapter, @Poller
Creating sample message with payload
Building and registering the application in local repository
Registering custom source application
Deploying stream and verifying result in log file
Creating application in Spring Initializr and importing into STS
Using annotations like @EnableBinding, @StreamListener
Building and registering jar with local repository
Verifying the result in log file with http post
Creating custom processor
Creating stream with custom source, processor and sink
Stream architecture and flow details
Registering all three (Source, Processor and Sink) application with spring cloud data flow server
Verifying the stream with sample data
Understand the technical architecture along with installation and configuration of Spring Cloud Data Flow Applications.
Create basic to advanced Streaming applications like time logger to TensorFlow Image Detection Stream Flow.
You will learn the following as part of this course.
Architecture of Spring Cloud Data Flow
Components of Spring Cloud Data Flow like Skipper Server, Spring Cloud Data Flow Server, Data Flow Shell
Using Data Flow Shell and Domain Specific Language (DSL)
Configuring and usage of message brokers like RabbitMQ, Kafka
Installation and configuration of Spring Cloud Data Flow Ecosystem in Amazon Web Service (AWS) EC2 Instances
Configuring Grafana Dashboard for Stream visualization
Configuration of Source, Sink and Processor
Creating custom Source, Sink and Processor application
Coding using Spring Tool Suite (STS) for custom code development
Working with Spring Data Flow WebUI and analyzing logs on runtimes
This course is designed to cover all aspects of Spring Cloud Data Flow from basic installation to configuration in Docker as well as creating all type of Streaming applications like ETL, import/export, Predictive Analytics, Streaming Event processing etc.,
Few working examples/usecases are covered to have better understanding like
Data extracting and interaction with JDBC database
Extracting Twitter Data (Tweets) from Twitter
Sentiment analysis, Language Analysis and HashTag Analysis on Tweets from Twitter
Object Detection/Prediction using TensorFlow processor
Pose Prediction using TensorFlow Processor