'이 열 이름은 무슨 의미인가요?', '이 손상된 데이터 세트의 소유자는 누구인가요?', 또는 '이 테이블을 사용해도 되나요?'와 같은 질문을 해본 적이 있을 것입니다. 일부 데이터 카탈로그는 구조화되지 않은 태그를 사용하여 이 정보를 추가하지만 태그는 빠르게 오래되거나 일관성이 없어집니다. Knowledge Catalog (이전 명칭: Dataplex Universal Catalog)를 사용하면 구조화된 스키마 기반 메타데이터와 명확한 비즈니스 정의를 데이터 애셋에 직접 연결할 수 있으므로 이 문제를 방지할 수 있습니다. 이 접근 방식을 사용하면 프로그래매틱 거버넌스를 대규모로 빌드할 수 있습니다.
이 튜토리얼에서는 Knowledge Catalog에서 데이터 거버넌스를 시작하는 방법을 보여줍니다. 데이터 엔지니어, 데이터베이스 관리자, 데이터 설계자를 위해 설계된 이 튜토리얼에서는 이러한 워크플로를 자동화하기 전에 강력한 정신적 모델을 빌드하는 데 도움이 되도록 수동 UI 단계를 안내합니다. 주요 Knowledge Catalog 개념 간의 관계를 명확히 합니다. 이 튜토리얼을 마치면 데이터를 검색 가능하고 신뢰할 수 있게 만드는 방법을 알게 됩니다.
목표
이 튜토리얼에서는 다음을 수행하는 방법을 알아봅니다.
- 비즈니스 용어집 을 사용하여 비즈니스 용어의 단일 정보 소스를 만듭니다.
- 관점 유형 을 사용하여 메타데이터를 구조화하고 정리합니다.
- 관점 을 사용하여 애셋에 메타데이터를 연결합니다.
- Knowledge Catalog 검색을 사용하여 이 새로운 구조화된 메타데이터를 사용하여 필요한 것을 정확하게 찾습니다.
시작하기 전에
시작하기 전에 다음을 수행합니다.
- 이 튜토리얼의 Google Cloud 프로젝트를 선택합니다.
- 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.
환경 설정
이 튜토리얼에서는 클라우드에서 실행되는 명령줄 환경인 Cloud Shell을 사용합니다.
콘솔에서 오른쪽 상단 툴바에 있는 Cloud Shell 활성화 를 클릭합니다. Google Cloud 환경을 프로비저닝하고 연결하는 데 몇 분 정도 소요됩니다.
Cloud Shell에서 향후 모든 명령어가 특정 Google Cloud 프로젝트를 타겟팅하도록
PROJECT_ID및LOCATION변수를 설정합니다.export PROJECT_ID=$(gcloud config get-value project) gcloud config set project $PROJECT_ID export LOCATION="us-central1"필요한 Google Cloud 서비스를 사용 설정합니다.
gcloud services enable \ dataplex.googleapis.com \ bigquery.googleapis.com \ datacatalog.googleapis.com
BigQuery 데이터 세트 만들기 및 샘플 데이터 준비
다음 코드를 사용하여 BigQuery 데이터 세트를 만들고 일부 샘플 CSV 트랜잭션을 테이블에 로드합니다. 테이블을 만들면 Knowledge Catalog가 자동으로 테이블을 검색하고 카탈로그에 테이블의 항목 을 만듭니다.
항목을 Knowledge Catalog의 데이터 애셋 표현으로 생각하세요. 거버넌스 메타데이터를 연결할 수 있는 카탈로그의 레코드와 같습니다. BigQuery 테이블을 직접 관리하는 대신 Knowledge Catalog에서 항목을 관리합니다.
# Create the BigQuery Dataset in the us-central1 region
bq --location=$LOCATION mk --dataset \
--description "Retail data for governance codelab" \
$PROJECT_ID:retail_data
# Create a temporary CSV file with the sample data
echo "transaction_id,user_email,gmv,transaction_date
1001,test@example.com,150.50,2025-08-28
1002,user@example.com,75.00,2025-08-28" > /tmp/transactions.csv
# Load the data from the temporary CSV file into a BigQuery table
bq load \
--source_format=CSV \
--autodetect \
retail_data.transactions \
/tmp/transactions.csv
# (Optional) Clean up the temporary file
rm /tmp/transactions.csv
SELECT 쿼리를 실행하여 설정을 확인합니다.
bq query --nouse_legacy_sql "SELECT * FROM retail_data.transactions"
출력 예시:
+----------------+------------------+-------+------------------+
| transaction_id | user_email | gmv | transaction_date |
+----------------+------------------+-------+------------------+
| 1001 | test@example.com | 150.5 | 2025-08-28 |
| 1002 | user@example.com | 75.0 | 2025-08-28 |
+----------------+------------------+-------+------------------+
비즈니스 용어집으로 공통 용어 설정
우수한 거버넌스는 명확한 정의에 기반합니다. 예를 들어 개발자는 gmv라는 열이 총 상품 가치를 의미하는지 또는 세금이나 반품이 포함되는지 추측해서는 안 됩니다. 비즈니스 용어집 은 비즈니스 정의를 기술 세부정보와 분리하는 단일 정보 소스를 만들어 이 문제를 해결합니다. 이렇게 하면 총 상품 가치와 같은 용어가 영업팀에서 재무팀에 이르기까지 모든 사람에게 동일한 의미를 갖게 됩니다.
다음 단계에 따라 용어집을 만들고 첫 번째 용어를 정의합니다.
콘솔에서 Knowledge Catalog 용어집 페이지로 이동합니다. Google Cloud
비즈니스 용어집 만들기 를 클릭합니다.
다음 세부정보를 입력합니다.
- 표시 이름:
Retail Business Glossary - 위치:
us-central1 (Iowa)
- 표시 이름:
만들기 를 클릭합니다.
카테고리 만들기 를 클릭합니다.
카테고리 이름을
Sales Metrics로 지정하고 만들기 를 클릭합니다.Sales Metrics 카테고리를 선택하고 용어 추가 를 클릭합니다.
용어 이름을
Gross Merchandise Value로 지정하고 만들기 를 클릭합니다.총 상품 가치 용어를 클릭하여 세부정보 페이지를 엽니다.
개요 옆에 있는 추가 를 클릭합니다. 다음 세부정보를 입력합니다.
The total value of merchandise sold over a given period of time before the deduction of any fees or expenses. This is a key indicator of e-commerce business growth.저장 을 클릭합니다.
이제 조직 전체의 데이터 애셋에 연결할 수 있는 용어집 용어를 만들었습니다.
관점 유형으로 기술 메타데이터 정의
특정 데이터 애셋의 소유자를 추적해야 하는 경우 키-값 태그만으로는 충분하지 않습니다. 한 테이블에 owner:bob 태그가 지정되고 다른 테이블에 contact:alice@example.com 태그가 지정되는 것을 원하지 않습니다. 소유자 정보가 유효한 이메일 형식이어야 하는 구조화된 스키마를 원합니다.
이 요구사항을 충족하기 위해 Knowledge Catalog는 관점 유형 을 지원합니다. 관점 유형은 명확한 규칙과 필수 필드를 설정할 수 있는 메타데이터의 청사진과 같습니다. 이렇게 하면 나중에 추가하는 메타데이터가 정리된 상태로 유지됩니다.
콘솔에서 메타데이터 유형 페이지의 Knowledge Catalog 관점 유형 탭으로 이동합니다. Google Cloud
커스텀 탭에서 만들기 를 클릭합니다.
다음 세부정보를 입력합니다.
- 표시 이름:
Data Asset Governance - 위치:
us-central1 (Iowa)
- 표시 이름:
템플릿 섹션에서 필드 추가 를 클릭하여 다음 세 필드를 만듭니다.
필드 1:
- 표시 이름:
Data Steward - 유형:
Text - 필수: 체크박스를 선택합니다.
- 텍스트 유형:
Plain text
- 표시 이름:
필드 2 (필드 추가 클릭):
- 표시 이름:
Data Sensitivity - 유형:
Enum - 필수: 선택사항으로 둡니다.
- 값:
Public,Internal,Confidential추가
- 표시 이름:
필드 3 (필드 추가 클릭):
- 표시 이름:
Last Review Date - 필수: 선택사항으로 둡니다.
- 유형:
Date and time
- 표시 이름:
저장 을 클릭합니다.
이제 데이터 관리자, 민감도 수준, 검토 날짜와 같은 거버넌스 관련 메타데이터 필드의 관점 유형이 있습니다. 다음 섹션에서는 이러한 필드의 특정 값이 있는 관점을 연결하여 이 스키마를 테이블 항목에 적용합니다.
거버넌스 메타데이터로 항목 보강
열 이름은 약어이거나 모호한 경우가 많습니다. 열을 비즈니스 용어집의 용어에 연결하면 명확하고 일관된 정의를 제공할 수 있습니다. 이 단계에서는 Gross Merchandise Value 용어를 gmv라는 열에 연결하고 관점 유형을 사용하여 테이블 항목에 관점을 연결하여 retail_data.transactions 테이블의 항목을 보강합니다.
열을 비즈니스 용어에 연결
retail_data.transactions의 gmv 열이 무엇인지 명확히 하려면 Gross Merchandise Value 용어에 연결합니다.
콘솔에서 Knowledge Catalog 검색 페이지로 이동합니다. Google Cloud
필터 를 클릭하여 필터 패널을 엽니다.
**범위** 에서 **현재 프로젝트** 를 선택합니다.
retail_data.transactions를 검색하고 반환된 트랜잭션 테이블을 클릭합니다.스키마 탭을 클릭합니다.
gmv열 옆에 있는 체크박스를 선택하고 비즈니스 용어 추가 를 클릭합니다.Gross Merchandise Value를 선택합니다.
테이블 항목에 관점 연결
비즈니스 용어를 열에 연결하는 것 외에도 테이블 항목에 관점 을 연결하여 데이터 소유권 및 민감도와 같은 테이블 수준 거버넌스 메타데이터를 캡처할 수 있습니다.
관점은 메타데이터 필드의 특정 값을 포함하는 관점 유형의 인스턴스입니다. 항목에 관점을 연결하면 Knowledge Catalog는 일관성을 보장하기 위해 관점 유형에 정의된 스키마에 대해 제공한 정보를 확인합니다.
retail_data.transactions 테이블의 소유권과 민감도를 정의하려면 Data Asset Governance 관점을 연결합니다.
retail_data.transactions항목 페이지의 세부정보 탭에서 선택적 관점 옆에 있는 추가 를 클릭합니다.- 목록에서
Data Asset Governance를 선택합니다. 필드에 값을 입력합니다.
- 데이터 관리자:
finance-team@example.com - 데이터 민감도: 내부 를 선택합니다.
- 최종 검토 날짜: 오늘 날짜를 선택합니다.
- 데이터 관리자:
저장 을 클릭합니다.
이제 Knowledge Catalog에서 데이터 거버넌스를 위한 견고한 토대를 마련했습니다.
보강된 메타데이터를 사용하여 항목 검색
열을 비즈니스 용어에 연결하고 관점을 연결하여 retail_data.transactions 항목을 보강했습니다. 이제 Knowledge Catalog 검색을 사용하여 이러한 비즈니스 컨텍스트를 기반으로 항목을 찾을 수 있습니다. 예를 들어 특정 민감도 수준의 모든 애셋을 찾거나 용어집 용어를 검색하여 기본 테이블을 찾을 수 있습니다.
콘솔에서 Knowledge Catalog 검색 페이지로 이동합니다. Google Cloud
필터 를 클릭하여 필터 패널을 엽니다.
**범위** 에서 **현재 프로젝트** 를 선택합니다.
검색창에
Find tables where the Data Asset Governance aspect has Internal sensitivity.를 입력합니다.결과 목록에
retail_data.transactions테이블이 표시됩니다.검색창을 지우고
Find tables with the Gross Merchandise Value term attached.를 입력합니다.gmv열이 이 비즈니스 용어에 직접 연결되어 있으므로 결과에retail_data.transactions테이블이 다시 표시됩니다.
정리
요금이 발생하지 않도록 하려면 이 튜토리얼에서 만든 리소스를 삭제합니다.
샘플 데이터 세트 삭제
샘플 BigQuery 데이터 세트와 모든 테이블을 삭제하려면 다음 명령어를 사용합니다. 이 작업은 되돌릴 수 없습니다.
# Re-run these exports if your Cloud Shell session timed out
export PROJECT_ID=$(gcloud config get-value project)
# Manually type this command to confirm you are deleting the correct dataset
bq rm -r -f --dataset $PROJECT_ID:retail_data
Knowledge Catalog 아티팩트 삭제
콘솔에서 메타데이터 유형 페이지의 Knowledge Catalog 관점 유형 탭으로 이동합니다. Google Cloud
data_asset_governance관점 유형을 선택하고 삭제 를 클릭합니다.콘솔에서 Knowledge Catalog 용어집 페이지로 이동합니다. Google Cloud
Gross Merchandise Value용어를 선택하고 삭제 를 클릭합니다.Sales Metrics카테고리를 선택하고 삭제 를 클릭합니다.Retail Business Glossary를 선택하고 삭제 를 클릭합니다.
다음 단계
- 비즈니스 용어집 관리: 비즈니스 용어집 관리에서 데이터의 표준화된 어휘를 설정하는 방법을 자세히 알아보세요.
- 메타데이터 컨텍스트 보강: 관점 관리 및 메타데이터 보강에서 관점을 사용하여 의미 있는 컨텍스트를 추가하는 방법을 자세히 알아보세요.
- 관점 연결 자동화: Cloud Run 함수 또는 Cloud Build를 사용하여 새 데이터 세트에 관점을 연결합니다.
- 코드형 거버넌스: Google Cloud Terraform 제공업체를 사용하여 버전 제어에서 스키마를 관리합니다.