4 마스터 카탈로그로 관리

이 장에서는 마스터 카탈로그, 표준 및 외부 카탈로그, 스키마, 테이블 및 볼륨을 사용하고 이해할 수 있습니다.

마스터 카탈로그

AI 데이터 플랫폼 워크벤치의 마스터 카탈로그는 중앙 집중식 뷰를 제공하여 데이터 및 메타데이터를 관리할 수 있는 최상위 레벨 엔티티입니다.

마스터 카탈로그는 표준 카탈로그와 외부 카탈로그 모두에 대한 컨테이너입니다. Oracle Autonomous AI Lakehouse, OCI Object Storage, Kafka에서 데이터 자산으로 카탈로그를 생성할 수 있습니다. 마스터 카탈로그를 사용하면 해당 하위 객체에 대한 권한을 강제 적용할 수 있습니다.

표준 카탈로그와 외부 카탈로그에는 다음과 같은 다양한 기능과 사용 사례가 있습니다.

  • 표준 카탈로그: 표준 카탈로그는 스키마(데이터베이스)의 논리적 컨테이너로, 사용자는 스키마에서 테이블, 뷰 및 볼륨을 생성할 수 있습니다. 표준 카탈로그는 모든 하위 객체의 메타데이터 수명 주기를 관리합니다.
  • 외부 카탈로그: Oracle Autonomous AI Lakehouse, Kafka 등과 같은 외부 데이터 소스가 외부 카탈로그를 지원합니다. 외부 카탈로그의 경우 메타데이터가 외부 소스에서 동기화되고 사용자는 catalog_name.schema_name.table_name와 같은 3부 이름을 사용하여 외부 소스의 데이터를 질의할 수 있습니다. 외부 카탈로그의 경우 메타데이터 수명 주기는 외부 소스에서 관리되고 마스터 카탈로그는 메타데이터 복사본을 유지합니다.

마스터 카탈로그 사용 사례

마스터 카탈로그를 활용하여 데이터 준비 및 분석, 비구조적 데이터 저장 등을 지원할 수 있습니다.

SQL 구문을 사용하여 데이터 Query 및 분석

표준 카탈로그에서 관리형 또는 외부 테이블을 생성하여 친숙한 SQL과 유사한 구문을 사용하여 데이터를 쿼리 및 분석하므로 AI 데이터 플랫폼에 저장된 데이터를 보다 쉽게 탐색하고 이해할 수 있습니다.

데이터 준비

관리형/외부 테이블에 저장된 구조화된 형식의 데이터를 활용하여 머신 러닝 모델을 위한 데이터를 준비함으로써 엔지니어 데이터를 보다 쉽게 정리, 변환 및 기능화할 수 있습니다. 이를 통해 기능 엔지니어링 및 모델 교육을 위한 효율적인 데이터 액세스 및 처리가 용이해집니다.

출장 시간

열린 테이블 형식은 스키마 전개를 지원합니다. 전체 데이터 세트를 재작성하지 않고 시간이 지남에 따라 데이터 구조가 변경될 수 있습니다. 이러한 테이블은 버전을 지정할 수 있으며 사용자는 시간 이동 질의를 실행하여 과거 버전의 데이터를 질의할 수 있으므로 소급 분석 및 데이터 복구가 용이해집니다.

ACID 트랜잭션 지원

개방형 테이블 형식은 전체 CRUD(생성, 읽기, 업데이트 및 삭제) 작업을 지원하여 데이터 일관성을 보장하고 데이터 업데이트를 사용으로 설정합니다. 테이블을 사용하여 트랜잭션 데이터를 저장 및 관리함으로써 응용 프로그램이 데이터 변경 사항을 추적할 수 있습니다.

효율적인 데이터 읽기 및 쓰기

AI 데이터 플랫폼 워크벤치의 테이블을 분할하여 특히 대규모 데이터세트의 경우 효율적인 데이터 액세스 및 처리를 가능하게 합니다.

비구조적 데이터 저장 및 처리

Apache Spark를 사용하여 처리할 수 있도록 구조화되지 않은 데이터를 저장할 관리 또는 외부 볼륨을 생성합니다.

교차 테넌시 외부 테이블 및 볼륨

테넌시 간 외부 테이블 및 볼륨을 사용하면 복잡한 ETL 파이프라인 또는 수동 데이터 이동 없이도 이기종 테넌시에 저장된 데이터에 안전하게 액세스하고 쿼리할 수 있습니다.

AI Data Platform Workbench를 통해 사용자는 데이터 사일로를 제거하고 협업을 간소화하도록 설계된 강력한 기능인 교차 테넌시 외부 테이블 및 볼륨을 생성할 수 있습니다.

교차 테넌시의 이점은 다음과 같습니다.
  • 데이터 중복 최소화: 실시간 데이터에 액세스하여 스토리지 비용을 절감하고 "신뢰할 수 있는 단일 소스" 무결성을 보장합니다.
  • 간소화된 거버넌스: IAM 정책 및 AI Data Platform Workbench 액세스 제어를 사용해 경계 전반의 권한을 관리할 수 있습니다.

교차 테넌시 액세스 요구 사항

외부 테이블 및 볼륨에 대한 교차 테넌시 액세스를 설정하려면 제공자 테넌시 및 소비자 테넌시에 구성된 특정 IAM 정책이 필요합니다.

제공자 테넌시에서 특정 AI 데이터 플랫폼 워크벤치 리소스를 멤버로 포함하는 Oracle Cloud Infrastructure(OCI) 콘솔에 IAM 동적 그룹을 생성해야 합니다. 자세한 내용은 동적 그룹 관리를 참조하십시오.

IAM 동적 그룹을 생성한 후 제공자 테넌시에서 IAM 정책을 구성해야 합니다.
  • 소비자 테넌시, 사용자 그룹 및 동적 그룹에 대한 IAM의 리소스 정의
  • 소비자 테넌시 리소스에 대한 admit IAM 정책 작성
define tenancy <consumer_tenancy_name1> as <consumer tenancy OCID>
define group <group_name1> as <consumer user group>
define dynamic-group <dynamic_group_name1> as <consumer dynamic group OCID>

admit dynamic-group <dynamic_group_name1> of tenancy <consumer_tenancy_name1> to manage object-family in tenancy
admit dynamic-group <dynamic_group_name1> of tenancy <consumer_tenancy_name1> to { OBJECTSTORAGE_NAMESPACE_READ } in tenancy
admit group <group_name1> of tenancy <consumer_tenancy_name1> to manage object-family in tenancy
제공자 테넌시 IAM 정책을 구성한 후 소비자 테넌시 IAM 정책을 구성해야 합니다.
  • 제공자 테넌시에 대한 IAM의 리소스 정의
  • 로컬 소비자 테넌시 리소스에 대한 endorse IAM 정책 작성
define tenancy <provider_tenancy_name1> as <provider tenancy OCID>

endorse dynamic-group <dynamic_group_name> to manage object-family in tenancy <provider_tenancy_name1>
endorse dynamic-group <dynamic_group_name> to { OBJECTSTORAGE_NAMESPACE_READ } in tenancy <provider_tenancy_name1>
endorse group <group_name> to manage object-family in tenancy <provider_tenancy_name1>

제공자 및 소비자 테넌시 IAM 정책이 모두 구성되면 SQL 문법을 사용하여 교차 테넌시 외부 테이블 및 볼륨을 생성할 수 있습니다. 자세한 내용은 SQL 문법을 참조하십시오.

예제: SQL로 교차 테넌시 테이블 생성

CREATE EXTERNAL TABLE [IF NOT EXISTS] <catalog_name>.<schema-name>.<table-name>
[ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ]
USING [HIVE|DELTA, CSV, TXT, ORC, JDBC, PARQUET, etc.]
LOCATION 'oci://my-bucket@mytenancynamespace/my-folder/'
[TBLPROPERTIES ( DESCRIPTION = 'some-description', '<property-name>'='<property-value>'[, ...]) ]

제한

AI Data Platform Workbench는 UI에서 교차 테넌시 외부 테이블 또는 외부 볼륨 생성을 지원하지 않습니다.