Amazon Managed Service for Apache Flink FAQ
일반
모두 열기Amazon Managed Service for Apache Flink를 사용하면 Apache Flink를 통해 실시간으로 스트리밍 데이터를 변환하고 분석할 수 있습니다. Apache Flink는 데이터 스트림 처리를 위한 오픈 소스 프레임워크 및 엔진입니다. Amazon Managed Service for Apache Flink는 Apache Flink 애플리케이션을 빌드 및 관리하고 다른 AWS 서비스와 통합하는 데 따르는 복잡성을 줄여줍니다.
Amazon Managed Service for Apache Flink는 스트리밍 애플리케이션의 지속적 실행에 필요한 모든 작업을 처리하며, 수신 데이터의 볼륨과 처리량에 맞춰 자동으로 규모가 조정됩니다. Amazon Managed Service for Apache Flink를 사용하면 서버를 관리할 필요가 없고, 최소 요금이나 설치 비용도 없으며, 스트리밍 애플리케이션이 소비하는 리소스에 대해서만 결제하면 됩니다.
많은 사용 사례에 대해 Amazon Managed Service for Apache Flink를 사용하여 지속적으로 데이터를 처리하고 며칠 또는 몇 주가 아닌 몇 초 또는 몇 분 만에 인사이트를 얻을 수 있습니다. Amazon Managed Service for Apache Flink를 사용하면 로그 분석, 클릭스트림 분석, 사물 인터넷(IoT), 광고 기술, 게임 등을 위한 포괄적인 스트림 처리 애플리케이션을 신속하게 구축할 수 있습니다. 가장 일반적인 사용 사례 4가지로는 스트리밍 추출, 전환, 적재(ETL), 지속적 지표 생성, 반응형 실시간 분석 및 대화형 데이터 스트림 쿼리가 있습니다.
스트리밍 ETL
스트리밍 ETL 애플리케이션을 통해 실시간으로 데이터 레이크 또는 데이터 웨어하우스에 로드하기 전에 원시 데이터를 정리, 보강, 구성 및 변형하여 배치 ETL 단계를 절감 또는 제거할 수 있습니다. 이러한 애플리케이션은 제공 전에 작은 레코드를 더 큰 파일로 버퍼링하고, 스트림 및 테이블 간 정교한 조인을 수행할 수 있습니다. 예를 들어 Apache Kafka용 Amazon Managed Streaming (Amazon MSK) 에 저장된 IoT 센서 데이터를 지속적으로 읽고, 센서 유형별로 데이터를 구성하고, 중복 데이터를 제거하고, 지정된 스키마별로 데이터를 정규화한 다음, Amazon Simple Storage Service (Amazon S3) 에 데이터를 전송하는 애플리케이션을 구축할 수 있습니다.
지속적 지표 생성
지속적 지표 생성 애플리케이션을 사용하면 시간에 따른 데이터의 추세를 모니터링 및 이해할 수 있습니다. 애플리케이션은 스트리밍 데이터를 중요 정보로 집계하고, 이를 보고 데이터베이스 및 모니터링 서비스와 원활하게 통합하여 애플리케이션과 사용자에게 실시간으로 서비스를 제공합니다. Amazon Managed Service for Apache Flink를 사용하면 Apache Flink 코드(Java, Scala, Python 또는 SQL)를 사용하여 기간에 따른 시계열 분석을 지속적으로 생성할 수 있습니다. 예를 들어 모바일 게임의 경우 1분 간격으로 상위 플레이어를 계산해서 Amazon DynamoDB로 전송하는 방법으로 라이브 순위표를 만들 수 있습니다. 또한 5분 간격으로 웹 사이트의 고유 방문자 수를 계산하고 처리된 결과를 Amazon Redshift에 전송함으로써 웹 사이트에 대한 트래픽을 추적할 수 있습니다.
반응형 실시간 분석
반응형 실시간 분석 애플리케이션은 특정 지표가 미리 정의된 임계값에 도달하는 경우 또는 고급 사례에서 애플리케이션이 기계 학습(ML) 알고리즘을 사용하여 이상을 탐지하는 경우 실시간 경보 또는 알림을 전송합니다. 이러한 애플리케이션을 사용하면 모바일 앱에서 사용자 이탈을 예측하고 저하된 시스템을 식별하는 등 실시간으로 비즈니스의 변화에 즉시 반응할 수 있습니다. 예를 들어 시간이 지나면서 애플리케이션이 고객 관련 API의 가용성 또는 성공률을 계산한 후, 결과를 Amazon CloudWatch로 전송할 수 있습니다. 특정 범주에 해당하는 이벤트를 찾은 후 Amazon Kinesis Data Streams 및 Amazon Simple Notification Service(SNS)를 사용하여 적절한 고객에게 자동으로 알림을 전송하도록 애플리케이션을 구축할 수도 있습니다.
대화형 데이터 스트림 분석
대화형 분석을 사용하면 스트리밍 데이터를 실시간으로 탐색할 수 있습니다. 임시 쿼리 또는 프로그램을 통해 Amazon MSK 또는 Amazon Kinesis Data Streams의 스트림을 검사하고 이러한 스트림 내의 데이터 형태를 시각화할 수 있습니다. 예를 들어 시간대별 평균을 계산하는 실시간 지표의 동작을 보고 선택한 대상으로 집계 데이터를 전송할 수 있습니다. 대화형 분석은 스트림 처리 애플리케이션의 반복 개발에도 도움이 됩니다. 구축하는 쿼리는 새 데이터가 도착할 때마다 지속적으로 업데이트됩니다. Amazon Managed Service for Apache Flink Studio를 사용하면 이러한 쿼리를 배포하여 Auto Scaling 및 내구성이 우수한 상태 백업이 활성화된 상태로 지속적으로 실행할 수 있습니다.
시작하기
모두 열기예. Amazon Managed Service for Apache Flink 애플리케이션에서 Apache Flink DataStream Connectors를 통해 AWS Glue의 서버리스 기능인 AWS Glue 스키마 레지스트리를 사용할 수 있습니다. Apache Kafka, Amazon MSK 및 Amazon Kinesis Data Streams를 싱크 또는 소스로 Amazon Managed Service for Apache Flink 워크로드와 통합할 수 있습니다. 시작하고 자세히 알아보려면 AWS Glue 스키마 레지스트리 개발자 안내서를 참조하십시오.
주요 개념
모두 열기애플리케이션은 사용자가 작업하는 Amazon Managed Service for Apache Flink 엔터티입니다. Amazon Managed Service for Apache Flink 애플리케이션은 실시간으로 스트리밍 데이터를 계속해서 읽고 처리합니다. 사용자는 Apache Flink 지원 언어를 사용하여 수신 스트리밍 데이터를 처리하고 출력을 생성하는 애플리케이션 코드를 작성합니다. 그러면 Amazon Managed Service for Apache Flink가 구성된 대상에 출력을 기록합니다.
각 애플리케이션은 3가지 기본 요소로 구성됩니다.
- 입력: 입력은 애플리케이션의 스트리밍 소스입니다. 입력 구성에서 스트리밍 소스를 데이터 스트림에 매핑합니다. 데이터는 데이터 소스에서 데이터 스트림으로 흐릅니다. 애플리케이션 코드를 사용하여 이러한 데이터 스트림에서 데이터를 처리하고, 처리된 데이터를 후속 데이터 스트림 또는 대상으로 전송합니다. Apache Flink 애플리케이션 및 Studio 노트북의 애플리케이션 코드 내에 또는 Amazon Managed Service for Apache Flink 애플리케이션용 API를 통해 입력을 추가합니다.
- 애플리케이션 코드: 애플리케이션 코드는 입력을 처리하고 출력을 생성하는 일련의 Apache Flink 연산자입니다. 가장 단순한 형태로 애플리케이션 코드는 스트리밍 소스와 연결된 데이터 스트림으로부터 읽고 출력과 연결된 다른 데이터 스트림에 쓰는 하나의 Apache Flink 연산자가 될 수 있습니다. Studio 노트북의 경우 이는 노트북 안의 컨텍스트에 결과가 표시되는 단순한 Flink SQL Select 쿼리가 될 수 있습니다. Amazon Managed Service for Apache Flink 애플리케이션 또는 Studio 노트북의 지원되는 언어로 Apache Flink 코드를 작성할 수 있습니다.
- 출력: 그런 다음, 선택 사항으로 데이터를 외부 대상에 유지하도록 애플리케이션 출력을 구성할 수 있습니다. Amazon Managed Service for Apache Flink 애플리케이션 및 Studio 노트북의 애플리케이션 코드 내부에 이러한 출력을 추가합니다.
애플리케이션 관리
모두 열기AWS는 Flink Dashboard for Apache Flink 애플리케이션에 대한 액세스를 포함하여 Amazon Managed Service for Apache Flink 애플리케이션을 모니터링하는 데 사용할 수 있는 다양한 도구를 제공합니다. 이러한 도구 중 일부를 구성하여 모니터링을 수행할 수 있습니다. 애플리케이션을 모니터링하는 방법에 대한 자세한 내용은 다음 개발자 안내서를 참조하세요.
Amazon Managed Service for Apache Flink가 애플리케이션에 지정되어 있는 스트리밍 데이터 소스에서 레코드를 읽기 위해서는 권한이 필요합니다. 또한 Amazon Managed Service for Apache Flink가 애플리케이션 출력을 애플리케이션 출력 구성에 지정된 대상으로 쓰기 위해서는 권한이 필요합니다. Amazon Managed Service for Apache Flink가 맡을 수 있는 AWS Identity and Access Management(IAM) 역할을 생성하여 이러한 권한을 부여할 수 있습니다. 이 역할에 부여하는 권한은 Amazon Managed Service for Apache Flink가 역할을 맡았을 때 수행할 수 있는 작업을 결정합니다. 자세한 내용은 다음 개발자 안내서를 참조하세요.
Amazon Managed Service for Apache Flink는 대부분의 시나리오에서 소스 스트림의 데이터 처리량과 쿼리의 복잡성을 수용할 수 있도록 애플리케이션을 탄력적으로 조정합니다. Amazon Managed Service for Apache Flink는 Amazon KPU의 형태로 용량을 프로비저닝합니다. 1개의 KPU는 1개의 vCPU와 4GB 메모리를 제공합니다.
Apache Flink 애플리케이션 및 Studio 노트북의 경우 Amazon Managed Service for Apache Flink는 KPU당 50GB의 실행 애플리케이션 스토리지를 할당합니다. 이 스토리지는 애플리케이션에서 체크포인트로 사용하고 임시 디스크를 통해 사용 가능합니다. 체크포인트는 실행 중인 애플리케이션의 최신 백업으로, 애플리케이션 중단으로부터 즉각적으로 복구할 때 사용됩니다. 또한 API의 Parallelism 및 ParallelismPerKPU 파라미터를 사용하여 Amazon Managed Service for Apache Flink 애플리케이션 작업의 병렬 실행(소스로부터 읽기 또는 연산자 실행)을 제어할 수 있습니다. Parallelism은 작업의 동시 인스턴스 수를 정의합니다. 모든 연산자, 소스 및 싱크는 정의된 병렬 처리를 실행하며, 기본값은 1입니다. ParallelismPerKPU는 애플리케이션의 KPU당 예약될 수 있는 병렬 작업의 수를 정의하며, 기본값은 1입니다. 자세한 내용은 Amazon Managed Service for Apache Flink 개발자 안내서의 규모 조정을 참조하세요.
Apache Flink의 모범 사례에 대한 자세한 내용은 Apache Flink용 Amazon 관리 서비스 개발자 안내서의 모범 사례 섹션을 참조하십시오. 이 섹션에서는 내결함성, 성능, 로깅, 코딩 등에 대한 모범 사례를 다룹니다.
Amazon Managed Service for Apache Flink Studio 모범 사례에 대한 자세한 내용은 Amazon Managed Service for Apache Flink Studio 개발자 안내서의 모범 사례 섹션을 참조하세요. 이 섹션에서는 모범 사례 외에 SQL, Python 및 Scala 애플리케이션의 샘플, 코드를 지속적으로 실행되는 스트림 처리 애플리케이션으로 배포할 때의 요구 사항, 성능, 로깅 및 기타 정보도 다룹니다.
예. Amazon VPC를 통해 리소스에 액세스할 수 있습니다. Apache Flink용 Amazon 관리 서비스 개발자 안내서의 Amazon VPC 사용 섹션에서 VPC 액세스를 위한 애플리케이션 구성 방법을 배울 수 있습니다.
특정 VPC의 리소스에 액세스하도록 구성된 Amazon Managed Service for Apache Flink 애플리케이션과 Amazon Managed Service for Apache Flink Studio 노트북은 기본 구성으로 인터넷에 액세스할 수 없습니다. 애플리케이션의 인터넷 액세스를 구성하는 방법은 Apache Flink용 Amazon 관리 서비스 개발자 안내서의 인터넷 및 서비스 액세스 섹션에서 확인할 수 있습니다.
요금 및 결제
모두 열기Amazon Managed Service for Apache Flink에서는 사용한 만큼만 요금을 지불합니다. Amazon Managed Service for Apache Flink에서는 리소스를 프로비저닝할 필요가 없고, 선결제 비용도 없습니다.
스트리밍 애플리케이션 실행에 사용하는 Amazon KPU의 개수에 따라 시간당 요금이 청구됩니다. 단일 KPU는 하나의 vCPU의 컴퓨팅 및 4GB의 메모리로 구성된 스트림 처리 용량 단위입니다. Amazon Managed Service for Apache Flink는 스트림 처리 애플리케이션의 요구에 따라 KPU의 수를 자동으로 조정합니다. 메모리 및 컴퓨팅 수요가 처리 복잡성과 처리된 스트리밍 데이터의 처리량에 따라 다르기 때문입니다.
Apache Flink 및 Apache Beam 애플리케이션의 경우 애플리케이션 오케스트레이션에 대해 애플리케이션당 단일 추가 KPU 요금이 청구됩니다. 또한 Apache Flink 및 Apache Beam 애플리케이션의 경우 실행 애플리케이션 스토리지 및 내구성 있는 애플리케이션 백업에 대해 요금이 청구됩니다. 실행 애플리케이션 스토리지는 Amazon Managed Service for Apache Flink의 상태 유지 처리 기능에 사용되며 GB/월 단위로 청구됩니다. 내구력이 뛰어난 애플리케이션 백업은 선택 사항으로, 월별 GB당 요금이 청구되고 애플리케이션에 대한 특정 시점 복구를 제공합니다.
Amazon Managed Service for Apache Flink Studio의 경우 개발 또는 대화형 모드에서 애플리케이션 오케스트레이션에 대한 추가 KPU 1개와 대화형 개발에 대한 KPU 1개에 대한 요금이 부과됩니다. 애플리케이션 스토리지 실행 요금도 부과됩니다. 내구성이 뛰어난 애플리케이션 백업에는 요금이 부과되지 않습니다.
자세한 요금 정보는 Apache Flink용 Amazon 관리 서비스 요금 페이지를 참조하십시오.
Apache Flink 및 Apache Beam 애플리케이션의 경우 Amazon Managed Service for Apache Flink 애플리케이션이 실행 중인 경우 최소 2개의 KPU와 50GB의 실행 중인 애플리케이션 스토리지에 대한 요금이 부과됩니다.
Amazon Managed Service for Apache Flink Studio 노트북에서 애플리케이션이 실행 중인 경우 최소 3개의 KPU와 50GB의 실행 애플리케이션 스토리지에 대한 요금이 부과됩니다.
Apache Flink 애플리케이션 구축
모두 열기Apache Flink는 스트림 및 배치 데이터 처리를 위한 오픈 소스 프레임워크이자 엔진입니다. 강력한 연산자를 제공하고 중복 처리와 같은 주요 스트리밍 문제를 해결하기 때문에 손쉬운 스트리밍 애플리케이션 구축이 가능합니다. Apache Flink는 데이터 스트림에 배포된 계산에 대한 데이터 배포, 커뮤니케이션 및 내결함성을 제공합니다.
먼저 AWS SDK, Apache Flink 및 AWS 서비스용 커넥터가 포함된 오픈 소스 라이브러리를 다운로드할 수 있습니다. Apache용 Amazon 관리 서비스 Flink용 개발자 안내서에서 라이브러리를 다운로드하고 첫 번째 애플리케이션을 생성하는 방법에 대한 지침을 확인하십시오.
데이터 스트림 및 스트림 연산자를 사용하여 Apache Flink 코드를 작성합니다. 애플리케이션 데이터 스트림은 코드 사용에 대한 처리를 수행하는 데이터 구조입니다. 데이터는 원본에서 애플리케이션 데이터 스트림으로 지속적으로 흐릅니다. 하나 이상의 스트림 연산자를 사용하여 변형, 파티션, 집계, 조인 및 윈도우를 포함한 애플리케이션 데이터 스트림의 처리를 정의합니다. 데이터 스트림 및 연산자는 연쇄 및 병렬 체인으로 연결될 수 있습니다. 의사 코드를 사용하는 간단한 예가 아래에 표시되어 있습니다.
DataStream <GameEvent> rawEvents = env.addSource(
New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId,
event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
.keyBy(1)
.window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
.apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
운영자는 애플리케이션 데이터 스트림을 입력으로 받아 처리된 데이터를 애플리케이션 데이터 스트림에 출력으로 보냅니다. 연산자는 여러 단계를 통해 애플리케이션을 구축하기 위해 연결될 수 있고, 구현 및 운영을 위해 분산 시스템에 대한 고급 지식은 필요하지 않습니다.
Amazon Managed Service for Apache Flink는 map, KeyBy, aggregations, windows, joins 등을 비롯하여, 다양한 사용 사례를 해결하는 데 사용할 수 있는 Apache Flink의 모든 연산자를 지원합니다. 예를 들어 map 연산자를 통해 임의 처리를 수행하고 수신 데이터 스트림으로부터 하나의 요소를 가져와 다른 요소로 생성할 수 있습니다. KeyBy는 유사한 데이터 지점을 함께 처리할 수 있도록 하는 특정 키를 사용하여 데이터를 논리적으로 구성합니다. Aggregations는 sum, min 및 max와 같은 여러 키에 걸친 처리를 수행합니다. Window Join은 두 데이터 스트림을 해당되는 키와 창에 조인합니다.
이러한 연산자가 요구에 맞지 않는 경우 사용자 지정 연산자를 만들 수 있습니다. Amazon Managed Service for Apache Flink 개발자 안내서의 연산자 섹션에서 더 많은 예를 확인할 수 있습니다. 아파치 플링크 연산자의 전체 목록은 아파치 플링크 문서에서 찾을 수 있습니다.
최소한의 코드를 사용하여 Apache Flink에서 제공되는 사전 구축된 통합을 설정하거나 자체 통합을 구축하여 실제로 모든 데이터 소스에 연결할 수 있습니다. Apache Flink 기반 오픈 소스 라이브러리는 데이터 처리 제공을 위해 스트리밍 소스 및 대상 또는 싱크를 지원합니다. 또한 비동기식 I/O 커넥터를 통한 데이터 보강 지원도 포함합니다. 다음은 이러한 커넥터 중 일부입니다.
- 스트리밍 데이터 소스: Amazon Managed Streaming for Apache Kafka(Amazon MSK), Amazon Kinesis Data Streams Destinations 또는 싱크: Amazon Kinesis Data Streams
- Amazon Kinesis Data Firehose, Amazon DynamoDB, Amazon Elasticsearch Service 및 Amazon S3(파일 싱크 통합을 통함)
예. Amazon Managed Service for Apache Flink 애플리케이션을 사용하여 Amazon Kinesis Data Streams, Amazon MSK 및 기타 시스템 간에 데이터를 복제할 수 있습니다. 설명서에 제공된 예시는 한 Amazon MSK 주제를 읽고 다른 주제에 쓰는 방법을 보여줍니다.
파일, 디렉터리, 소켓 또는 인터넷을 통해 액세스할 수 있는 항목으로부터 읽고 쓸 수 있도록 하는 프리미티브 세트에 구축하여 애플리케이션에 소스 또는 대상을 추가할 수 있습니다. Apache Flink는 데이터 소스 및 데이터 싱크에 대해 이러한 프리미티브를 제공합니다. 프리미티브에는 데이터를 지속적으로 또는 한 번, 동기식 또는 비동기식으로 읽고 쓰는 기능과 같은 구성이 포함되어 있습니다. 예를 들어 기존 파일 기반 소스 통합을 확장하여 Amazon S3로부터 지속적으로 읽는 애플리케이션을 설정할 수 있습니다.
Amazon Managed Service for Apache Flink의 Apache Flink 애플리케이션은 애플리케이션이 소스 및 싱크를 포함한 멱등적 연산자를 사용하여 구축된 경우 ‘정확히 1회’ 전송 모델을 사용합니다. 따라서 처리된 데이터는 단 한 번만 다운스트림 결과에 영향을 미칩니다.
기본적으로 Amazon Managed Service for Apache Flink 애플리케이션은 Apache Flink의 정확히 1회 의미 체계를 사용합니다. Apache Flink에서 정확히 1회 의미 체계를 활용하는 소스, 연산자 및 싱크를 사용하여 설계한 애플리케이션은 정확히 1회 처리 의미 체계를 지원합니다.
Amazon Managed Service for Apache Flink는 체크포인트 및 스냅샷을 사용하여 실행 중인 애플리케이션의 상태를 자동으로 백업합니다. 체크포인트는 현재 애플리케이션 상태를 저장하고, Amazon Managed Service for Apache Flink 애플리케이션에서 애플리케이션 위치를 복구하여 오류가 없는 실행과 동일한 의미 체계를 제공합니다. 체크포인트에는 실행 애플리케이션 스토리지가 사용됩니다. 아파치 플링크 애플리케이션의 체크포인트는 아파치 플링크의 체크포인트 기능을 통해 제공됩니다. 스냅샷은 애플리케이션의 특정 시점 복구 지점을 저장하며, 내구성이 뛰어난 애플리케이션 백업을 사용합니다. 스냅샷은 Flink 저장점과 유사합니다.
지원되는 Apache Flink 버전에 대해 자세히 알아보려면 Apache Flink용 Amazon 관리 서비스 릴리스 노트 페이지를 참조하십시오. 이 페이지에는 Amazon Managed Service for Apache Flink가 지원하는 Apache Beam, Java, Scala, Python 및 AWS SDK 버전도 포함되어 있습니다.
예. Apache Flink용 Amazon 관리 서비스는 Apache Beam을 사용하여 구축한 스트리밍 애플리케이션을 지원합니다. Java로 Apache Beam 스트리밍 애플리케이션을 구축하고 Amazon Managed Service for Apache Flink에서 Apache Flink를 사용하는 등 다양한 엔진 및 서비스에서 실행할 수 있습니다. 지원되는 아파치 플링크 및 아파치 빔 버전에 관한 정보는 아파치 플링크용 아마존 매니지드 서비스 개발자 안내서에서 찾을 수 있습니다.
관리형 노트북에 Amazon Managed Service for Apache Flink Studio 애플리케이션 구축
모두 열기Amazon Managed Service for Apache Flink Studio, Amazon Kinesis Data Streams 또는 Amazon MSK 콘솔에서 시작할 수 있습니다. 단 몇 단계로 서버리스 노트북을 시작하여 즉시 데이터 스트림을 쿼리하고 대화형 데이터 분석을 수행할 수 있습니다.
대화형 데이터 분석: 노트북에서 SQL, Python 또는 Scala로 코드를 작성하여 스트리밍 데이터와 상호 작용하고 쿼리 응답 시간을 초 단위로 단축할 수 있습니다. 내장된 시각화를 사용하여 노트북 안에서 데이터를 탐색하고 스트리밍 데이터에 대한 실시간 인사이트를 볼 수 있으며 Apache Flink로 구동되는 스트림 처리 애플리케이션을 개발할 수 있습니다.
코드를 프로덕션 애플리케이션으로 실행할 준비가 되면 한 단계로 서버 없이 초당 수 기가바이트 단위의 데이터를 처리하는 스트림 처리 애플리케이션으로 전환할 수 있습니다.
스트림 처리 애플리케이션: 코드를 프로덕션으로 승격할 준비가 되면 노트북 인터페이스에서 “스트림 처리 애플리케이션으로 배포”를 클릭하여 코드를 빌드하거나 CLI에서 단일 명령을 실행할 수 있습니다. Studio는 Amazon Managed Service for Apache Flink 애플리케이션에서처럼 Auto Scaling 및 내구성 있는 상태를 활성화하여 스트림 처리 애플리케이션을 대규모로 실행하는 데 필요한 모든 인프라 관리를 처리합니다.
다음과 같은 SQL 작업을 수행할 수 있습니다.
- 스캔 및 필터링(SELECT, WHERE)
- 집계(GROUP BY, GROUP BY WINDOW, HAVING)
- 설정(UNION, UNIONALL, INTERSECT, IN, EXISTS)
- 순서 지정(ORDER BY, LIMIT)
- 조인(INNER, OUTER, Timed Window - BETWEEN, AND, 임시 테이블에 조인 – 일정 기간 동안 변경 사항을 추적하는 테이블)
- 상위 N개
- 중복 제거
- 패턴 인식
GROUP BY, OUTER JOIN 및 상위 N개 항목과 같은 일부 쿼리는 스트리밍 데이터의 업데이트 결과입니다. 즉, 스트리밍 데이터가 처리되는 동안 결과가 지속적으로 업데이트됩니다. CREATE, ALTER 및 DROP과 같은 다른 DDL 문도 지원됩니다. 전체 쿼리 및 샘플 목록은 Apache Flink 쿼리 문서를 참조하십시오.
Apache Flink의 Table API는 Python 문자열 및 Scala 표현식을 사용하는 언어 통합을 통해 Python 및 Scala를 지원합니다. 지원되는 작업은 선택, 주문, 그룹화, 조인, 필터링 및 창 작업을 비롯하여 지원되는 SQL 작업과 매우 유사합니다. 전체 작업 및 샘플 목록은 개발자 안내서에 포함되어 있습니다.
지원되는 Apache Flink 버전에 대해 자세히 알아보려면 Apache Flink용 Amazon 관리 서비스 릴리스 노트 페이지를 참조하십시오. 이 페이지에는 Amazon Managed Service for Apache Flink가 지원하는 Apache Zeppelin, Apache Beam, Java, Scala, Python 및 AWS SDK 버전도 포함되어 있습니다.
- 데이터 소스: Amazon Managed Streaming for Apache Kafka(Amazon MSK), Amazon Kinesis Data Streams, Amazon S3
- 대상 또는 싱크: Amazon MSK, Amazon Kinesis Data Streams 및 Amazon S3
서비스 수준 계약
모두 열기같은 AWS 리전 내에서 작업을 실행하고 있는 하나 이상의 가용 영역의 월간 가동률이 월별 청구 주기 동안 99.9%보다 낮은 경우, Amazon Managed Service for Apache Flink SLA에 따라 Amazon Managed Service for Apache Flink의 SLA 서비스 크레딧 지급 대상이 됩니다. 모든 SLA 이용 약관에 대한 자세한 내용과 클레임 제출 방법에 대한 세부 정보는 Apache Flink용 Amazon 관리 서비스 SLA 세부 정보 페이지를 참조하십시오.
오늘 원하는 내용을 찾으셨나요?
페이지의 콘텐츠 품질을 개선할 수 있도록 피드백을 보내주십시오.