데이터 포맷 불문 수집 엔진
이 문서에서는 Azure Data Factory 내에서 PowerApps, Azure Logic Apps 및 메타데이터 기반 복사 작업의 조합을 사용하여 데이터 독립적 수집 엔진 시나리오를 구현하는 방법을 설명합니다.
데이터 독립적 수집 엔진 시나리오는 일반적으로 비기술(비 데이터 엔지니어) 사용자가 추가 처리를 위해 데이터 자산을 Data Lake에 게시하도록 하는 데 중점을 줍니다. 이 시나리오를 구현하려면 다음을 사용하도록 설정하는 온보딩 기능이 있어야 합니다.
- 데이터 자산 등록
- 워크플로 프로비저닝 및 메타데이터 캡처
- 데이터 수집 스케줄링
이러한 기능이 상호 작용하는 방식을 확인할 수 있습니다.
다이어그램
그림 1: 데이터 등록 기능 상호 작용.
다음 다이어그램에서는 Azure 서비스의 조합을 사용하여 이 프로세스를 구현하는 방법을 보여 줍니다.
다이어그램
그림 2: 자동화된 인게션 프로세스
데이터 자산 등록
자동화된 수집을 구동하는 데 사용되는 메타데이터를 제공하려면 데이터 자산 등록이 필요합니다. 캡처하는 정보에는 다음이 포함됩니다.
- 기술 정보: 데이터 자산 이름, 원본 시스템, 유형, 형식 및 빈도를 각각 기술한다.
- 거버넌스 정보: 소유자, 관리자, 가시성(검색 목적) 및 민감도
PowerApps는 각 데이터 자산을 설명하는 메타데이터를 캡처하는 데 사용됩니다. 모델 기반 앱을 사용하여 사용자 지정 Dataverse 테이블에 유지되는 정보를 입력합니다. Dataverse 내에서 메타데이터를 만들거나 업데이트하면 추가 처리 단계를 호출하는 자동화된 클라우드 흐름이 트리거됩니다.
그림 3: 데이터 자산 등록
프로비저닝 워크플로/메타데이터 캡처
프로비전 워크플로 단계에서는 등록 단계에서 수집된 데이터의 유효성을 검사하고 메타스토어에 유지합니다. 기술 및 비즈니스 유효성 검사 단계는 다음을 포함하여 수행됩니다.
- 입력 데이터 피드 유효성 검사
- 승인 워크플로 시작
- 메타데이터 저장소에 대한 메타데이터의 지속성을 트리거하는 논리 처리
- 활동 검토
그림 4: 등록 워크플로.
수집 요청이 승인되면 워크플로는 Microsoft Purview REST API를 사용하여 원본을 Microsoft Purview에 삽입합니다.
데이터 제품 온보딩을 위한 자세한 워크플로
새 데이터 세트를 수집하는 방법을 보여 주는
그림 5: 새 데이터 세트를 수집하는 방법(자동화).
그림 5는 새 데이터 원본의 수집을 자동화하기 위한 자세한 등록 프로세스를 보여 줍니다.
- 프로덕션 및 데이터 팩터리 환경을 포함하여 원본 세부 정보가 등록됩니다.
- 데이터 셰이프, 형식 및 품질 제약 조건이 캡처됩니다.
- 데이터 애플리케이션 팀은 데이터가 중요한지(개인 데이터) 여부를 나타내야 합니다 이 분류는 데이터 레이크 폴더가 생성되어 원시, 보강 및 큐레이팅된 데이터를 수집하는 프로세스를 구동합니다. 원천은 원시 데이터와 보강 데이터를 명명하고, 데이터 제품은 큐레이팅 데이터를 명명합니다.
- 서비스 주체 및 보안 그룹은 데이터 세트를 수집하고 액세스 권한을 부여하기 위해 만들어집니다.
- 수집 작업은 데이터 랜딩 존 Data Factory 메타스토어에 만들어집니다.
- API는 데이터 정의를 Microsoft Purview에 삽입합니다.
- 데이터 원본의 유효성 검사와 ops 팀의 승인에 따라 세부 정보가 Data Factory 메타스토어에 게시됩니다.
인게스천 일정 예약
Azure Data Factory 내에서 메타데이터 기반 복사 작업은 오케스트레이션 파이프라인이 Azure SQL Database에 저장된 컨트롤 테이블 내의 행에 의해 구동될 수 있도록 하는 기능을 제공할 있습니다. 데이터 복사 도구를 사용하여 메타데이터 기반 파이프라인을 미리 만들 수 있습니다.
파이프라인을 만든 후 프로비전 워크플로는 데이터 자산 등록 메타데이터로 식별된 원본에서 수집을 지원하기 위해 컨트롤 테이블에 항목을 추가합니다. Azure Data Factory 파이프라인과 제어 테이블 메타스토어가 포함된 Azure SQL Database는 각 데이터 랜딩 존 내에 존재하여 새 데이터 소스를 만들고 데이터 랜딩 존으로 전송할 수 있습니다.
다이어그램
그림 6: 데이터 자산 인제스션 일정
새 데이터 원본을 수집하기 위한 자세한 워크플로
다음 다이어그램에서는 Data Factory SQL Database 메타스토어에서 등록된 데이터 원본을 가져오는 방법과 데이터를 처음 수집하는 방법을 보여 줍니다.
Data Factory 수집 마스터 파이프라인은 Data Factory SQL Database 메타스토어에서 구성을 읽은 다음 올바른 매개 변수를 사용하여 반복적으로 실행됩니다. 데이터는 거의 또는 전혀 변경되지 않고 Azure Data Lake의 원본에서 원시 계층으로 이동합니다. 데이터 셰이프는 Data Factory 메타스토어를 기반으로 유효성이 검증됩니다. 파일 형식은 Apache Parquet 또는 Avro 형식으로 변환된 다음 보강된 계층으로 복사됩니다.
수집되는 데이터는 Azure Databricks 데이터 과학 및 엔지니어링 작업 영역에 연결되고 데이터 정의는 데이터 랜딩 존 Apache Hive 메타스토어 내에 생성됩니다.
Azure Synapse 서버리스 SQL 풀을 사용하여 데이터를 노출해야 하는 경우 사용자 지정 솔루션은 레이크의 데이터에 대한 뷰를 만들어야 합니다.
행 수준 또는 열 수준 암호화가 필요한 경우 사용자 지정 솔루션은 데이터 레이크에 데이터를 배치한 다음, SQL 풀의 내부 테이블에 직접 데이터를 수집하고 SQL 풀 컴퓨팅에 적절한 보안을 설정해야 합니다.
캡처된 메타데이터
자동화된 데이터 수집을 사용하는 경우 연결된 메타데이터를 쿼리하고 대시보드를 만들어 다음을 수행할 수 있습니다.
- 해당 함수와 관련된 데이터 제품에 대한 작업 및 최신 데이터 로드 타임스탬프를 추적합니다.
- 사용 가능한 데이터 제품을 추적합니다.
- 데이터 볼륨이 증가합니다.
- 작업 실패에 대한 실시간 업데이트를 가져옵니다.
운영 메타데이터를 사용하여 추적할 수 있습니다.
- 작업, 작업 단계 및 해당 종속성
- 작업 성능 및 성능 기록입니다.
- 데이터 볼륨 증가.
- 작업 실패.
- 원본 메타데이터가 변경되었습니다.
- 데이터 제품에 의존하는 비즈니스 기능입니다.
Microsoft Purview REST API를 사용하여 데이터 검색
Microsoft Purview REST API는 초기 수집 중에 데이터를 등록하는 데 사용해야 합니다. API를 사용하여 데이터를 수집 후 곧바로 데이터 카탈로그에 제출할 수 있습니다.
자세한 내용은 Microsoft Purview REST API사용하는 방법을
데이터 원본 등록
다음 API 호출을 사용하여 새 데이터 원본을 등록합니다.
PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}
데이터 원본에 대한 URI 매개 변수:
이름 | 필수 | 타입 | 묘사 |
---|---|---|---|
accountName |
진실 | 문자열 | Microsoft Purview 계정의 이름 |
dataSourceName |
정확 | 문자열 | 데이터 원본의 이름 |
등록에 Microsoft Purview REST API 사용
다음 예제에서는 Microsoft Purview REST API를 사용하여 데이터 원본을 페이로드에 등록하는 방법을 보여 줍니다.
Azure Data Lake Storage Gen2 데이터 소스 등록:
{
"kind":"AdlsGen2",
"name":"<source-name> (for example, My-AzureDataLakeStorage)",
"properties":{
"endpoint":"<endpoint> (for example, https://adls-account.dfs.core.windows.net/)",
"subscriptionId":"<azure-subscription-guid>",
"resourceGroup":"<resource-group>",
"location":"<region>",
"parentCollection":{
"type":"DataSourceReference",
"referenceName":"<collection-name>"
}
}
}
SQL Database 데이터 원본 등록:
{
"kind":"<source-kind> (for example, AdlsGen2)",
"name":"<source-name> (for example, My-AzureSQLDatabase)",
"properties":{
"serverEndpoint":"<server-endpoint> (for example, sqlservername.database.windows.net)",
"subscriptionId":"<azure-subscription-guid>",
"resourceGroup":"<resource-group>",
"location":"<region>",
"parentCollection":{
"type":"DataSourceReference",
"referenceName":"<collection-name>"
}
}
}
메모
<collection-name>
Microsoft Purview 계정에 있는 현재 컬렉션입니다.
스캔 생성
검사를 설정하고 실행하기 전에 Microsoft Purview에서 원본을 인증하는 자격 증명 만드는 방법을 알아봅니다.
다음 API 호출을 사용하여 데이터 원본을 검색합니다.
PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/
검사에 대한 URI 매개 변수:
이름 | 필수 | 유형 | 묘사 |
---|---|---|---|
accountName |
진실 | 문자열 | Microsoft Purview 계정의 이름 |
dataSourceName |
진실 | 문자열 | 데이터 원본의 이름 |
newScanName |
진실 | 문자열 | 새로운 스캔의 이름 |
검사에 Microsoft Purview REST API 사용
다음 예제에서는 Microsoft Purview REST API를 사용하여 페이로드를 사용하여 데이터 원본을 검사하는 방법을 보여 줍니다.
Azure Data Lake Storage Gen2 데이터 원본 검사:
{
"name":"<scan-name>",
"kind":"AdlsGen2Msi",
"properties":
{
"scanRulesetType":"System",
"scanRulesetName":"AdlsGen2"
}
}
SQL Database 데이터 원본 검사:
{
"name":"<scan-name>",
"kind":"AzureSqlDatabaseMsi",
"properties":
{
"scanRulesetType":"System",
"scanRulesetName":"AzureSqlDatabase",
"databaseName": "<database-name>",
"serverEndpoint": "<server-endpoint> (for example, sqlservername.database.windows.net)"
}
}
다음 API 호출을 사용하여 데이터 원본을 검색합니다.
POST https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/run
다음 단계
- 클라우드 규모 분석 대한 Azure Data Lake Storage의
개요