데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      NVIDIA Omniverse Nucleus 역할 및 핵심기술

      lambda 25.08.11
      3,051 7 1
      DEVOTEE 요약
      엔비디아의 젠슨 황은 CES 2025에서 AI와 가상현실을 융합한 새로운 기술 비전인 'Physical AI'와 'Omniverse Platform'을 소개하며, 이 중 'Nucleus'가 산업 전반의 실시간 협업과 대규모 3D 작업을 혁신하는 핵심 기술로 주목받았습니다. Nucleus는 Pub/Sub 메시징 구조를 통해 여러 사용자가 동일한 3D 씬을 실시간으로 수정하고, 변경 사항만 중계해 네트워크 부담과 지연을 줄이며 안정적인 공통 작업 환경을 제공합니다. 또한 자동화 도구와 클라이언트 라이브러리를 활용해 파일 관리와 권한 제어를 코드로 처리할 수 있어 대규모 협업 작업을 최적화합니다.
      DEVOTEE 추천 블로그

      "NVIDIA의 공동 창립자이자 CEO인 젠슨 황(Jensen Huang)은 CES 2025 기조연설에서 'Physical AI'와 'Omniverse Platform'이라는 차세대 기술 비전을 선보이며,

      인공지능과 가상-현실 융합 시대의 새로운 패러다임을 제시했습니다.

      그는 이를 통해 AI가 물리적 세계에 실질적으로 작용하고 상호작용하는 방식에 대해 구체적인 청사진을 그렸습니다.

      이번 연설에서 핵심 축을 이룬 'Omniverse Platform'은 디지털 트윈, 산업 자동화, 협업형 시뮬레이션 등 다양한 산업 분야의 미래를 재정의할 플랫폼으로 주목받고 있으며,

      그 중에서도 핵심 역할을 수행하는 구성 요소가 바로 'Nucleus'입니다. 이제, 이 Nucleus에 대해 좀 더 깊이 들여다보겠습니다."


      Omniverse Enterprise Overview

      Omniverse Enterprise 아키텍처 개요

      Nucleus 소개 및 기능

      NVIDIA Omniverse는 실시간 3D 협업과 물리 시뮬레이션을 위한 포괄적인 플랫폼이며, Nucleus는 이름에서 느낄 수 있듯 플랫폼의 핵심 데이터베이스이자 협업 엔진입니다.

      메타버스와 디지털 트윈 시대에 있어서 Nucleus는 단순한 도구를 넘어 차세대 3D 협업 생태계의 기반이 되고 있습니다.

      Nucleus는 다양한 클라이언트 애플리케이션, 렌더러, 마이크로서비스가 가상 세계의 표현을 공유하고 수정할 수 있도록 하는 기본 서비스를 제공합니다.

      Nucleus에서 제공하는 주요 기능을 간단히 소개하면 다음과 같습니다.

      1. 실시간 동기화

      여러 사용자가 동시에 같은 씬에서 작업하면서 실시간으로 변경사항을 확인할 수 있습니다.

      • Nucleus는 아무 데이터나 넣는 것이 가능하지만, 기본적으로 USD(Universal Scene Description) 파일을 저장하는 용도로 주로 사용합니다.

        NVIDIA Omniverse에서 시뮬레이션 환경을 구성할 때 주로 사용하는 파일인 USD는 픽사에서 만든 OpenUSD Project의 오픈 소스 3D 포멧 입니다.

      • Nucleus와 연동 하면 여러 사람이 하나의 USD 파일을 불러와 같이 작업이 가능 합니다.

        해당 기능을 Live Sync라고 하며 Omniverse Connect를 참고하시면 지원되는 프로그램들을 확인 하실 수 있습니다.

      2. 권한관리

      세분화된 권한 시스템으로 사용자별로 읽기/쓰기 권한을 설정할 수 있습니다.

      3. 버전 관리

      자동 버전 관리와 히스토리 추적으로 모든 변경사항을 추적하고 롤백할 수 있습니다.

      4. 클라우드 지원

      온프레미스와 클라우드 환경 모두에서 배포 가능하며, 확장성을 제공합니다.

      주요 구성 요소

      • Nucleus Navigator: 웹 기반 파일 관리 인터페이스

      • Omniverse Cache: 성능 향상을 위한 캐싱 시스템

      • 사용자 관리 시스템: 인증 및 권한 관리

      • 백업 및 복구 도구: 데이터 보호 메커니즘

      image.png

      Nucleus Navigator 인터페이스

      Nucleus Pub/Sub 협업 서버 개요

      개인적으로 NVIDIA Nucleus라는 명칭이 ‘핵(Nucleus)’으로 정해진 이유는, 단순한 파일 스토리지나 데이터베이스 기능을 넘어 Publisher/Subscriber(Pub/Sub) 아키텍처를 지원하기 때문이라고 생각합니다.

      3D 씬 제작 과정에서 다수의 사용자가 실시간으로 협업해야 하는 경우, Nucleus는 메시지 브로커 역할을 수행하며 변경된 데이터만 발행(Publish)하고,

      연결된 다양한 서비스가 이를 구독(Subscribe)하도록 함으로써 동일한 3D 씬을 동시 편집할 수 있는 분산 협업 환경을 제공합니다.

      Pub/Sub 모델의 작동 원리


      Nucleus의 Pub/Sub 아키텍처는 느슨한 결합(Loose Coupling) 원칙을 기반으로 설계되었습니다.

      이 설계 철학의 핵심은 발행자(Publisher)와 구독자(Subscriber) 간의 직접적인 의존성을 제거하여 확장성과 유연성을 극대화하는 것입니다.

      중앙 집중식 메시지 브로커 패턴을 통해 Nucleus 서버가 모든 통신을 중재하며, 협업과 동기화는 완전히 Nucleus에 위임됩니다.

      비동기 메시징 패러다임은 실시간 협업에서 필수적인 성능과 응답성을 보장합니다.

      이는 전통적인 동기식 통신의 블로킹 문제를 해결하고, 네트워크 지연이나 클라이언트 성능 차이가 전체 시스템에 미치는 영향을 최소화합니다.

      퍼블리셔는 자산과 씬에 대한 수정 내용을 게시(publish) 하고, 서브스크라이버는 변경 알림을 구독(subscribe) 하여 실시간으로 변경사항을 반영합니다.

      OmniLive 라이브 협업 시스템

      OmniLive는 Nucleus의 Pub/Sub 인프라 위에 구축된 실시간 협업 레이어로, 여러 사용자가 동일한 USD 씬을 동시에 편집할 수 있게 해줍니다.

      라이브 협업의 핵심 구성요소

      1. Live Session 관리

      • 세션 생성: 새로운 협업 세션 시작

      • 세션 참여: 기존 세션에 조인

      • 세션 머지: 다중 사용자 변경사항 통합

      • 충돌 해결: 동시 편집 시 발생하는 충돌 관리

      2. 사용자 인식(User Awareness)

      • 실시간 커서 표시: 다른 사용자의 편집 위치 시각화

      • 사용자 색상 구분: 각 사용자별 고유 색상 할당

      • 편집 상태 공유: 누가 무엇을 편집 중인지 표시

      3. 권한 관리

      • 읽기/쓰기 권한: 사용자별 접근 권한 제어

      • 레이어 잠금: 특정 레이어 편집 권한 제한

      • 브랜치 관리: 버전 분기 및 병합 제어

      USD 레이어 기반 Live Sync 메커니즘

      Omniverse의 실시간 동기화는 USD의 레이어 시스템을 활용하여 구현됩니다.

      특히 Live Layer(.live) 가 핵심 역할을 합니다. Live Sync로 세션을 열게 되면 기존의 USD 파일의 .usd 확장자에서 .live 확장자로 변환 되며 새로운 레이어를 구성하게 됩니다.

      Live Layer의 특징

      1. 임시성(Ephemeral)

      • 메모리상에서만 존재하는 임시 레이어

      • 세션 종료 시 자동으로 소멸

      • 영구 저장을 위해서는 명시적으로 다른 레이어로 병합 필요

      2. 최고 우선순위

      • USD 레이어 스택에서 최상위에 위치

      • 다른 모든 레이어의 값을 오버라이드 가능

      • 실시간 편집 변경사항이 즉시 반영

      3. 델타 추적

      원자적 변경 추적(Atomic Change Tracking) 메커니즘은 ACID 트랜잭션 모델에서 영감을 받은 설계입니다.

      모든 변경사항이 불가분의 단위(Atomic Unit) 로 처리되어 데이터 일관성롤백 가능성을 보장합니다.

      Change Block 패턴배치 처리(Batch Processing) 개념을 3D 씬 편집에 적용한 것으로, 성능 최적화의미론적 그룹핑을 동시에 달성합니다.

      이는 여러 개별 변경사항을 하나의 논리적 편집 단위로 묶어 처리함으로써 불필요한 중간 상태를 제거합니다.

      LiveSyncing 컴포넌트

      LiveSyncing 컴포넌트는 세션 수명주기 관리(Session Lifecycle Management) 의 핵심 아키텍처입니다.

      이는 상태 기계(State Machine) 패턴을 적용하여 협업 세션의 생성, 참여, 동기화, 종료 과정을 체계적으로 관리합니다.

      참여자 관리 시스템멀티테넌시(Multi-tenancy) 원칙을 구현하여 동일한 인프라에서 여러 독립적인 협업 세션이 안전하게 공존할 수 있도록 설계되었습니다.

      세션 격리(Session Isolation) 를 통해 각 협업 그룹의 작업이 서로 영향을 주지 않도록 보장합니다.

      델타 히스토리 추적이벤트 소싱(Event Sourcing) 패턴의 구현체로, 모든 변경사항을 순차적 이벤트로 기록하여 감사 가능성(Auditability)시간 여행 디버깅(Time-travel Debugging) 을 지원합니다.

      델타 동기화 원리

      Nucleus의 핵심 혁신은 "전체 저장"이 아닌 "델타만" 전달하는 방식입니다. 이는 대용량 3D 씬에서도 실시간 협업을 가능하게 만드는 핵심 기술입니다.

      전통적인 방식의 문제점

      파일 크기: 500MB USD 파일
      변경사항: 단일 객체의 위치 변경 (16 bytes)
      전송 데이터: 500MB (전체 파일)

      델타 동기화의 장점

      파일 크기: 500MB USD 파일
      변경사항: 단일 객체의 위치 변경 (16 bytes)
      전송 데이터: ~100 bytes (델타 + 메타데이터)

      실제 데이터 흐름 과정

      마지막으로, 실제 협업 시나리오에서 데이터가 어떻게 흘러가는지 단계별로 살펴보겠습니다.

      시나리오: 여러 사용자가 동일한 3D 씬 편집

      초기 설정 단계

      사용자 A가 새로운 협업 세션을 시작하면, 세션 관리자는 세션을 생성하고, USD Stage를 로드하여 Live Layer를 설정합니다.

      이후 Nucleus 구독을 시작하여 원격 변경사항을 실시간으로 수신할 준비를 합니다.

      사용자 B가 세션 참여

      사용자 B는 기존 세션에 참여하고, 현재 씬 상태를 동기화한 후 실시간 델타 구독을 시작합니다. 이를 통해 사용자 B도 실시간 협업 환경에 합류하게 됩니다.

      실시간 편집 및 동기화

      1. 사용자 A가 캐릭터 위치 변경

      사용자 A가 캐릭터의 위치를 변경하면, 로컬 USD Stage에 변경사항이 기록되고, 델타 버퍼에 자동으로 추가됩니다. 이 델타는 네트워크 전송을 위해 준비됩니다.

      2. 델타 전송 및 서버 처리

      일정 주기마다 델타 배치가 생성되어 Nucleus 서버로 전송됩니다. 서버는 델타의 유효성을 검증하고 충돌을 검사하며, 필요시 충돌을 해결한 후 세션 히스토리에 기록합니다.

      이후 다른 참여자들에게 델타를 브로드캐스트합니다.

      3. 사용자 B가 델타 수신 및 적용

      사용자 B는 서버로부터 델타를 수신하면, 이를 로컬 USD Stage에 적용하고 Fabric 런타임과 동기화합니다. 또한 UI를 업데이트하여 사용자 인식 정보를 반영합니다.

      동시 편집 충돌 상황

      사용자 A와 B가 동시에 같은 객체를 편집할 경우, 서버는 충돌 해결 전략을 적용하여 두 변경사항을 병합하거나 우선순위를 결정합니다.

      예를 들어, 벡터 병합 전략을 통해 각 축의 변경사항을 조합하여 최종 위치를 결정할 수 있습니다.

      성능 최적화된 대용량 씬 처리

      대용량 씬에서는 계층적 델타 처리, 공간 인덱싱, 배치 압축 등의 기법을 활용하여 변경사항을 효율적으로 관리하고, 실시간 협업의 성능을 극대화합니다.

      실시간 데이터 흐름 다이어그램


      결론

      지금까지 알아본 Nucleus에 대해 종합하자면, Omniverse의 핵심(Nucleus) 는 단순한 파일 저장소나 버전 관리 서버를 넘어, 실시간 협업을 위한 Pub/Sub 메시지 브로커이자 중앙 허브입니다.

      같은 씬을 여러 도구와 사람이 함께 쓸 때 바뀐 부분(델타)만 똑똑하게 중계해 네트워크 부담과 지연을 줄이고, 권한·버전·히스토리까지 한곳에서 관리해 안정적인 협업 기반을 제공합니다.


      큰 3D 씬 작업은 협업이 필수입니다. Nucleus는 메시지 브로커로 동작해 동일 씬을 실시간으로 공유하고, 변경 알림을 빠르게 퍼뜨려 모두의 화면을 즉시 맞춰 줍니다.

      그 결과, 대용량 프로젝트에서도 끊김 적고 충돌이 적은 공동 편집이 가능합니다.


      하지만, Nucleus는 오픈소스가 아닙니다. 서버 자체를 직접 수정하는 형태의 커스터마이징은 어렵습니다.

      또한 Nucleus는 자체 Web UIOmniverse Extension을 통해 접근할 수 있지만, 별도의 공개된 일반 REST API는 제공하지 않습니다. 즉, 브라우저에서 클릭해 쓰는 방식이 기본입니다.


      그럼 GUI가 아니고 접근할 수 있는 방법은 없는 걸까요?

      자동으로 데이터를 넣고 빼고, 배치 작업을 돌리고 싶다면 GUI나 Extension만 써야 할까요?

      정답은 아니요입니다.

      Nucleus는 직접적인 공개 REST API는 없지만, Nucleus Tools(예: 백업/복구·관리 도구)와 공식 클라이언트 라이브러리(OmniClient 등) 를 통해

      업로드·다운로드·버전 조회·권한 연동 같은 작업을 스크립트/프로그램에서 자동화할 수 있습니다.

      즉, “클릭” 대신 코드로 제어하는 경로가 준비되어 있습니다.


      다음 글에서는 클라이언트 라이브러리를 이용해 Nucleus에 파일을 업로드하고 메타데이터를 가져오는 방법을 살펴보겠습니다.

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      lambda 님의 최신 블로그

      더보기

      DEVOTEE 추천 블로그

      동영상 기고하기