용어집
NeoSQL 가이드와 화면에 자주 등장하는 핵심 용어의 의미를 한곳에 모았습니다.
프로젝트 모드
- Online Mode (온라인 모드)
- 클라우드를 통해 ERD·SQL 정의를 실시간으로 동기화하는 협업 모드입니다. 로컬과 서버가 양방향으로 동기화되어 팀원의 변경이 자동 반영되며, 외부 DB 직접 접속이 필요한 경우에는 데스크톱 앱 사용이 권장됩니다.
- Offline Mode (오프라인 모드)
- 모든 프로젝트 데이터를 로컬 `.neosql/` 폴더에만 저장하는 폐쇄망용 실행 모드입니다. 외부 서버와 통신하지 않으며, 별도의 라이선스 키로 인증합니다.
ERD · 스키마
- ERD (Entity Relationship Diagram)
- 데이터베이스의 테이블, 컬럼, 관계를 시각적으로 표현한 다이어그램입니다. NeoSQL은 ERD를 중심으로 테이블 설계, DB 적용, 가져오기를 수행합니다.
- Forward Engineering (DB 적용 · 정방향)
- ERD에서 정의한 테이블·컬럼·관계 정보를 DDL로 변환해 실제 데이터베이스에 반영하는 작업입니다. 신규 생성과 변경분 적용을 모두 포함합니다.
- Reverse Engineering (가져오기 · 역방향)
- 기존 데이터베이스 또는 DDL 파일에서 테이블 구조와 관계를 읽어 들여 ERD로 자동 변환하는 작업입니다. 가져온 ERD는 일반 ERD와 동일하게 편집하고 다시 DB로 적용할 수 있습니다.
- Schema Revision (스키마 리비전)
- ERD를 저장할 때마다 자동으로 만들어지는 스냅샷입니다. 과거 시점의 ERD로 복원하거나 두 리비전 사이의 변경 내역을 비교할 수 있습니다.
- Schema Compare (스키마 비교)
- 두 ERD 또는 ERD와 실제 데이터베이스의 스키마 차이를 나란히 비교해 추가·변경·삭제된 테이블·컬럼·관계를 확인하는 기능입니다. 필요한 차이만 골라 Forward Engineering 으로 반영할 수 있습니다.
협업 · 권한
- Roles (Owner / Manager / DBA / Member)
- 프로젝트 멤버에게 부여하는 4가지 역할입니다. Owner는 프로젝트 생성자(한 명)로 멤버 초대·삭제·소유권 이관까지 모든 권한을 가지며, Manager는 멤버·설정 관리를 위임받은 역할, DBA는 DDL 승인자(approver)로 지정될 수 있는 역할, Member는 일반 협업자입니다. 공유·커넥션·DDL 제한 등 세부 권한은 역할별 체크박스 조합으로 별도 설정합니다.
- Invite Status (초대 상태)
- 프로젝트 초대의 진행 상태입니다. PENDING(대기), ACCEPTED(수락 완료), EXPIRED(만료), CANCELLED(취소) 네 가지 값을 가지며, 수락 전까지는 초대를 취소할 수 있고 만료된 초대는 다시 발송해야 합니다.
- DDL Approver · DDL Restriction (DDL 승인자 · DDL 제한)
- 프로젝트 안에서 DDL(CREATE/ALTER/DROP) 실행을 제한하고, 지정된 DDL 승인자(보통 DBA 역할)의 승인을 받아야만 적용되도록 하는 기능입니다. 운영 DB의 우발적 스키마 변경을 막기 위해 사용합니다.
커넥션
- Profile (연결 프로필)
- DB 커넥션의 위험도를 분류하는 라벨입니다. None / Confirm / Read-only 중 선택하며, Confirm은 DDL이나 WHERE 절 없는 DML을 실행하기 전에 확인 다이얼로그를 띄우고, Read-only는 SELECT 이외의 모든 변경 SQL을 차단합니다.
- Gallery (갤러리)
- 공개로 발행된 ERD를 모아 둔 공간입니다. 다른 사용자의 ERD를 둘러보고 자신의 프로젝트로 복제해 학습하거나 재사용할 수 있습니다.
AI · 코드 생성
- MCP (Model Context Protocol)
- Claude, Codex, Gemini 같은 AI 어시스턴트가 NeoSQL의 테이블 정의와 SQL 실행 기능을 도구처럼 호출할 수 있게 해 주는 표준 프로토콜입니다. NeoSQL의 MCP 서버가 도구 목록을 노출하면 AI 클라이언트가 이를 받아 사용합니다.
- Template Pack (템플릿 팩)
- 테이블 구조에서 Java, TypeScript, Python 등 소스 코드를 자동 생성할 때 사용하는 템플릿 묶음입니다. 기본 제공 팩 외에 사용자가 직접 만든 템플릿을 등록해 사용할 수 있습니다.
보안
- Zero-Knowledge Encryption (영지식 암호화)
- 사용자 패스프레이즈에서 파생된 키로만 자격증명을 복호화하는 추가 보호 레이어입니다. 서버에는 평문 키가 저장되지 않으며, 패스프레이즈를 분실하면 데이터 복구가 불가능합니다.
- Standard Encryption (표준 암호화)
- AES-256-GCM 기반의 자격증명 암호화 방식이며, 데이터 키(DEK)는 KMS Envelope Encryption 으로 보호됩니다. 별도 설정 없이 모든 사용자에게 기본 적용됩니다.
- DEK (Data Encryption Key)
- DB 접속 정보 같은 민감 데이터를 직접 암호화하는 키입니다. 사용자·자원 단위로 분리 생성되며, 평문 형태로는 어디에도 저장되지 않고 KMS Envelope Encryption 으로 한 번 더 감싸서 보관됩니다.
- KMS Envelope Encryption
- 클라우드 KMS(Key Management Service) 의 마스터 키로 DEK 를 다시 한 번 암호화해 저장하는 방식입니다. 마스터 키는 KMS 밖으로 나가지 않으며, DEK 가 필요할 때마다 KMS 에 unwrap 을 요청해 평문 키를 잠깐만 메모리에 두기 때문에 데이터베이스가 유출되더라도 자격증명이 곧바로 풀리지 않습니다.
