Amazon Redshift Data API란
·
Data Engineering/AWS
들어가며일반적으로 애플리케이션에서 Redshift에 SQL을 실행하려면 JDBC나 ODBC 드라이버를 이용하여 데이터베이스와 연결(Connection)을 생성해야 합니다. 하지만 서버리스 환경이나 Lambda와 같이 짧은 시간 동안 실행되는 서비스에서는 매번 데이터베이스 연결을 생성하고 관리하는 것이 번거롭고 비효율적일 수 있습니다. 이를 해결하기 위해 AWS에서는 Amazon Redshift Data API를 제공합니다. Redshift Data API는 HTTP 기반 API를 통해 데이터베이스 연결 없이 Redshift에서 SQL을 실행할 수 있는 기능입니다.1. Redshift Data API란?Redshift Data API는 HTTP 요청만으로 Amazon Redshift에 SQL을 실행할 수 ..
Amazon Redshift - Materialized View, Data Sharing, Lambda UDF
·
Data Engineering/AWS
들어가며Amazon Redshift는 단순히 대용량 데이터를 저장하고 분석하는 데이터 웨어하우스를 넘어, 반복적인 조회 성능 향상, 클러스터 간 데이터 공유, 외부 서비스 연동과 같은 다양한 기능을 제공합니다. 이번 글에서는 Materialized View, Data Sharing, Lambda UDF를 중심으로 각각의 개념과 활용 방법을 알아보겠습니다.1. Materialized View란?Materialized View는 SQL 실행 결과를 실제로 저장하는 View입니다. 일반 View는 조회할 때마다 SQL을 다시 실행하지만, Materialized View는 미리 계산된 결과를 저장하기 때문에 훨씬 빠르게 조회할 수 있습니다.2. View는 실제 테이블일까?처음 View를 접하면 새로운 테이블이 ..
Amazon Redshift Serverless란
·
Data Engineering/AWS
들어가며기존 Amazon Redshift는 클러스터를 직접 생성하고 Compute Node와 스토리지를 관리해야 했습니다. 데이터 분석 규모가 커질수록 노드 수를 조정하거나 클러스터를 관리해야 했기 때문에 운영 부담이 존재했습니다. 이러한 관리 부담을 줄이기 위해 AWS에서는 Amazon Redshift Serverless를 제공합니다. Redshift Serverless는 서버를 직접 생성하거나 관리하지 않아도 SQL 기반 데이터 분석을 수행할 수 있는 완전관리형(Serverless) 데이터 웨어하우스입니다. 사용자는 클러스터를 관리하는 대신 데이터 분석에만 집중할 수 있으며, 사용한 만큼만 비용을 지불합니다.1. Redshift Serverless란?Redshift Serverless는 클러스터를 직..
Amazon Redshift - WLM, VACUUM, SQA
·
Data Engineering/AWS
들어가며Amazon Redshift는 대규모 데이터를 빠르게 분석할 수 있도록 설계된 데이터 웨어하우스입니다. 하지만 데이터가 증가하고 동시에 여러 사용자가 SQL을 실행하면 적절한 리소스 관리와 데이터 유지 관리가 필요합니다. 이번 글에서는 Redshift를 운영할 때 자주 사용되는 Workload Management(WLM), VACUUM, Short Query Acceleration(SQA)에 대해 알아보겠습니다.1. Workload Management(WLM)이란?Workload Management(WLM)은 동시에 실행되는 SQL을 관리하고 컴퓨팅 자원을 효율적으로 분배하는 기능입니다.여러 사용자가 동시에 Redshift에 SQL을 실행하면 모든 쿼리를 한 번에 처리할 수 없습니다.이때 WLM은..
Amazon Redshift - Distribution Style 이해
·
Data Engineering/AWS
들어가며Amazon Redshift는 여러 Compute Node가 동시에 데이터를 처리하는 MPP(Massively Parallel Processing) 구조를 사용합니다. 하지만 데이터를 무작위로 저장하면 JOIN을 수행할 때 노드 간 데이터 이동(Network Shuffle)이 발생하여 성능이 크게 저하될 수 있습니다. 따라서 Redshift에서는 데이터를 각 Compute Node에 어떤 기준으로 저장할지 결정하는 Distribution Style을 제공합니다.이번 글에서는 Distribution Style의 개념과 AUTO, EVEN, KEY, ALL 방식의 차이점을 살펴보겠습니다.1. Distribution Style이란?Distribution Style은 테이블의 데이터를 여러 Compute..
Amazon Redshift - Spectrum, Durability, Scaling
·
Data Engineering/AWS
들어가며이전 글에서는 Amazon Redshift의 기본 개념과 데이터 웨어하우스의 역할, 그리고 OLAP 서비스와 Redshift 아키텍처를 살펴보았습니다. 이번 글에서는 Redshift를 실제 운영할 때 자주 접하게 되는 기능인 Redshift Spectrum, Durability(내구성), Scaling(확장)에 대해 알아보겠습니다. 특히 대용량 데이터를 어떻게 효율적으로 조회하고, 장애 상황에서도 데이터를 안전하게 보호하며, 증가하는 분석 요청에 대응하는지 중심으로 살펴보겠습니다.1. Redshift Spectrum이란?Amazon Redshift Spectrum은 S3에 저장된 데이터를 Redshift로 적재하지 않고도 SQL로 직접 조회할 수 있는 기능입니다.일반적으로 데이터를 분석하려면 먼저..
Amazon Redshift란?
·
Data Engineering/AWS
들어가며기업에서는 서비스가 운영될수록 주문 데이터, 로그 데이터, 사용자 행동 데이터 등 다양한 데이터가 지속적으로 생성됩니다. 이러한 데이터를 단순히 저장하는 것만으로는 의미가 없으며, 대량의 데이터를 빠르게 분석하여 비즈니스 의사결정에 활용하는 것이 중요합니다. 하지만 일반적인 관계형 데이터베이스(RDS)는 서비스 운영(OLTP)에 최적화되어 있기 때문에 수억 건 이상의 데이터를 분석하는 작업에는 한계가 있습니다. 이러한 문제를 해결하기 위해 AWS에서는 Amazon Redshift를 제공합니다. 이번 글에서는 Amazon Redshift의 개념과 데이터 웨어하우스의 역할, OLAP 서비스의 의미, 그리고 Redshift 아키텍처까지 함께 살펴보겠습니다.1. Amazon Redshift란?Amazon..