Status | Authors | Coach | DRIs | Owning Stage | Created |
---|---|---|---|---|---|
proposed | - |
이 문서는 진행 중인 작업이며 Cells 디자인의 매우 초기 상태를 나타냅니다. 중요한 측면이 문서화되지 않았지만 나중에 추가할 것으로 예상됩니다. 이는 Cells에 대한 한 가지 가능한 아키텍처이며, 우리는 구현할 접근 방식을 결정하기 전에 이를 대안과 대조할 것을 의도하고 있습니다. 이 문서는 우리가 이 접근 방식을 선택하지 않기로 결정해도 그 이유를 문서화할 수 있도록 유지될 것입니다.
Cells: 데이터 파이프라인 데이터 입력
Cells 아키텍처는 현재 데이터 파이프라인 에 상당한 영향을 미칠 것으로 예상됩니다. 이 데이터 파이프라인은 Postgres에서 Snowflake로 데이터를 내보내어 데이터 분석에 사용됩니다. 이 데이터 파이프라인은 많은 사용 사례 (예: SAAS 서비스 핑, Gainsight 지표 및 SAAS 플랫폼의 보고 및 분석)를 충족합니다.
1. 정의
2. 데이터 흐름
현재 데이터 파이프라인은 CDC 메커니즘을 통해 데이터를 가져올 수 없다는 제한으로 인해 데이터 품질 문제가 발생하며, Postgres 데이터베이스를 폴링하고 새로운 및 업데이트된 레코드를 찾거나 특정 테이블의 데이터를 완전히 추출함으로써 작동합니다.
현재 데이터 파이프라인은 main
및 ci
데이터베이스의 스냅숏에서 생성된 두 인스턴스에서 실행됩니다.
이는 프로덕션 데이터베이스에 부하를 피하기 위해 수행됩니다. Cells 아키텍처에서는 현재의 파이프라인이 모든 Postgres 인스턴스에서 데이터를 가져오도록 확장될 수 없기 때문에 Postgres 인스턴스가 더 많아질 것입니다. 앞으로의 데이터 파이프라인에 대한 요구 사항은 다음과 같습니다.
- 모든 Cells에서 CDC(삽입, 업데이트 및 삭제)를 캡처할 수 있는 프로세스가 필요하며 N개의 Cells에 자동으로 확장되어야 합니다.
- 수요 사례에 따라 데이터의 catch-up을 할 수 있는 데이터베이스 인스턴스에 (직접 또는 간접적으로) 액세스할 수 있어야 합니다.
- 데이터 입력의 지연 사항을 경고하는 모니터링이 있어야 합니다.