Snowflake에서의 Ontology: AI가 실제로 데이터를 이해하게 만드는 방법
요약
Snowflake의 수석 AI 아키텍트 Taja가 Enterprise AI의 핵심 과제인 비즈니스 의미론 이해를 위한 온톨로지 구축 방안을 발표했습니다. 온톨로지를 통해 AI 에이전트가 단순 데이터 조인을 넘어 비즈니스 개념을 추론할 수 있는 구조적 계층을 제공하는 방법을 다룹니다.
핵심 포인트
- AI가 원시 데이터의 복잡한 관계를 오해하여 발생하는 환각 현상 해결
- 온톨로지는 관계의 규범을 정의하는 청사진 역할을 수행
- 지식 그래프는 온톨로지를 바탕으로 구축된 구체적인 사실 데이터
- 온톨로지와 지식 그래프의 디커플링을 통한 효율적인 데이터 관리
발표자 Taja(Snowflake 수석 AI 아키텍트)가 에서 **《Snowflake에서의 Ontology: AI가 실제로 데이터를 이해하게 만드는 방법》**이라는 주제로 발표를 진행했습니다 oxed{}
핵심 주제는 다음과 같습니다: Enterprise AI 구축의 어려움은 모델이나 연산 능력이 아니라, AI가 비즈니스 의미론(Semantics)을 진정으로 이해하지 못한다는 점에 있다 oxed{
}Snowflake 상에 네이티브하게 **온톨로지 (Ontology)**를 구축함으로써 AI Agent에게 구조화된 비즈니스 의미론 계층을 제공할 수 있으며, 이를 통해 AI가 "원시 데이터에 대해 Join 쿼리를 수행하는 단계"를 넘어 "비즈니스 개념에 대해 추론하는 단계"로 도약할 수 있게 합니다 oxed{}
발표의 상세 내용은 다음과 같은 핵심 부분으로 나뉩니다:
1. 핵심 페인 포인트(Pain Point) 및 기본 개념의 구분
- AI는 왜 거짓말을 하는가? 데이터베이스에는 테이블, 외래 키(Foreign Key), 암호화된 컬럼명만 존재하지만, 현실 세계는 객체(사람, 팀, 계약 등)와 그들 사이의 상호 관계에 의해 작동하기 때문입니다 oxed{}
원시 테이블을 AI에게 직접 제공하면, 극도로 복잡한 SQL을 작성하거나 로직이 중복될 뿐만 아니라, AI가 매우 자신만만하게 틀린 답을 내놓는 결과를 초래합니다 oxed{} - 온톨로지 (Ontology) vs 지식 그래프 (Knowledge Graph):
- Ontology는 청사진 (Blueprint)입니다: 어떤 클래스(Class)와 관계(Relationship)가 존재할 수 있는지 규정합니다 (예: "사람"은 "조직"을 위해 일할 수 있고, "선수"는 "사람"의 일종이다) oxed{}
한 번 정의되면 거의 변하지 않습니다 oxed{} - Knowledge Graph는 건축물 (Building)입니다: 청사진을 바탕으로 구축된 구체적인 사실입니다 (예: "음바페"는 "선수"이며, "레알 마드리드"에서 뛰고 있다) oxed{}
사실(Fact)은 이적 시장 등에 따라 빈번하게 변합니다 oxed{} - 핵심 원칙: Ontology는 관계의 규범을 정의하고, Knowledge Graph는 구체적인 사실을 인스턴스화(Instantiation)합니다 oxed{}
두 요소는 저장과 쿼리 측면에서 디커플링(Decoupling)됩니다 oxed{}
2. Snowflake 상의 5계층 네이티브 아키텍처
발표자는 "사실은 한 번만 저장하고, 의미론은 설정(Configuration)으로 정의하며, 지능은 협업적 스케줄링을 통해 구현한다"는 5계층 설계를 제안했습니다 oxed{
}-
Layer 1: 기초 물리 저장소 (Nodes & Edges Table) 단 두 개의 기본 테이블만 사용합니다:
]. 새로운 엔티티 유형(예: 심판)이 추가되어도 스키마 (Schema)를 수정할 필요 없이 즉시 삽입할 수 있습니다 [].Nodes테이블은 존재하는 모든 사물을 저장하고,Edges테이블은 사물 간의 연결을 저장하며, 모두 Variant 컬럼으로 설계되었습니다 [ -
Layer 2: 온톨로지 메타데이터 구성 (Ontology Metadata) 코드를 작성할 필요 없는 순수 선언적 구성(Declarative configuration) 방식이며, 상속 트리(예: "선수"와 "코치"는 "사람"을 상속받음)와 제약 관계를 정의합니다 [
]. 비즈니스 로직이 변경될 경우, 메타데이터 한 줄만 새로 추가하면 됩니다 []. -
Layer 3: 자동 컴파일러 및 뷰 생성 (Compiler & Generated Views) 스토어드 프로시저 (Stored Procedure)를 통해 Layer 2의 메타데이터를 자동으로 읽어 들여, 다형성 통합 뷰 (Polymorphic unified views)를 컴파일하여 생성합니다 (예: 선수와 코치를 "사람"이라는 추상적 개념으로 자동 통합) [
]. 다운스트림 (Downstream)에서의 코드 수정은 전혀 필요하지 않습니다 []. -
Layer 4: 세 가지 목적별 전용 시맨틱 모델 (3 Purpose-Built Models)
-
지식 그래프 모델 (Concrete): 매우 빠르고 구체적인 속성 쿼리에 적합합니다 (예: "누가 레알 마드리드에서 뛰고 있는가") [
]. -
온톨로지 모델 (Abstract / Polymorphic): 유형을 넘나드는 다형적 추상 추론에 적합합니다 (예: "누가 레알 마드리드에서 일하는가"라고 질문하면 선수와 코치를 동시에 반환 가능) [
]. -
거버넌스 모델 (Governance): 시스템 자기 기술 (Self-describing)을 위해 사용되며, 권한과 모델 범위를 제어합니다 [
]. -
Layer 5: Cortex Agent 조정 및 스케줄링 계층
].
두뇌 역할을 하는 지휘자 (Conductor)로서, 자연어 질문에 대한 의도 파악 (Intent recognition)을 수행하고, 가장 적합한 시맨틱 도구 또는 그래프 순회 엔진을 호출하여 결과를 병합해 반환합니다 [
3. 자동화 배포 도구: Ontology Stack Builder
5계층 아키텍처를 구축하는 복잡성을 해결하기 위해, Snowflake는 Ontology Stack Builder (Koko Skills 도구)를 출시했습니다 [
]:- 대화형 워크플로우: 데이터 테이블 스키마 (Schema)를 자동으로 분석하여 클래스와 관계를 추천합니다 [].
- 시각적 편집: 시각적 그래프 에디터를 제공하여 노드를 드래그 앤 드롭하고, 관계를 그리며, 커버리지를 확인할 수 있습니다 [].
- 원클릭 생성 및 배포: 설계를 확정하면 SQL을 자동으로 생성하고, Layer 1-3 뷰를 배포하며, Cortex Agent를 구성합니다 [].
- 인간 참여형 (Human-in-the-loop): 7개의 검증 게이트 (Gates)를 통해, 과거 수 주 또는 수개월이 걸리던 구축 과정을 1시간 이내로 단축합니다 [].
4. 요약 및 3가지 핵심 요약
- 의미론적 정의의 명시화 (Explicit Semantic Definition): 사실은 단 한 번만 저장하며, 의미론(Semantics)을 메타데이터로 정의하여 컴파일러가 뷰(View)를 생성하도록 합니다 [].
- 다각적 관점의 분리 (Multi-perspective Routing): 속도(지식 그래프 모델), 추론(온톨로지 모델), 그리고 신뢰성(거버넌스 모델)을 모두 고려합니다 [].
- 의도 기반 스케줄링 (Intent-driven Scheduling): SQL을 하드코딩하는 대신, 에이전트(Agent)가 지능적으로 쿼리를 라우팅합니다 [].
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기