Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Asana 테이블 수집과 증분 설정

Asana 커넥터는 CData JDBC 드라이버를 사용해 Asana 데이터를 관계형 테이블로 노출하고 SQL로 질의합니다. 원천 탐색, 대량 가져오기와 증분 수집을 일반 제공(GA)합니다.

소스와 인증

Data Connection의 +New Source에서 Asana 소스를 선택합니다. 개인 액세스 토큰 또는 서비스 계정 액세스 토큰으로 인증합니다. 장기간 운영하는 소스에는 특정 개인에 직접 연결되지 않는 서비스 계정 토큰을 사용하는 것이 권장됩니다. 조직에서 사용자 토큰 생성을 막았다면 Asana 관리자에게 확인합니다.

app.asana.com에 항상 접근할 수 있어야 합니다. Foundry 워커에서는 이 호스트에 대한 외부 통신 정책을 추가합니다. 다른 네트워크를 경유해야 하면 에이전트 프록시를 우선 사용하고 에이전트와 원천 양쪽에서 연결을 허용합니다. 에이전트 워커는 권장하지 않는 Legacy 방식입니다.

소스 항목필수 여부의미
Project ID필수Asana 프로젝트 URL의 ID입니다. https://app.asana.com/0/PROJECT_ID/list에서 확인할 수 있습니다.
Credentials settings필수개인 또는 서비스 계정 토큰을 구성합니다.
Proxy settings선택프록시 연결을 활성화하고 사용자 이름과 비밀번호를 입력합니다.
Logs선택연결 로그 설정을 조정합니다.

로그 상세 수준

문제를 조사할 때 Verbosity level로 로그 양을 조정할 수 있습니다. 상세 수준을 높이면 Foundry 빌드 로그에 민감한 정보가 포함될 수 있습니다. 공유하기 전에 비밀번호 등 민감한 값을 제거합니다.

동기화 생성

소스 Overview의 오른쪽 위에서 Explore and create syncs를 선택합니다. 가져올 테이블을 고르고 Create sync for x datasets로 생성합니다.

이후 Edit syncs의 왼쪽 Syncs 패널에서 해당 동기화 오른쪽의 >를 선택해 상세 구성을 엽니다.

동기화 항목필수 여부의미
Table필수Foundry로 복사할 Asana 테이블입니다.
Column selection선택가져올 열을 제한합니다. 선택하지 않으면 모든 열을 수집합니다.
Row filters선택열 값에 맞는 행만 가져오는 조건입니다.
Limit선택SQL limit을 적용하여 한 번에 가져올 행 수를 제한합니다.
Incremental선택이전 수집 상태를 유지해 새로 조건을 충족하는 행을 작은 배치로 가져옵니다.

증분 열과 초기값

일반 동기화는 변경 여부와 관계없이 조건에 맞는 모든 행을 가져옵니다. 증분 동기화는 최근 수집 위치를 기억하고 이후 행만 가져옵니다. 선택한 열은 엄격하게 단조 증가해야 합니다.

증분 열에는 다음 자료형을 사용할 수 있습니다.

DATE, TIMESTAMP
int, TINYINT, SMALLINT, INTEGER, long, BIGINT, NUMERIC, NUMBER, DECIMAL, DEC
string, VARCHAR, CHAR, NVARCHAR, NCHAR, LONGNVARCHAR, LONGVARCHAR

Column과 Initial value는 필수입니다. 지원 자료형의 열이 없으면 Column 드롭다운이 비어 있습니다.

대용량 수집 예시

가상으로 5TB 테이블에 수십억 행이 있고 id가 엄격하게 증가한다고 가정합니다. Column을 id, Initial value를 -1, Limit를 5천만 행으로 설정하면 첫 실행은 id > -1인 행을 오름차순으로 최대 5천만 개 가져옵니다.

이전 실행에서 가져온 최대 id가 19384004822였다면 다음 실행은 그 값보다 큰 행부터 최대 5천만 개를 가져옵니다. 이 예시는 Asana의 데이터를 Foundry로 수집하는 방향입니다.

열 이름 조건

열 이름은 밑줄 또는 영문자로 시작해야 하며 이후에도 밑줄, 영문자와 숫자만 사용할 수 있습니다.

이름결과
_colum_name사용 가능합니다.
a_column_name_123사용 가능합니다.
1ColumnName숫자로 시작하므로 사용할 수 없습니다.
a-column-name*하이픈과 별표가 있어 사용할 수 없습니다.
å-column-name영문자 이외의 문자가 있어 사용할 수 없습니다.

행 필터

행 필터를 구성하려면 테이블 미리보기가 성공해야 합니다. 화면 아래 Preview of inbound data를 새로고침한 뒤 필터를 설정하고 다시 미리보기하여 적용 결과를 확인합니다.

조건 집합은 모든 조건이 맞아야 하는 all 또는 하나 이상 맞으면 되는 at-least one으로 평가합니다. SQL의 AND, OR에 해당하며 조건 집합을 중첩할 수 있습니다.

개별 조건은 열 값과 입력값을 비교합니다. 예를 들어 CreatedAt이 12/04/2021과 같다는 조건은 그 값에 해당하는 행만 수집합니다. 사용할 수 있는 비교 연산은 열 자료형에 따라 달라집니다.

EQUAL TO
GREATER THAN
LESS THAN
GREATER THAN OR EQUAL TO
LESS THAN OR EQUAL TO
NOT EQUAL TO
IS NULL
IS NOT NULL

비교는 표준 SQL과 같은 의미로 동작합니다. 문자열 열에는 SQL-92 문법의 Like, Not like도 사용할 수 있습니다.