팔란티어 개발 환경: https://www.palantir.com/developers/
팔란티어 교육 자료: https://learn.palantir.com

온톨로지를 공부하면서
“이걸 실제 업무에 어떻게 적용할 수 있을까?”를 계속 고민해왔습니다.

그러던 중, 이미 시장에서 성과를 증명하며 활발히 활용되고 있는 팔란티어(Palantir) 의 사례가 궁금해졌고,
이를 계기로 진행한 실습 진행과 학습 내용을 정리해 이번 글에서 공유하려 합니다.

팔란티어로 과연 무엇을 할 수 있을까?
End-to-End로 빠르게 실습해보며 팔란티어를 이해하고 싶은 분들께 추천드립니다.

목표

  • 실사례 기반 실습으로 팔란티어로 어떻게 해결할 수 있는지 알수있습니다.
  • 팔란티어의 주요 구성요소를 직접 다뤄보며 흐름을 이해합니다.

사용하는 팔란티어 기능

  • Pipeline Builder (데이터 연결)
  • Ontology manager (온톨로지 구축)
    • Object Explorer
  • Workshop (화면)
    • Workspace Navigator

문제 상황 설명

현장 상황

📍 현장 상황

나는 O 회사에서 일한다.

최근 B 회사를 인수합병하면서
주문을 통합 관리해야 하는 상황이 됐다.

하지만 시스템 통합은 1년 뒤.
그래서 급한대로 엑셀로 버티기 시작했다.

처음엔 괜찮았지만 주문이 늘어나자
누락된 주문, 최신 파일 논쟁, 배송 지연이 계속 터졌다.

결국 필요한 건 엑셀이 아니라,
두 시스템을 연결해
주문을 한 곳에서 보고 할당하고
위험 주문을 바로 추적할 수 있는 단일 운영 도구였다.

이 문제를 팔란티어 Ontology와 Workshop으로 해결해보려 한다.

문제 정리

  • 주문 데이터가 분산되어 통합 관리가 어려움
  • 엑셀 수작업으로 오류·누락·버전 혼선이 발생함.
  • 주문 할당과 배송 위험을 실시간으로 추적할 운영 도구가 없음
  • IT 통합 전까지 버틸 단기 해결책이 부족함.

문제 해결책

  • 두 개의 주문 시스템 데이터를 불러와 하나의 데이터 흐름으로 통합
  • 주문, 고객, 배송 상태를 업무 객체로 모델링해 단일 기준(Single Source of Truth)을 만든다.
  • 관리자가 주문을 할당하고, 미처리·배송 위험 주문을 실시간으로 모니터링하는 운영 도구를 제공한다.

해결 흐름

  • 데이터 load, 통합 (Pipeline Builder)
  • 온톨로지 구축 (Ontology Manager)
  • 모니터링과 운영 업무를 실행하는 애플리케이션 레이어 (Workshop)

사용자:

  • Fulfillment Managers (주문 추적을 관리 감독 해야 하는 사람들)
  • Fulfilment Operators (주문을 처리하는 담당자 또는 미처리 주문을 배정하는 사람들)

대상 데이터:

  • Office Goods Fulfillment 회사의 주문 데이터
  • Bureau Fulfillment 회사의 주문 데이터

팔란티어 구현

프로젝트 환경 세팅

  • 프로젝트는 리소스를 담는 폴더
    • 팔란티어 프로젝트는 관련 리소스를 묶고 권한을 통제하는 경계단위

프로젝트 생성

  • Production project는 나만 보이는 것
  • Sandbox project는 모두 볼 수 있는 것
    (나만 볼수 있게 Production project로 선택)

프로젝트 이름과 설명은 어떤 내용인지 잘 알아볼수 있도록 적는다.
(프로젝트 검색에 빨리 찾을 수 있도록 영어 이름 넣기.)

프로젝트 이름: palantir learning <생각나는 영어 이름>

프로젝트 이름: palantir learning Leon
상세설명: personal project for palantir learning courses.

즐겨찾기 추가

  • 왼쪽 하단에 프로젝트가 즐겨찾기로 추가 된 것을 확인할 수 있다

폴더 생성

  • 리소스를 모아 관리할 폴더 생성
  • 폴더 이름 : Speedrun: Your First E2E Workflow

여기까지 프로젝트 기본 세팅


이제부터 실제 작업은…

  1. 데이터 load, 통합 (Pipeline Builder)
  2. 온톨로지 구축 (Ontology Manager)
  3. 모니터링과 운영 업무를 실행하는 애플리케이션 레이어 (Workshop)

1. 데이터 로드, 통합

Pipeline Builder

Pipeline Builder를 사용하여

  • 엑셀로 관리되는 두 개의 주문 시스템 데이터를 불러와 하나의 데이터 흐름으로 통합
  • 데이터 ELT (데이터 연결, 데이터 로드, 데이터 변환)

O회사 주문 내역: orders_office_goods-202602100958.csv
B회사 주문 내역: orders_bureau_transactional_system-202602100958.csv
두회사 통합 고객 목록: consolidated_customers-202602100958.csv

데이터 연결

데이터 업로드

폴더 안에 들어가서 다운로드 받은 엑셀 파일을 업로드

데이터 업로드 확인


데이터 로드

  • 노코드 툴 Pipeline Builder 를 통한 데이터 로드하여 데이터를 확인합니다.
Pipeline Builder 생성

  • 어떤 파이프라인인지 명확한 이름을 입력

Pipeline에서 작업할 데이터 불러오기

데이터 확인

불러온 데이터 확인

같은 방법으로 데이터를 확인.


데이터를 확인해보니...

  • 날짜 형식이 불일치
    • order_due_date(Bureau), dueDateTime(Office Goods)
    • Date 문자열 저장 Timestamp로 변환 필요.
  • PK가 없는 주문이 존재
    • order_id, orderId가 null이거나 빈 문자열인 불완전한 행.
  • 컬럼명이 시스템마다 다름
    • Office Goods는 camelCase(dueDateTime, orderId)
    • Bureau는 snake_case(order_due_date, order_id)
  • Office Goods에만 있는 컬럼
    • orderPlacementDate는 Bureau에 없는 컬럼.
O회사(Office Goods) 주문 내역 구성
컬럼타입설명
dueDateTimestring (M/D/YY)납기일
orderIdstring (접두사+UUID)주문 고유 ID (PK)
customer_idstring (A+숫자)Office Goods 고객 ID
orderPlacementDatestring (ISO 8601)주문 접수 일시
statusstring (카테고리)주문 상태: assigned / closed / open
assigneestring (nullable)담당자명
quantityint64주문 수량
item_namestring (카테고리)품목명 (10종)
unit_priceint64단가 (20~110)
days_until_dueint64납기까지 남은 일수
B회사(Bureau) 주문 내역 구성
컬럼타입설명
order_idstring (UUID 연결형)주문 고유 ID (PK)
customer_idstring (UUID)Bureau 고객 ID
statusstring (카테고리)주문 상태: assigned / closed / open
assigneestring (nullable)담당자명
quantityint64주문 수량
item_namestring (카테고리)품목명 (10종)
unit_priceint64단가 (20~110)
order_due_datestring (M/D/YY)납기일
days_until_dueint64납기까지 남은 일수
두 회사 통합 고객 목록 구성

두 시스템 간 고객 ID 매핑(마스터) 테이블

컬럼타입설명
officegoods_customer_idstring (nullable)Office Goods 고객 ID
bureau_customer_idstring (nullable)Bureau 고객 ID
consolidated_customer_idstring (UUID)통합 고객 ID (PK)
customer_namestring고객명

다시 Pipeline Builder 로 돌아가기


데이터 변환

  • 데이터를 살펴보며 확인한 데이터 정리, 변환 작업

데이터 정리, 통합 작업

  • 데이터 클랜징 (PK가 없는 주문 삭제)
  • 컬럼명 규칙 통일
  • 날짜 형식 일치 시키기
orders_office_goods (Clean Office Goods)
  • orderId가 null/빈 문자열인 행 제거
  • dueDateTime을 Date → Timestamp로 변환
  • dueDateTimeorder_due_date로 컬럼명 변경
  • orderPlacementDate 컬럼 삭제
  • 컬럼명 정규화 (snake_case 통일)

  • orderId가 null/빈 문자열인 행 제거
    • Filter Rows 검색

  • dueDateTime을 Date → Timestamp로 변환
    • Cast 검색

  • dueDateTimeorder_due_date로 컬럼명 변경
    • Rename columns 검색

  • orderPlacementDate 컬럼 삭제
    • Drop columns 검색

  • 컬럼명 정규화 (snake_case 통일)
    • Normalize column names 검색

어떤 변환 작업인지 구분하기 위해 Transform 이름을 지정 (clean office goods)

  • apply 버튼 클릭 후 close 버튼


orders_bureau_transactional_system (Clean Bureau)
  • order_due_date를 Date → Timestamp로 변환
  • order_id가 null/빈 문자열인 행 제거
  • 컬럼명 정규화 (snake_case 통일)

  • order_id가 null/빈 문자열인 행 제거
    • Filter Rows 검색

  • order_due_date를 Date → Timestamp로 변환
    • Cast 검색

  • 컬럼명 정규화 (snake_case 통일)
    • Normalize column names 검색

어떤 변환 작업인지 구분하기 위해 Transform 이름을 지정 (clean bureau)

  • apply 버튼 클릭 후 close 버튼

데이터 통합

주문, 고객, 배송 상태를 업무 객체로 모델링해 단일 기준(Single Source of Truth)을 만든다.

데이터 하나로 만들기

  • 합병 되면서 만든 통합 고객 id 기준으로 데이터 하나로 만들기
통합 고객 id 정보 붙이기
  • clean office goods

  • 확인

  • clean bureau

  • 확인

하나의 주문 테이블로 만들기

  • Union 작업 이름 입력 : Union Orders
    • 앞에서 두 데이터의 스키마를 통일하는 작업으로 데이터 합치는 작업 가능

  • 팔란티어 내 다른 앱에서 사용할 수 있도록 dataset으로 만들어 줍니다.


  • 데이터셋 이름 지정: all_orders

  • 저장하고 파이프라인 디플로이

여기까지 파이프라인으로
데이터를 정리하고 통합하는 과정을 만들었습니다.
파이프라인을 deploy하면서 실제 데이터 파이프라인이 동작하고
결과 dataset이 만들어집니다.

이제 깔끔하게 정리된 이 데이터를 온톨로지에 넣고 활용해보자.


2. 온톨로지 구축

Ontology Manager를 사용하여 온톨로지 구축
단순한 데이터 셋 관계성을 부여할 수 있는 형태로의 변환

Ontology manager

온톨로지 객체 생성

기존에 만든 데이터를 불러와 온톨로지 객체로 생성.

  • 온톨로지 객체에 생성할 property 정보와 primary key, title을 설정
    • 여기서는 기타 정보는 그대로 가져오고 primary key, title 만 설정

  • 온톨로지를 수정할 수 있는 actions는 뒤쪽에서 다루니 지금은 객체 정의만 하고 생성

온톨로지 객체 반영

  • Save를 눌러야지만 온톨로지에 반영된다.
    • Save를 누르면 dataset으로 부터 팔란티어 자체 object storage에 색인 작업을 진행
    • 색인이 완료되면 오브젝트 1,492 objects 확인


3. 모니터링과 운영 업무를 실행하는 애플리케이션 레이어

  • 온톨로지를 기반으로 운영하는 운영 도구 개발
    • 관리자가 주문을 할당
    • 미처리·배송 위험 주문을 실시간으로 모니터링

Workshop

화면을 구성하고, 온톨로지 객체를 불러와 데이터를 보여주며, 온톨로지 Action과 연동하여 화면에서 온톨로지 객체를 생성,수정,삭제 가능하게 합니다.

워크샵 모듈 생성

  • 워크샵 이름: [사용자이름] Orders Inbox
  • Location: 내가 만든 프로젝트에 folder (Speedrun: Your First E2E Workflow)

워크샵 화면 구성 작업은 교육 자료에 상세하게 나와 있어 생략합니다.
핵심은 구축한 온톨로지를 화면에 불러와 여러 가지 위젯을 통해 보여줄수 있다는 것입니다.

워크샵 화면 구성 완료

Ontology manager

워크샵에 온톨로지 Action 연동

  • 온톨로지에 구축한 데이터를 보기만 하는게 아니라 생성, 수정, 삭제가 가능하도록 연동합니다.
온톨로지 객체 수정 가능하도록 enable

온톨로지 객체 수정 Action 정의
  • 객체를 생성,수정,삭제 작업을 할 수 있는 Action 과 실행 권한을 정의할 수 있다.
  • 여기서는 액션 동작 시 객체를 수정하도록 정의
    • 주문 작업에 대한 할당을 Action 으로 정의

Workshop

  • 이제 애플리케이션에 Action을 버튼에 연동

워크샵 모듈 찾아 들어가기

버튼에 Action 연동하기

동작 확인하기

  • View 버튼을 눌러 제대로 동작하는지 확인해보자.

기타_리니지 기능

데이터 리니지

워크플로 리니지