Real-Time Analytics with Apache Storm (Udacity)

Offered by Udacity, Twitter,
Real-Time Analytics with Apache Storm (Udacity)

The world is trending in real time! Learn from Twitter to scalably process tweets, or any big data stream, in real-time to drive d3 visualizations using Apache Storm, the "Hadoop of Real Time." Storm is free, open source, and fun to use! Learn from Karthik Ramasamy, about the distributed, fault-tolerant, and flexible technology used to power Twitter’s real-time data flow pipeline. Twitter open sourced Storm in 2011, and it graduated to a top-level Apache project in September, 2014.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

Starting from basic distributed concepts presented during our first Udacity-Twitter Storm Hackathon, link Storm concepts to Storm syntax to scalably drive Word Cloud visualizations with Vagrant, Ubuntu, Maven, Flask, Redis, and d3. Link to the public Twitter gardenhose stream to process live tweets, parse embedded URLs, and calculate Top worldwide hashtags. Extend beyond Storm basics by exploring multi-language capabilities in Python, integrate open source components, and implement real-time streaming joins.
In your final project, follow real-time trending topics by implementing the data pipeline to visualize only tweets that contain Top worldwide hashtags. Extend your project by exploring the Twitter API, or any data source, alongside Hackathon participants as they design their own ideas, receive feedback from Karthik, and open source a final project calculating real-time tweet sentiment and geolocation to drive a U.S. Map.
Learn by doing! The world is going real time. Batch processing, popularized by Hadoop, has latency exceeding required real-time demands of modern mobile, connected, always-on users. Stream processing with seconds-required response time is necessary to meet this demand. Twitter is a world leader in real-time processing at scale. Learn the future from the company defining it.

What You Will Learn

Lesson 1
Basic Storm Topologies

  • Link to a real-time d3 Word Cloud Visualization using Redis Flask and d3

Lesson 2
Storm Basics

  • Program Bolts link Spouts and connect to the live Twitter API to process real-time tweets
  • Explore open source components by connecting a Rolling Count Bolt to your topology to visualize Rolling Top Tweeted Words

Lesson 3
Beyond Storm Basics

  • Explore multi-language capabilities to download and parse real-time Tweeted URLs in Python using Beautiful Soup
  • Integrate complex open source bolts to calculate Top-N words to visualize real-time Top-N Hashtags
  • Use stream grouping concepts to easily create streaming join to connect and dynamically process multiple streams

Lesson 4
Final Project

  • Work on your final project and we cover additional questions and topics brought up by Hackathon participants
  • Explore Vagrant
  • VirtualBox
  • Redis
  • Flask
  • and d3 further if you are interested!

Lesson 5
Final Project: Construct a Storm Topology

  • Design a Storm Topology and new bolt that uses streaming joins to dynamically calculate Top-N Hashtags and display real-time tweets that contain trending Top Hashtags
  • Post your visualization to the forum and tweet them to your Twitter followers

Lesson 6
Project Extensions

  • Use additional features of the real-time Twitter sample stream or use any data source to drive your real-time d3 visualization

Prerequisites and Requirements
Programming language required: JavaTo be successful, you'll need intermediate knowledge of Java. Specifically, this is defined by experience and comfort with Java syntax, compile & run-time error diagnostics and debugging, ability to use javadocs as needed, and intermediate data structures including Arrays, HashMaps, and LinkedLists. If you need to build these skills, a good starting point is Udacity’s Introduction to Java with additional comfortability needed identifying and debugging compile & run-time errors. No prior experience is assumed in Ubuntu, git, Maven, Redis, Flask (Python) or d3 (Javascript). Python is useful, but optional. A basic course such as CS101 or OO in Python would be helpful.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Wrangling with MongoDB (Udacity) Udacity
Udacity,MongoDB University

Data Wrangling with MongoDB (Udacity)

In this course, we will explore how to wrangle data from diverse sources and shape it to enable data-driven applications. Some data scientists spend the bulk of their time doing this! Students will learn how to gather and extract data from widely used data formats. They will learn how to assess the quality of data and explore best practices for data cleaning. We will also introduce students to MongoDB, covering the essentials of storing data and the MongoDB query language together with exploratory analysis using the MongoDB aggregation framework.

Self Paced
Self-Paced
Model Building and Validation (Udacity) Udacity
Udacity

Model Building and Validation (Udacity)

Advanced Techniques for Analyzing Data. This course will teach you how to start from scratch in answering questions about the real world using data. Machine learning happens to be a small part of this process. The model building process involves setting up ways of collecting data, understanding and paying attention to what is important in the data to answer the questions you are asking, finding a statistical, mathematical or a simulation model to gain understanding and make predictions.

Self Paced
Self-Paced
Experimentation for Improvement (Coursera) Coursera
McMaster University

Experimentation for Improvement (Coursera)

We are always using experiments to improve our lives, our community, and our work. Are you doing it efficiently? Or are you (incorrectly) changing one thing at a time and hoping for the best? In this course, you will learn how to plan efficient experiments - testing with many variables. Our goal is to find the best results using only a few experiments. A key part of the course is how to optimize a system.

Nov 9th 2026
5-12 Weeks
Big Data Analysis with Scala and Spark (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Big Data Analysis with Scala and Spark (Coursera)

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout.

Nov 9th 2026
4 Weeks
Business Statistics and Analysis Capstone (Coursera) Coursera
Rice University

Business Statistics and Analysis Capstone (Coursera)

The Business Statistics and Analysis Capstone is an opportunity to apply various skills developed across the four courses in the specialization to a real life data. The Capstone, in collaboration with an industry partner uses publicly available ‘Housing Data’ to pose various questions typically a client would pose to a data analyst. Your job is to do the relevant statistical analysis and report your findings in response to the questions in a way that anyone can understand.

Nov 9th 2026
4 Weeks
Data Science Interview Prep (Udacity) Udacity
Udacity

Data Science Interview Prep (Udacity)

Confidently take on the tech interview. Data science job interviews can be daunting. Technical interviewers often ask you to design an experiment or model. You may need to solve problems using Python and SQL. You will likely need to show how you connect data skills to business decisions and strategy. In this course, you'll review the common questions asked in data science, data analyst, and machine learning interviews.

Self Paced
Self-Paced
Fundamentos de Excel para Negocios (Coursera) Coursera
Universidad Austral

Fundamentos de Excel para Negocios (Coursera)

Cuando finalices este curso habrás logrado un gran número de habilidades como introducir información, ordenarla, manipularla, realizar cálculos de diversa índole (matemáticos, trigonométricos, estadísticos, financieros, ingenieriles, probabilísticos), extraer conclusiones, trabajar con fechas y horas, construir gráficos, imprimir reportes y muchas más.

Nov 9th 2026
5-12 Weeks