1

Microsoft Azure Data Warehouse를 기반으로 실시간보고 서비스를 구축하려고합니다. 현재 약 5TB의 데이터가있는 SQL 서버가 있습니다. 데이터웨어 하우스에 데이터를 스트리밍하고 Azure DW의 계산 기능을 사용하여 데이터를 기반으로 실시간보고를 생성합니다. 이를 수행하기 위해 최선의 방법을 사용할 준비가 되었습니까?SQL 서버에서 Azure Datawarehouse로 실시간 스트리밍 데이터

내가 고려한 한 가지 접근법은 카프카에 데이터를로드 한 다음 스파크 스트리밍을 통해 Azure DW로 스트리밍하는 것입니다. 그러나이 접근법은 실시간보다 더 실시간에 가깝습니다. SQL Server 변경 데이터 캡처를 사용하여 데이터를 데이터웨어 하우스로 스트리밍하는 방법이 있습니까?

+0

"실시간"을 어떻게 정의하고 있습니까? 실제 대기 시간 요구 사항은 무엇입니까? –

+0

엔티티가 master db에 추가되거나 수정되는 즉시보고 데이터 저장소에 저장하려고합니다. – taffarel

답변

2

실시간 아키텍처에서 Azure SQL 데이터웨어 하우스를 개인적으로 보지는 않습니다. 여러 노드에 걸쳐 수십억 개의 행을 파쇄하기 위해 최적화 된 배치 MPP 시스템입니다. 이러한 패턴은 나의 초라한 견해로 잠깐이나 실시간 공연과 동의어가 아니다. 실시간 아키텍처는 Azure의 Event Hubs> Stream Analytics와 비슷한 경향이 있습니다. 사용 가능한 낮은 동시성 (즉, 최대 32 명의 동시 사용자)도보고에 적합하지 않습니다.

빠른로드를 위해 Azure SQL 데이터베이스 인 메모리 테이블을 고려한 다음 편리한 시점에웨어 하우스에 전달할 수도 있습니다.

Azure SQL 데이터웨어 하우스는 일괄 처리 스트림을 지원하는 배치 및 실시간 요소가있는 소위 람다 아키텍처에 있습니다. 추가 읽기 여기를 참조하십시오 :

https://social.technet.microsoft.com/wiki/contents/articles/33626.lambda-architecture-implementation-using-microsoft-azure.aspx

+0

SQL 데이터베이스와 함께 데이터웨어 하우스를 메모리 테이블에 사용한다는 아이디어가 흥미 롭습니다. 나는 Datawarehouse와 메모리 테이블을 사용하여 람다 아키텍처를 구현할 것이다. – taffarel

1

우리가 최근에 오픈 소스를 기반으로 Stride라는 HTTP API의 제품을 출시 전원 실시간보고 응용 프로그램에 대한 SQL 기반의 SaaS 솔루션을 찾고 있다면 스트리밍 SQL 데이터베이스 (PipelineDB)는 이러한 유형의 작업을 처리 할 수 ​​있습니다.

Stride API를 사용하면 개발자가 스트리밍 데이터에 대해 연속 SQL 쿼리를 실행하고 연속 데이터 쿼리의 결과를 새 데이터가 도착할 때 증분 업데이트되는 테이블에 저장할 수 있습니다. 이는 위에서 언급 한 실시간 분석 레이어 유형을 추가하는 간단한 방법 일 수 있습니다.

자세한 내용은 Stride technical docs을 확인하십시오.