SAP Datasphere 통합 쿼리

데이터 분석가는 통합 쿼리를 사용하여 BigQuery에서 SAP Datasphere의 관계형 데이터를 쿼리할 수 있습니다.

BigQuery SAP Datasphere 제휴를 사용하면 BigQuery에서 데이터를 복사하거나 이동하지 않고 SAP Datasphere에 위치한 데이터를 실시간으로 쿼리할 수 있습니다.

SAP Datasphere에서 SQL 쿼리를 실행하려면 BigQuery 내에서 EXTERNAL_QUERY 함수에 SQL 쿼리를 지정합니다. 그런 다음 결과가 SAP Datasphere에서 BigQuery로 전송됩니다.

제한사항

  • 소비용으로 노출된 관계형 뷰만 쿼리할 수 있습니다. SAP Datasphere의 다른 객체는 EXTERNAL_QUERY를 통해 통합된 쿼리에 액세스할 수 없습니다.
  • Google Cloud에 속하는 모든 외부 IP 주소에서 SAP Datasphere에 연결할 수 있으며 시간이 지남에 따라 해당 IP 주소가 변경될 수 있습니다. 따라서 SAP Datasphere에서 허용 목록에 모든 Google Cloud 외부 IP 주소를 추가해야 합니다.
  • 통합 쿼리 지연 시간은 SAP Datasphere에서 직접 실행된 경우 동일한 쿼리보다 현저히 길 수 있습니다.
  • SAP Datasphere에는 추가 SQL 푸시다운이 지원되지 않습니다.
  • SAP Datasphere SQL 쿼리는 함수 결과가 포함된 열에 대해 별칭을 지정해야 합니다.

시작하기 전에

BigQuery 관리자가 SAP Datasphere 연결을 만들어 사용자와 공유했는지 확인합니다.

필요한 역할

SAP Datasphere를 쿼리하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 BigQuery 연결 사용자(roles/bigquery.connectionUser) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

데이터 쿼리

GoogleSQL 쿼리에서 통합 쿼리를 SAP Datasphere로 보내려면 EXTERNAL_QUERY 함수를 사용합니다.

다음 예시는 이름이 ORDERS인 SAP Datasphere의 테이블과 mydataset.customers라는 BigQuery의 테이블을 조인하는 통합 쿼리입니다.

SELECT c.customer_id, c.name, rq.first_order_date
FROM mydataset.customers AS c
LEFT OUTER JOIN EXTERNAL_QUERY(
  'connection_id',
  '''SELECT CUSTOMER_ID, MIN(ORDER_DATE) AS first_order_date
     FROM ORDERS
     GROUP BY CUSTOMER_ID''') AS rq
  ON rq.customer_id = c.customer_id
GROUP BY c.customer_id, c.name, rq.first_order_date;

SAP Datasphere 테이블 스키마 보기

다음 예시에서는 EXTERNAL_QUERY 함수를 사용하여 SAP Datasphere의 SYS 스키마에서 데이터베이스 메타데이터를 검색합니다.

-- List all views in a schema.
SELECT * FROM EXTERNAL_QUERY(
  'connection_id',
  '''SELECT VIEW_NAME FROM SYS.VIEWS
     WHERE SCHEMA_NAME = 'MY_SCHEMA'''');
-- List all columns in a view.
SELECT * FROM EXTERNAL_QUERY(
  'connection_id',
  '''SELECT COLUMN_NAME, DATA_TYPE_NAME
     FROM SYS.VIEW_COLUMNS
     WHERE SCHEMA_NAME = 'MY_SCHEMA' AND
           VIEW_NAME = 'my_view'
     ORDER BY POSITION''');

가격 책정

통합 쿼리 실행 비용은 다음 세 가지 요소를 기준으로 합니다.

  • SAP Datasphere에서 쿼리를 실행하는 컴퓨팅 비용입니다.
  • SAP Datasphere에서 BigQuery로 쿼리 결과를 전송하는 대역폭 비용입니다.
  • BigQuery에서 쿼리를 실행하는 데 드는 컴퓨팅 비용입니다.

SAP Datasphere 관련 비용은 사용하는 SAP 서비스 유형에 따라 다릅니다. 대역폭 비용을 제한하려면 최종 결과를 계산하는 데 필요하지 않은 모든 열과 행을 제외하도록 EXTERNAL_QUERY에 쿼리를 작성하는 것이 좋습니다.

BigQuery에서 통합 쿼리를 실행하는 데는 추가 비용이 들지 않습니다. BigQuery 가격에 대한 자세한 내용은 가격 책정을 참조하세요.

다음 단계