---
title: Salesforce
description: Salesforce에 연결하고 동기화 동작을 파악하며 기록되는 모든 테이블과 열을 쿼리합니다.
species: reference
---
# Salesforce

Salesforce OAuth를 사용해 Salesforce에 연결합니다. 이 소스는 `titan.salesforce` 아래에 조직에서 검색한 쿼리 가능한 모든 객체를 기록합니다.
## Salesforce 연결

1. **앱**을 열고 **앱 연결**을 선택한 뒤 **Salesforce** 항목을 선택합니다.
2. Salesforce OAuth를 입력합니다.
3. 테이블을 확인한 뒤 소스를 저장합니다.
4. 첫 실행이 완료될 때까지 **동기화 기록**을 확인합니다.

자격 증명은 비밀 정보로 저장됩니다. 레이크 열이 되거나 쿼리 결과에 나타나지 않습니다.

## 동기화 동작

Salesforce는 전체 비교를 통해서만 신뢰할 수 있는 삭제 정보를 제공하므로, 레이크 조정 게이트가 활성화될 때까지 모든 실행은 전체 읽기를 수행합니다. 이후 실행은 사용 가능한 필드를 SystemModstamp, LastModifiedDate, CreatedDate 순으로 사용합니다.

새 소스는 연결할 때 동기화한 다음 설정된 일정을 따릅니다. 기본 반복 간격은 4시간입니다. 실행이 중단되어도 완료한 진행 상황을 유지하며 안전하게 재시도합니다.

모든 레이크 테이블에는 [시스템 열](/docs/concepts/your-lake#시스템-열)인 `_synced_at`과 `_deleted`도 있습니다. 아래 열 참조에는 소스 열만 나열합니다.

## 테이블 참조

Supernova는 연결된 계정에서 이 참조 정보를 검색합니다. Salesforce describe API가 객체와 필드를 제공합니다. 사용 중단된 객체, 숨겨진 객체, 쿼리할 수 없는 객체는 제외합니다.

첫 스키마 검색 실행 후 **앱 → Salesforce → 테이블**을 열면 모든 정확한 테이블 이름, 열 이름, 타입, 동기화 선택 항목을 볼 수 있습니다. 계정을 연결하기 전에는 동적 필드를 정확하게 나열할 수 없습니다.

## 삭제와 이력

행은 소스 키로 병합됩니다. 소스에서 행 삭제를 입증할 수 있으면 Supernova는 행을 유지하고 `_deleted`를 설정합니다. 따라서 쿼리에서 이력을 포함할지 선택할 수 있습니다. 현재 상태를 조회하는 쿼리에는 `where not _deleted` 필터를 사용하세요.
