Category Archives: Big Data

Using Spark Structured Streaming to upsert Kafka messages into a database

I wrote a detailed and technical blog post demonstrating an integration of Spark Structured Streaming with Apache Kafka messages and Snowflake. An overview of the content is: querying Twitter API for realtime tweets setting up a Kafka server producing messages … Continue reading

Posted in Big Data, Data Engineering, Python | Leave a comment

Advanced Spark Structured Streaming – Aggregations, Joins, Checkpointing

I wrote a blog post demonstrating advanced Spark Structured Streaming topics. An overview of the content is: setting up a Kafka server producing messages with Kafka consuming tweets with Spark Structured Streaming watermarking messages parsing JSON data performing aggregattion queries … Continue reading

Posted in Big Data, Data Engineering, Python | Leave a comment

Clustering keys Snowflake

I’ve written a blog post covering in depth the new Clustering Keys feature of Snowflake. In the post I explained the internals of how clustering keys work in a Shared-Disk architecture of Snowflake and compared it to Redshift. I also … Continue reading

Posted in Big Data, Data Engineering | Leave a comment

Writing UDAFs on Snowflake

I’ve written a blog post explaining in-depth how to create User Defined Aggregate Functions (UDAFs) using Javascript on Snowflake. You can find the blog post here. A small preview:

Posted in Big Data, Data Engineering | Leave a comment

Apache Airflow for data pipelines and ETL management

I have been looking for good workflow management software and found Apache Airflow to be superior to other solutions. I’ve taken some time to write a pretty detailed blog post on using Airflow for development of ETL pipelines. Airflow is … Continue reading

Posted in Big Data, Data Engineering, Python | Leave a comment

Implementing the Speed Layer of Lambda Architecture using Spark Structured Streaming

This post is a part of a series on Lambda Architecture consisting of: Introduction to Lambda Architecture Implementing Data Ingestion using Apache Kafka, Tweepy Implementing Batch Layer using Kafka, S3, Redshift Implementing Speed Layer using Spark Structured Streaming Implementing Serving … Continue reading

Posted in Big Data, Data Engineering | 4 Comments

Implementing the Serving Layer of Lambda Architecture using Redshift

This post is a part of a series on Lambda Architecture consisting of: Introduction to Lambda Architecture Implementing Data Ingestion using Apache Kafka, Tweepy Implementing Batch Layer using Kafka, S3, Redshift Implementing Speed Layer using Spark Structured Streaming Implementing Serving … Continue reading

Posted in Big Data, Data Engineering | 4 Comments