Page History
데이터베이스는 지루하면 안된다라는 슬로건을 내건 모던 DB
...
활용 인프라아키텍처는 더 복잡해지고 더 많은 이벤트를 처리할것이 분명해 보입니다.
✅ 1. Next 아키텍처의 키워드
핵심 키워드 | 설명 |
|---|---|
| AI-Native | AI가 모든 서비스 흐름에 기본 내장됨 (예: 추천, 예측, 분류) |
| Context-Aware | 사용자, 시스템 상태에 따라 유동적으로 동작 (MCP 적용) |
| Event-Driven | 모든 변화가 이벤트로 감지/처리됨 (Kafka, NATS) |
| Composable | 기능을 블록처럼 재조립 (Low-code, Function as a Service) |
| Autonomous Ops | 스스로 모니터링, 복구, 확장하는 인프라 |
| Multi-Agent Collaboration | 여러 AI Agent가 분산되어 협력 작업 수행 |
전통RDB진영 또한 Nosql기능을 탑재해가며 발전해 나가겠지만~ 스몰비즈니스 개발팀이 각각 특화된 모든 DB를 다루고 복잡한 파이프라인을 다룰 역량을 가지기 까지
...
서론이 길었으며~ 다양한 하이브리드 모던 DB중 하나인 RavenDB의 특징과 사용법 그리고 Akka.net에서의 확장 사용법을 간단하게 알아보겠습니다.
✅ RavenDB 특징
| 항목 | 설명 |
|---|---|
| Document Store | JSON 기반의 문서 저장 (MongoDB처럼) |
| Full-Text Search 내장 | Lucene 기반 검색엔진 포함 (Elasticsearch 대체 가능) |
| Graph-Like Traversal 지원 | Include, Load, RelatedDocuments 로 Graph traversal 흉내 가능 |
| 벡터 검색 (Vector Search) | 6.0 이상 버전에서 Vector search 지원 (Preview → Stable 예정) |
| ACID 트랜잭션 지원 | NoSQL 중 드물게 단일 DB 내 ACID 지원 |
| 자동 인덱싱/쿼리 최적화 | 쿼리 기반으로 자동 인덱싱 생성 |
| Change Vector / ETL 기능 내장 | 다른 Raven 클러스터 또는 외부 시스템으로 데이터 복제 가능 |
| 클라우드 + 온프렘 지원 | 다양한 배포 환경 대응 |
| Sharding + Replication | 분산 구조 대응 가능 (Sharded DB) |
✅ 기존 DB 구성 중 대체 가능한 역할
| 기존 시스템 | RavenDB로 대체 가능 여부 | 설명 |
|---|---|---|
| MongoDB (Document DB) | ✅ 완전 대체 | JSON 기반 문서 저장, 컬렉션 → 문서 분리 모델 |
| Elasticsearch | ✅ 부분 대체 | Full-text 검색 지원, 복잡한 분석쿼리는 제한적이나 일반 검색에는 충분 |
| Neo4j (Graph DB) | ⚠️ 간단한 관계 트래버설은 가능 | 명시적 Graph 모델링은 어려움 (복잡한 네트워크 분석에는 부적합) |
| Vector DB (예: Weaviate, Milvus) | ✅ 단순 벡터 검색은 대체 가능 | 다차원 벡터 검색 API 제공, 모델링+쿼리 결합 쉬움 |
| RDB (CRUD/정형) | ⚠️ 단순 CRUD는 가능, 복잡한 조인과 트랜잭션은 제한적 | 정형 테이블 기반보다는 문서 중심 모델 필요 |
| Code Block | ||
|---|---|---|
| ||
version: '3.8'
services:
ravendb:
image: ravendb/ravendb:ubuntu-latest
container_name: ravendb
ports:
- "9000:8080"
environment:
- RAVEN_Setup_Mode=None
- RAVEN_License_Eula_Accepted=true
volumes:
- ravendb_data:/ravendb/data
- ravendb_logs:/ravendb/logs
volumes:
ravendb_data:
ravendb_logs: |
...
