교차 클라우드 데이터 액세스 정보

교차 클라우드 데이터 액세스 기능을 사용하면 파일을 마이그레이션하거나 복잡한 ETL 파이프라인을 빌드하지 않고도 다른 클라우드 제공업체에 저장된 데이터를 Google Cloud 에서 직접 쿼리할 수 있습니다. 쿼리는 공개 인터넷을 통해 라우팅되거나 비공개 네트워크 전송에 Cross-Cloud Interconnect를 사용할 수 있습니다.

Lakehouse의 크로스 클라우드 데이터 액세스는 BigQuery, 독립형 Apache Spark 환경 또는 Managed Service for Apache Spark를 통해 분산된 데이터 세트 전반에서 분석 및 AI 워크로드를 통합합니다.

분석 쿼리를 실행하는 것 외에도 크로스 클라우드 소스를 포함한 분산 테이블을 기반으로 하는 대화형 분석 에이전트를 빌드하여 단일 대화에서 여러 클라우드의 데이터를 분석할 수 있습니다. Knowledge Catalog를 사용하여 원격 플랫폼에서 데이터 프로파일링 및 인사이트를 확인할 수도 있습니다.

크로스 클라우드 데이터 액세스를 사용해야 하는 경우

다음은 몇 가지 일반적인 사용 사례입니다.

  • 멀티 클라우드 테이블을 제자리에서 쿼리: 파일을 마이그레이션하거나 ETL 파이프라인을 유지보수하지 않고도 Amazon Web Services (AWS) 및 Microsoft Azure의 외부 Apache Iceberg 테이블에서 BigQuery SQL 및 Managed Service for Apache Spark 분석을 직접 실행합니다.
  • 비공개 교차 클라우드 네트워크 격리 적용: Cross-Cloud Interconnect를 통해 쿼리 데이터 읽기와 백그라운드 메타데이터 새로고침을 모두 라우팅하여 공개 인터넷 트래픽을 제한하는 보안 및 규정 준수 정책을 충족합니다.
  • 반복적인 크로스 클라우드 데이터 전송 비용 절감: 예측 가능한 비공개 상호 연결 이그레스 요율을Google Cloud 의 자동 로컬 블록 캐싱과 결합하여 반복적인 BI 대시보드 및 분석 워크로드를 처리합니다.
  • 크로스 클라우드 거버넌스 및 AI 에이전트 통합: 분산 테이블에서 대화형 분석 에이전트를 그라운딩하고 클라우드 전반에서 Knowledge Catalog 탐색, 프로파일링, 계보를 적용합니다.

아키텍처

다음 다이어그램은 Lakehouse 크로스 클라우드 데이터 액세스 아키텍처를 보여줍니다.

 Google Cloud, Amazon Web Services (AWS), SaaS 파트너 간의 레이크하우스 크로스 클라우드 데이터 액세스 아키텍처
Lakehouse 아키텍처는 Google Cloud AI 및 분석 엔진을 외부 클라우드 카탈로그, 객체 스토리지, SaaS 파트너에 연결합니다.

위 다이어그램은 Google Cloud 및 외부 클라우드와 SaaS 환경의 아키텍처를 보여줍니다.

  • Google Cloud: 원격 데이터 세트 전반에서 AI, 거버넌스, 분석, 크로스 클라우드 데이터 액세스를 제공합니다.
    • AI 에이전트 및 환경: 대화형 분석 및 Gemini Enterprise에서 Knowledge Catalog의 데이터와 시맨틱 의미를 검색하고 분석 및 처리 엔진을 통해 쿼리를 실행하는 자율 에이전트를 빌드합니다.
    • Knowledge Catalog: Lakehouse의 메타데이터와 계보를 동기화하여 통합 거버넌스 및 데이터 계보와 함께 데이터 인사이트, 프로파일링, 데이터 제품을 제공합니다.
    • 분석 및 처리 엔진: BigQuery SQL, BigQuery AI, Looker 워크로드를 실행하거나 Lakehouse를 통해 메타데이터를 확인하고 테이블을 읽어 Managed Service for Apache Spark 및 개방형 엔진(Apache Spark, Apache Flink, Trino)으로 원격 데이터를 처리합니다.
    • 레이크하우스 크로스 클라우드 데이터 액세스: 파일 마이그레이션이나 ETL 파이프라인 없이 원격 데이터를 제자리에서 쿼리합니다.
      • 메타데이터 동기화: Lakehouse 런타임 카탈로그를 사용하여 Apache Iceberg REST 및 Delta Sharing을 통해 테이블 메타데이터를 검색 및 동기화하고, OpenID Connect (OIDC) 또는 Secret Manager를 통해 인증하고, 범위가 지정된 임시 사용자 인증 정보를 제공합니다.
      • 크로스 클라우드 기능 (AWS): 블록 수준 읽기 스루 캐시(지능형 캐싱 (로컬 캐시))를 사용하여 Google Cloud 에서 읽기 데이터 블록을 캐시하고 크로스 클라우드 네트워크 전송을 사용하여 Dedicated Cross-Cloud Interconnect (CCI), Partner Interconnect 또는 인터넷 (TLS 사용)을 통해 트래픽을 라우팅합니다.
  • 외부 클라우드 및 SaaS 데이터 소스: 원격 카탈로그, SaaS 데이터 클라우드, 객체 스토리지를 호스팅합니다.
    • 외부 클라우드 및 SaaS 카탈로그: Iceberg REST API 및 Delta Sharing(SAP BDC용)을 통해 클라우드 데이터 카탈로그(AWS의 AWS Glue Data Catalog, AWS 또는 Google Cloud의 Databricks Unity Catalog 및 Snowflake Horizon Catalog) 및 SaaS 데이터 클라우드(Salesforce Data Cloud, AWS 또는Google Cloud의 Workday Data Lake, SAP Business Data Cloud (BDC))의 메타데이터를 동기화합니다.
    • 외부 클라우드 객체 스토리지 (AWS): CCI 또는 인터넷 (TLS 사용)을 통한 직접 블록 읽기를 위해 Amazon S3에 Apache Iceberg 테이블 (Parquet 데이터 파일) 및 Amazon S3 테이블을 저장합니다.

크로스 클라우드 데이터에 액세스하는 방법

레이크하우스는 다음 프로세스를 사용하여 원격 데이터를 쿼리합니다.

  1. 메타데이터 검색: Lakehouse 런타임 카탈로그는 Databricks Unity Catalog, AWS Glue Data Catalog, Snowflake Horizon Catalog와 같은 원격 Apache Iceberg REST 카탈로그 엔드포인트에 연결하여 파일을 복사하지 않고도 테이블 메타데이터를 검색합니다. 원격 카탈로그 제공업체에 따라 Lakehouse는 Secret Manager 또는 Google을 ID 공급업체로 사용하는 OIDC 토큰 제휴를 통해 인증합니다.
  2. 보안 전송: 비공개 상호 연결(예: Dedicated CCI 또는 Partner Interconnect)을 통해 트래픽을 라우팅하면 공개 인터넷에 비해 데이터 전송 비용이 크게 줄어들고 지연 시간을 예측할 수 있습니다.
  3. 최적화된 실행: 페더레이션 카탈로그 또는 연결에서 크로스 클라우드 캐싱을 사용 설정하면 Lakehouse는 검색된 파일 블록을 Google Cloud 쿼리 실행 리전 내에 로컬로 캐시합니다. 동일한 파일 블록을 타겟팅하는 후속 쿼리는 원격 클라우드에서 파일을 다시 가져오는 대신 로컬 캐시에서 직접 읽으므로 크로스 클라우드 이그레스 비용을 줄이고 쿼리 성능을 개선하는 데 도움이 됩니다.

지원되는 카탈로그

레이크하우스는 다음 원격 카탈로그 제공업체의 데이터 쿼리를 지원합니다.

핵심 개념

크로스 클라우드 데이터 액세스는 백그라운드 메타데이터 새로고침을 쿼리 데이터 전송과 분리하므로 보안 및 비용 요구사항에 따라 트래픽 레이어 중 하나 또는 둘 다를 비공개로 라우팅할 수 있습니다.

메타데이터 레이어

Lakehouse 런타임 카탈로그의 메타데이터 레이어는 원격 Apache Iceberg REST 카탈로그 엔드포인트에 연결하여 새로고침 간격에 따라 Apache Iceberg 네임스페이스 및 테이블 메타데이터를 동기화합니다. Lakehouse는 Secret Manager 또는 OIDC 토큰 제휴에 저장된 사용자 인증 정보를 사용하여 인증합니다.

기본적으로 백그라운드 메타데이터 새로고침 및 인증 요청은 TLS를 사용하여 공개 인터넷을 통해 이동합니다. 원격 카탈로그가 공개 네트워크 액세스를 제한하거나 보안 정책에 비공개 컨트롤 플레인 트래픽이 필요한 경우 AWS Glue Data Catalog(AWS), Databricks Unity Catalog (AWS 및 Azure), Snowflake Horizon Catalog (AWS 및 Azure)에 메타데이터 서비스 디렉터리 서비스(--metadata-service-directory-name)를 구성할 수 있습니다. 이 구성은 비공개 쿼리 전송(--service-directory-name)과 독립적으로 또는 함께 Dedicated Cross-Cloud Interconnect 또는 Partner Cross-Cloud Interconnect(AWS용)를 통해 메타데이터 및 인증 트래픽을 비공개로 라우팅합니다.

전송 계층

전송 계층을 사용하면 BigQuery 및 오픈소스 엔진이 메타데이터 레이어의 동기화된 메타데이터를 사용하여 원격 테이블 파일을 쿼리할 수 있습니다. 지원되는 원격 카탈로그의 경우 Lakehouse는 공개 인터넷 또는 전용 비공개 상호 연결을 통해 데이터를 쿼리할 수 있습니다.

아키텍처 및 보안 요구사항에 맞는 전송 방법을 선택합니다.

고객 소유 (CCI)

Dedicated Cross-Cloud Interconnect 또는 Partner Cross-Cloud Interconnect를 사용하여 비공개 Cross-Cloud Interconnect를 통해 Amazon S3 버킷 또는 Azure Data Lake Storage Gen2(ADLS Gen2) 컨테이너에 저장된 데이터를 쿼리하도록 BigQuery를 구성할 수 있습니다.

Private Interconnect를 사용하면 다음과 같은 이점이 있습니다.

  • 보안 강화: 데이터가 Google Cloud 와 AWS 또는 Azure 간의 비공개 네트워크 연결을 통해 이동하므로 공개 인터넷을 사용하지 않습니다.
  • 비용 절감: 특히 비공개 상호 연결 용량과 결합할 경우 인터넷 이그레스에 비해 AWS 또는 Azure의 이그레스 요금이 낮아질 수 있습니다.
  • 일관된 성능: 공개 인터넷에 비해 네트워크 지연 시간과 대역폭을 더 예측할 수 있습니다.

아키텍처 개요

비공개 쿼리를 사용 설정하려면 비공개 상호 연결을 통해 BigQuery에서 Amazon S3 버킷 또는 ADLS Gen2 컨테이너로의 경로를 구성합니다.Google Cloud 가상 프라이빗 클라우드 (VPC)의 핵심 구성요소는 내부 부하 분산기(ILB)입니다. ILB는 BigQuery의 요청을 AWS VPC 내의 Amazon S3(AWS PrivateLink를 사용하여 프로비저닝됨) 또는 Azure 가상 네트워크(VNet) 내의 ADLS Gen2(Azure Private Link를 사용하여 프로비저닝됨)의 비공개 엔드포인트로 분산합니다.

부하 분산, 확장성, 고가용성을 위해서는 여러 탄력적 네트워크 인터페이스 (ENI) 또는 네트워크 인터페이스 카드 (NIC)를 백엔드로 사용하는 ILB를 사용하는 것이 필수적입니다. 이는 Dedicated CCI 또는 Partner Interconnect 사용 여부에 관계없이 적용됩니다.

비공개 쿼리 워크플로는 다음 프로세스를 따릅니다.

  1. BigQuery는 서비스 디렉터리 서비스로 구성된 연결을 사용합니다.
  2. 서비스 디렉터리는 서비스 이름을 Google Cloud ILB의 내부 IP 주소로 변환합니다.
  3. ILB는 BigQuery에서 요청을 수신하고 구성된 백엔드에 배포합니다.
  4. ILB 백엔드는 하이브리드 연결 네트워크 엔드포인트 그룹 (NEG)이며, 각각 AWS VPC의 ENI 또는 Azure VNet의 NIC의 비공개 IP 주소를 가리킵니다.
  5. 트래픽은 ILB에서 NEG를 통해 비공개 상호 연결을 거쳐 AWS ENI 또는 Azure NIC로 흐릅니다.
  6. Amazon S3 VPC 인터페이스 엔드포인트 (AWS PrivateLink)의 일부인 AWS ENI 또는 ADLS Gen2 비공개 엔드포인트 (Azure Private Link)의 일부인 Azure NIC는 Amazon S3 또는 ADLS Gen2 서비스에 대한 비공개 액세스를 제공합니다.

공개 인터넷 (CCI 없음)

비공개 상호 연결을 구성하지 않으면 원격 카탈로그에 대한 쿼리가 기본적으로 공개 인터넷을 통해 이동합니다.

공개 인터넷을 통해 데이터를 쿼리할 때는 다음 사항을 고려하세요.

  • 표준 암호화: 데이터 액세스 요청 및 데이터 전송은 공개 인터넷을 통해 표준 TLS 프로토콜을 사용하여 전송 중에 암호화됩니다.
  • 이그레스 비용: 데이터 전송 시 원격 클라우드 제공업체 (예: AWS 또는 Azure)의 표준 인터넷 이그레스 요금이 발생하며, 이는 일반적으로 비공개 상호 연결 이그레스 요율보다 높습니다.
  • 가변 지연 시간: 네트워크 성능, 대역폭, 지연 시간은 공개 인터넷 라우팅 및 혼잡에 따라 달라지므로 전용 비공개 상호 연결에 비해 쿼리 실행 시간을 예측하기 어렵습니다.
  • 간소화된 설정: Google Cloud 또는 원격 클라우드 제공업체에 추가 네트워킹 인프라, VPC 피어링 또는 서비스 디렉터리 구성이 필요하지 않습니다.

아키텍처 개요

공개 인터넷을 통해 데이터를 쿼리할 때 Lakehouse는 비공개 Google Cloud 또는 원격 클라우드 네트워킹 인프라 없이 원격 카탈로그 및 객체 스토리지 엔드포인트에 직접 연결합니다.

공개 인터넷 쿼리 워크플로는 다음 프로세스를 따릅니다.

  1. BigQuery는 레이크하우스 카탈로그에 정의된 원격 테이블에 대해 쿼리를 시작합니다.
  2. Lakehouse는 Secret Manager 또는 OIDC 토큰 제휴에 저장된 사용자 인증 정보를 사용하여 원격 Apache Iceberg 카탈로그로 안전하게 인증합니다.
  3. Lakehouse는 공개 인터넷을 통해 테이블 메타데이터와 매니페스트 파일을 검색하여 관련 기본 데이터 파일 (예: Amazon S3 또는 ADLS Gen2)을 식별합니다.
  4. 기본 객체에 대한 데이터 액세스 요청은 표준 TLS 암호화를 사용하여 공개 인터넷을 통해Google Cloud 에서 직접 전송됩니다.
  5. 원격 스토리지 서비스는 Lakehouse에서 제공하는 범위가 지정된 임시 사용자 인증 정보를 사용하여 요청을 확인하고 공개 인터넷을 통해 요청된 파일 블록을 Google Cloud에 반환합니다.

지능형 캐싱

크로스 클라우드 이그레스 비용을 줄이고 동일한 파일 블록을 읽는 쿼리를 가속화하기 위해 추가 비용 없이 Lakehouse 페더레이션 카탈로그 및 BigQuery 크로스 클라우드 연결에서 크로스 클라우드 캐싱을 사용 설정할 수 있습니다.

크로스 클라우드 캐싱을 사용 설정하면 Lakehouse는 Amazon S3 또는 Azure Blob Storage에서 검색된 파일 블록을 Google Cloud 쿼리 실행 리전 내에 로컬로 캐시합니다. 동일한 파일 블록을 타겟팅하는 다른 쿼리를 포함한 후속 쿼리는 원격 클라우드에서 파일을 다시 가져오는 대신 로컬 캐시에서 직접 읽습니다.

Google은 캐시 용량, 보관, 제거를 자동으로 관리합니다. 실제 이그레스 비용 절감은 쿼리 패턴, 소스 파일 변경 빈도, 대상 Google Cloud리전의 캐시 보관에 따라 달라집니다. 캐시된 데이터를 제공하기 전에 모든 쿼리는 원격 스토리지 소스를 사용하여 메타데이터 및 액세스 권한을 확인하므로 오래된 데이터를 읽거나 취소된 권한을 우회하지 않습니다.

크로스 클라우드 캐싱은 기본적으로 사용 중지되어 있습니다. Lakehouse 페더레이션 카탈로그 또는 BigQuery 크로스 클라우드 연결을 만들거나 업데이트할 때 캐싱을 사용 설정하거나 사용 중지할 수 있습니다. 구성 안내는 지원되는 카탈로그 제공업체의 설정 가이드 또는 크로스 클라우드 연결 만들기를 참조하세요.

캐시 사용량 및 이그레스 비용 절감 확인

캐시 적중률을 확인하고 이그레스 비용 절감을 측정하려면 BigQuery 콘솔에서 작업 세부정보를 검사하거나 BigQuery JobStatistics2 쿼리 작업 통계에서 objectStorageStats(object_storage_stats) 필드를 확인합니다.

  • cloudProvider (cloud_provider): 객체 스토리지를 호스팅하는 클라우드 제공업체입니다 (예: AWS 또는 AZURE).
  • cacheBytesRead (cache_bytes_read): 원격 객체 스토리지 읽기를 방지하여 로컬 Google Cloud 캐시에서 읽은 총 바이트 수입니다.
  • objectStorageBytesRead (object_storage_bytes_read): 클라우드 제공업체의 객체 스토리지에서 직접 읽은 총 바이트 수입니다.

bq 명령줄 도구를 사용하여 이러한 측정항목을 검색하는 방법은 캐시 사용량 및 이그레스 비용 절감 모니터링을 참조하세요.

데이터 레지던시 및 관할권 고려사항

크로스 클라우드 캐싱을 사용 설정하면 Lakehouse는 쿼리가 실행되는 Google Cloud 리전에 저장된 원격 파일의 캐시된 사본을 일시적으로 저장합니다. 다른 지리적 리전 또는 관할권에 있는 파일 (예: us-east4에서 쿼리된 유럽 연합의 Amazon S3 또는 Azure Blob Storage)에 캐싱을 사용 설정하기 전에 대상Google Cloud 리전에 임시 캐시된 사본을 저장하는 것이 조직의 데이터 레지던시 및 규정 준수 요구사항을 충족하는지 확인하세요.

암호화 및 CMEK 지원

캐시된 데이터는 기본Google-owned and Google-managed encryption keys를 사용하여 저장 시 암호화됩니다. 크로스 클라우드 캐싱에는 고객 관리 암호화 키(CMEK)가 지원되지 않습니다.

조직에서 CMEK가 아닌 서비스 제한 조직 정책 제약 조건 (constraints/gcp.restrictNonCmekServices)을 적용하는 경우 Lakehouse는 제한된 테이블에 액세스하는 쿼리에 대해 캐싱을 자동으로 사용 중지합니다. 쿼리는 계속 실행되지만 파일 블록을 캐시하지 않고 원격 스토리지에서 직접 읽습니다.

ID 모드

Lakehouse는 크로스 클라우드 데이터 액세스를 위해 두 가지 ID 모드를 지원합니다.

  • 서비스 ID (기본값): 백그라운드 메타데이터 새로고침과 쿼리 모두 카탈로그의 서비스 계정을 사용하여 실행되며, 이는 OIDC (권장) 또는 보안 비밀 기반 인증으로 구성할 수 있습니다.
  • 사용자 ID 제휴: 백그라운드 메타데이터 새로고침은 카탈로그의 서비스 계정을 사용하여 실행되지만 쿼리는 최종 사용자의 ID를 사용하여 실행되고 원격 카탈로그로 전파됩니다. 이렇게 하면 원격 카탈로그가 Google Cloud 의 쿼리를 최종 사용자에게 할당하여 권한 적용 및 감사 로그 생성을 허용할 수 있습니다. 원격 카탈로그에서 ID 제휴를 구성해야 합니다.

다음 단계