데이터 모델 : 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화하여 표현한 모델
개념적 데이터 모델 : 현실 세계 대한 인식을 추상적, 개념적으로 표현, 개체관계 다이어그램
논리적 데이터 모델 : 사람이 이해하기 쉽게 모델링 표기법으로 형상화, 목표 DBMS에 맞게 스키마, 트랜잭션, 인터페이스 설계
정규화 수행(일관성, 정확성 유지, 중복성 제거)
물리적 데이터 모델 : 논리적 데이터 모델을 DBMS를 고려하여 물리적인 스키마를 만드는 모델, 응답시간 저장공간 효율화 트랜잭션 처리 고려, 반정규화 수행은 단순화
논리적 모델링 : 개념 모델로부터 업무의 모습을 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스
- 관계 데이터 모델 : 2차원 테이블 모델, 기본키와 외래키
- 계층 데이터 모델 : 트리 형태, 상하관계 존재, 1:N
- 네트워크 데이터 모델 : 그래프 형태, N:M
릴레이션 : 행(Row)과 열(Column)로 구성된 테이블
튜플 : 릴레이션의 행에 해당되는 요소
속성 : 릴레이션의 열에 해당하는 요소
카디널리티 : 튜플의 수
차수(Degree) : 속성의 수
스키마 : 데이터베이스의 구조, 제약 조건등의 정보를 담고 있는 기본적인 구조
인스턴스 : 정의된 스키마에 따라 생성된 테이블에 실제 저장된 데이터의 집합
Domain : 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자값 들의 집합을 지칭하는 용어
관계 대수 : 관계형 데이터베이스에서 원하는 정보와 유도 방법을 기술하는 절차적 정형 언어
일반집합 연산자
- R ∪ S : 합집합
- R ∩ S : 교집합, R과 S에 속하는 모든 튜플로 구성
- R ─ S : 차집합, R에 존재하고 S에 미존재하는 튜플로 구성
- R X S : 카티션 프로덕트, R과 S의 모든 튜플을 연결해 만들어진 새로운 튜플로 구성
순수관계 연산자
- SELECT : σ조건(R), 릴레이션 R에서 조건을 만족하는 튜플 반환
- PROJECT : π속성리스트(R), 릴레이션 R에서 주어진 속성들의 값으로만 구성된 튜플 반환
- Join : R ▷◁ S ,공통 속성을 이용해 R과 S의 튜플들을 연결해 만들어진 튜플 반환
- Division : R ÷ S, 릴레이션 S의 모든 튜플과 관련 있는 R의 튜플 반환
관계 해석 : 튜플 관계 해석과 도메인 관계 해석하는 비절차적 언어, 프레디킷 해석에 기반
논리 데이터 모델링 속성 : 개체, 속성, 관계
정규화 : 중복성을 제거하여 이상현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는과정
삽입 이상 : 정보 저장 시 해당 정보의 불필요한 세부 정보를 입력해야 하는 경우
삭제 이상 : 정보 삭제 시 원치 않는 다른 정보가 같이 삭제되는 경우
갱신 이상 : 중복 데이터 중에서 특정 부분만 수정되어 중복된 값이 모순을 일으키는 경우
1 정규형(1NF) : 원자값으로 구성
2 정규형(2NF) : 부분 함수 종속 제거(완전 함수적 종속 관계), 기본 키가 2개고 부분 키가 다른 속성에 영향을 미침
3 정규형(3NF) : 이행함수 종속 제거, X-Y Y-Z X-Z
보이스-코드 정규형 : 결정자 후보 키가 아닌 함수 종속 제거, 모든 결정자가 후보키가 되어야함
4 정규형(4NF) : 다치(다중 값)종속 제거
5 정규형(5NF) : 조인 종속 제거
반 정규화(De-Nomalization) : 정규화된 엔티티, 속성, 관계에 대해 성능 향상과 단순화를 위해 중복, 통합, 분리 등을 수행
테이블 병합 : 관계를 통합하여 조인 횟수를 줄임
수평 분할 : 레코드 기준으로 분할
수직 분할 : 컬럼의 개수가 증가할 경우 사용
중복 테이블 추가 : 집계함수를 사용하여 별도의 테이블 추가, 집계, 진행 특정부분 테이블
컬럼 중복화 : 조인 성능 향상을 위해 중복 허용
중복관계 추가 : 여러 경로를 거쳐 중복이 가능하지만 성능 저하 방지를 위해 추가적 관계를 맺음
물리 데이터 모델링 : 논리모델을 적용하고자 하는 기술에 맞도록 상세화해가는 과정
레인지 파티셔닝 : 연속적인 날짜나 숫자를 기준
해시 파티셔닝 : 해시 함수 값에 의한 파티셔닝 기법
리스트 파티셔닝 : 특정 파티션에 저장 될 데이터에 대한 명시적 제어 가능
컴포지트 파티셔닝 : 2개 이상 파티셔닝 결합, I/O 요청 분산 가능
Database : 통합하여 관리되는 데이터의 집합
통합된 데이터 : 중복을 배제한 데이터의 모임
저장된 데이터 : 저장 매체에 저장된 데이터
운영 데이터 : 조직의 업무 수행에 필요한 데이터
공용 데이터 : 공통으로 사용
실시간 접근성(Real-Time Accessibility) : 쿼리에 대하여 실시간 응답 가능
계속적인 변화(Continuous Evolution) : 삽입, 삭제, 갱신으로 최신 데이터 유지
동시 공용(Concurrent Sharing) : 다수의 사용자가 같은 내용 데이터 이용 가능
내용 참조(Content Reference) : 주소나 위치가 아닌 데이터 내용으로 데이터 찾음
File System : 파일에 이름을 부여하고 위치를 정의한 뒤 관리하는 데이터베이스 전 단계
관계형 데이터베이스 관리시스템(RDBMS) : 관계형 모델 기반, 다른 테이블과 상하관계로 표시, 유연성 좋음
계층형 데이터베이스 관리 시스템(HDBMS) : 데이터를 상하 종속적인 관계로 계층화하여 관리
네트워크 데이터베이스 관리 시스템(NDBMS) : 네트워크상의 망상 형태로 표현
DBMS : 데이터 관리의 복잡성을 해결하는 동시에 여러가지 기능 지원
Key-Value DBMS : 키 기반 메서드 제공
컬럼 기반 데이터 저장 DBMS : Key 안에 조합으로 된 여러 개의 필드를 같는 DBMS
문서 저장 DBMS : 값의 데이터 타입이 문서 타입을 사용하는 DBMS
그래프 DBMS : 시맨틱 웹, 온톨로지 분야에서 활용되는 그래프, 노드간 관계
데이터 무결성 : 동일 내용에 대해 다른데이터 저장 X
데이터 일관성 : CRUD 후에도 데이터가 일정
데이터 회복성 : 장애 발생시 특정 상태로 복구
데이터 보안성 : 노출, 변경, 손실로부터 보호
데이터 효율성 : 최적화되어 요구조건 만족
Big Data : 수십 페타바이트 크기의 비정형 데이터
데이터의 양(Volume) : 대규모, 정보량 폭증을 의미
데이터의 다양성(Variety) : 정형, 비정형, 반정형등 유형이 다양해 지는 것을 의미
데이터의 속도(Velocity) : 빠르게 증가하고 수집되며 처리, 실시간 분석 중요를 의미
NoSQL : RDBMS와 다른 DBMS를 지칭하는 용어, 스키마가 필요하지 않고 Join연산 사용할수 없음, 수평적 확장 가능
Basically Available : 언제든지 접근
Soft-State : 노드의 상태는 외부에서 전송된 정보를 통해 결정
Eventually Consistency : 일정시간이 지나면 데이터의 일관성이 유지됨
NoSQL 유형 : Key-Value Store, Column Family Data Store, Document Store, Graph Store
데이터 마이닝 : 대규모 데이터 안에서 체계적이고 자동적으로 규칙이나 패턴을 찾아내는 기술
목적 설정 - 데이터 준비 - 가공 - 마이닝 기법 적용 - 정보 검증
분류 규칙(Classification) : 과거 데이터로부터 특성을 찾아내어 분류모형을 만들어 이를 토대로 새로운 레코드 값 예측
연관 규칙(Association) : 데이터안의 항목들 중에 종속 관계를 찾아내는 기법
연속 규칙(Sequence) : 연관 규칙에 시간 관련 정보 포함한 기법
데이터 군집화(Clustering) : 레코드들을 유사한특성을 지닌 소그룹으로 분할하는 작업, 정보가 없는 상태에서 분류하는 기법