Azure Synapse Analytics를 사용하여 데이터 통합 및 분석 솔루션 디자인
Azure Synapse Analytics는 빅 데이터 분석, 엔터프라이즈 데이터 스토리지 및 데이터 통합의 기능을 결합합니다. 이 서비스를 사용하면 서버리스 데이터 또는 대규모 데이터에 대한 쿼리를 실행할 수 있습니다. Azure Synapse는 데이터 수집, 탐색, 변환 및 관리를 지원하고 모든 BI 및 기계 학습 요구 사항에 대한 분석을 지원합니다.
Azure Synapse Analytics에 대해 알아야 할 사항
Azure Synapse Analytics는 MPP(대규모 병렬 처리) 아키텍처를 구현하며 다음과 같은 특성을 가집니다.
Azure Synapse Analytics 아키텍처에는 제어 노드와 컴퓨팅 노드 풀이 포함됩니다.
제어 노드는 아키텍처의 두뇌입니다. 모든 애플리케이션과 상호 작용하는 프런트 엔드입니다. 컴퓨팅 노드는 컴퓨팅 성능을 제공합니다. 처리할 데이터는 노드 전체에 고르게 배포됩니다.
Transact-SQL 문 형태로 쿼리를 제출하면 Azure Synapse Analytics에서 쿼리를 실행합니다.
Azure Synapse는 관계형 및 비관계형 원본에서 데이터를 검색하고 쿼리할 수 있는 PolyBase라는 기술을 사용합니다. Azure Synapse 서비스 내에 SQL 테이블에서 읽은 데이터를 저장할 수 있습니다.
Azure Synapse Analytics의 구성 요소
Azure Synapse Analytics는 다음과 같은 다섯 가지 요소로 구성됩니다.
- Azure Synapse SQL 풀: Synapse SQL은 노드 기반 아키텍처로 작업할 수 있는 서버리스 및 전용 리소스 모델을 모두 제공합니다. 예측 가능한 성능 및 비용의 경우 전용 SQL 풀을 만들 수 있습니다. 불규칙하거나 계획되지 않은 워크로드의 경우 항상 사용 가능한 서버리스 SQL 엔드포인트를 사용할 수 있습니다.
- Azure Synapse Spark 풀: 이 풀은 Apache Spark를 실행하여 데이터를 처리하는 서버의 클러스터입니다. 데이터 처리 논리는 지원되는 4개 언어, 즉 Python, Scala, SQL 및 C#(Apache Spark용 .NET을 통해) 중 하나를 사용하여 작성합니다. Azure Synapse용 Apache Spark는 데이터 준비, 데이터 엔지니어링, ETL 및 기계 학습에 사용되는 Apache Spark 오픈 소스 빅 데이터 엔진을 통합합니다.
- Azure Synapse Pipelines: Azure Synapse Pipelines는 Azure Data Factory 기능을 적용합니다. Pipelines는 데이터 이동을 오케스트레이션하고 데이터를 규모에 맞게 변환하는 데이터 기반 워크플로를 만들 수 있는 클라우드 기반 ETL 및 데이터 통합 서비스입니다. 전송되는 동안 데이터를 변환하는 작업을 포함하거나 여러 원본의 데이터를 하나로 결합할 수 있습니다.
- Azure Synapse Link: 이 구성 요소를 사용하면 Azure Cosmos DB에 연결할 수 있습니다. 이를 사용하여 Azure Cosmos DB 데이터베이스에 저장된 작동 데이터에 대해 거의 실시간으로 분석을 수행할 수 있습니다.
- Azure Synapse Studio: 이 요소는 중앙에서 Azure Synapse Analytics의 모든 기능을 사용할 수 있는 웹 기반 IDE입니다. Azure Synapse Studio를 사용하여 SQL 및 Spark 풀을 만들고, 파이프라인을 정의 및 실행하고, 외부 데이터 원본에 대한 링크를 구성할 수 있습니다.
분석 옵션
Azure Synapse Analytics는 다양한 분석 시나리오를 지원합니다. 테이블을 검토하면서 시나리오가 Tailwind Traders 조직에 적용되는 방식을 고려합니다.
분석 | 시나리오 | 설명 |
---|---|---|
설명적 | 설명 | Azure Synapse는 what now 질문을 분석하기 위해 지속형 데이터 웨어하우스를 만들 수 있도록 하는 전용 SQL 풀 기능을 적용합니다. 서버리스 SQL 풀을 사용하여 데이터 레이크에 저장된 파일에서 데이터를 준비하고 대화형으로 데이터 웨어하우스를 만들 수도 있습니다. |
진단 | 이유가 무엇인가요? | 데이터 레이크 내에서 데이터를 대화형으로 탐색하도록 Azure Synapse 내 서버리스 SQL 풀 기능을 사용할 수 있습니다. 서버리스 SQL 풀을 통해 사용자는 발생 이유를 이해하는 데 도움이 되는 다른 데이터를 빠르게 검색할 수 있습니다. |
예측적 | 무슨 일이 일어날 가능성이 있습니까? | Azure Synapse Analytics는 예측 분석에 통합 Apache Spark 엔진 및 Azure Synapse Spark 풀을 사용합니다. 이 작업은 Azure Machine Learning Services 및 Azure Databricks와 같은 다른 서비스와 결합하여 what future 질문에 대답하는 데 도움이 됩니다. |
처방적 | 수행해야 하는 작업은 무엇인가요? | 규범적 분석에 실시간 또는 실시간에 가까운 데이터를 사용하여 what action 질문에 대한 솔루션을 찾는 데 도움이 됩니다. Azure Synapse Analytics는 Apache Spark와 Azure Synapse Link를 통해, 그리고 Azure Stream Analytics 같은 스트리밍 기술을 통합하여 이 기능을 제공합니다. |
비즈니스 시나리오
회사가 주식 시장 정보를 이용해 고객에게 서비스를 제공하는 시나리오를 살펴보겠습니다. Tailwind Traders 인프라를 지원하려면 일괄 처리와 스트림 처리의 조합을 제공해야 합니다. 초 단위 이하의 데이터는 정보에 입각하여 초를 다투는 매수 또는 매도 결정을 즉각적으로 내리는 데 필요한 실시간 모니터링에 도움이 될 수 있습니다. 과거 데이터도 성과 추세를 보기 위해 똑같이 중요합니다. 원시 데이터 스트림과 이 데이터에서 파생되어 준비된 비즈니스 정보에 액세스할 수 있도록 권장하는 데이터 웨어하우스 및 데이터 통합 솔루션 종류는 무엇인가요? Azure Synapse Analytics를 사용하면 외부 원본에서 데이터를 수집한 다음 이 데이터를 분석 처리에 적합한 형식으로 변환하고 집계할 수 있습니다.
Azure Data Factory 또는 Azure Synapse Analytics를 선택할 때 고려해야 할 사항
다음 표에서는 Azure Data Factory 및 Azure Synapse Analytics를 사용할 경우의 스토리지 솔루션 조건을 비교합니다. 조건을 검토하고 Tailwind Traders에 가장 적합한 솔루션을 생각해 보세요.
비교 | Azure Data Factory | Azure Synapse Analytics |
---|---|---|
데이터 공유 | 여러 데이터 팩터리에서 데이터 공유 가능 | 지원되지 않음 |
솔루션 템플릿 | 솔루션 템플릿이 Azure Data Factory 템플릿 갤러리와 함께 제공됨 | 솔루션 템플릿이 Synapse 작업 영역 지식 센터에서 제공됨 |
지역 간 흐름 통합 런타임 | 지역 간 데이터 흐름이 지원됨 | 지원되지 않음 |
데이터 모니터링 | 데이터 모니터링은 Azure Monitor와 통합됨 | 진단 로그는 Azure Monitor에서 사용 가능함 |
데이터 흐름에 대한 Spark 작업 모니터링 | 지원되지 않음 | Spark 작업은 Synapse Spark 풀을 사용하여 데이터 흐름에 대해 모니터링할 수 있음 |
Azure Synapse Analytics는 다른 많은 시나리오에 적합한 솔루션입니다. 다음 옵션을 살펴보세요.
- 다양한 데이터 원본을 고려합니다. 다양한 데이터 원본이 있는 경우 코드 없는 ETL 및 데이터 흐름 활동에 Azure Synapse Analytics를 사용합니다.
- Machine Learning을 고려합니다. Apache Spark를 사용하여 기계 학습 솔루션을 구현해야 하는 경우 Azure Synapse Analytics에서 Azure Machine Learning에 대한 기본 제공 지원을 활용할 수 있습니다.
- 데이터 레이크 통합을 고려합니다. 기존 데이터가 Azure 데이터 레이크에 저장되어 있고 데이터 레이크 및 다른 입력 원본과의 통합이 필요한 경우 Azure Synapse Analytics가 두 구성 요소 간에 원활한 통합을 제공합니다.
- 실시간 분석을 고려합니다. 실시간 분석이 필요한 경우 Azure Synapse Link와 같은 기능을 사용하여 데이터를 실시간으로 분석하고 인사이트를 제공할 수 있습니다.