데이터베이스 / 모델 용어
| 용어 | 설명 |
| RDB (관계형 DB) | 테이블, 행, 열 구조로 스키마가 고정된 DB로, 트랜잭션, 조인, SQL이 강점인 전통적인 OLTP/OLAP 기반 데이터 저장소. |
| NoSQL | 키-값, 컬럼형, 문서형 등 비관계형 모델을 사용하는 DB 계열로, 유연한 스키마와 수평 확장에 유리해 대규모 트래픽/빅데이터 처리에 자주 쓰임 |
| OLTP | 주문, 결제, 가입 등 실시간 거리를 빠르게 처리하는 운영계 DB 업무 유형 |
| OLAP | 대량 데이터를 집계, 분석하기 위한 조회, 리포팅 중심 용도 ( 다차원 분석, 대규모 GROYP BY, JOIN 등) 에 쓰는 처리 유형 |
| MPP DB / DWH(데이터 웨어하우스) | 여러 노드에 데이터를 분산해 병렬쿼리하는 대용량 분석용 DB ( 레드쉬프트, BigQuery 등)로, 데이터 웨어하우스 역할을 수행. |
| Fact 테이블 | - 매출, 클릭, 주문 같은 "이벤트, 측정값" 을 기록하는 중심 테이블 - 각 행은 하나의 사건(한 번의 주문, 한 번의 로그인)을 나타내고, 보통 수가 매우 많으며 날짜, 사용자 ID, 상품 ID 같은 키와 금액 등의 수치가 함께 들어간다. - 보통 여러 Measure 과 이들을 어떤 Dimension으로 나눠 볼지 결정하는 키가 함께 들어있다. |
| Dimension 테이블 | - 사용자, 상품, 날짜 등 Fact를 설명하는 속성, 분류 정보를 가진 테이블 - 비교적 자주 바뀌지 않는 속성을 모아두고, Fact 테이블은 이런 Dimension의 키를 외래키로 참조해서 JOIN으로 의미를 붙임 |
| Dimension (차원) | 어떤 축으로 나눠 볼 것인가를 정의하는 분류 기준이다. 예를 들어 날짜, 국가, 디바이스, 캠페인, 상품 카테고리 등. |
| Measure (측정값) | 얼마나/몇 개 처럼 숫자로 계산, 집계되는 값이다. 매출액, 주문 건수, 광고 클릭수, 세션 수, 유저 수 등. |
Batch / Streaming / Bulk
| 용어 | 설명 |
| Batch 처리 | - 데이터를 일정 기간 모아 한 번에 처리하는 방식 - 일 배치, 시간 단위 집계, 대량 ETL 처럼 "실시간일 필요는 없지만 양이 많을 때" 쓰인다. - 입력이 소량이어도 주기적으로만 돌면 batch 처리다. |
| Streaming 처리 | - 이벤트가 들어오는 즉시(또는 거의 실시간에 가깝게) 처리, 집계하는 방식 - 실시간 대시보드, 알림, 이상 탐지 등에 사용 |
| Bulk 처리 | - DB나 스토리지에 데이터를 개별 행 단위가 아니라 "대량 일괄 쓰기, 적재"를 의미 - DB나 DWH에 처음 데이터를 밀어 넣을 떄, 대형 테이블 백필(backfill)할 때 자주 사용된다. |
행지향/ 열지향
| 용어 | 설명 |
| 행 지향 (Row-oriented) 저장 | 한 행의 모든 컬럼이 함께 저장되는 구조로, 트랜잭션 처리, OLTP에 유리하며 RDB(OLTP 용 MySQL) 등에서 일반적이다. |
| 열 지향(Column-oriented) 저장 | 같은 컬럼 값들을 묶어서 저장하는 구조로, 특정 칼럼들만 대량 집계할 때 I/O와 압축 효율이 높아 MPP, DWH, ORC/Paraquet 같은 분석, OLAP 워크로드에 적합하다. |
파일, 포맷, 스토리지
| 용어 | 설명 |
| HDFS | 하둡 생태계의 분산 파일 시스템으로, 여러 서버에 데이터를 복제, 분산 저장해 장애에 강하고 대용량 배치 처리에 적합하다. |
| Amazon S3 | 객체 스토리지, 로그, 스냅샷, DWH 적재 등 빅데이터 파이프라인의 중앙 저장소로 자주 사용 |
| CSV / JSON | 분석, 교환에 가장 흔한 텍스트 포맷으로, CSV는 테이블형,열 기반, JSON은 계층 구조/유연한 스키마에 강점이 있다. |
| ORC / Parquet | 칼럼 지향 압축 포맷으로, MPP, Hive, Presto, Spark 에서 대량 스캔,집계 쿼리를 빠르게 하기 위해 사용 |
Hadoop, Spark, SQL on Hadoop
| 용어 | 설명 |
| Hadoop | HDFS + YARN + MapReduce로 구성된 분산 처리 프레임워크 묶음. (파일 분산 시스템 + 리소스 매니저 + 분산 연산 모델) |
| YARN | 클러스터 자원(CPU, 메모리)을 여러 작업에 분배, 관리하는 리소스 매니저 |
| MapReduce | 데이터를 key 기반으로 Map, Reduce 단계로 나누어 배치 처리하는 초기 하둡 분산 연산 모델 |
| Hive | HDFS 위의 데이터를 SQL(HQL)로 질의, ETL하는 레이어로, 배치성 BI, 집계 쿼리에 많이 활용 |
| Tez / Spark | MapReduce 보다 빠르고 유연한 DAG 기반 엔진으로, Hive 실행 엔진(Tez)이나 범용 분산 처리 (Spark)에 사용 |
| Spark | 메모리 기반 분산 연산 프레임워크로, Spark SQL, DataFrame, ML, Streaming 등 다양한 라이브러리를 제공. |
| Presto | 여러 저장소(HDFS, S2, RDB, NoSQL)를 동시에 붙여 인터랙티브 SQL 분석을 하는 분산 쿼리 엔진 |
BI, 지표, 분석
| 용어 | 설명 |
| BI(Business Intelligence) | 데이터를 분석해 대시보드, 리포트, 지표로 의사결정을 돕는 활동과 도구 전반. |
| KPI | 비즈니스 성과를 나타내는 핵심 지표로, DAU, ARPPU, Retention 등 "액션으로 이어질 수 있는" 수치 중심 |
| DAU | 하루 동안 서비스를 사용한 고유 사용자 수로, 서비스 활성도를 대표하는 지표. |
| ARPPU | 결제 사용자를 기준으로 한 평균 매출로, 유료 전환 이후의 수익성을 파악하는데 사용한다. |
| Ad-hoc 분석 | 고정 리포트가 아닌, 필요할 때 마다 즉석에서 SQL/노트북 등으로 수행하는 일회성 분석 |
분산 NoSQL , key-value, CAP
| 용어 | 설명 |
| KVS(Key-Value Store) | 단일 키로 값을 읽고 쓰는 단순 구조의 DB로, 매우 빠른 응답과 수평 확장에 유리 |
| Cassandra | 분산 키-값/컬럼형 NoSQL DB로, P2P 구조와 높은 쓰기 처리량, 파티셔닝, 복제 기능이 특징. |
| DynamoDB | AWS의 완전 관리형 KVS로, 자동 스케일링, Streams 연계, 서버리스 ETL에 자주 활용 |
| MongoDB | 문서지향(대부분 JSON/BSON) DB로, 스키마 유연성이 높고 앱 개발에서 객체 모델과 잘 맞는 구조. |
| Consistent Hashing | 노드 추가, 제거 시 재배치되는 키 범위를 최소화 해 안정적으로 분산 시키는 파티셔닝 기법 해시 |
| ACID | 트랜잭션의 원자성/일관성/격리성/지속성을 보장하는 성질을 묶어 부르는 용어 |
| CAP | 분산 시스템에서 일관성/가용성/파티션 내성을 동시에 완벽히 만족할 수 없다는 이론. |
재실행
| 용어 | 설명 |
| re-run | - 이미 한 번 돌앗던 동일 날짜/파라미터의 배치 작업을 그대로 다시 실행하는 것. - 보통 코드 수정 없이 같은 입력 구간을 다시 처리할 때 쓴다. |
| retry | - 실패한 태스크를 같은 시점에서 재시도하는 것 - 네트워크 오류, 일시적 장애 등으로 실패했을 때 자동/수동으로 다시 실행하는 패턴. |
| backfill | 과거 여러 일자 구간(D-7 ~ D-1 등)에 대해 배치작업을 한꺼번에 다시 돌려, 빠졌거나 잘못 계산된 기간의 데이터를 재생성하는 것을 말한다. |
로그, 검색, 인덱스
| 용어 | 설명 |
| Elasticsearch | JSON 문서를 색인해 빠른 검색, 집계(로그 분석, 검색 서비스)에 사용하는 분산 검색/분석 엔진 |
| Inverted Index (역인덱스) | 그 단어가 등장한 문서/위치 리스트로 역으로 매핑하는 검색용 인덱스 구조 |
| DocValues | Elasticsearch에서 집계,정렬을 빠르게 하기 위해 컬럼형으로 저장하는 별도 구조 |
| Logstash/Kibana | 각각 로그 수집 파이프라인과 시각화를 담당하는 도구 |
| Splunk | 로그, 이벤트 데이터를 수집,검색,대시보드화 하는 상용 로그 분석 플랫폼 |
워크플로, ETL, 스케줄러
| 용어 | 설명 |
| ETL | 데이터를 추출(Extract), 변환(Transfrom), 적재(Load)해서 분석, DWH 용도로 가공하는 전 과정. |
| DAG | 순환이 없는 방향 그래프 구조로, 작업 간 의존관계를 표현해 워크플로를 정의하는 방식 |
| Airflow | Python 코드로 DAG를 정의하고 스케줄링, 모니터링하는 워크플로 오케스트레이션 도구 |
| Luigi, Azkaban, Oozie, Digdag | 배치 작업, ㅇ데이터 파이프라인을 정의/관리하는 다른 워크플로 도구들. |
'데이터베이스' 카테고리의 다른 글
| 역정규화 (0) | 2025.10.28 |
|---|---|
| 데이터베이스 정규화 (0) | 2025.10.27 |
| 매핑테이블 (0) | 2025.10.27 |
| 데이터 모델링 3단계: 개념적 데이터 모델링 (0) | 2025.09.14 |
| 데이터베이스 종류 (1) | 2025.09.14 |