Streaming Messages from Kafka into Redshift in Near Real-Time
engineeringblog.yelp.com
Streaming Messages from Kafka into Redshift in Near Real-Time
1–10 of 12 posts
Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#2Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#3Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#4Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#5Cut out Kafka by writing directly to S3 and bulk loading from S3 directory (optimal for Redshift). The article never details what "near real-time" means, which is bothersome.
If they wrote a loader for each combination, they'd end up with 49 combinations. Not to mention 7 loaders to write every time they add an app.
With Kafka - they just need to connect each thing to Kafka - 14 connectors instead of 49.
This is pretty much the scenario Kafka was invented for, and you get stream processing for free: https://engineering.linkedin.com/distributed-systems/log-wha...
Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#6Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#7The proliferation of software using words with a strong, precise, pre-existing meaning is making some of these headlines difficult to read... My first impression was that there is a space telescope I was unaware of whose copious data was being converted into redshift measurements of galaxies. Sadly, it has nothing to do with space news. Not sure whether to laugh or sigh.
Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#8Cut out Kafka by writing directly to S3 and bulk loading from S3 directory (optimal for Redshift). The article never details what "near real-time" means, which is bothersome.
According to the article, Yelp had 7 different data sources and similar number of targets. If they wrote a loader for each combination, they'd end up with 49 combinations. Not to mention 7 loaders to write every time they add an app. With Kafka - they just need to connect each thing to Kafka - 14 connectors instead of 49. This is pretty much the scenario Kafka was invented for, and you get stream processing for free:…
Redshift will create columns (within some restrictions about nested arrays) which generally have to be avoided, however you get the data into redshift, from json. Kafka is a process/time wasteful step in almost every redshift loading scenario, given the current state of AWS services. Test for yourself over a few billion messages at various message sizes from 1k to 1M, if you get the chance.
Kafka is great for a message queue if you can't write to S3 directly or as a buffer to deal gracefully with S3 hiccups, for high frequency throughput to redshift.
Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#9Re: Streaming Messages from Kafka into Redshift in Near Real-Time
#10(Work on Google Cloud)