Salesforce 일괄 소스

이 페이지에서는 Cloud Data Fusion을 사용하여 Salesforce sObjects에서 Google Cloud로 데이터를 로드하는 방법을 설명합니다. Salesforce 일괄 소스 플러그인은 Salesforce에서 sObject를 읽습니다. sObject는 가져올 Salesforce 테이블입니다. sObject의 예시로는 기회, 연락처, 계정, 리드, 커스텀 객체가 있습니다.

Salesforce 일괄 소스 플러그인은 Salesforce 객체 쿼리 언어(SOQL) 쿼리 및 증분 또는 기간 필터로 데이터 읽기를 지원합니다.

시작하기 전에

  • Cloud Data Fusion Salesforce 일괄 소스는 Salesforce Bulk API V1을 사용합니다.
  • Cloud Data Fusion Salesforce 플러그인을 배포하고 사용하기 전에 Salesforce를 설정합니다. 자세한 내용은 Cloud Data Fusion용 Salesforce 연결된 앱 만들기를 참조하세요.

플러그인 구성

  1. Cloud Data Fusion 웹 인터페이스로 이동하고 Studio를 클릭하세요.
  2. 데이터 파이프라인 - 배치가 선택되었는지 확인합니다(실시간 아님).
  3. 소스 메뉴에서 Salesforce를 클릭합니다. Salesforce 노드가 파이프라인에 표시됩니다. 스튜디오 페이지에 Salesforce 소스가 표시되지 않으면 Cloud Data Fusion 허브에서 Salesforce 플러그인을 배포합니다.
  4. 소스를 구성하려면 Salesforce 노드로 이동하고 속성을 클릭합니다.
  5. 다음 속성을 입력합니다. 전체 목록은 속성을 참조하세요.

    1. Salesforce 노드의 라벨을 입력합니다(예: Salesforce tables).
    2. 계보의 Salesforce 소스에 대한 참조 이름을 입력합니다(예: Salesforce tables).
    3. 다음 연결 세부정보를 입력합니다. 새 일회성 연결 또는 재사용 가능한 기존 연결을 설정할 수 있습니다.

      새로운 연결

      Salesforce에 일회성 연결을 추가하려면 다음 단계를 따르세요.

      1. 연결 사용을 사용 중지합니다.
      2. 연결 섹션의 필드에 Salesforce 계정의 다음 정보를 입력합니다.

        • 사용자 이름
        • 비밀번호
        • 보안 토큰
        • 고객 키
        • 고객 비밀번호

        Salesforce에서 사용자 인증 정보를 가져오려면 Salesforce에서 속성 가져오기를 참고하세요.

      재사용 가능한 연결

      기존 연결을 재사용하려면 다음 단계를 수행합니다.

      1. 연결 사용을 사용 설정합니다.
      2. 연결 찾아보기를 클릭합니다.
      3. 연결 이름을 클릭합니다.

      4. 선택사항: 연결이 존재하지 않고 재사용 가능한 새 연결을 만들려면 연결 추가를 클릭하고 새 연결 탭의 단계를 참조하세요.

    4. sObject 이름을 입력하여 객체의 모든 열을 로드합니다.

    5. 선택사항: sObject 이름을 선택하면 다음 필드로 데이터를 필터링할 수 있습니다.

      • 다음 날짜 이후에 최종 수정: 지정된 시간 이후에 마지막으로 수정된 레코드만 포함합니다.
      • 다음 날짜 이전에 최종 수정: 지정된 시간 이전에 마지막으로 수정된 레코드만 포함합니다.
      • 기간: 지정된 크기의 기간 내에 마지막으로 수정된 레코드만 포함합니다.
      • 오프셋: 마지막 수정 날짜가 파이프라인의 논리적 시작 시간에서 지정된 오프셋을 뺀 값보다 작은 레코드만 포함합니다.
    6. 선택사항: 지원되는 sObject의 경우 파이프라인 성능을 향상시키려면 PK 청킹 사용 설정을 켭니다. 자세한 내용은 PK 청킹으로 성능 개선을 참조하세요.

    7. 선택사항: sObject 이름을 지정하는 대신 SOQL 쿼리(예: SELECT LastName from Contact)를 입력할 수 있습니다. 자세한 내용은 Salesforce 소스의 SOQL 쿼리를 참고하세요.

    8. 연결을 테스트하려면 스키마 가져오기를 클릭합니다. Cloud Data Fusion은 Salesforce에 연결하고 나열된 테이블(기술적으로는 sObject)의 스키마를 가져옵니다.

속성

속성 매크로 사용 설정 필수 속성 설명
참조 이름 아니요 태스크에 대해 이 소스를 고유하게 식별(예:계보, 주석 메타데이터)하는 데 사용됩니다.
연결 사용 아니요 No 기존 연결을 사용합니다. 연결이 사용되면 사용자 인증 정보를 제공할 필요가 없습니다.
연결 둘러보기 No 사용할 연결의 이름입니다.
사용자 이름 Salesforce 사용자 이름입니다.
비밀번호 Salesforce 비밀번호입니다.
보안 토큰 No Salesforce 보안 토큰입니다. 비밀번호에 보안 토큰이 포함되어 있지 않으면 Cloud Data Fusion은 Salesforce로 인증하기 전에 토큰을 추가합니다.
고객 키 애플리케이션 고객 키 OAuth 클라이언트 ID라고도 합니다. 고객 키를 가져오려면 Salesforce 연결 애플리케이션을 만듭니다.
고객 비밀번호 애플리케이션 고객 비밀번호 OAuth 클라이언트 보안 비밀이라고도 합니다. 클라이언트 보안 비밀을 가져오려면 Salesforce 연결 애플리케이션을 만듭니다.
로그인 URL Salesforce OAuth2 로그인 URL입니다.
기본값은 https://login.salesforce.com/services/oauth2/token입니다.
연결 시간 초과 No 연결 초기화가 제한 시간 전에 완료될 때까지 기다리는 최대 시간(밀리초)입니다.
기본값은 30,000밀리초입니다.
프록시 URL No 프로토콜, 주소, 포트가 포함된 프록시 URL입니다.
SOQL No 소스로 데이터를 가져오는 SOQL 쿼리입니다.
예:
  • SELECT Id, Name, BillingCity FROM Account
  • SELECT Id FROM Contact WHERE Name LIKE 'A%' AND MailingCity = 'California'
SObject 이름 No 읽을 Salesforce 객체 이름입니다. 값이 제공되면 커넥터는 Salesforce에서 이 객체의 모든 필드를 가져오고 select FIELD_1, FIELD_2 from ${sObjectName}과 같은 SOQL 쿼리를 생성합니다. SOQL 쿼리가 제공되면 무시됩니다.
Salesforce Bulk API에서 지원되지 않는 sObject도 있습니다. 지원되지 않는 객체로 작업을 만들면 다음 오류(Entity is not supported by the Bulk API)가 발생합니다. 이러한 객체는 데이터 쿼리에 Bulk API를 사용하는 Einstein Analytics에서도 지원되지 않습니다.
Bulk API가 사용되지 않는 경우: 쿼리 길이가 일괄 정보 배열을 수신하기 위해 Salesforce에 쿼리를 전송할 때 Bulk API가 사용되지 않는 않습니다. 쿼리가 한도 내에 있으면 원래 쿼리가 실행됩니다. 그 외의 경우에는 넓은 객체 로직으로 전환됩니다. 예를 들어 나중에 SOAP API를 통해 데이터를 검색하는 데 사용할 ID의 일괄 정보를만 검색하는 ID 쿼리를 생성합니다.
다음 날짜 이후에 최종 수정 No 시스템 필드 LastModifiedDate가 지정된 날짜보다 크거나 같은 레코드만 포함하도록 데이터를 필터링합니다. Salesforce 날짜 형식을 사용합니다(예시 참조). 값을 제공하지 않으면 하한 날짜가 적용되지 않습니다.
다음 날짜 이전에 최종 수정 No 시스템 필드 LastModifiedDate가 지정된 날짜보다 작은 레코드만 포함하도록 데이터를 필터링합니다. Salesforce 날짜 형식을 사용합니다(예시 참고). 다음 날짜 이후에 최종 수정 속성을 사용하여 이 값을 지정하면 일정 기간 내에 수정된 데이터를 읽을 수 있습니다. 값을 제공하지 않으면 상한 날짜가 적용되지 않습니다.
소요 시간 No 지정된 크기의 기간 내에 마지막으로 수정된 레코드만 읽도록 데이터를 필터링합니다. 예를 들어 기간이 6 hours이고 파이프라인이 오전 9시에 실행되면 마지막 오전 3시(포함)부터 오전 9시(제외)까지 마지막으로 업데이트된 데이터를 읽습니다. 숫자와 다음 시간 단위로 기간을 지정합니다.
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
여러 단위를 지정할 수 있지만 각 단위는 한 번만 사용할 수 있습니다. 예를 들면 2 days, 1 hours, 30 minutes입니다. 다음 날짜 이후에 최종 수정 또는 다음 날짜 이전에 최종 수정에 값이 이미 지정된 경우 기간이 무시됩니다.
오프셋 No 시스템 필드 LastModifiedDate가 파이프라인의 논리적 시작 시간에서 지정된 오프셋을 뺀 값보다 작은 레코드만 읽도록 데이터를 필터링합니다. 예를 들어 기간이 6 hours이고 오프셋이 1 hours이며 파이프라인이 오전 9시에 실행되는 경우 오전 2시(포함)부터 오전 8시(제외)까지 마지막으로 수정된 데이터가 표시됩니다.
숫자와 다음 시간 단위로 기간을 지정합니다.
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
여러 단위를 지정할 수 있지만 각 단위는 한 번만 사용할 수 있습니다. 예를 들면 2 days, 1 hours, 30 minutes입니다. 다음 날짜 이후에 최종 수정 또는 다음 날짜 이전에 최종 수정에 값이 이미 지정된 경우 오프셋이 무시됩니다.
SOQL 작업 유형 No No 테이블에서 실행할 쿼리 작업을 지정합니다. 쿼리가 선택된 경우 현재 레코드만 반환됩니다. queryAll을 선택하면 현재 레코드와 삭제된 레코드가 모두 반환됩니다.
기본 작업은 query입니다.
PK 청킹 사용 설정 No 기본 키(PK) 청킹은 쿼리된 레코드의 레코드 ID 또는 기본 키를 기반으로 큰 테이블의 쿼리를 조각 또는 청크로 분할합니다.
Salesforce에서는 1,000만 개가 넘는 레코드가 있는 테이블을 쿼리하거나 일괄 쿼리가 지속적으로 시간 초과되는 경우 PK 청킹을 사용 설정하는 것이 좋습니다. 자세한 내용은 PK 청킹을 참조하세요. PK 청킹은 SELECT 절을 포함하지 않는 쿼리 또는 WHERE 이외의 조건에서만 작동합니다. 청킹은 커스텀 객체와 표준 객체를 지원하는 모든 공유 및 기록 테이블에서 지원됩니다.
청크 크기 No 청크 크기를 지정합니다. 최대 크기는 250,000입니다. 기본 크기는 100,000입니다.
SObject 상위 요소 이름 No Salesforce 객체의 상위 요소입니다. 기록 테이블 또는 공유 객체에 대해 청킹을 사용 설정하는 데 사용됩니다.

Salesforce 날짜 형식의 예

형식 문법
YYYY-MM-DDThh:mm:ss+hh:mm 1999-01-01T23:01:01+01:00
YYYY-MM-DDThh:mm:ss-hh:mm 1999-01-01T23:01:01-08:00
YYYY-MM-DDThh:mm:ssZ 1999-01-01T23:01:01Z

데이터 유형 매핑

다음 표에는 Salesforce 데이터 유형과 해당 CDAP 유형이 나와 있습니다.

Salesforce 데이터 유형 CDAP 스키마 데이터 유형
_bool boolean
_int int
_long long
_double, currency, percent, geolocation(위도), geolocation(경도) double
date date
datetime timestamp(마이크로초)
time time(마이크로초)
picklist string
multipicklist string
combobox string
reference string
base64 string
textarea string
phone string
id string
url string
email string
encryptedstring string
datacategorygroupreference string
location string
address string
anyType string
json string
complexvalue string

사용 사례

Salesforce 일괄 소스의 다음 사용 사례를 참고하세요.

권장사항

Salesforce 일괄 소스의 성능 개선에 관한 자세한 내용은 권장사항을 참고하세요.

다음 단계