다른 제작자의 Kinesis 스트림으로 들어오는 데이터가 있습니다. 데이터 유형에 따라 데이터를 여러 테이블로 변환해야합니다. 나는 Kinesis Streams에서 Lambda를 읽으려고하고 데이터를 다른 테이블로 변환 한 다음 Kinesis Firehose를 사용하여 Redshift로 배치하고 COPY합니다.하나의 Kinesis 스트림에서 Redshift의 여러 테이블로 데이터 스트리밍
그러나 Firehose는 한 번에 하나의 Redhsift 테이블에만 전달할 수 있기 때문에 Redhift 스키마에있는 테이블 수와 동일한 여러 Firehose 인스턴스를 실행해야합니다. 나는 영역 당 20 Firehose 인스턴스의 기본 뚜껑이 있고 이것이 내가 성취하려는 것을위한 이상적인 데이터 파이프 라인인지 궁금해하고 있습니다.
Kinesis Analystics Application을 사용하여 스트림의 사전 처리를 수행하고이를 여러 스트림으로 분할 할 수 있습니까? 대상 스트림을 Redshift로 이동시키는 Kinesis Firehose를 만들 수있는 것처럼 보입니다. http://docs.aws.amazon.com/kinesisanalytics/latest/dev/app-tworecordtypes.html – Nathan
@Nathan - 제안 해 주셔서 감사합니다. 흥미 롭긴하지만 이것은 Kinesis Firehose의 다중 인스턴스 사용 문제를 해결하지 못합니다. 스키마의 테이블 개수만큼 많은 Firehose 인스턴스가 필요합니다. 둘째, 필자의 데이터 변환은 타사 라이브러리를 사용하여 복잡한 변환을 수행 할 수 있기 때문에 파이썬/자바 스크립트로 원시 SQL에 비해 작성하는 것이 더 적합합니다. –
원본 스트림을 먼저 스테이지 테이블에로드 한 다음 Redshift에서 분할하거나 스트림을 분할하지 않고 하나의 스트림을 사용하지 않고 단일 스트림에서 여러 개의 Redshift 테이블을 채우는 방법을 찾지는 않을 것입니다 표. Redshift는 필수 요건입니까? 아마 아테나는 대안인가? – Nathan