0
  1. 여러 전달 스트림에 대해 하나의 s3 버킷을 설정하는 것이 좋습니다. (예 : 서로 다른 스트리밍 처리량, s3 버퍼 크기/버퍼 간격을 갖는 두 개의 전달 스트림을 고려하십시오.)AWS의 문제점 Firehose 중간 S3 버킷 및 전달 스트림 종속성

  2. 두 개의 전달 스트림 (S1, S2)이 데이터를 적색 변이로 라우팅하는 경우. S1은 T1에 데이터를 전달하고 S2는 T2로 데이터를 전달합니다. T2에는 T1에 외래 키 제약 조건이 있습니다. S2가 T2에 데이터 (D2)를 전달할 때 D2가 참조하는 T1의 모든 레코드가 이미 S1에 의해 전달되었다는 것을 보장 할 수 있습니까? (즉, 전달 스트림에 종속성이 있음)

BTW Firehose를 사용하여 애플리 케이션 로그를 분석을 위해 적색 변이로 푸시합니다.

답변

1
  1. S3 버킷은 실제 무한 데이터를 저장하도록 설계되었으므로 질문에 대한 대답은 틀림 없습니다.
  2. 외래 키를 정의 할 수 있지만 Redshift는 실제로 을 모두 적용하지 않습니다.. 문서 here,

고유성, 기본 키 및 외부 키 제한 조건에서 정보 만이다; Amazon Redshift에 의해 시행되지 않습니다. 그럼에도 불구하고 주 키와 외래 키가 계획 힌트로 사용되며 ETL 프로세스 또는 응용 프로그램의 다른 프로세스가 무결성을 적용 할 경우 이 선언되어야합니다.

0

가정 : T1 및 T2는 동일한 Redshift 클러스터의 테이블입니다.

원하는만큼 S3 버킷을 (사실상) 가질 수 있습니다. 두 개의 배달 스트림에 대해 동일한 S3 버킷을 사용하는 것은 좋지 않습니다. 데이터를 클러스터에로드하기 위해 Redshift에서 수행 한 COPY 명령이 두 배달 스트림 모두에 대해 동일한 Manifest 폴더를 조사하기 때문입니다.

아마존 운동성 파이어 호스 자주 묻는 질문에서

:

Q : 매니페스트 폴더 내 아마존 S3 버킷에 무엇입니까?

Amazon Redshift 대상의 경우 Amazon Kinesis Firehose가 Redshift 클러스터에 Amazon S3 객체를 일괄 적으로로드하는 매니페스트 파일을 생성합니다. manifests 폴더는 Firehose에서 생성 한 매니페스트 파일을 저장합니다.