전송 구성 문제 해결
이 문서는 BigQuery Data Transfer Service 전송을 설정할 때 발생하는 가장 일반적인 문제를 해결하는 방법에 대해 설명합니다. 이 문서는 발생 가능한 오류 메시지나 문제를 모두 다루지는 않습니다.
이 문서에서 다루지 않은 문제가 발생하면 지원을 요청 하세요.
Cloud Customer Care에 문의하기 전에 전송 구성과 전송 실행 세부정보를 캡처합니다. 이러한 세부정보를 가져오는 방법은 전송에 대한 정보 가져오기 및 전송 실행 세부정보 및 로그 메시지 보기를 참조하세요.
오류 검사
최초 전송 실행이 실패하면 실행 기록의 세부정보를 검토할 수 있습니다. 실행 기록에 나열된 오류를 참조하면 이 문서를 이용해 적절한 해결 방법을 쉽게 파악할 수 있습니다.
로그 탐색기를 사용하여 특정 전송 작업의 오류 메시지를 볼 수도 있습니다. 다음 로그 탐색기 필터는 특정 전송 구성 작업에 대한 정보를 오류 메시지와 함께 반환합니다.
resource.type="bigquery_dts_config"
labels.run_id="RUN_ID"
resource.labels.config_id="CONFIG_ID"
다음을 바꿉니다.
RUN_ID
: 특정 작업 실행의 ID 번호CONFIG_ID
: 전송 구성 작업의 ID 번호
고객 관리팀에 문의하기 전에 실행 기록 또는 로그 탐색기에서 오류 메시지를 포함한 관련 정보를 모두 캡처하세요.
일반적인 문제
일반적인 전송 문제를 진단할 때는 다음을 확인하세요.
- 전송 유형에 해당하는 문서 페이지에서 '시작하기 전에' 섹션의 모든 단계를 완료했는지 확인합니다.
- 전송 구성 속성이 올바릅니다.
- 전송을 만드는 데 사용한 사용자 계정에 기본 리소스에 대한 액세스 권한이 있습니다.
전송 구성이 올바르고 적절한 권한이 부여되었다면 일반적으로 발생하는 문제에 대한 다음 해결 방법을 참조하세요.
- 오류:
An unexpected issue was encountered. If this issue persists, please contact customer support.
- 해결 방법: 이 오류는 일반적으로 BigQuery의 일시적 중단이나 문제를 나타냅니다. 문제가 해결될 때까지 약 2시간이 소요됩니다. 문제가 지속되면 지원을 요청 하세요.
- 오류:
Quota Exceeded.
해결 방법: BigQuery의 로드 작업 할당량이 전송에 적용됩니다. 할당량을 상향 조정해야 하는 경우에는 Google Cloud 영업 담당자에게 문의하세요. 자세한 내용은 할당량 및 한도를 참조하세요.
Cloud Billing 내보내기를 BigQuery로 로드하면
Quota Exceeded
오류가 발생할 수 있습니다. Cloud Billing 내보내기 테이블과 BigQuery Data Transfer Service 서비스에서 생성된 대상 BigQuery 테이블은 모두 파티션을 나눕니다. 이러한 BigQuery Data Transfer Service 작업을 설정하는 동안 덮어쓰기 옵션을 선택하면 내보내는 데이터 양에 따라 할당량 오류가 발생합니다. 할당량 문제 해결에 대한 자세한 내용은 할당량 및 한도 오류 문제 해결을 참조하세요.Cloud Billing 내보내기의 BigQuery Data Transfer Service 작업으로 인해 오류가 발생하면 개별 Cloud Billing 내보내기 테이블의 파티션이 나뉘므로 BigQuery Data Transfer Service에서 만든 대상 테이블도 파티션이 나누어집니다. 따라서 덮어쓰기 옵션을 선택하면 해당 데이터 전송 작업을 설정할 때 해당 결제 계정의 경과 기간에 따라 (DML) 할당량 오류가 발생합니다. 할당량 문제 해결에 대한 자세한 내용은 할당량 및 한도 오류 문제 해결을 참조하세요.
- 오류:
The caller does not have permission.
해결 방법: Google Cloud 콘솔에서 로그인한 계정이 전송을 만들 때 BigQuery Data Transfer Service에 선택한 계정과 같은지 확인합니다.
Google Cloud 콘솔에 로그인한 계정:
BigQuery Data Transfer Service를 계속하려면 계정을 선택하세요.
- 오류:
Access Denied: ... Permission bigquery.tables.get denied on table ...
해결 방법: BigQuery Data Transfer Service 서비스 에이전트에 대상 데이터 세트에 대한
bigquery.dataEditor
역할이 부여되었는지 확인합니다. 이 부여는 전송을 만들고 업데이트할 때 자동으로 적용되지만 이후에 액세스 정책이 수동으로 수정되었을 수도 있습니다. 권한을 다시 부여하려면 데이터 세트에 액세스 권한 부여를 참조하세요.- 오류:
region violates constraint constraints/gcp.resourceLocations on the resource projects/project_id
해결 방법: 이 오류는 사용자가 위치 제한 조직 정책에 지정된 대로 제한된 위치에서 전송 구성을 만들려고 할 때 발생합니다. 해당 리전을 허용하도록 조직 정책을 변경하거나 조직 정책으로 제한되지 않는 리전에 있는 대상 데이터 세트로 전송 구성을 변경하면 이 문제를 해결할 수 있습니다.
승인 및 권한 문제
다음은 다른 데이터 소스에서 데이터를 전송할 때 발생할 수 있는 몇 가지 일반적인 권한 오류입니다.
- 오류:
BigQuery Data Transfer Service is not enabled for <project_id>
- 오류:
BigQuery Data Transfer Service has not been used in project <project_id> before or it is disabled ...
해결 방법: 다음 단계를 통해 서비스 에이전트 역할이 부여되었는지 확인합니다.
Google Cloud 콘솔에서 IAM 및 관리자 페이지로 이동합니다.
Google 제공 역할 부여 포함 체크박스를 선택합니다.
service-<project_number>@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com
이름의 서비스 계정이 표시되는지 또는 BigQuery 데이터 전송 서비스에 BigQuery Data Transfer Service 역할이 부여되었는지 확인합니다.
서비스 계정이 표시되지 않거나 BigQuery Data Transfer Service 서비스 에이전트 역할이 부여되지 않은 경우 Google Cloud 콘솔에서 사전 정의된 역할을 부여하거나 다음 Google Cloud CLI 명령어를 실행합니다.
gcloud projects add-iam-policy-binding PROJECT_NUMBER \ --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \ --role roles/bigquerydatatransfer.serviceAgent
PROJECT_NUMBER
를 이 서비스 계정과 연결된 프로젝트 번호로 바꿉니다.- 오류:
There was an error loading this table. Check that the table exists and that you have the correct permissions.
해결 방법:
Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.
전송에 사용된 대상 데이터 세트를 클릭합니다.
공유 메뉴를 클릭한 다음 권한을 클릭합니다.
BigQuery 데이터 편집자 역할을 확장합니다.
BigQuery Data Transfer Service 서비스 에이전트가 이 역할에 추가되었는지 확인합니다. 그렇지 않으면 BigQuery Data Transfer Service 서비스 에이전트에 BigQuery 데이터 편집자(
roles/bigquery.dataEditor
) 역할을 부여합니다.
- 오류:
A permission denied error was encountered: PERMISSION_DENIED. Please ensure that the user account setting up the transfer config has the necessary permissions, and that the configuration settings are correct
해결 방법:
Google Cloud 콘솔에서 데이터 전송 페이지로 이동합니다.
실패한 전송을 클릭한 다음 구성 탭을 선택합니다.
사용자 필드에 나열된 전송 소유자에게 데이터 소스에 필요한 모든 권한이 있는지 확인합니다.
전송 소유자에게 필요한 일부 권한이 없으면 사용자 인증 정보를 업데이트하여 필요한 권한을 부여합니다. 필요한 권한을 가진 전송 소유자를 다른 사용자로 변경할 수도 있습니다.
- 오류:
Authentication failure: User Id not found. Error code: INVALID_USERID
해결 방법: 전송 소유자의 사용자 ID가 잘못되었습니다. 사용자 인증 정보를 업데이트하여 전송 소유자를 다른 사용자로 변경합니다. 서비스 계정을 사용하는 경우 데이터 전송을 실행하는 계정에 서비스 계정을 사용하는 데 필요한 모든 권한이 있는지도 확인해야 합니다.
- 오류:
The user does not have permission
해결 방법: 전송 소유자가 서비스 계정이고, 해당 서비스에 필요한 모든 권한이 설정되어 있는지 확인합니다. 다른 가능성은 사용된 서비스 계정이 이 전송을 만드는 데 사용한 프로젝트가 아닌 다른 프로젝트에 생성되었을 수 있습니다. 프로젝트 간 권한 문제를 해결하려면 다음 리소스를 참조하세요.
- 프로젝트 간 서비스 계정 연결 사용 설정
- 프로젝트 간 서비스 계정 승인(필요한 권한 부여용)
- 오류:
HttpError 403 when requesting returned "The caller does not have permission"
googleapiclient.errors.HttpError: <HttpError 403 when requesting returned "The caller does not have permission". Details: "The caller does not have permission">
이 오류는 서비스 계정을 사용하여 예약된 쿼리를 설정하려고 시도할 때 표시될 수 있습니다.
해결 방법: 서비스 계정에 예약된 쿼리를 예약하거나 수정하는 데 필요한 모든 권한이 있는지 확인하고, 예약된 쿼리를 설정하는 사용자에게 서비스 계정에 대한 액세스 권한이 있는지 확인하세요.
올바른 권한이 모두 할당되었지만 여전히 오류가 발생하는 경우 프로젝트에 교차 프로젝트 서비스 계정 사용 중지 정책이 기본적으로 적용되는지 확인합니다. IAM 및 관리자 > 조직 정책으로 이동하여 정책을 검색하면 Google Cloud 콘솔에서 정책을 확인할 수 있습니다.
교차 프로젝트 서비스 계정 사용 중지 정책이 시행되면 다음을 수행하여 정책을 사용 중지할 수 있습니다.
- IAM 및 관리자 > 서비스 계정으로 이동하여 Google Cloud 콘솔을 통해 프로젝트와 연결된 서비스 계정을 식별합니다. 이 뷰에는 현재 프로젝트의 모든 서비스 계정이 표시됩니다.
- 다음 명령어를 사용하여 서비스 계정이 있는 프로젝트에서 정책을 사용 중지하세요. 이 정책을 비활성화하려면 사용자가 조직 정책 관리자여야 합니다. 조직 관리자만 사용자에게 이 역할을 부여할 수 있습니다.
gcloud resource-manager org-policies disable-enforce iam.disableCrossProjectServiceAccountUsage --project=[PROJECT-ID]
Amazon S3 전송 문제
다음은 Amazon S3 전송을 생성할 때 발생하는 일반적인 오류입니다.
Amazon S3 PERMISSION_DENIED
오류
- 오류:
The AWS Access Key Id you provided does not exist in our records.
- 해결 방법: 액세스 키가 존재하고 ID가 올바른지 확인합니다.
- 오류:
The request signature we calculated does not match the signature you provided. Check your key and signing method.
- 해결 방법: 전송 구성에 올바른 해당 보안 비밀 액세스 키가 있는지 확인
- 오류:
Failed to obtain the location of the source S3 bucket. Additional details: Access Denied
- 오류:
Failed to obtain the location of the source S3 bucket. Additional details: HTTP/1.1 403 Forbidden
- 오류:
Access Denied
(S3 오류 메시지) - 해결 방법: AWS IAM 사용자에게 다음을 수행할 권한이 있는지 확인합니다.
- Amazon S3 버킷을 나열합니다.
- 버킷의 위치를 가져옵니다.
- 버킷의 객체를 읽습니다.
- 오류:
Server unable to initialize object upload.; InvalidObjectState: The operation is not valid for the object's storage class
- 오류:
Failed to obtain the location of the source S3 bucket. Additional details: All access to this object has been disabled
- 해결 방법: Amazon Glacier에 보관처리된 객체를 모두 복원합니다. Amazon Glacier에 보관처리된 Amazon S3의 객체는 복원되기 전에는 액세스할 수 없습니다.
- 오류:
All access to this object has been disabled
- 해결 방법: 전송 구성의 Amazon S3 URI가 올바른지 확인합니다.
Amazon S3 전송 제한 오류
- 오류:
Number of files in transfer exceeds limit of 10,000.
- 해결 방법: Amazon S3 URI에서 와일드 카드의 수를 1개로 줄일 수 있는지 확인합니다. 이렇게 할 수 있으면, 전송 실행 당 최대 파일수가 더 많아지므로 새로운 전송 구성으로 다시 시도하세요. 또한, 전송 구성을 각각 소스 데이터의 일부를 전송하는 여러 전송 구성으로 분할할 수 있는지 확인할 수도 있습니다.
- 오류:
Size of files in transfer exceeds limit of 16492674416640 bytes.
- 해결 방법: 전송 구성을 각각 소스 데이터의 일부를 전송하는 여러 전송 구성으로 분할할 수 있는지 확인합니다.
일반적인 Amazon S3 문제
- 문제: 파일이 Amazon S3에서 전송되었지만 BigQuery로 로드되지 않습니다.
전송 로그는 다음과 유사하게 표시됩니다.
Moving data from Amazon S3 to Google Cloud complete: Moved N object(s). No new files found matching Amazon_S3_URI.
해결 방법: 전송 구성의 Amazon S3 URI가 올바른지 확인합니다. 전송 구성이 공통의 프리픽스가 있는 모든 파일을 로드하기 위한 것이라면 Amazon S3 URI가 와일드 카드로 끝나는지 확인하세요.예를 들어
s3://my-bucket/my-folder/
의 모든 파일을 로드하려면 전송 구성의 Amazon S3 URI가s3://my-bucket/my-folder/
가 아니라s3://my-bucket/my-folder/*
여야 합니다.
Azure Blob Storage 전송 문제
다음은 Blob Storage 전송을 만들 때 발생하는 일반적인 오류입니다.
- 오류:
Number of files in transfer exceeds the limit of 10,000.
- 해결 방법: Blob 스토리지 데이터 경로에서 와일드카드 수를 0 또는 1로 줄여서 파일 한도를 10,000,000개로 늘립니다. 또한 각 소스의 일부를 전송하는 여러 전송 구성으로 분할합니다.
- 오류:
Size of files in transfer exceeds the limit of 15 TB.
- 해결 방법: 각 소스 데이터의 일부를 전송하는 여러 전송 구성으로 분할합니다.
- 오류:
Provided Azure SAS Token does not have required permissions.
- 해결 방법: 전송 구성의 Azure SAS 토큰이 올바른지 확인합니다. 자세한 내용은 공유 액세스 서명(SAS)을 참조하세요.
- 오류:
Transfer encountered error, status:PERMISSION_DENIED, details:[This request is not authorized to perform this operation.]
- 해결 방법: BigQuery Data Transfer Service 작업자가 사용하는 IP 범위가 허용된 IP 목록에 추가되었는지 확인합니다. 자세한 내용은 IP 제한사항을 참조하세요.
- 문제: 파일이 Blob Storage에서 전송되었지만 BigQuery로 로드되지 않습니다.
전송 로그는 다음과 유사하게 표시됩니다.
Moving data to Google Cloud complete: Moved <var>N</var> object(s). No new files found matching Blob Storage data path.
해결 방법: 전송 구성의 Blob Storage 데이터 경로가 올바른지 확인합니다.
Campaign Manager 전송 문제
다음은 Campaign Manager 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
Import failed - no data was available for import. Please verify that data existence was expected.
- 오류:
No data available for the requested date. Please try an earlier run date or verify that data existence was expected.
해결 방법: 전송에 올바른 ID를 사용하고 있는지 확인합니다. 올바른 ID를 사용 중이면 Campaign Manager Cloud Storage 버킷에 지정된 기간에 해당하는 데이터 전송 V2.0 파일이 있는지 확인합니다. 파일이 있다면 영향을 받은 기간의 백필을 예약하세요. Campaign Manager 백필 요청 생성에 관한 자세한 내용은 백필 설정을 참조하세요.
Cloud Storage 버킷에서 파일 생성 시간을 확인하여 전송 실행이 예약되었을 때 파일이 있었는지 여부를 확인할 수 있습니다. 일부 경우 Campaign Manager 데이터 전송 파일의 첫 번째 배치가 생성되기 전에 하루의 첫 번째 전송 실행이 예약될 수 있습니다. 당일 이후의 실행은 Campaign Manager에서 생성한 모든 파일을 로드합니다.
- 오류:
A permission denied error was encountered: PERMISSION_DENIED. Please ensure that the user account setting up the transfer config has the necessary permissions, and that the configuration settings are correct.
해결 방법: Campaign Manager 전송을 만드는 사용자에게 데이터 전송 V2.0 파일이 포함된 Cloud Storage 버킷에 대한 읽기 권한이 있어야 합니다. 사용자는 Campaign Manager 관리자로부터 Cloud Storage 버킷 정보를 확인하고 액세스를 요청할 수 있습니다.
Google Ads 전송 문제
다음은 Google Ads 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
Import failed - no data was available for import. Please verify that data existence was expected.
- 오류:
No data available for the requested date. Please try an earlier run date or verify that data existence was expected.
- 해결 방법: Google Ads 전송을 생성할 때 이 오류가 발생하면 오류 메시지 화면을 캡처하여 지원을 요청합니다.
- 오류:
AuthenticationError.NOT_ADS_USER.
- 해결 방법: Google Ads 전송을 설정하는 사용자는 Google Ads 계정/로그인이 있어야 합니다.
- 오류:
ERROR_GETTING_RESPONSE_FROM_BACKEND.
- 해결 방법: Google Ads 전송 실행이 실패하고
ERROR_GETTING_RESPONSE_FROM_BACKEND
가 반환되면 전송 구성에서 삭제/중지 항목 제외 옵션을 사용 설정하고 백필을 설정하여 실패한 전송 실행이 영향을 끼친 기간 동안의 데이터를 가져옵니다. - 경고:
Data for the report ClickStats was not available for the specified date.
- 오류:
INVALID_DATE_RANGE_FOR_REPORT.
- 해결 방법: 90일보다 더 오랜 기간이 지난 클릭 실적 보고서 데이터를 백필하는 경우에 발생합니다. 이 경우 위의 경고/오류가 표시되며,
ClickStats
테이블이 지정된 날짜에 업데이트되지 않습니다. - 오류:
Error while processing report for table table_name for account id account_id. Http(400) Bad Request;
- 오류:
AuthorizationError.TWO_STEP_VERIFICATION_NOT_ENROLLED
- 해결 방법: 이 전송과 연결된 사용자 계정에 2단계 인증(또는 다중 인증)이 사용 설정되지 않은 경우 이 계정에 대한 2단계 인증을 사용 설정한 다음 실패한 전송 작업을 다시 실행합니다. 서비스 계정은 2단계 인증 요구사항에서 제외됩니다.
- 오류:
Quota exceeded: Your project exceeded quota for imports per project
- 해결 방법: BigQuery의 로드 작업 할당량이 전송에 적용됩니다. 로드 작업의 할당량 한도에 도달하면 table_filter를 사용하거나 사용되지 않는 전송 구성을 삭제하거나 새로고침 기간을 줄여 불필요한 로드를 줄여보세요. 할당량을 상향 조정해야 하는 경우에는 Google Cloud 영업 담당자에게 문의하세요. 자세한 내용은 할당량 및 한도를 참조하세요.
Google Ad Manager 전송 문제
다음은 Google Ad Manager 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
No data available for the requested date. Please try an earlier run date or verify that data existence was expected.
- 오류:
Import failed - no data was available for import. Please verify that data existence was expected.
해결 방법: Google Ad Manager Cloud Storage 버킷에 지정된 기간에 해당하는 데이터 전송 파일이 있는지 확인합니다. Google Ad Manager 관리자는 사용자의 데이터 전송 파일을 포함한 Cloud Storage 버킷을 관리합니다. Google Ad Manager 전송을 만드는 사용자는 버킷에 대한 읽기 권한이 있는 Google 그룹의 구성원이어야 합니다.
Google Ad Manager 데이터 전송 버킷의 파일 읽기를 시도하여 Cloud Storage 권한을 확인할 수 있습니다. Google Ad Manager Cloud Storage 버킷에 대한 자세한 내용은 Google Ad Manager 저장소 버킷 액세스를 참조하세요.
Cloud Storage 버킷에서 파일 생성 시간을 확인하여 전송 실행이 예약되었을 때 파일이 있었는지 여부를 확인할 수 있습니다. 경우에 따라 Google Ad Manager 데이터 전송 파일의 첫 번째 배치가 생성되기 전에 하루의 첫 번째 전송 실행이 예약될 수 있습니다. 당일 이후의 실행은 Google Ad Manager에서 생성한 모든 파일을 로드합니다.
데이터 전송 버킷에 파일이 있고 사용자에게 읽기 권한이 있다면 영향을 받은 기간에 대하여 백필을 예약하세요. Google Ad Manager 백필 요청 생성에 관한 자세한 내용은 백필 설정을 참조하세요.
- 오류:
AuthenticationError: NO_NETWORKS_TO_ACCESS.
해결 방법: Google Ad Manager 네트워크에 대한 읽기 권한이 있는지 확인합니다. 네트워크 액세스 권한을 판단하는 데 도움이 필요하면 Google Ad Manager 지원팀에 문의하세요.
- 오류:
Error code 9 : Field field_name?field_name?field_name?RefererURL is unknown.; Table: table_name
해결 방법: 손(þ) 구분 기호가 사용되고 있지 않은지 확인합니다. 손 구분 기호는 현재 지원되지 않습니다. 손을 사용 중이면 오류 메시지에 ? 표시가 나타납니다.
- 오류:
Incompatible table partitioning specification. Destination table exists with partitioning specification interval(type:Day,field:) clustering
해결 방법: Google Ads Manager 커넥터는 클러스터링이 있는 데이터 세트로의 데이터 전송을 지원하지 않습니다. 대신 클러스터링 없는 데이터 세트를 사용하세요.
Google 판매자 센터 전송 문제
다음은 Google 판매자 센터 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
No data to transfer found for the Merchant account. If you have just created this transfer - you may need to wait for up to 90 minutes before the data of your Merchant account are prepared and available for the transfer.
- 해결 방법: 이 오류는 일정 섹션에서 기본 시작 날짜와 시간을 사용하여 전송을 설정할 경우에 발생합니다. 기본 예약 값을 사용할 경우 전송이 생성된 직후에 첫 번째 전송 실행이 시작되지만 전송할 판매자 계정 데이터가 준비되어 있지 않기 때문에 전송이 실패합니다. 90분 동안 기다린 후 오늘 날짜로 백필을 설정하거나 다음 예약이 실행되는 내일까지 기다리면 됩니다.
- 오류:
No data to transfer found for Merchant account. This can be because your account currently doesn't have any products.
- 해결 방법: 이 오류는 판매자 계정에 제품이 없음을 나타냅니다. 판매자 계정에 제품을 추가하면 전송이 작동하기 시작합니다.
- 오류:
Transfer user doesn't have access to the Merchant account. Please verify access in the Users section of the Google Merchant Center.
- 해결 방법: 이 오류는 전송을 설정한 사용자에게 전송에 사용되는 판매자 계정에 대한 액세스 권한이 없음을 나타냅니다. 이 문제를 해결하려면 Google 판매자 센터에서 누락된 계정 액세스 권한을 확인하고 부여하세요.
- 오류:
Transfer user doesn't have user roles that allows access to the product data of the Merchant account. Please verify access and roles in the Users section of the Google Merchant Center.
- 해결 방법: 이 오류는 전송을 설정한 사용자에게 전송에 사용되는 판매자 계정의 제품 데이터에 대한 액세스 권한이 없음을 나타냅니다. 이 문제를 해결하려면 Google 판매자 센터에서 누락된 사용자 역할을 확인하고 부여하세요.
- 오류:
Historical backfills are currently not supported.
- 해결 방법: 이 오류는 이전 날짜로 백필을 설정할 경우에 발생합니다. 이 오류는 예상된 오류입니다. 이전 날짜로의 백필은 현재 지원되지 않습니다. 예약된 일일 실행이 이미 완료된 후 오늘의 데이터를 새로 고치기 위해 오늘 날짜로 백필을 설정하는 것만이 가능합니다.
Google Play 전송 문제
다음은 Google Play 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
No jobs to start for run
- 해결 방법: 사용자에게 Google Play 전송을 시작할 수 있는 충분한 권한이 있는지 확인한 후 사용자가 전송을 설정할 때 올바른 Cloud Storage 버킷를 지정했는지 확인합니다. 그래도 사용자에게 오류가 발생한다면 지원을 요청하면 됩니다.
- 문제: 수익 및 재무 보고서가 BigQuery에 로드되지 않음
- 해결 방법: 재무 Google Play 보고서에 액세스하려면 사용자에게
View financial data
권한이 있어야 합니다. 개발자 계정 권한을 관리하려면 개발자 계정 사용자 추가 및 권한 관리를 참조하세요.
Oracle 전송 문제
다음은 Oracle 전송을 생성할 때 발생할 수 있는 일반적인 문제입니다.
- 오류:
PERMISSION_DENIED. ORA-01017: invalid username/password; logon denied
- 해결 방법: 제공된 Oracle 사용자 인증 정보가 유효한지 확인합니다.
- 오류:
PERMISSION_DENIED. ORA-01045: user lacks CREATE SESSION privilege; logon denied
- 해결 방법: Oracle 사용자에게
CREATE SESSION
시스템 권한을 부여합니다. Oracle 권한 부여에 대한 자세한 정보는GRANT
를 참조하세요. - 오류:
SERVICE_UNAVAILABLE. ORA-12541: Cannot connect. No listener at host
또는HOSTNAME
portPORT
SERVICE_UNAVAILABLE. Connection failed: IO Error. The Network Adapter could not establish the connection
- 해결 방법: 제공된 호스트 이름 및 포트 세부정보가 올바르고, 네트워크 연결이 올바르게 설정되었는지 확인합니다.
- 오류:
NOT_FOUND. ORA-00942: table or view does not exist
해결 방법: 다음 각 항목을 확인합니다.
- 테이블 또는 뷰 이름의 철자가 정확합니다.
- 참조된 테이블 또는 뷰 이름이 있습니다.
- 동의어는 기존 테이블 또는 뷰를 가리킵니다. 테이블 또는 뷰가 있는 경우 테이블에 대한 액세스 권한이 필요한 데이터베이스 사용자에게 올바른 액세스 권한이 부여되었는지 확인합니다. 그렇지 않으면 테이블을 만듭니다.
- 다른 스키마의 테이블 또는 뷰에 액세스하려는 경우 올바른 스키마가 참조되고 객체에 대한 액세스 권한이 부여되었는지 확인합니다.
- 오류:
NOT_FOUND. Schema schema does not exist.
- 해결 방법: 지정된 스키마가 없습니다.
- 오류:
DEADLINE_EXCEEDED
- 해결 방법: 전송 실행이 최대 6시간 기한 내에 완료되지 않았습니다. 대규모 전송을 여러 개의 작은 전송으로 분할하여 전송 실행 시간을 줄입니다.
- 오류:
INTERNAL
- 해결 방법: 다른 이유로 인해 전송이 실패했습니다. 이 문제를 해결하려면 Cloud Customer Care에 문의하세요.
- 오류:
SQL Error [1950] [42000]: ORA-01950: no privileges on tablespace 'TablespaceName'
- 해결 방법: 사용자에게 기본 테이블스페이스를 할당합니다. 자세한 내용은 기본 테이블스페이스 할당을 참조하세요.
- 오류:
403 PERMISSION_DENIED. Required 'compute.subnetworks.use' permission for project
해결 방법: 이 오류는 네트워크 연결이 전송 구성이 있는 프로젝트와 다른 프로젝트에 있는 경우에 발생할 수 있습니다. 이 문제를 해결하려면 네트워크 연결이 있는 프로젝트에서 다음 권한을 서비스 계정 (예:
service-customer_project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com
)에 부여해야 합니다.compute.networkAttachments.get
compute.networkAttachments.update
compute.subnetworks.use
compute.regionOperations.get
또한, 이 오류는 네트워크 연결이 공유 VPC와 같이 다른 프로젝트에 있는 VPC(가상 프라이빗 클라우드)에 연결하려고 하는 경우에도 발생할 수 있습니다. 이 경우 서비스 계정(예:
service-customer_project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com
)에 공유 VPC의 호스팅 프로젝트에 대한compute.subnetworks.use
권한을 부여해야 합니다.
Salesforce 전송 문제
다음은 Salesforce 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
Permission Denied: invalid_client. invalid client credentials
- 해결 방법: 제공된 ClientSecret이 유효한지 확인합니다.
- 오류:
Permission Denied: invalid_client. client identifier invalid
- 해결 방법: 제공된 ClientId가 유효한지 확인합니다.
- 오류:
Permission Denied: Error encountered while establishing connection
- 해결 방법: 제공된 Salesforce MyDomain 이름이 올바른지 확인합니다.
- 오류:
NOT_FOUND. asset type asset_name is not supported. If you are attempting to use a custom object, be sure to append the "__c" after the entity name. Please reference your WSDL or use the describe call for the appropriate names.
- 해결 방법: 오류 코드의 안내를 따르고 제공된 애셋 이름이 올바른지 확인합니다.
- 오류:
SERVICE_UNAVAILABLE
- 해결 방법: 서비스가 일시적으로 요청을 처리할 수 없습니다. 잠시 후에 다시 작업을 시도하세요.
- 오류:
DEADLINE_EXCEEDED
- 해결 방법: 전송 실행이 최대 6시간 기한 내에 완료되지 않았습니다. 큰 전송을 여러 개의 작은 전송으로 분할하여 전송 실행 시간을 최소화하세요.
Teradata 전송 문제
다음은 Teradata 전송을 만들 때 발생할 수 있는 일반적인 문제입니다.
- 오류:
Skipping extraction since table does not have change tracking column.
해결 방법: 기존 주문형 전송 구성을 사용하여 이미 마이그레이션된 테이블에서 Teradata 전송을 수행하려고 할 때 이전 메시지가 표시될 수 있습니다. 이미 마이그레이션된 테이블에서 새 전송을 시작하려면 주문형 설정이 적용된 새 전송 구성을 만듭니다.
주문형 전송 구성을 사용하여 전송을 반복하면 BigQuery Data Transfer Service는 증분 전송으로 실행을 시도하지만 전송 구성에 올바른 증분 설정이 적용되지 않았기 때문에 해당 테이블을 건너뜁니다. 다양한 유형의 전송에 대한 자세한 내용은 주문형 또는 증분 전송을 참조하세요.
- 문제:
CHAR
(N) 데이터 유형을 전송하면 문자열 길이가 짧아지도록 최대 N자까지 공백이 추가됩니다. 해결 방법:
CHAR
데이터를VARCHAR
로 변환하고 소스에서 추가 공백을 삭제합니다. 이 문제는CHAR
이 고정 길이 문자열이기 때문에 발생합니다. 반면에 가변 길이 문자열에는VARCHAR
를 사용해야 합니다. 마이그레이션 후RTRIM
함수를 사용하여 BigQuery에서 공백을 삭제할 수도 있습니다.RTRIM
함수를 사용하는 쿼리는 다음 예시와 비슷합니다.UPDATE migrated_table SET migrated_char_column = RTRIM(migrated_char_column) WHERE true;
YouTube 전송 문제
다음은 YouTube 전송을 생성할 때 발생하는 일반적인 오류입니다.
- 오류:
Import failed - no data was available for import. Please verify that data existence was expected.
- 오류:
No data available for requested date. Please try an earlier run date or verify that data existence was expected.
해결 방법: YouTube 보고 작업을 만든 적이 없다면 YouTube에서 사용자를 대신해 BigQuery Data Transfer Service에 대한 보고서를 생성할 수 있도록 최소한 2일 정도 기다립니다. 다른 작업은 필요하지 않습니다. 전송은 처음 2일 동안은 실패하고 3일 차에 성공하게 됩니다. YouTube 보고 작업을 만든 적이 있다면 전송을 생성하는 사용자에게 보고서 읽기 권한이 있는지 확인합니다.
전송이 올바른 계정으로 설정되어 있는지도 확인해야 합니다. OAuth 대화상자에서 데이터를 로드하려는 채널을 선택해야 합니다.
- 오류:
No reports for reporting job with name name.
해결 방법: 이 오류는 사실상 오류가 아니며, 지정된 보고서에 데이터가 없음을 나타내는 경고입니다. 이 경고는 무시해도 됩니다. 이후의 전송은 계속해서 실행됩니다.
- 문제: 전송을 통해 생성된 결과 테이블이 불완전하거나, 예기치 않은 결과가 발생합니다.
- 해결 방법: 사용하는 계정이 여러 개라면 YouTube 권한 대화상자가 표시될 때 올바른 계정을 선택해야 합니다.
- 문제: YouTube 분석과 BigQuery YouTube 전송 간에 데이터가 일치하지 않습니다.
배경: BigQuery YouTube 전송에서 YouTube Reporting API를 사용하여 데이터를 직접 BigQuery 데이터 세트로 수집합니다. 반면 YouTube 분석 대시보드에서는 YouTube Analytics API를 사용하여 데이터를 가져옵니다. 생성된 Reporting API에서 YouTube가 생성하는 수치는 최종 수치로 취급되어야 하지만 YouTube 분석 대시보드/API에 표시되는 숫자는 추정치로 취급되어야 합니다. 두 API 간에 불일치가 다소 발생할 수 있습니다.
해결 방법: 보고된 수치가 잘못된 경우 YouTube 시스템과 BigQuery Data Transfer Service YouTube 전송에서 누락된 숫자를 백필하고 백필된 일수에 대해 새로 생성된 보고서에서 사용할 수 있도록 설정됩니다. BigQuery Data Transfer Service YouTube 구성은 단순히 YouTube Reporting API로 생성된 모든 사용 가능한 보고서를 로드하므로, BigQuery 전송에서 향후 생성된 YouTube 보고서를 자동으로 가져올 때 새로 생성되고 업데이트된 데이터도 고려하여 올바른 날짜 파티션 테이블로 수집합니다.
YouTube 권한 문제
YouTube 콘텐츠 관리자 보고서의 전송을 설정하는 사용자는 최소한 CMS user
권한이 있어야 합니다. CMS user
권한은 생성 중인 전송에 대한 각 콘텐츠 관리자에게 부여되어야 합니다.
할당량 문제
- 오류:
Quota exceeded: Your project exceeded quota for imports per project.
- 해결 방법: 프로젝트에 너무 많은 전송이 예약되지 않았는지 확인합니다. 전송으로 시작된 로드 작업 수 계산에 대한 자세한 내용은 할당량 및 한도를 참조하세요.