Architecture & Technology
D.Hub 플랫폼을 구성하는 서비스 아키텍처와 기술 스택을 정리합니다. 이 페이지는 개발자와 시스템 관리자를 위한 레퍼런스로, 각 기술의 역할과 서비스 간 관계를 설명합니다.
서비스 아키텍처
D.Hub는 세 개의 독립적인 백엔드 서비스와 하나의 프론트엔드로 구성됩니다.
서비스별 역할
| 서비스 | 역할 | 주요 기능 |
|---|---|---|
| D.Hub Manager | 코어 API 서버 | Collection, Dataset, Pipeline, Ontology, Dashboard, Auth, Admin API |
| D.Hub Knowledge Builder | RAG 파이프라인 서버 | 문서 수집, 청킹, 임베딩, 멀티 스토리지 검색, Chat Completions API |
| D.Hub Chatway | AI 에이전트 서버 | 대화형 어시스턴트, 도메인별 프롬프트, 데이터 탐색 도구 |
| D.Hub Portal | 프론트엔드 | React 기반 웹 UI |
기술 스택
데이터 저장 & 검색
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| MinIO | S3 호환 오브젝트 스토리지 | Manifest, 데이터셋 파일, 코드 아티팩트 저장 | min.io/docs |
| ClickHouse | 칼럼 기반 OLAP 데이터베이스 | 데이터셋 테이블 쿼리, 대시보드 분석 엔진 | clickhouse.com/docs |
| Neo4j | 그래프 데이터베이스 | 온톨로지 엔티티/관계 저장, Cypher 쿼리, Knowledge 그래프 검색 | neo4j.com/docs |
| Qdrant | 벡터 유사도 검색 엔진 | Knowledge 임베딩 벡터 저장, 의미 기반 검색 | qdrant.tech/documentation |
| Quickwit | 클라우드 네이티브 검색 엔진 | Knowledge BM25 텍스트 검색, 파이프라인 트레이스 저장 | quickwit.io/docs |
| Delta Lake | 레이크하우스 스토리지 레이어 | 데이터셋 테이블 포맷 (ACID, 타임 트래블, 스키마 진화) | delta.io/docs |
워크플로우 & 이벤트
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| Prefect | 워크플로우 오케스트레이션 | 파이프라인 실행, 스케줄링, 모니터링 | docs.prefect.io |
| Kafka / Redpanda | 메시지 스트리밍 | 파이프라인 이벤트 트리거, 실시간 데이터 연동 | kafka.apache.org/documentation |
| Knative Eventing | 서버리스 이벤트 처리 | CloudEvents 기반 파이프라인 트리거, 자동 스케일링 | knative.dev/docs |
인증 & 보안
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| OpenFGA | 관계형 접근 제어 (ReBAC) | 리소스별 세분화된 권한 관리 (Google Zanzibar 기반) | openfga.dev/docs |
| JWT | 토큰 기반 인증 | Access Token / Refresh Token 발급 및 검증 | jwt.io |
| Argon2 | 비밀번호 해싱 | 로컬 인증 비밀번호 보안 저장 | argon2-cffi.readthedocs.io |
데이터 처리 라이브러리
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| Polars | 고성능 DataFrame 라이브러리 | 파이프라인 Python 코드의 기본 데이터 처리 엔진 | docs.pola.rs |
| Apache Arrow | 컬럼형 메모리 포맷 | 데이터셋 스키마 타입 시스템, 데이터 전송 | arrow.apache.org/docs |
| Pandas | DataFrame 라이브러리 | 파이프라인 Python 코드에서 선택적 사용 | pandas.pydata.org/docs |
문서 처리 (Knowledge Builder)
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| Crawl4AI | AI 기반 웹 크롤러 | Knowledge 웹 크롤링 엔진, SPA 동적 렌더링 지원 | docs.crawl4ai.com |
| Docling | 문서 파서 | PDF, DOCX, PPTX 등을 구조화된 텍스트로 변환 | ds4sd.github.io/docling |
관측성 (Observability)
| 기술 | 역할 | D.Hub에서의 용도 | 공식 문서 |
|---|---|---|---|
| OpenTelemetry | 분산 추적 | 파이프라인 실행 트레이스 수집 및 내보내기 | opentelemetry.io/docs |
데이터 흐름
파이프라인 실행 흐름
Knowledge RAG 흐름
다음 단계
- Python 가이드 -- 파이프라인 Python 코드 작성법
- SQL 가이드 -- ClickHouse SQL 문법과 함수
- API 인증 -- REST API 인증 흐름