5단계: 배포 구성
이 페이지에서는 Cortex Framework의 핵심인 Cortex Framework Data Foundation을 배포하는 다섯 번째 단계를 설명합니다. 이 단계에서는 요구사항에 맞게 Cortex Framework Data Foundation 저장소의 구성 파일을 수정합니다.
구성 파일
배포 동작은 Cortex Framework Data Foundation의 구성 파일 config.json
로 제어됩니다. 이 파일에는 전역 구성, 각 워크로드에 관한 구성이 포함되어 있습니다.
다음 단계에 따라 필요에 따라 config.json
파일을 수정합니다.
- Cloud Shell에서
config.json
파일을 엽니다. 다음 매개변수에 따라
config.json
파일을 수정합니다.파라미터 의미 기본값 설명 testData
테스트 데이터를 배포합니다. true
소스 데이터 세트가 있고 빌드가 실행되는 프로젝트입니다. 참고: 테스트 데이터 배포는 원시 데이터 세트가 비어 있고 테이블이 없는 경우에만 실행됩니다. deploySAP
SAP 배포 true
SAP 워크로드 (ECC 또는 S/4 HANA)의 배포를 실행합니다. deploySFDC
Salesforce 배포 true
Salesforce 워크로드의 배포를 실행합니다. deployMarketing
마케팅 배포 true
마케팅 소스 (Google Ads, CM360, TikTok)의 배포를 실행합니다. deployOracleEBS
Oracle EBS 배포 true
Oracle EBS 워크로드의 배포를 실행합니다. deployDataMesh
데이터 메시 배포 true
데이터 메시 배포를 실행합니다. 자세한 내용은 데이터 메시 사용자 가이드를 참고하세요. turboMode
터보 모드로 배포합니다. true
더 빠른 배포를 위해 동일한 Cloud Build 프로세스의 단계로 모든 뷰 빌드를 동시에 실행합니다. false
로 설정하면 각 보고 보기가 자체 순차 빌드 단계에서 생성됩니다. 테스트 데이터를 사용하거나 보고 열과 소스 데이터 간의 불일치가 해결된 후에만true
로 설정하는 것이 좋습니다.projectIdSource
소스 프로젝트 ID - 소스 데이터 세트가 있고 빌드가 실행되는 프로젝트입니다. projectIdTarget
대상 프로젝트 ID - 사용자 대상 데이터 세트 (보고서 및 ML 데이터 세트)의 타겟 프로젝트입니다. targetBucket
생성된 DAG 스크립트를 저장할 대상 버킷 - DAG (및 Dataflow 임시 파일)가 생성되는 이전에 생성된 버킷입니다. 실제 Airflow 버킷을 사용하지 마세요. location
위치 또는 지역 "US"
BigQuery 데이터 세트와 Cloud Storage 버킷이 있는 위치입니다. BigQuery 데이터 세트 위치에 나와 있는 제한사항을 참고하세요.
testDataProject
테스트 하네스 소스 kittycorn-public
데모 배포용 테스트 데이터의 소스입니다. testData
이true
인 경우에 적용됩니다.자체 테스트 하네스가 없는 한 이 값을 변경하지 마세요.
k9.datasets.processing
K9 데이터 세트 - 처리 "K9_PROCESSING"
K9 구성 파일에 정의된 대로 교차 워크로드 템플릿(예: 날짜 측정기준)을 실행합니다. 이러한 템플릿은 일반적으로 다운스트림 워크로드에 필요합니다. k9.datasets.reporting
K9 데이터 세트 - 보고 "K9_REPORTING"
K9 구성 파일에 정의된 대로 교차 워크로드 템플릿 및 외부 데이터 소스 (예: 날씨)를 실행합니다. 기본적으로 주석 처리됩니다. DataMesh.deployDescriptions
데이터 메시 - 애셋 설명 true
BigQuery 애셋 스키마 설명을 배포합니다. DataMesh.deployLakes
데이터 메시 - 레이크 및 영역 false
처리 영역별로 테이블을 구성하는 Dataplex 레이크 및 영역을 배포하려면 사용 설정하기 전에 구성해야 합니다. DataMesh.deployCatalog
데이터 메시 - 카탈로그 태그 및 템플릿 false
BigQuery 애셋 또는 필드에 맞춤 메타데이터를 허용하는 데이터 카탈로그 태그를 배포합니다. 사용 설정하기 전에 구성해야 합니다. DataMesh.deployACLs
데이터 메시 - 액세스 제어 false
BigQuery 애셋에 애셋, 행 또는 열 수준 액세스 제어를 배포하려면 사용 설정 전에 구성해야 합니다. 필요에 따라 필요한 워크로드를 구성합니다. 워크로드의 배포 매개변수 (예:
deploySAP
또는deployMarketing
)가False
로 설정된 경우에는 구성할 필요가 없습니다. 자세한 내용은 3단계: 통합 메커니즘 결정을 참고하세요.
배포를 더 효과적으로 맞춤설정하려면 다음 선택적 단계를 참고하세요.
보고 보기의 성능 최적화
보고 아티팩트는 뷰로 만들거나 DAG를 통해 정기적으로 새로고침되는 테이블로 만들 수 있습니다. 한편 뷰는 쿼리를 실행할 때마다 데이터를 계산하여 결과를 항상 최신 상태로 유지합니다. 반면 테이블은 계산을 한 번 실행하며, 더 높은 컴퓨팅 비용이 발생하지 않고 런타임이 더 빨라지지 않고도 결과를 여러 번 쿼리할 수 있습니다. 각 고객은 필요에 따라 자체 구성을 만듭니다.
구체화된 결과가 테이블로 업데이트됩니다. 이러한 테이블에 파티션 나누기 및 클러스터링을 추가하여 테이블을 추가로 미세 조정할 수 있습니다.
각 워크로드의 구성 파일은 Cortex Framework Data Foundation 저장소 내 다음 경로에 있습니다.
데이터 소스 | 설정 파일 |
운영 - SAP | src/SAP/SAP_REPORTING/reporting_settings_ecc.yaml
|
운영 - Salesforce Sales Cloud | src/SFDC/config/reporting_settings.yaml
|
운영 - Oracle EBS | src/oracleEBS/config/reporting_settings.yaml
|
마케팅 - Google Ads | src/marketing/src/GoogleAds/config/reporting_settings.yaml
|
마케팅 - CM360 | src/marketing/src/CM360/config/reporting_settings.yaml
|
마케팅 - 메타 | src/marketing/src/Meta/config/reporting_settings.yaml
|
마케팅 - Salesforce Marketing Cloud | src/marketing/src/SFMC/config/reporting_settings.yaml
|
마케팅 - TikTok | src/marketing/src/TikTok/config/reporting_settings.yaml
|
마케팅 - YouTube (DV360 포함) | src/marketing/src/DV360/config/reporting_settings.yaml
|
마케팅 - Google 애널리틱스 4 | src/marketing/src/GA4/config/reporting_settings.yaml
|
마케팅 - 교차 미디어 및 제품 연결 통계 | src/marketing/src/CrossMedia/config/reporting_settings.yaml
|
보고 설정 파일 맞춤설정
reporting_settings
파일은 보고 데이터 세트를 위해 BigQuery 객체(테이블 또는 뷰)가 생성되는 방식을 제어합니다. 다음 매개변수 설명을 사용하여 파일을 맞춤설정합니다. 이 파일에는 다음 두 섹션이 포함되어 있다고 가정해 보겠습니다.
bq_independent_objects
: 다른 종속 항목 없이 독립적으로 만들 수 있는 모든 BigQuery 객체입니다.Turbo mode
가 사용 설정되면 이러한 BigQuery 객체가 배포 시간 동안 동시에 생성되어 배포 프로세스가 가속화됩니다.bq_dependent_objects
: 다른 BigQuery 객체에 대한 종속 항목으로 인해 특정 순서로 만들어야 하는 모든 BigQuery 객체입니다.Turbo mode
는 이 섹션에 적용되지 않습니다.
배포자는 먼저 bq_independent_objects
에 나열된 모든 BigQuery 객체를 만든 다음 bq_dependent_objects
에 나열된 모든 객체를 만듭니다. 각 객체에 다음 속성을 정의합니다.
sql_file
: 지정된 객체를 만드는 SQL 파일의 이름입니다.type
: BigQuery 객체의 유형입니다. 가능한 값은 다음과 같습니다.view
: 객체를 BigQuery 뷰로 만들려면 이 옵션을 사용합니다.table
: 객체를 BigQuery 테이블로 만들려는 경우입니다.script
: 다른 유형의 객체(예: BigQuery 함수 및 저장 프로세스)를 만드는 데 사용합니다.
type
이table
로 설정된 경우 다음 선택적 속성을 정의할 수 있습니다.load_frequency
: 이 테이블을 새로고침하기 위해 Composer DAG가 실행되는 빈도입니다. 가능한 값에 관한 자세한 내용은 Airflow 문서를 참고하세요.partition_details
: 테이블을 파티션할 방법입니다. 이 값은 선택사항입니다. 자세한 내용은 테이블 파티션 섹션을 참고하세요.cluster_details
: 테이블을 클러스터링하는 방법입니다. 이 값은 선택사항입니다. 자세한 내용은 클러스터 설정 섹션을 참고하세요.
테이블 파티션
특정 설정 파일을 사용하면 맞춤 클러스터링 및 파티셔닝 옵션으로 materialized 테이블을 구성할 수 있습니다. 이렇게 하면 대규모 데이터 세트의 쿼리 성능이 크게 개선될 수 있습니다. 이 옵션은 SAP cdc_settings.yaml
및 모든 reporting_settings.yaml
파일에만 적용됩니다.
테이블 파티션은 다음을 지정하여 사용 설정할 수 있습니다.partition_details
- base_table: vbap
load_frequency: "@daily"
partition_details: {
column: "erdat", partition_type: "time", time_grain: "day" }
다음 매개변수를 사용하여 지정된 테이블의 파티셔닝 세부정보를 제어합니다.
속성 | 설명 | 값 |
column
|
CDC 테이블이 파티션된 열입니다. | 열 이름입니다. |
partition_type
|
파티션 유형입니다. | 시간 기반 파티션의 경우 "time" 자세한 내용은 타임스탬프 파티션을 나눈 테이블을 참고하세요.
정수 기반 파티션의 경우 "integer_range" 자세한 내용은 정수 범위 문서를 참고하세요.
|
time_grain
|
파티션할 시간 부분입니다. partition_type = "time" 인 경우 필요합니다.
|
"hour" , "day" , "month" 또는 "year" 입니다.
|
integer_range_bucket
|
버킷 범위partition_type = "integer_range" 인 경우 필수
|
"start" = 시작 값,
"end" = 종료 값, "interval " = 범위 간격입니다.
|
옵션 및 관련 제한사항에 관한 자세한 내용은 BigQuery 테이블 파티션을 참고하세요.
클러스터 설정
cluster_details
를 지정하여 테이블 클러스터링을 사용 설정할 수 있습니다.
- base_table: vbak
load_frequency: "@daily"
cluster_details: {columns: ["vkorg"]}
다음 매개변수를 사용하여 지정된 테이블의 클러스터 세부정보를 제어합니다.
속성 | 설명 | 값 |
columns
|
테이블이 클러스터링되는 열입니다. | 열 이름 목록입니다. 예를 들면 "mjahr" 및 "matnr" 입니다.
|
옵션 및 관련 제한사항에 관한 자세한 내용은 테이블 클러스터 문서를 참고하세요.
다음 단계
이 단계를 완료한 후 다음 배포 단계로 이동합니다.