# redshift

Published articles for redshift.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Five Years of Kafka at Razorpay's UPI Switch

DevFeed: [Five Years of Kafka at Razorpay's UPI Switch](<https://devfeed.tech/articles/five-years-of-kafka-at-razorpay-s-upi-switch-24044.md>)

Original publisher: [Read original article](<https://engineering.razorpay.com/tryst-with-kafka-2f5cef766c45?source=rss----6407ad2e59af---4>)

Author: Kshitij Nawandar

Published: 2026-09-07T09:09:58Z

Content type: article

Language: en

Sources: [Razorpay Engineering - Medium](<https://devfeed.tech/sources/razorpay-engineering-medium.md>)

Topics: [Kafka](<https://devfeed.tech/topics/kafka.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [event driven](<https://devfeed.tech/topics/event-driven.md>), [Amazon Simple Queue Service (SQS)](<https://devfeed.tech/topics/amazon-simple-queue-service-sqs.md>), [distributed-systems](<https://devfeed.tech/topics/distributed-systems.md>), [Microservices](<https://devfeed.tech/topics/microservices.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>)

Tags: [aws](<https://devfeed.tech/tags/aws.md>), [aws-sns](<https://devfeed.tech/tags/aws-sns.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [event-driven](<https://devfeed.tech/tags/event-driven.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [razorpay](<https://devfeed.tech/tags/razorpay.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [sns](<https://devfeed.tech/tags/sns.md>), [sqs](<https://devfeed.tech/tags/sqs.md>)

### AI overview

Razorpay describes five years of evolution in its UPI Switch, from a monolith using AWS SQS to Kafka-based infrastructure. The article covers architectural decisions, operational challenges, and optimization work affecting payment-processing performance, reliability, and scale.

### Source excerpt

Preface The UPI Switch at Razorpay has evolved significantly in the five years since we started building it. The Switch is the platform that enables real-time payment processing with NPCI. When the team began, it was little more than an idea. Today it powers more than 70% of Razorpay's total UPI volume. Because UPI is inherently asynchronous, a messaging system sits at the heart of the Switch and has a direct impact on performance, reliability, and scale. What began as a straightforward queue became the core of the system, shaping how every new feature was designed and delivered. This post covers that evolution: the decisions that enabled growth, the ones that slowed us down, the operational issues that forced us to rethink our assumptions, and the optimizations that ultimately stabilized our Kafka-based infrastructure. This is the story of what we got right, what we got wrong, and how we eventually built something stable enough to grow on. The First Version: Monolith and SQS When we began building the UPI Switch, we weren't thinking about massive scale, distributed systems, or elegant event routing. So we built Switch v1 as a monolith. No microservices, no distributed orchestration: just one solid block of code doing everything. That was the right call. We needed to move fast, experiment, and learn, and we followed the Keep It Simple, Stupid (KISS) principle deliberately. For messaging, we picked AWS SQS: reliable, managed, and low on cognitive load. We didn't need ordering guarantees at the time, so a standard queue worked fine. We started with just two queues, and this setup held its ground. It handled a peak of 400 TPS during the IPL. The limitations showed up as the ecosystem grew. A single event, like a successful payment, needed to fan out into multiple workflows: Update NPCI with an API call Send callbacks to merchants about payment status Push structured data into our warehouse (AWS Redshift) To handle this, we started bolting on AWS SNS plus SQS for fan-ou

## Optimizing Redshift Write Patterns: Tackling Tombstones and Ghost Rows

DevFeed: [Optimizing Redshift Write Patterns: Tackling Tombstones and Ghost Rows](<https://devfeed.tech/articles/optimizing-redshift-write-patterns-tackling-tombstones-and-ghost-rows-20467.md>)

Original publisher: [Read original article](<https://eng.wealthfront.com/2026/08/24/optimizing-redshift-write-patterns-tackling-tombstones-and-ghost-rows/>)

Author: Harichandan Pulagam

Published: 2026-08-24T20:18:12Z

Content type: article

Language: en

Sources: [Wealthfront](<https://devfeed.tech/sources/wealthfront.md>)

Topics: [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [dashboards](<https://devfeed.tech/topics/dashboards.md>), [Data Quality](<https://devfeed.tech/topics/data-quality.md>)

Tags: [amazon-redshift](<https://devfeed.tech/tags/amazon-redshift.md>), [batch](<https://devfeed.tech/tags/batch.md>), [dashboards](<https://devfeed.tech/tags/dashboards.md>), [data-quality](<https://devfeed.tech/tags/data-quality.md>), [latency](<https://devfeed.tech/tags/latency.md>), [load](<https://devfeed.tech/tags/load.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [space](<https://devfeed.tech/tags/space.md>), [wealthfront-engineering](<https://devfeed.tech/tags/wealthfront-engineering.md>)

### AI overview

This Wealthfront engineering post examines how Redshift tables grew to nearly 10 times the size of their useful data because deleted rows remained on disk as ghost rows. It describes the resulting read and write latency and the write strategies adopted to control table size.

### Source excerpt

Amazon Redshift is a core part of our analytics platform, powering dashboards, data quality checks, ad-hoc analytical workloads, and downstream reporting on a shared cluster. Because everything runs on the same cluster, the size and health of our tables directly affects every workload. At Wealthfront, data drives every decision we make, which means any performance... Read more

## How the 5 major cloud data warehouses compare on cost-performance

DevFeed: [How the 5 major cloud data warehouses compare on cost-performance](<https://devfeed.tech/articles/how-the-5-major-cloud-data-warehouses-compare-on-cost-performance-5209.md>)

Original publisher: [Read original article](<https://clickhouse.com/blog/cloud-data-warehouses-cost-performance-comparison>)

Author: Tom Schreiber; Lionel Palacin

Published: 2025-12-02T00:00:00Z

Content type: article

Language: en

Sources: [ClickHouse Blog](<https://devfeed.tech/sources/clickhouse-blog.md>)

Topics: [benchmarking](<https://devfeed.tech/topics/benchmarking.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [clickhouse](<https://devfeed.tech/topics/clickhouse.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [BigQuery](<https://devfeed.tech/topics/bigquery.md>), [databricks](<https://devfeed.tech/topics/databricks.md>), [dataset](<https://devfeed.tech/topics/dataset.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [benchmarking](<https://devfeed.tech/tags/benchmarking.md>), [bigquery](<https://devfeed.tech/tags/bigquery.md>), [clickhouse](<https://devfeed.tech/tags/clickhouse.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [cloud-data](<https://devfeed.tech/tags/cloud-data.md>), [compare](<https://devfeed.tech/tags/compare.md>), [comparison](<https://devfeed.tech/tags/comparison.md>), [cost](<https://devfeed.tech/tags/cost.md>), [data](<https://devfeed.tech/tags/data.md>), [databricks](<https://devfeed.tech/tags/databricks.md>), [dataset](<https://devfeed.tech/tags/dataset.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [storage](<https://devfeed.tech/tags/storage.md>), [warehouse](<https://devfeed.tech/tags/warehouse.md>)

### AI overview

This article compares the cost-performance of Snowflake, Databricks, ClickHouse Cloud, BigQuery, and Redshift across analytical workloads containing 1 billion, 10 billion, and 100 billion rows. Using each system's real compute billing model, the benchmark concludes that ClickHouse Cloud provides substantially better value than the other systems at scale.

### Source excerpt

We benchmarked the five major cloud data warehouses at 1B-100B rows using their real billing models to measure performance per dollar. Results show how cost-performance shifts as data grows.

## Why HTAP Databases Are Giving Way to Disaggregated Architectures

DevFeed: [Why HTAP Databases Are Giving Way to Disaggregated Architectures](<https://devfeed.tech/articles/htap-is-dead-5421.md>)

Original publisher: [Read original article](<https://neon.com/blog/htap-is-dead>)

Author: Zhou Sun

Published: 2025-05-04T10:00:00Z

Content type: article

Language: en

Sources: [Blog -- Neon Docs](<https://devfeed.tech/sources/blog-neon-docs.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>), [olap](<https://devfeed.tech/topics/olap.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [consistency](<https://devfeed.tech/topics/consistency.md>), [NoSQL](<https://devfeed.tech/topics/nosql.md>), [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [Hadoop](<https://devfeed.tech/topics/hadoop.md>), [hdfs](<https://devfeed.tech/topics/hdfs.md>), [CockroachDB](<https://devfeed.tech/topics/cockroachdb.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [vitess](<https://devfeed.tech/topics/vitess.md>)

Tags: [cloud](<https://devfeed.tech/tags/cloud.md>), [cloud-data](<https://devfeed.tech/tags/cloud-data.md>), [cockroachdb](<https://devfeed.tech/tags/cockroachdb.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [data-lake](<https://devfeed.tech/tags/data-lake.md>), [databases](<https://devfeed.tech/tags/databases.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [hadoop](<https://devfeed.tech/tags/hadoop.md>), [hdfs](<https://devfeed.tech/tags/hdfs.md>), [latency](<https://devfeed.tech/tags/latency.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [olap](<https://devfeed.tech/tags/olap.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [sql](<https://devfeed.tech/tags/sql.md>), [vitess](<https://devfeed.tech/tags/vitess.md>)

### AI overview

The article traces the separation of transactional and analytical database workloads, explaining how differing storage and scaling requirements led to specialized OLTP and OLAP systems. It argues that HTAP as a single database architecture is declining while its underlying ideas persist in today's disaggregated data stack.

### Source excerpt

This blog is inspired by Jordan Tigani's "Big Data is Dead." Jordan and I actually spent some time building an HTAP database at SingleStore. From the one database that did everything in the '80s, to the great divide, to HTAP, to today's disaggregated stack--here's why HTAP as a database is dead, but its spirit lives on.

## Project Teleport: Cost-Effective and Scalable Kafka Data Processing at Block

DevFeed: [Project Teleport: Cost-Effective and Scalable Kafka Data Processing at Block](<https://devfeed.tech/articles/project-teleport-cost-effective-and-scalable-kafka-data-processing-at-block-29015.md>)

Original publisher: [Read original article](<https://code.cash.app/project-teleport>)

Author: Unni Krishnan

Published: 2025-03-20T00:00:00Z

Content type: article

Language: en

Sources: [Cash App Code Blog](<https://devfeed.tech/sources/cash-app-code-blog.md>)

Topics: [data-processing](<https://devfeed.tech/topics/data-processing.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [migration](<https://devfeed.tech/topics/migration.md>), [databricks](<https://devfeed.tech/topics/databricks.md>), [data lake](<https://devfeed.tech/topics/data-lake.md>), [Apache Spark](<https://devfeed.tech/topics/spark.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [parquet](<https://devfeed.tech/topics/parquet.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>)

Tags: [acquisition](<https://devfeed.tech/tags/acquisition.md>), [amazon](<https://devfeed.tech/tags/amazon.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [data](<https://devfeed.tech/tags/data.md>), [data-lake](<https://devfeed.tech/tags/data-lake.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [databricks](<https://devfeed.tech/tags/databricks.md>), [delta-lake](<https://devfeed.tech/tags/delta-lake.md>), [emr](<https://devfeed.tech/tags/emr.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [parquet](<https://devfeed.tech/tags/parquet.md>), [pipelines](<https://devfeed.tech/tags/pipelines.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [s3](<https://devfeed.tech/tags/s3.md>), [scale](<https://devfeed.tech/tags/scale.md>), [storage](<https://devfeed.tech/tags/storage.md>)

### AI overview

Project Teleport is Block's cross-region Kafka data-processing system for integrating Afterpay's Sydney-hosted data lake into Block's US-based ecosystem. Built with Delta Lake, Spark on Databricks, and object storage, it supports migration of legacy pipelines and reduced cloud egress costs by USD 540,000 per year.

### Source excerpt

Teleport achieves efficient and reliable cross-region Kafka data processing at scale. Using this approach, Afterpay data team reduced cloud egress costs by USD 540,000 per year.

## Logging millions of requests reliably with our new data ingestion pipeline

DevFeed: [Logging millions of requests reliably with our new data ingestion pipeline](<https://devfeed.tech/articles/logging-millions-of-requests-reliably-with-our-new-data-ingestion-pipeline-20018.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2022/07/01/logging-millions-of-requests-reliably-with-our-new-data-ingestion-pipeline/>)

Published: 2022-07-01T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [Logging](<https://devfeed.tech/topics/logging.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [log management](<https://devfeed.tech/topics/log-management.md>), [real-time](<https://devfeed.tech/topics/real-time.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Security](<https://devfeed.tech/topics/security.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>)

Tags: [analytics](<https://devfeed.tech/tags/analytics.md>), [aws](<https://devfeed.tech/tags/aws.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [logging](<https://devfeed.tech/tags/logging.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

HackerEarth describes redesigning its request-logging architecture to reliably ingest millions of HTTP/HTTPS requests in near real time. The new pipeline uses Kinesis Firehose data streams to deliver compressed and encrypted data from web servers to Amazon Redshift, reducing operational overhead and infrastructure cost while providing retries and delivery within 10-15 minutes.

### Source excerpt

Introduction HackerEarth handles millions of requests every day. To understand the user access patterns, get the usage of any particular feature or a page, figure out the daily active users or users who have been active for the past 6 months, etc in near real time, it is important to stream that data from across different services and ingest it to the analytics pipeline reliably. Problem Our old request logging architecture was complex and has many moving components. There were a lot of operational overheads involved in maintaining and scaling each of those components independently to ensure that all the self-hosted components were up and running all the time. Architecture Solution Last year, we revamped the way we log our web requests. It was done mainly to increase the reliability in logging the HTTP/HTTPS request data from across web services and also to reduce the operational overheads and the infrastructure cost associated with it. The new flow is making use of Kinesis Firehose data streams to deliver the request data from our web servers to Redshift (the database that we use to log and query request data) reliably with much lower cost. Amazon Kinesis Firehose is a fully managed service that automatically scales to match the throughput of our incoming request log data and requires no ongoing administration. It also allows us to compress and encrypt the data before loading it, minimizing the amount of storage used at the destination with increased security and we only need to pay for the amount of data we transmit through the service. The new flow is a fully managed solution with almost no operational overhead. We tried to keep the flow simple and straightforward with less number of moving components. The request data is now guaranteed to appear in the Redshift table within 10-15 minutes from the point we received a request at our web server's end. There are retries configured between consecutive infra components in the new flow to make sure there are no message

## Teleport 6.2 - Redshift, Listing Databases, and K8S in the UI

DevFeed: [Teleport 6.2 - Redshift, Listing Databases, and K8S in the UI](<https://devfeed.tech/articles/teleport-6-2-redshift-listing-databases-and-k8s-in-the-ui-29905.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/teleport-6-2/>)

Author: ben@goteleport.com (Ben Arent)

Published: 2021-05-27T00:00:00Z

Content type: release

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Kubernetes clusters](<https://devfeed.tech/topics/kubernetes-clusters.md>), [Grafana](<https://devfeed.tech/topics/grafana.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [Jenkins](<https://devfeed.tech/topics/jenkins.md>)

Tags: [amazon-redshift](<https://devfeed.tech/tags/amazon-redshift.md>), [databases](<https://devfeed.tech/tags/databases.md>), [grafana](<https://devfeed.tech/tags/grafana.md>), [jenkins](<https://devfeed.tech/tags/jenkins.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [kubernetes-clusters](<https://devfeed.tech/tags/kubernetes-clusters.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [release](<https://devfeed.tech/tags/release.md>)

### AI overview

Teleport 6.2 is a release with improvements to Application Access, Kubernetes Access, Database Access, Server Access, and Trusted Clusters. It adds Amazon Redshift support, database and Kubernetes cluster listing in the UI, pass-through headers, native JWT authentication for Grafana, and other fixes.

### Source excerpt

Teleport 6.2 brings enhancements across the board, including the ability to list Databases and Kubernetes Clusters in Teleport and Amazon Redshift support.

## Let me automate that for you II, Electric Bugaloo

DevFeed: [Let me automate that for you II, Electric Bugaloo](<https://devfeed.tech/articles/let-me-automate-that-for-you-ii-electric-bugaloo-19838.md>)

Original publisher: [Read original article](<https://tech.gc.com/let-me-automate-that-for-you-ii-electric-bugaloo/>)

Author: GameChanger

Published: 2021-05-07T18:29:38Z

Content type: article

Language: en

Sources: [GameChanger](<https://devfeed.tech/sources/gamechanger.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [Structured-data](<https://devfeed.tech/topics/structured-data.md>), [Script](<https://devfeed.tech/topics/script.md>), [Slack](<https://devfeed.tech/topics/slack.md>), [Documentation](<https://devfeed.tech/topics/documentation.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [building](<https://devfeed.tech/tags/building.md>), [data](<https://devfeed.tech/tags/data.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [github](<https://devfeed.tech/tags/github.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [reactive](<https://devfeed.tech/tags/reactive.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [sql](<https://devfeed.tech/tags/sql.md>), [systems](<https://devfeed.tech/tags/systems.md>), [warehouse](<https://devfeed.tech/tags/warehouse.md>)

### AI overview

The article describes evolving an embedded SQL generator and related scripts into a standalone SQL producer for warehouse schema and table management. The system generates SQL migrations, creates or updates tables, optimizes table performance, documents proposed changes, opens pull requests, and notifies engineers in Slack for review. The article also discusses limitations of the reactive original implementation and outlines the design of the improved system.

### Source excerpt

Improving our original, embedded SQL generator and some related scripts by converting them to a better, long term, stand alone SQL producer that's faster, more reliable, and more obvious. About seventeen years ago, in 2019, I published my blog post "Let me automate that for you" about a design for automating creating warehouse tables based on schemas for new event data. The idea was when our ETL system couldn't load waiting data into a warehouse table (as there was no table to be found), it would look up the schema for that data, convert the schema to a SQL statement, then issue a PR to the repo where SQL migrations for such needs are kept. Eventually creating tables made a friend, updating tables when there was a mismatch between the schema of the data we were loading and the schema of the table in the warehouse, and a third buddy joined the part, optimizing a table to improve its performance. The system had some absolutely great qualities: it automated acting on errors it saw, it generated great documentation in the PR and the SQL statement (with comments for discussions and places to review more closely), and it posted to Slack to let engineers know that there was something for them to do a final review on. However... it wasn't perfect. Reading is going toward something that is about to be, and no one yet knows what it will be. [1] Let me take you through the evolution of our embedded SQL generator to stand-alone SQL producer. Limitations of previous implementation Opportunities to build it better Building blocks of a stand-alone SQL producer Joining the human needs with the computer's logic Detailed breakdown of the services available Troubleshooting live Final thoughts Appendix A: Redshift optimization queries Appendix B: select Github logic Limitations of previous implementation While the SQL generator eased so much work for so many different people in the company, it had some... strange caveats, shall we say. Some were more noticable than others but all were, in

## From pipeline to beyond

DevFeed: [From pipeline to beyond](<https://devfeed.tech/articles/from-pipeline-to-beyond-19833.md>)

Original publisher: [Read original article](<https://tech.gc.com/from-pipeline-to-beyond/>)

Author: GameChanger

Published: 2021-05-05T09:00:18Z

Content type: article

Language: en

Sources: [GameChanger](<https://devfeed.tech/sources/gamechanger.md>)

Topics: [Kafka](<https://devfeed.tech/topics/kafka.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [data](<https://devfeed.tech/topics/data.md>), [streaming-data-processing](<https://devfeed.tech/topics/streaming-data-processing.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [analysis](<https://devfeed.tech/tags/analysis.md>), [backend](<https://devfeed.tech/tags/backend.md>), [consul](<https://devfeed.tech/tags/consul.md>), [data](<https://devfeed.tech/tags/data.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [s3](<https://devfeed.tech/tags/s3.md>), [terraform](<https://devfeed.tech/tags/terraform.md>), [warehouse](<https://devfeed.tech/tags/warehouse.md>)

### AI overview

The article examines options for moving data out of Kafka into a data warehouse and archive. It discusses off-the-shelf tools such as Kafka Connect, Secor, and Gobblin, the limitations encountered, and the development of a custom solution. The requirements include preserving Avro data and schemas, writing to S3, and partitioning data by processing time or event time.

### Source excerpt

An overview of off-the-shelf solutions for moving data out of Kafka, problems we had making those systems work, and how we wrote our own solution and stood it up for those in a similar situation. You cannot know everything a system will be used for when you start: it is only at the end of its life you can have such certainty. [1] Many moons ago I wrote about our design for upgrading our data pipeline, which lightly touched on how we'd move data out of our pipeline (Kafka) to downstream systems, namely our data warehouse and data archive. At that time we hadn't really been able to dive into focusing on getting the data out of Kafka, because getting data in to Kafka is often much more custom and complex, and we thought we'd be able to use an off the shelf solution like Kafka Connect to move data out, don't even worry about it. We were, uh -- we were wrong. Let me take you on our journey, in case you're on this journey too. The problem space Solution 1: Kafka Connect Solution 2: Secor or Gobblin Solution 3: we'll do this ourselves Tangent: naming things How you can do this yourselves, code edition How you can do this yourselves, infrastructure and metrics edition Takeaways The problem space Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis. [4] At a high level, the problem we needed a solution for was as follows: Data enters the data pipeline from numerous backend systems. This crossover point is producers into the pipeline, which we'd already implemented. Data from the data pipeline needs to move into the data warehouse and the data archive. This crossover point would be a consumer on the pipeline. Ideally we'd like the same consumer for both needs that we can simply configure differently. We want to preserve our data's Avro format along side its schemas. This would allow every system that interacts with the data to use the same language. We want to write our data to S3. data warehouse: This will be our

## Crash Course to Redshift

DevFeed: [Crash Course to Redshift](<https://devfeed.tech/articles/crash-course-to-redshift-19828.md>)

Original publisher: [Read original article](<https://tech.gc.com/crash-course-to-redshift/>)

Author: GameChanger

Published: 2020-03-30T14:36:13Z

Content type: tutorial

Language: en

Sources: [GameChanger](<https://devfeed.tech/sources/gamechanger.md>)

Topics: [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [data](<https://devfeed.tech/topics/data.md>), [IO](<https://devfeed.tech/topics/io.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [Development](<https://devfeed.tech/topics/development.md>), [debugging](<https://devfeed.tech/topics/debugging.md>)

Tags: [data](<https://devfeed.tech/tags/data.md>), [database](<https://devfeed.tech/tags/database.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [development](<https://devfeed.tech/tags/development.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [io](<https://devfeed.tech/tags/io.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [scale](<https://devfeed.tech/tags/scale.md>), [warehouse](<https://devfeed.tech/tags/warehouse.md>)

### AI overview

A crash course to Amazon Redshift that introduces its database architecture, large-scale table design considerations, data distribution, data loading, debugging, and query-performance optimization.

### Source excerpt

Redshift. It can store insane amounts of data. It can also store insane amounts of surprises, considerations, new ideas to learn, skewed tables to fix, distributions to get in line, what's a WLM, what am I doing‽ This post is meant to give you a crash course into working with Redshift, to get you off and running until you have the time and resources to come back and internalize what it all means. This is by no means a comprehensive review of Redshift, as then it'd no longer be a crash course, nor does this dive into data warehousing specifics, which I can cover in another post if people want. At a high level what I'll be covering is: Introduction to Redshift Table design Table analysis Data loading Debugging The vast majority of this post actually comes from our internal documentation, so you can trust that we do use this to help educate those less familiar with Redshift, and get them ramped up and feeling comfortable. Introduction to Redshift On Redshift The Redshift database will behave like other databases you've encountered, but under the hood it has some extra considerations to take into account. The main difference between Redshift and most other databases you'll have encountered is due to scale, with the cluster being important to keep in mind in table design along with standard table design considerations. And since the scale is so much larger, the impact of IO can go up considerably, especially if the cluster needs to move or share data to perform a query. The reasons for this and how to best avoid these inefficiencies are detailed below. More on Redshift database development here. On distributing data Within a Redshift cluster, there is a leader node and many compute nodes. The leader node helps orchestrate the work the compute nodes do. For example, if a query is operating only on data from May of 2017, and all of that data is stored on a single compute node, the leader only needs that node to perform the work. If instead a query is operating on data from

## ETL job processing with Serverless, Lambda, and AWS Redshift

DevFeed: [ETL job processing with Serverless, Lambda, and AWS Redshift](<https://devfeed.tech/articles/etl-job-processing-with-serverless-lambda-and-aws-redshift-14171.md>)

Original publisher: [Read original article](<https://www.serverless.com/blog/etl-job-processing-with-serverless-lambda-and-redshift>)

Author: Rupak Ganguly

Published: 2018-02-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Serverless Blog](<https://devfeed.tech/sources/serverless-blog.md>)

Topics: [Serverless](<https://devfeed.tech/topics/serverless.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [API](<https://devfeed.tech/topics/api.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [aws](<https://devfeed.tech/tags/aws.md>), [aws-lambda](<https://devfeed.tech/tags/aws-lambda.md>), [cloud-computing](<https://devfeed.tech/tags/cloud-computing.md>), [data](<https://devfeed.tech/tags/data.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [etl](<https://devfeed.tech/tags/etl.md>), [faas](<https://devfeed.tech/tags/faas.md>), [function-as-a-service](<https://devfeed.tech/tags/function-as-a-service.md>), [infrastructure-as-code](<https://devfeed.tech/tags/infrastructure-as-code.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [serverless-architecture](<https://devfeed.tech/tags/serverless-architecture.md>), [serverless-framework](<https://devfeed.tech/tags/serverless-framework.md>)

### AI overview

The article describes building an ETL job service that fetches data from a public API endpoint and stores it in an AWS Redshift database.

### Source excerpt

Build an ETL job service by fetching data from a public API endpoint and dumping it into an AWS Redshift database.

## Faster Snowflake Queries through Clustering

DevFeed: [Faster Snowflake Queries through Clustering](<https://devfeed.tech/articles/faster-snowflake-queries-through-clustering-28626.md>)

Original publisher: [Read original article](<https://eng.localytics.com/faster-snowflake-queries-through-clustering/>)

Author: Michal Klos

Published: 2017-03-13T14:17:01Z

Content type: article

Language: en

Sources: [Localytics](<https://devfeed.tech/sources/localytics.md>)

Topics: [data-processing](<https://devfeed.tech/topics/data-processing.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Query (disambiguation)](<https://devfeed.tech/topics/query.md>), [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>)

Tags: [clustering](<https://devfeed.tech/tags/clustering.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [database](<https://devfeed.tech/tags/database.md>), [databases](<https://devfeed.tech/tags/databases.md>), [join](<https://devfeed.tech/tags/join.md>), [mpp](<https://devfeed.tech/tags/mpp.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [partitioning](<https://devfeed.tech/tags/partitioning.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [s3](<https://devfeed.tech/tags/s3.md>), [scale](<https://devfeed.tech/tags/scale.md>), [snowflake](<https://devfeed.tech/tags/snowflake.md>), [time-series](<https://devfeed.tech/tags/time-series.md>)

### AI overview

This article explains how Snowflake clustering and re-clustering can improve query performance by helping the query engine prune unneeded data. It discusses choosing cluster keys, comparisons with MPP database techniques, and the caveat that naturally ordered time-series data may not need clustering.

### Source excerpt

At Localytics we have petabytes of data that needs to be served at low latencies and we use Snowflake in our mix of data processing technologies. Snowflake, like many other MPP databases, has a way of partitioning data to optimize read-time performance by allowing the query engine to prune

## Speeding things up with Redshift

DevFeed: [Speeding things up with Redshift](<https://devfeed.tech/articles/speeding-things-up-with-redshift-19701.md>)

Original publisher: [Read original article](<https://word.bitly.com/post/48854093418>)

Author: Wordbitly

Published: 2013-04-25T14:30:19Z

Content type: opinion

Language: en

Sources: [Bitly](<https://devfeed.tech/sources/bitly.md>)

Topics: [Amazon Redshift](<https://devfeed.tech/topics/amazon-redshift.md>), [Data analysis](<https://devfeed.tech/topics/data-analysis.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Hadoop](<https://devfeed.tech/topics/hadoop.md>), [Python](<https://devfeed.tech/topics/python.md>), [amazon](<https://devfeed.tech/topics/amazon.md>)

Tags: [amazon](<https://devfeed.tech/tags/amazon.md>), [analysis](<https://devfeed.tech/tags/analysis.md>), [data-analysis](<https://devfeed.tech/tags/data-analysis.md>), [gotchas](<https://devfeed.tech/tags/gotchas.md>), [hadoop](<https://devfeed.tech/tags/hadoop.md>), [python](<https://devfeed.tech/tags/python.md>), [redshift](<https://devfeed.tech/tags/redshift.md>), [speed](<https://devfeed.tech/tags/speed.md>), [sql](<https://devfeed.tech/tags/sql.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

The article describes bitly's experience using Amazon Redshift to speed up ad hoc analysis of large volumes of click data. It contrasts Redshift SQL queries with a slower Hadoop and Python MapReduce workflow, reporting answers within minutes or seconds and an overall positive experience, while noting some gotchas.

### Source excerpt

Recently we've started to experiment with using Redshift, Amazon's new data warehousing service. More specifically, we're using it to speed up and expand our ad hoc data analysis. The Challenge bitly sees billions of clicks and shortens each month. Often we have various questions about the data generated from this activity. Sometimes these questions are driven by business needs (how much traffic do we see from a potential enterprise customer), sometimes they are more technically driven (how much traffic will a new sub-system need to deal with), and sometimes we like to just have fun (what are the top trashy celeb stories this week). Unfortunately, when working with that volume of data it can be pretty difficult to do much of anything quickly. Pre-Redshift, all of these questions were answered by writing map-reduce jobs to be run on our Hadoop cluster or on Amazon's EMR. Whenever we wanted to answer a question with our data, the process would look something like this: Write map-reduce job in Python Run it on some local test data Fix bugs. Run it on the Hadoop cluster Wait 20-30 minutes for results Get an error back from Hadoop Dig through the logs to find the error. GOTO 3 This is clearly not ideal when all you want to do is get a simple count. For a lot of the work we do Hadoop + Python make for an awesome combination, but for these ad hoc aggregation queries they're very blunt instruments. In both cases, they are general purpose tools that are super flexible, but slow and difficult to use for this specific use case. Redshift, on the other hand, is specifically built and optimized for doing aggregation queries over large sets of data. When we want to answer a question with Redshift, we just write a SQL query and get an answer within a few minutes--if not seconds. Overall, our experience with Redshift has been a positive one but we have run into some gotchas that we'll get into below. The Good News User Experience From a user perspective, we're really happy with Redsh