ServiceNow 인스턴스를 Datastream에 연결하면 분석 및 데이터 통합을 위해 이전 데이터와 증분 변경사항을 복제할 수 있습니다. ServiceNow는 조직이 엔터프라이즈 운영을 관리하고 자동화하는 데 도움이 되는 클라우드 기반 플랫폼입니다.
Datastream에서 ServiceNow 소스를 설정하기 전에 주요 용어, 복제 동작, 지원되는 버전, 복제된 객체, 알려진 제한사항을 검토하세요.
핵심 용어
ServiceNow는 테이블, 레코드, 필드를 사용하여 작동합니다.
- ServiceNow 인스턴스는 전용의 격리된 ServiceNow 클라우드 환경입니다(예:
company.service-now.com). - 테이블은 ServiceNow의 기본 데이터 구조로, 데이터베이스 테이블과 동일합니다.
- 레코드는 테이블의 개별 항목으로, 데이터베이스의 행과 같습니다.
- 필드는 레코드 내의 개별 데이터 요소로, 데이터베이스 열과 동일합니다.
- 커넥터는 Table API를 기본 RESTful 인터페이스로 사용하여 ServiceNow 테이블에서 직접 데이터에 액세스합니다.
- 오프셋 기반 페이지로 나누기는 오프셋 번호를 Table API에 전달하여 ServiceNow 테이블의 레코드를 탐색하는 방법입니다. 이 메서드는 페이지 매김 중에 레코드 삭제에 민감하므로 커넥터가 데이터를 건너뛸 수 있습니다.
- 키 세트 기반 페이지 매김은 커넥터가 식별자 또는 타임스탬프와 같은 고유한 레코드 값과 순서를 추적하여 페이지 매김을 관리하는 방법입니다. 이 방법은 페이지 매김 중에 레코드가 삭제되는 경우에도 효과적입니다.
동작
Datastream의 ServiceNow 소스 지원은 ServiceNow REST Table API를 사용합니다. Datastream은 데이터 무결성과 성능을 보장하기 위해 두 가지 기본 복제 방법을 지원합니다.
이전 데이터 백필
- ServiceNow 인스턴스에서 변경 데이터를 복제할 때 Datastream은 테이블의 모든 기존 레코드에 대한 전체 이전 동기화를 수행합니다.
- 대규모 추출 중에 데이터 일관성을 보장하고 레코드 손실을 방지하기 위해 커넥터는 키 세트 기반 페이지 매김을 사용합니다. 커넥터는 고유한 레코드 값과 순서를 추적하여 이 프로세스를 관리합니다. 이를 통해 레코드 삭제에 대한 추출을 강력하게 만들고 커넥터가 레코드를 건너뛰거나 중복하는 것을 방지합니다.
- Datastream은
sys_updated_on및sys_id레코드 속성별로 데이터를 정렬하여 초기 로드에 안정적인 순서를 제공합니다. 변경할 수 없는 레코드가 포함되어 있고sys_updated_on필드가 없는sys_journal_field테이블의 경우 커넥터는sys_created_on및sys_id속성을 기준으로 정렬합니다.
증분 동기화
- ServiceNow 인스턴스에서 변경 데이터를 복제할 때 Datastream은 초기 백필 후에 발생하는 삽입 및 업데이트와 같은 변경사항을 캡처합니다.
- 서버 측 증분 동기화: 커넥터는
sys_updated_on및sys_id속성 (또는sys_journal_field테이블의 경우sys_created_on및sys_id)에 대한 필터를 사용하여 마지막으로 성공한 동기화 이후 수정된 레코드에 대해 ServiceNow API를 쿼리합니다. - 동기화 프로세스는
sys_updated_on(또는sys_journal_field테이블의 경우sys_created_on) 및sys_id마커로 구성된 복합 커서를 사용합니다.sys_updated_on및sys_created_on마커는 타임스탬프가 지정된 시간과 같거나 그 이후인 레코드만 다음 주기에 동기화되도록 하고sys_id마커는 타임스탬프가 동일한 레코드의 일관성을 보장합니다.
버전
ServiceNow 커넥터는 ServiceNow REST Table API (V2)와 함께 작동합니다. Datastream에서 지원하는 기능은 Zurich 출시 버전에 대해 검증됩니다.
복제된 객체
ServiceNow 커넥터는 동적 검색 메커니즘을 사용하여 인스턴스 내의 전체 테이블 (객체) 집합을 식별합니다. 커넥터는 가치가 높은 비즈니스 데이터만 복제하기 위해 다층 필터링 프로세스를 적용하여 내부 아키텍처, 기술 로그, 시스템 메타데이터 테이블을 제외합니다.
필터링 로직
- 웹 서비스 액세스: 웹 서비스 액세스가 사용 설정된 상태로 명시적으로 구성한 테이블만 복제할 수 있습니다 (
ws_access=true). 이 구성이 누락된 경우 커넥터가 테이블에서 레코드 데이터를 검색할 수 없습니다. - 제외된 상위 클래스: 커넥터는
sys_metadata시스템 구성 테이블에서 상속되거나 순환 테이블 계층 구조의 일부인 테이블을 제외하여 기술 메타데이터 또는 일관되지 않은 스냅샷의 복제를 방지합니다. - 내부 시스템 프리픽스: 커넥터는 플랫폼 배관 또는 기존 기능을 나타내는 특정 기술 프리픽스로 시작하는 테이블을 필터링합니다.
- 골든 목록 (시스템 예외): 커넥터는 대부분의
sys_테이블을 제외하지만sys_user,sys_choice,sys_journal_field와 같은 중요한 비즈니스 항목을 명시적으로 허용 목록에 추가합니다.
기본적으로 필터링되는 시스템 프리픽스
| 카테고리 | 프리픽스 | 설명 |
|---|---|---|
| 핵심 내부 요소 | v_, ts_, imp_, ecc_, wf_, sh$, bin_, var_, gs_ |
가상 테이블, 검색 색인, 가져오기 스테이징, ECC 큐, 워크플로 컨텍스트 |
| 분석 및 AI | pa_, ua_, ml_, ais_, promin_, di_ |
성능 애널리틱스 점수, 공급업체 원격 분석, ML 벡터, AI 검색 Google 검색 프로필 |
| 기술 모듈 | sa_, sla_, atf_, cxs_, automation_, ids_ |
서비스 매핑 패턴, SLA 엔진 로그, 보안 감사 추적 |
| 기존 및 관리자 | pf_, clone_, upgrade_, rollback_, expert_, dscy_ |
인스턴스 패치 내역, 업그레이드 로그, 지원 중단된 기존 모듈 |
허용된 시스템 테이블
- 사용자 및 보안:
sys_user,sys_user_group,sys_user_grmember,sys_user_role,sys_user_has_role - 핵심 참조:
sys_choice(드롭다운 옵션),sys_company,sys_domain,sys_location - 감사 추적:
sys_journal_field(작업 메모 및 댓글 기록)
알려진 제한사항
ServiceNow를 소스로 사용할 경우의 알려진 제한사항은 다음과 같습니다.
- Datastream은 삭제된 레코드 캡처를 지원하지 않습니다.
- Datastream은 기본적으로 많은 내부 플랫폼 테이블을 제외합니다(예:
ts_,v_또는imp_로 시작하는 테이블). - 웹 서비스 액세스가 사용 설정된 상태로 명시적으로 구성한 테이블만 복제할 수 있습니다 (
ws_access=true). 이는 대부분의 테이블에 대한 기본값입니다. - 커넥터는 기본 ServiceNow 데이터베이스 인스턴스에 표시되는 방식으로 필드 값을 복제합니다. 이러한 값을 실제 값이라고 합니다. 즉, Datastream이 대상으로 복제하는 실제 값은 ServiceNow 사용자 인터페이스에 표시되는 값 (표시 값이라고 함)과 다를 수 있습니다. 자세한 내용은 ServiceNow 기술 자료를 참조하세요.
다음 단계
- Datastream에 사용할 ServiceNow 소스 구성 방법 알아보기