도메인(domain)이란? 개발·네트워크·DB에서 각각 어떻게 다르게 쓰일까?
개발 공부를 하다 보면 "도메인(domain)"이라는 단어가 정말 여러 곳에서 나오는데, 그때마다 의미가 다릅니다.
처음엔 웹사이트 주소를 뜻하는 것 같다가도, 소프트웨어에서는 코드 구조를 뜻하고, 데이터베이스에서는 데이터의 값 범위를 뜻하죠.
이 글에서는 도메인이라는 용어가 각각 어떤 분야에서 어떻게 다르게 사용되는지 최대한 자세히 정리합니다.
1. 인터넷: 우리가 아는 웹사이트 주소 "도메인"
도메인(domain)의 정의
사람이 기억하기 쉬운 형태의 인터넷 상 주소
예시
- www.google.com
- naver.com
- github.io
기술적으로는?
- 실제 컴퓨터의 IP 주소(142.250.183.78 등)를 사람이 이해하기 쉽게 표현
- DNS(Domain Name System)가 도메인 이름 ↔ IP 주소를 변환
도메인의 구조
- 최상위 도메인(TLD): .com, .kr, .net, .org 등
- 2차 도메인: google, naver
- 서브도메인: www, mail, api
관련 개념
- 도메인 등록 및 관리
- 소유권
- 서브도메인(api.naver.com, blog.example.com 등)
2. 소프트웨어 개발: 문제를 모델링한 "도메인"
도메인 모델(domain model)
현실 세계 문제를 코드로 표현한 개념/규칙
예시
- 쇼핑몰 → 상품, 주문, 결제, 회원
- 병원 시스템 → 환자, 의사, 예약, 진료기록
도메인 계층(domain layer)
- 비즈니스 로직이 포함된 계층
- 보통 서비스 계층, 컨트롤러 계층과 구분
도메인 패키지 구조
com.example.order.domain
com.example.user.domain
3. 데이터베이스: 컬럼의 값이 될 수 있는 범위 "도메인"
데이터베이스 도메인 정의
하나의 속성이 가질 수 있는 값의 범위 또는 값들의 집합
예시
속성 도메인 예시
| 성별 | 남성, 여성 |
| 나이 | 0 ~ 150 |
| 국가코드 | KR, US, JP |
역할
- 데이터 무결성 보장
- 적절한 타입 및 값 범위 제한 (VARCHAR, INT, DATE 등)
4. 수학/컴퓨터 과학: 함수의 입력값 범위 "도메인"
수학적 도메인
- 함수의 정의역
- 예: f(x) = x² 의 도메인 → 모든 실수
컴퓨터 과학적 도메인
- 문제를 푸는 대상 영역
- 예: 검색 알고리즘의 입력 데이터 집합
5. 보안과 운영체제: 관리 영역으로서의 "도메인"
Windows 도메인
기업 네트워크 내 사용자/자원 관리 단위 (Active Directory)
보안 도메인
- 네트워크의 보안 구역
- 예: 내부망, DMZ, 외부망
6. 머신러닝/AI: 산업 분야로서의 "도메인"
도메인 지식(domain knowledge)
특정 분야의 전문 지식
예시
- 금융 도메인: 주식, 대출, 신용 평가
- 의료 도메인: 진료 기록, 처방 데이터
7. 기타 과학: 물리학의 자기장 "도메인"
자기 도메인(magnetic domain)
- 자석 내부에서 분자들이 같은 방향으로 정렬된 영역
도메인 개념 한눈에 정리
분야 의미 예시
| 인터넷 | 웹 주소 | google.com, naver.com |
| 소프트웨어 | 문제 모델링 | 주문, 결제, 회원 도메인 |
| 데이터베이스 | 컬럼 값 범위 | 성별: 남/여, 나이: 0~150 |
| 수학/컴퓨터 | 함수 정의역, 문제 영역 | 실수 집합, 검색 데이터 |
| 보안/운영체제 | 사용자/네트워크 관리 영역 | 회사 내부 도메인 |
| 머신러닝/AI | 산업 분야, 비즈니스 문제 영역 | 의료, 금융, 물류 |
| 물리학 | 물리적 영역 (자기장) | 자기 도메인 |
결론: 도메인은 "영역"이다
결국 도메인이라는 단어는 어디서나 "어떤 범위나 영역"을 가리키는 말입니다.
- 인터넷에서는 "주소 영역"
- 소프트웨어에서는 "문제 영역"
- DB에서는 "값의 범위"
- 수학에서는 "정의역"
- 보안에서는 "관리 영역"
- AI에서는 "문제 분야"
'나의 지식 공유' 카테고리의 다른 글
| 멀티테넌시(Multi-tenancy)란? (0) | 2026.07.28 |
|---|---|
| 비트 연산자 (0) | 2025.10.15 |
| 완전수(Perfect Number)란? 그리고 C/Java 코드로 찾기 (1) | 2025.07.16 |