복사 작업에서 Google Cloud Storage 구성

이 문서에서는 데이터 파이프라인의 복사 작업을 사용하여 Google Cloud Storage 간 데이터를 복사하는 방법을 간략하게 설명합니다.

필수 조건

Google Cloud Storage 계정에는 다음 설정이 필요합니다.

  1. Google Cloud Storage 계정에 대한 상호 운용성을 사용하도록 설정합니다.

  2. 대상 Google Cloud Storage 버킷에서 복사하려는 데이터가 포함된 기본 프로젝트를 설정합니다.

  3. GCP에서 클라우드 IAM을 사용하여 서비스 계정을 만들고 적절한 수준의 권한을 정의합니다.

  4. 이 서비스 계정에 대한 액세스 키를 생성합니다.

    Screenshot showing the access key for Google Cloud Storage.

필요한 사용 권한

Google Cloud Storage에서 데이터를 복사하려면 개체 작업에 대해 다음 권한이 부여되었는지 확인합니다. storage.objects.getstorage.objects.list

또한 storage.buckets.list 연결 테스트 및 루트에서 검색과 같은 작업에는 권한이 필요합니다.

Google Cloud Storage 역할 및 관련 권한의 전체 목록은 Google Cloud 사이트의 Cloud Storage에 대한 IAM 역할로 이동합니다.

지원되는 형식

Google Cloud Storage는 다음 파일 형식을 지원합니다. 형식 기반 설정은 각 문서를 참조하세요.

지원되는 구성

복사 작업에서 각 탭의 구성에 대해 각각 다음 섹션으로 이동합니다.

일반

일반 탭 구성의 경우 일반으로 이동합니다.

원본

다음 속성은 복사 작업의 원본 탭에서 Google Cloud Storage에 대해 지원됩니다.

Screenshot showing source tab and the list of properties.

다음 속성이 필요합니다.

  • 데이터 저장소 유형: 외부를 선택합니다.

  • 커넥트ion: 연결 목록에서 Google Cloud Storage 연결을 선택합니다. 연결이 없으면 새로 만들기를 선택하여 새 Google Cloud Storage 연결을 만듭니다.

  • 파일 경로 형식: 파일 경로, 접두사, Wild카드 파일 경로 또는 파일 목록을 파일 경로 형식으로 선택할 수 있습니다. 이러한 각 설정의 구성은 다음과 같습니다.

    • 파일 경로: 이 형식을 선택하면 지정된 버킷 또는 파일 경로에 지정된 폴더/파일 경로에서 데이터를 복사할 수 있습니다.

    • 접두사: 이 형식을 선택하는 경우 버킷접두사를 지정합니다.

      • 버킷: Google Cloud Storage 버킷 이름을 지정합니다. 필수 항목입니다.

      • 접두사: 원본 Google Cloud Storage 파일을 필터링하기 위해 지정된 버킷 아래의 Google Cloud Storage 키 이름에 대한 접두사입니다. 이름이 선택된 given_bucket/this_prefix Google Cloud Storage 키입니다. Google Cloud Storage의 서비스 쪽 필터를 활용하여 야생 필터보다 더 나은 성능을 제공합니다카드.

        Screenshot showing how to configure Prefix file path type.

    • Wild카드 파일 경로: 이 형식을 선택하는 경우 버킷와일드카드 경로를 지정합니다.

      • 버킷: Google Cloud Storage 버킷 이름을 지정합니다. 필수 항목입니다.

      • 와일드카드 경로: 지정된 버킷 아래에 와일드카드 문자가 있는 폴더 또는 파일 경로를 지정하여 원본 폴더 또는 파일을 필터링합니다.

        허용되는 와일드카드는 *(문자 0자 이상 일치) 및 ?(문자 0자 또는 1자 일치)입니다. 폴더 이름에 wild카드 또는 이 이스케이프 문자가 있는 경우 이스케이프하는 데 사용합니다^. 더 많은 예제를 보려면 폴더 및 파일 필터 예제로 이동합니다.

        Screenshot showing how to configure wildcard file path.

        • Wild카드 폴더 경로: 지정된 버킷 아래에 와일드카드 문자가 있는 폴더 경로를 지정하여 원본 폴더를 필터링합니다.

        • Wild카드 파일 이름: 지정된 버킷 및 폴더 경로(또는 wild카드 폴더 경로) 아래에 wild카드 문자를 사용하여 파일 이름을 지정하여 원본 파일을 필터링합니다.

    • 파일 목록: 이 형식을 선택하는 경우 지정된 파일 집합을 복사하도록 표시할 폴더 경로파일 경로 목록을 지정합니다. 복사할 파일 목록이 포함된 텍스트 파일, 구성된 경로의 상대 경로인 한 줄당 하나의 파일을 가리킵니다. 더 많은 예제를 보려면 파일 목록 예제로 이동합니다.

      Screenshot showing how to configure List of files.

      • 폴더 경로: 지정된 버킷 아래에 있는 폴더의 경로를 지정합니다. 필수 항목입니다.
      • 파일 목록 경로: 복사할 파일 목록이 포함된 텍스트 파일의 경로를 지정합니다.
  • 재귀: 데이터를 하위 폴더에서 재귀적으로 읽는지 또는 지정된 폴더에서만 읽는지 여부를 나타냅니다. 이 검사box가 선택되고 대상이 파일 기반 저장소인 경우 대상에서 빈 폴더 또는 하위 폴더가 복사되거나 만들어지지 않습니다.

  • 파일 형식: 드롭다운 목록에서 적용된 파일 형식을 선택합니다. 설정 선택하여 파일 형식을 구성합니다. 다른 파일 형식의 설정에 대한 자세한 내용은 지원되는 형식문서를 참조하세요.

고급에서 다음 필드를 지정할 수 있습니다.

  • 마지막으로 수정한 날짜별로 필터링: 지정한 마지막 수정 날짜를 기준으로 파일이 필터링됩니다. 파일 경로 형식을 파일 목록으로 구성할 때는 이 속성이 적용되지 않습니다.

    • 시작 시간(UTC): 마지막으로 수정한 시간이 구성된 시간보다 크거나 같은 경우 파일이 선택됩니다.
    • 종료 시간(UTC): 마지막으로 수정한 시간이 구성된 시간보다 작은 경우 파일이 선택됩니다.

    시작 시간(UTC)에 날짜/시간 값이 있지만 종료 시간(UTC)이 NULL이면 마지막으로 수정한 특성이 datetime 값보다 크거나 같은 파일이 선택됩니다. 종료 시간(UTC)에 날짜/시간 값이 있지만 시작 시간(UTC)이 NULL이면 마지막으로 수정한 특성이 날짜/시간 값보다 작은 파일이 선택됩니다. 속성은 NULL일 수 있습니다. 즉, 데이터에 파일 특성 필터가 적용되지 않습니다.

  • 파티션 검색 사용: 파일 경로에서 파티션을 구문 분석하고 추가 원본 열로 추가할지 여부를 지정합니다. 기본적으로 선택되지 않으며 이진 파일 형식을 사용하는 경우 지원되지 않습니다.

    • 파티션 루트 경로: 파티션 검색을 사용하는 경우 분할된 폴더를 데이터 열로 읽기 위해 절대 루트 경로를 지정합니다.

      지정되지 않은 경우 기본적으로 다음과 같이 지정됩니다.

      • 원본에서 파일 경로 또는 파일 목록을 사용하는 경우 파티션 루트 경로는 구성한 경로입니다.
      • wild카드 폴더 필터를 사용하는 경우 파티션 루트 경로는 첫 번째 wild카드 이전의 하위 경로입니다.
      • 접두사를 사용하는 경우 파티션 루트 경로는 마지막 "/"의 하위 경로입니다.

      예를 들어 경로를 다음과 같이 root/folder/year=2020/month=08/day=27구성합니다.

      • 파티션 루트 경로를 지정 root/folder/year=2020하는 경우 복사 작업은 파일 내의 열 외에도 각각 값이 "08"과 "27"인 월과 일 열을 두 개 더 생성합니다.
      • 파티션 루트 경로를 지정하지 않으면 추가 열이 생성되지 않습니다.

      Screenshot showing Enable partition discovery.

  • 최대 동시 연결: 작업 실행 중에 데이터 저장소에 설정된 동시 연결의 상한입니다. 동시 연결을 제한하려는 경우에만 값을 지정합니다.

  • 추가 열: 원본 파일의 상대 경로 또는 정적 값을 저장할 추가 데이터 열을 추가합니다. 식은 후자에 대해 지원됩니다.

대상

다음 속성은 복사 작업의 대상 탭에서 Google Cloud Storage에 대해 지원됩니다.

Screenshot showing destination tab and the list of properties.

다음 속성이 필요합니다.

  • 데이터 저장소 유형: 외부를 선택합니다.
  • 커넥트: 연결 목록에서 Google Cloud Storage 연결을 선택합니다. 연결이 없으면 새로 만들기를 선택하여 새 Google Cloud Storage 연결을 만듭니다.
  • 파일 경로: 지정된 버킷 또는 지정된 버킷 및 폴더 경로에 데이터를 복사할 수 있습니다.
  • 파일 형식: 드롭다운 목록에서 적용된 파일 형식을 선택합니다. 설정 선택하여 파일 형식을 구성합니다. 다른 파일 형식의 설정에 대한 자세한 내용은 지원되는 형식문서를 참조하세요.

고급에서 다음 필드를 지정할 수 있습니다.

  • 복사 동작: 원본이 파일 기반 데이터 저장소의 파일인 경우 복사 동작을 정의합니다. 드롭다운 목록에서 동작을 선택할 수 있습니다.

    • 평면화 계층 구조: 원본 폴더의 모든 파일은 대상 폴더의 첫 번째 수준에 있습니다. 대상 파일에는 자동으로 생성된 이름이 있습니다.
    • 파일 병합: 원본 폴더의 모든 파일을 하나의 파일로 병합합니다. 파일 이름을 지정하면 병합된 파일 이름은 지정된 이름입니다. 그렇지 않으면 자동으로 생성된 파일 이름입니다.
    • 계층 유지: 대상 폴더의 파일 계층 구조를 유지합니다. 원본 폴더에 대한 원본 파일의 상대 경로는 대상 폴더에 대한 대상 파일의 상대 경로와 동일합니다.
  • 최대 동시 연결: 이 속성은 작업 실행 중에 데이터 저장소에 설정된 동시 연결의 상한을 나타냅니다. 동시 연결을 제한하려는 경우에만 값을 지정합니다.

매핑

매핑 탭 구성은 매핑 탭에서 매핑 구성을 참조하세요. 이진 파일을 파일 형식으로 선택하면 매핑이 지원되지 않습니다.

설정

설정 탭 구성의 경우 설정 탭에서 다른 설정 구성으로 이동합니다.

테이블 요약

다음 표에는 Google Cloud Storage의 복사 활동에 대한 자세한 정보가 포함되어 있습니다.

원본 정보

이름 설명 Required JSON 스크립트 속성
데이터 저장소 유형 데이터 저장소 유형입니다. 외부 /
Connection 원본 데이터 저장소에 대한 연결입니다. <Google Cloud Storage 연결> connection
파일 경로 형식 원본 데이터를 가져오는 데 사용되는 파일 경로 형식입니다. 파일 경로
접두사
Wild카드 파일 경로
파일 목록
/
파일 경로의 경우
양동이 Google Cloud Storage 버킷 이름입니다. <버킷 이름> bucketName
디렉터리 지정된 버킷 아래에 있는 폴더의 경로입니다. <폴더 이름> 아니요 folderpath
파일 이름 지정된 버킷 및 폴더 경로 아래의 파일 이름입니다. <파일 이름> 아니요 fileName
접두사
양동이 Google Cloud Storage 버킷 이름입니다. <버킷 이름> bucketName
Prefix 원본 Google Cloud Storage 파일을 필터링하기 위해 지정된 버킷 아래의 Google Cloud Storage 키 이름에 대한 접두사입니다. <접두사> 아니요 prefix
Wild카드 파일 경로의 경우
양동이 Google Cloud Storage 버킷 이름입니다. <버킷 이름> bucketName
Wild카드 폴더 경로 원본 폴더를 필터링하기 위해 지정된 버킷 아래에 야생카드 문자가 있는 폴더 경로입니다. <와일드 문자가 있는 폴더 경로카드> 아니요 wild카드FolderPath
Wild카드 Filename 원본 파일을 필터링하기 위해 지정된 버킷 및 폴더 경로(또는 wild카드 폴더 경로) 아래에 와일드카드 문자가 있는 파일 이름입니다. <와일드 문자가 있는 파일 이름카드> wild카드FileName
파일 목록
양동이 Google Cloud Storage 버킷 이름입니다. <버킷 이름> bucketName
디렉터리 지정된 버킷 아래에 있는 폴더의 경로입니다. <폴더 이름> 아니요 folderpath
파일 목록의 경로 지정된 파일 집합을 복사하도록 지정합니다. 복사할 파일 목록이 포함된 텍스트 파일, 한 줄당 하나의 파일을 가리킵니다. < 파일 목록 경로 > 아니요 fileListPath
파일 형식 원본 데이터의 파일 형식입니다. 다양한 파일 형식에 대한 자세한 내용은 지원되는 형식의 문서를 참조하세요. / /
반복적 으로 데이터가 하위 폴더에서 재귀적으로 읽혀지는지 또는 지정된 폴더에서만 읽는지 여부를 나타냅니다. 이 검사box가 선택되고 대상이 파일 기반 저장소인 경우 대상에서 빈 폴더 또는 하위 폴더가 복사되거나 만들어지지 않습니다. 선택됨(기본값) 또는 선택 취소 아니요 재귀
마지막으로 수정한 기준 필터링 [시작 시간, 종료 시간) 범위에서 마지막으로 수정된 시간이 있는 파일은 추가 처리를 위해 필터링됩니다. 시간은 UTC 표준 시간대에 yyyy-mm-ddThh:mm:ss.fffZ적용됩니다. 이러한 속성을 건너뛸 수 있습니다. 즉, 파일 특성 필터가 적용되지 않습니다. 파일 경로 형식을 파일 목록으로 구성할 때는 이 속성이 적용되지 않습니다. 날짜/시간 아니요 modifiedDatetimeStart
modifiedDatetimeEnd
파티션 검색 사용 파일 경로에서 파티션을 구문 분석하고 추가 원본 열로 추가할지 여부를 나타냅니다. 선택되거나 선택되지 않음(기본값) 아니요 enablePartitionDiscovery:
true 또는 false(기본값)
파티션 루트 경로 파티션 검색을 사용하는 경우 분할된 폴더를 데이터 열로 읽기 위해 절대 루트 경로를 지정합니다. < 파티션 루트 경로 > 아니요 partitionRootPath
최대 동시 연결 작업 실행 중에 데이터 저장소에 설정된 동시 연결의 상한입니다. 동시 연결을 제한하려는 경우에만 값을 지정합니다. <최대 동시 연결> 아니요 maxConcurrent커넥트ions
추가 열 추가 데이터 열을 추가하여 원본 파일의 상대 경로 또는 정적 값을 저장합니다. 식은 후자에 대해 지원됩니다. • 이름
•값
아니요 additionalColumns:
•이름
•값

대상 정보

이름 설명 Required JSON 스크립트 속성
데이터 저장소 유형 데이터 저장소 유형입니다. 외부 /
Connection 대상 데이터 저장소에 대한 연결입니다. <Google Cloud Storage 연결> connection
파일 경로 대상 파일의 폴더/파일 경로입니다. < 폴더/파일 경로> /
양동이 Google Cloud Storage 버킷 이름입니다. <버킷 이름> bucketName
디렉터리 지정된 버킷 아래에 있는 폴더의 경로입니다. <폴더 이름> 아니요 folderpath
파일 이름 지정된 버킷 및 폴더 경로 아래의 파일 이름입니다. <파일 이름> 아니요 fileName
복사 동작 원본이 파일 기반 데이터 저장소의 파일인 경우 복사 동작을 정의합니다. • 계층 구조 평면화
• 파일 병합
• 계층 구조 유지
아니요 copyBehavior:
• FlattenHierarchy
• MergeFiles
• PreserveHierarchy
최대 동시 연결 작업 실행 중에 데이터 저장소에 설정된 동시 연결의 상한입니다. 동시 연결을 제한하려는 경우에만 값을 지정합니다. <최대 동시 연결> 아니요 maxConcurrent커넥트ions

다음 단계