본문으로 건너뛰기

SelectDB 데이터 소스 구성

최근 업데이트 2026. 10. 03.

SelectDB Cloud는 Apache Doris 기반의 차세대 멀티 클라우드 네이티브 실시간 데이터 웨어하우스입니다.

지원 버전​

SelectDB 4.0+

사용 제한​

현재는 다음 구성 방식만 지원합니다.

  • AE 사전 설정 스토리지 공간 테이블에서 SelectDB로 쓰기 지원(오프라인 쓰기)

참고:

  • SelectDB 데이터 소스 읽기는 아직 지원하지 않습니다(오프라인 읽기)

지원 필드 타입​

SelectDB는 엔진이 소스 필드를 목적지 필드에 올바르게 쓸 수 있는지 판단하며, 실패하면 Null이 됩니다.

AE 데이터 개발 플랫폼의 통합 계획은 데이터 타입을 강제로 변환하지 않으며, 엔진이 처리합니다.

SelectDB 타입오프라인 쓰기(Writer)비고
숫자 타입
TINYINT지원1바이트 부호 있는 정수, 범위 [-128, 127]
SMALLINT지원2바이트 부호 있는 정수, 범위 [-32768, 32767]
INT지원4바이트 부호 있는 정수, 범위 [-2147483648, 2147483647]
BIGINT지원8바이트 부호 있는 정수, 범위 [-9223372036854775808, 9223372036854775807]

DECIMAL

지원

DECIMAL(P [, S])
고정밀 고정 소수점 수입니다. P는 전체 유효 자릿수(precision), S는 소수점 이하 최대 자릿수(scale)를 나타냅니다.
1.19.0 이상 버전에서는 decimal 타입의 (P, S)에 기본값이 설정되며, 기본값은 decimal(10, 0)입니다
DOUBLE지원8바이트 부동 소수점 수
BOOLEAN지원BOOL, BOOLEAN
TINYINT와 마찬가지로 0은 false, 1은 true를 나타냅니다
LARGEINT지원16바이트 부호 있는 정수, 범위 [-2^127 + 1 ~ 2^127 - 1]
FLOAT지원4바이트 부동 소수점 수.
문자열 타입
CHAR지원CHAR(M)
고정 길이 문자열이며, M은 고정 길이 문자열의 길이를 나타냅니다. M의 범위는 1~255입니다.

VARCHAR

지원VARCHAR(M)
가변 길이 문자열입니다. M은 가변 길이 문자열의 길이를 나타내며, 단위는 바이트이고 기본값은 1입니다.
STRING지원문자열, 최대 길이 65533바이트
시간 타입
DATE지원날짜 타입이며, 현재 값 범위는 ['0000-01-01', '9999-12-31']입니다.
기본 출력 형식은 'YYYY-MM-DD'입니다.
DATETIME지원날짜 시간 타입이며, 값 범위는 ['0000-01-01 00:00:00', '9999-12-31 23:59:59']입니다.
출력 형식은 'YYYY-MM-DD HH:MM:SS'입니다
반정형 타입
JSON지원
ARRAY지원
MAP지원
STRUCT지원
VARIANT지원VARIANT 타입은 언제든지 변경될 수 있는 복잡한 중첩 구조를 처리하는 데 특히 적합합니다. 쓰기 과정에서 이 타입은 열의 구조와 타입에 따라 열 정보를 자동으로 추론하고, 쓰는 schema를 동적으로 병합하며, JSON 키와 해당 값을 열과 동적 하위 열로 저장합니다.
집계 타입
HLL미지원
BITMAP미지원
QUANTILE_STATE미지원
AGG_STATE미지원

테이블 타입 설명​

테이블 타입Aggregate(집계 테이블)Unique(고유 키 테이블)Duplicate(상세 테이블)
데이터 모델사전 집계 모델기본 키 고유 모델상세 데이터 모델
저장 특성같은 차원은 자동 집계(SUM/MAX/MIN 등)같은 기본 키는 덮어쓰기(새 버전이 이전 버전을 덮어씀)원본 데이터 전체 저장(집계 없음, 덮어쓰기 없음)
핵심 특징
  • 지표 열에는 집계 함수(SUM/MAX/MIN/REPLACE)를 반드시 정의해야 합니다
  • 조회 시 차원 열 기준으로 자동 집계되므로 GROUP BY를 작성할 필요가 없습니다
  • 같은 UNIQUE KEY는 덮어쓰기
  • 실시간 업데이트 지원
  • 원본 상세 데이터 저장(중복 허용)
  • 집계 기능이 없으므로 조회 시 GROUP BY를 명시해야 합니다
SQL 예시
CREATE TABLE agg_sales (
dt DATE,                -- 차원 열(자동 그룹화)
product_id INT,         -- 차원 열
total_sales BIGINT SUM, -- 지표 열(집계 함수)
max_price INT MAX       -- 지표 열
) ENGINE=OLAP
AGGREGATE KEY(dt, product_id) -- 집계 키 지정
DISTRIBUTED BY HASH(product_id);
CREATE TABLE user_profile (
user_id BIGINT,         -- 기본 키 열
name VARCHAR REPLACE,   -- 업데이트 가능한 열
age INT REPLACE,
last_login DATETIME REPLACE
) ENGINE=OLAP
UNIQUE KEY(user_id)         -- 고유 키 지정
DISTRIBUTED BY HASH(user_id);
CREATE TABLE click_logs (
log_time DATETIME,      -- 기본 키 없음
user_id BIGINT,
url VARCHAR,
ip VARCHAR
) ENGINE=OLAP
DUPLICATE KEY(log_time, user_id) -- 정렬만 하며 고유하지 않음
DISTRIBUTED BY HASH(user_id);

집계 타입 설명​

집계 타입역할적용 열 타입대표적인 활용 시나리오
SUM같은 차원 열의 값을 합산숫자 타입(INT/BIGINT/DECIMAL)매출액, 방문 수 등 누적 지표
MIN같은 차원 열의 최솟값을 취함숫자 타입/날짜 타입최저값, 최초 로그인 시간
MAX같은 차원 열의 최댓값을 취함숫자 타입/날짜 타입최고값, 최근 로그인 시간
REPLACE나중에 쓴 데이터가 이전 값을 완전히 덮어씀(NULL 여부와 관계없음)모든 타입유저의 최신 주소, 주문의 최종 상태

REPLACE_IF_NOT_NULL

NULL이 아닌 값만 이전 값을 덮어씀(NULL 값은 기존 값 유지)

필드 기본값은 NULL이어야 합니다(기본값이 빈 문자열 ''이면 유효한 값으로 간주되어 덮어씁니다).

모든 타입유저 정보 점진적 업데이트(기존 필드 유지)

SelectDB 데이터 소스 생성​

데이터 개발 플랫폼 - 통합 모듈에서 SelectDB 데이터 소스 추가를 선택할 수 있습니다.

데이터 소스 설정 파라미터 정보

한 페이지에서 기본 정보와 데이터 소스 설정을 입력하고 연결 테스트를 완료하면 SelectDB 데이터 소스가 생성됩니다.

필드 이름설명
기본 정보
*데이터 소스 이름데이터 개발 플랫폼 공간 내에서 고유해야 하며, 영문자, 숫자, 밑줄로 구성하고 숫자나 밑줄로 시작할 수 없습니다
비고선택 사항
데이터 소스 설정
환경 구분 없음 / 독립 환경 설정둘 중 하나 선택: 환경 구분 없음은 운영 환경과 개발 환경이 하나의 설정을 공유하고, 독립 환경 설정은 두 환경을 각각 독립적으로 설정합니다
*서비스 주소/IPSelectDB 데이터베이스가 있는 서비스 주소. 여러 주소는 쉼표로 구분합니다
*포트SelectDB에 접근하는 데 사용하는 포트
*데이터베이스SelectDB에 이미 생성된 데이터베이스 이름
*사용자 이름데이터베이스에 접근할 권한이 있는 사용자 이름
*비밀번호사용자 이름에 대응하는 비밀번호
고급 설정데이터베이스 연결에 필요한 기타 고급 파라미터. 직접 입력할 수 있습니다
참고: 기본값은 클러스터 배포 모드입니다

파라미터 이름 앞에 *가 있는 항목은 필수 파라미터이고, *가 없는 항목은 선택 파라미터입니다.

오프라인 동기화 작업 생성​

위 단계에 따라 SelectDB 데이터 소스 생성을 완료하고 연결 테스트에 성공했다면, 실제 시나리오에 맞게 SelectDB 오프라인 쓰기 작업을 구성할 수 있습니다.

SelectDB를 데이터 목적지로 사용​

데이터 목적지에서 SelectDB를 선택하고 다음 관련 파라미터를 설정합니다.

필드 이름설명
*데이터 소스(타입)데이터 목적지의 대상 타입으로 SelectDB를 선택합니다. 이 드롭다운에는 현재 공간에 이미 있는 데이터 소스의 타입만 표시되므로, SelectDB 데이터 소스를 아직 만들지 않았다면 SelectDB가 표시되지 않습니다. 먼저 드롭다운 하단의 + 데이터 소스 또는 데이터 소스 관리에서 데이터 소스를 생성해야 합니다
*데이터 소스(데이터 소스)데이터 소스 관리 화면에 등록된 SelectDB 데이터 소스이며, 드롭다운에서 선택할 수 있습니다.
해당 데이터 소스를 아직 만들지 않았다면 데이터 소스 관리 버튼을 클릭하여 SelectDB 데이터 소스를 생성할 수 있습니다.
*전체 한정 이름(catalog)internal. external은 아직 지원하지 않습니다
*전체 한정 이름(데이터베이스)쓰기 대상 데이터베이스 이름
*쓰기 대상 테이블쓰기 대상 데이터 테이블이며, 드롭다운에서 선택할 수 있습니다. 드롭다운 옆에 빠른 테이블 생성 입구가 있습니다
*파티션 필드 값

입력 방식으로 파티션 필드 값을 정의할 수 있습니다. 파티션 필드 = days라고 가정합니다

  • 상수: 사용자 지정 값입니다. days = 2025-01-01
  • 파라미터: 공간 파라미터입니다. days =${bd}이면 실행 시 기준 날짜의 값을 사용합니다
  • 필드: 소스 테이블 필드입니다. days = dt1
*쓰기 모드
  • 새 데이터 삽입/업데이트 및 삽입: Insert Into
  • 덮어쓰기: Insert Overwrite

필드 매핑 설명​

데이터 소스와 타겟 설정을 완료한 후에는 필드 매핑 관계를 설정해야 합니다. 시스템은 매핑 관계에 따라 소스 필드의 데이터를 타겟 필드로 자동 동기화합니다. 필드 매핑 관계는 다음 세 가지 방식으로 설정할 수 있습니다.

  • 방법 1: 직접 선택. 소스 테이블 필드를 선택한 후 타겟 테이블의 타겟 필드를 선택합니다
  • 방법 2: 동일 이름으로 매핑. 시스템이 소스 테이블과 타겟 테이블에서 이름이 같은 필드 사이에 매핑 관계를 자동으로 설정합니다
  • 방법 3: 동일 행으로 매핑. 시스템이 같은 행에 있는 필드 사이에 매핑 관계를 자동으로 설정합니다

하나의 타겟 필드는 하나의 소스 필드에만 대응할 수 있다는 점에 유의하십시오.

파티션 테이블/비파티션 테이블 쓰기 동작​

타겟 테이블파티션 상태insertInsert Overwrite
비파티션 테이블—직접 쓰기덮어쓰기
비자동 파티션 테이블(Partition)파티션 있음직접 쓰기덮어쓰기
비자동 파티션 테이블(Partition)파티션 없음쓰기 실패(Unknown partition)쓰기 실패(Unknown partition)
자동 파티션 테이블(Auto Partition, 기본값 enable_auto_create_when_overwrite = true)파티션 있음직접 쓰기덮어쓰기
자동 파티션 테이블(Auto Partition)파티션 없음파티션 생성 후 쓰기파티션 생성 후 쓰기
원본 이미지 보기

기본 정보 설정​

마지막으로 통합 계획의 기본 정보를 설정해야 합니다. 계획 이름, 담당자, 통합 동기화 속도, 비고 등이 포함됩니다.

설정을 완료한 후 저장 버튼을 클릭하면 통합 계획 생성이 완료됩니다.

참고: 계획 이름은 저장 후 수정할 수 없습니다

상세 페이지:

오프라인 동기화 계획을 작업 플로우에 연결​

작업 플로우에 연결​

1. 연결 시작

  • 통합 계획 상세 페이지에서 오른쪽 상단의 작업 플로우에 연결 버튼을 클릭합니다

2. 작업 플로우 선택

  • 드롭다운 메뉴에서 대상 작업 플로우를 선택합니다

  • 새 작업 플로우를 만들려면:

    • 드롭다운 메뉴 아래의 새 작업 플로우 바로가기 버튼을 클릭합니다
    • 또는 개발 모듈로 이동하여 생성합니다
  • 팁: 대상 작업 플로우가 표시되지 않으면 오른쪽의 ↻ 새로고침 버튼을 클릭합니다

3. 동기화 노드 생성

  • 작업 플로우에서 오프라인 동기화 계획 타입의 노드를 새로 만듭니다
  • 이 노드는 현재 통합 계획과 연관되며, 노드가 실행되면 해당 통합 계획의 실행이 트리거됩니다

4. 연결 완료

  • 노드 생성 및 연결을 클릭하여 설정을 완료합니다
  • 연결에 성공하면 작업 플로우로 이동을 클릭하여 연결 결과를 바로 확인할 수 있습니다
팁

참고: 작업 플로우에 연결하여 생성된 작업 노드는 아직 배포되지 않은 상태입니다. 작업 플로우로 이동하여 확인한 후 해당 노드를 배포하여 라이브 상태로 전환하는 것을 권장합니다.

작업 플로우 연결 해제​

오프라인 동기화 계획의 작업 플로우 연결을 해제하려면 다음과 같이 진행합니다.

  • 작업 플로우가 아직 배포되지 않았다면, 해당 계획이 연결된 작업 플로우로 이동하여 개발 모드에서 해당 오프라인 동기화 계획 작업 노드를 삭제하면 됩니다.
  • 작업 플로우가 이미 배포되어 라이브 상태라면, 개발 모드에서 해당 오프라인 동기화 계획 작업 노드를 삭제한 후 작업 플로우를 다시 배포해야 합니다. 이렇게 하면 운영 환경에서도 해당 노드의 연결이 함께 해제됩니다.
이 문서가 도움이 되었나요?