Amazon Data Firehose를 활용하면 스트리밍 데이터를 데이터 스토어와 분석 도구에 가장 쉽게 로드할 수 있습니다. Data Firehose는 수많은 소스에서 대량의 스트리밍 데이터를 손쉽게 캡처하고 변환하여 Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, Apache Iceberg 테이블, 일반 HTTP 엔드포인트와 Datadog, New Relic, MongoDB, Splunk 같은 서비스 제공업체에 로드할 수 있는 완전관리형 서비스로, 데이터를 거의 실시간으로 분석하여 인사이트를 확보할 수 있습니다.
Firehose 스트림
Firehose 스트림은 Firehose의 기본 엔터티입니다. Firehose를 사용할 때는 Firehose 스트림을 생성한 다음 데이터를 이 스트림으로 전송하면 됩니다.
주요 기능
간편한 시작 및 구성
AWS Management Console에서 클릭 몇 번으로 Amazon Data Firehose를 시작하고 전송 스트림을 생성하여 데이터를 Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, Apache Iceberg 테이블, HTTP 엔드포인트, Datadog, New Relic, MongoDB 또는 Splunk에 로드할 수 있습니다. Firehose API를 직접적으로 호출하거나 AWS에서 제공하는 Linux 에이전트를 데이터 소스에서 실행하여 데이터를 전송 스트림으로 전송할 수 있습니다. 그러면 Data Firehose가 데이터를 지정된 대상으로 계속해서 로드합니다.
탄력적 규모 조정을 통해 변화하는 데이터 처리량 해결
전송이 시작되면 Firehose 스트림이 자동으로 스케일 업되어 초당 기가바이트 이상의 입력 데이터를 처리하고 데이터 지연 시간을 한도 내에서 스트림에 지정한 수준으로 유지할 수 있습니다. 개입 또는 유지 관리가 필요하지 않습니다.
몇 초 안에 새 데이터 로드
배치 크기 또는 배치 간격을 지정하여 데이터가 대상에 업로드되는 데 걸리는 시간을 제어할 수 있습니다. 예를 들어 배치 간격을 0초~15분으로 설정할 수 있습니다. 또한 데이터의 압축 여부도 지정할 수 있습니다. 이 서비스는 GZip, Hadoop-Compatible Snappy, Zip, Snappy 등과 같은 일반적인 압축 알고리즘을 지원합니다. 업로드하기 전에 데이터를 배치 처리 및 압축하면 대상에서 새로운 데이터가 수신되는 속도를 제어할 수 있습니다.
다양한 데이터 소스 지원
Firehose는 Amazon MSK 및 MSK Serverless 클러스터, Amazon Kinesis Data Streams, Amazon CloudWatch Logs, Amazon SNS, AWS IoT Core 등 20개 이상의 데이터 소스의 데이터를 손쉽게 읽습니다.
Apache Parquet 또는 ORC 형식 변환
Firehose는 Apache Parquet 및 Apache ORC와 같은 열 기반 데이터 형식을 지원합니다. 이러한 형식은 Amazon Athena, Amazon Redshift Spectrum, Amazon EMR 및 기타 Hadoop 기반 도구와 같은 서비스를 사용하는 비용 효율적인 스토리지 및 분석에 최적화되어 있습니다. Firehose는 수신되는 데이터를 Amazon S3에 저장하기 전에 데이터 형식을 JSON에서 Parquet 또는 ORC 형식을 변환할 수 있으므로, 고객은 스토리지와 분석 비용을 절감할 수 있습니다.
S3에 분할된 데이터 전달
‘customer_id’ 또는 ‘transaction_id’와 같은 정적 또는 동적으로 정의된 키를 사용하여 스트리밍 데이터를 S3에 전달하기 전에 이러한 데이터를 동적으로 분할합니다. Firehose는 이러한 키별로 데이터를 그룹화하고 키 고유의 S3 접두사로 전달하므로, 사용자는 Athena, EMR 및 Redshift Spectrum을 사용하여 S3에서 고성능의 비용 효율적인 분석을 더욱 수월하게 수행할 수 있습니다. 자세히 알아보기 »
통합 데이터 변환
스트리밍 데이터가 데이터 스토어로 로드되기 전에 이를 준비하도록 Amazon Data Firehose를 구성할 수 있습니다. AWS Management Console의 Amazon Data Firehose 스트림 구성 탭에서 AWS Lambda 함수를 선택하기만 하면 됩니다. Amazon Data Firehose에서 해당 함수를 모든 입력 데이터 레코드에 자동으로 적용하고 변환된 데이터를 대상에 로드합니다. Amazon Data Firehose는 Apache 로그 및 시스템 로그와 같은 일반 데이터 소스를 JSON 및 CSV 형식으로 변환할 수 있도록 사전에 구축된 Lambda 청사진을 제공합니다. 이러한 사전에 구축된 청사진을 그대로 사용하거나, 추가로 사용자 지정하거나, 자체 사용자 지정 함수를 작성할 수 있습니다. 또한 실패한 작업을 자동으로 재시도하고 원시 스트리밍 데이터를 백업하도록 Amazon Data Firehose를 구성할 수도 있습니다. 자세히 알아보기 »
여러 데이터 대상을 지원
Firehose는 Amazon MSK 및 MSK Serverless 클러스터, Amazon Kinesis Data Streams, Amazon CloudWatch Logs, Amazon SNS, AWS IoT Core 등 20개 이상의 데이터 소스의 데이터를 손쉽게 읽습니다. Amazon Data Firehose는 현재 Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, Apache Iceberg 테이블, HTTP 엔드포인트, Datadog, New Relic, MongoDB, Splunk를 대상으로 지원합니다. 데이터를 로드할 대상으로 Amazon S3 버킷, Amazon Redshift 테이블, Amazon OpenSearch Service 도메인, 일반 HTTP 엔드포인트 또는 서비스 제공업체를 지정할 수 있습니다.
선택적 자동 암호화
Amazon Data Firehose는 데이터가 대상에 업로드된 후에 자동으로 암호화되도록 하는 옵션을 제공합니다. Firehose 스트림을 구성할 때 AWS Key Management System(KMS) 암호화 키를 지정할 수 있습니다.
성능 모니터링을 위한 지표
Amazon Data Firehose의 경우, 제출한 데이터의 볼륨, 대상에 업로드된 데이터의 볼륨, 소스에서 대상까지 걸린 시간, Firehose 스트림 한도, 제한된 레코드 수, 업로드 성공률 등 여러 지표를 콘솔과 Amazon CloudWatch에서 볼 수 있습니다.
사용량에 따른 요금
Amazon Data Firehose는 서비스를 통해 전송한 데이터 볼륨에 대한 요금만 부과하며, 해당하는 경우 데이터 형식 변환 비용이 추가됩니다. 또한 해당하는 경우 Amazon VPC 전송 및 데이터 전송 요금도 부과됩니다. 최소 요금이나 사전 약정은 없습니다. 인프라를 운영, 조정 및 유지 관리할 인력이나 스트리밍 데이터를 캡처 및 로드할 커스텀 애플리케이션이 필요 없습니다.
Amazon Data Firehose 요금에 대해 자세히 알아보기