본문 바로가기
데이터자격증/재무빅데이터분석사FDA2급 이론

재무빅데이터분석사(FDA 2급) - 관계형 데이터베이스 PART1 #2

by orangecode 2022. 12. 4.
728x90

재무빅데이터분석사 FDA 2급 출제범위

이론 데이터베이스
  • 데이터베이스 시스템
  • 관계형 데이터베이스 개요
  • 관계형 키
  • 기초 SQL
기초회계
  • 회계의 정의
  • 회계의 기본가정, 회계등식
  • 회계상 거래, 복식부기의 원리
  • 회계등식, 재무제표의 구성요소
  • 분개, 전기, 시산표의 이해
  • 결산, 정산표, 회계의 순환과정
기초통계
  • 모집단과 표본
  • 자료의 척도와 형태
  • 기술통계분석
  • 확률, 확률변수와 확률분포
  • 표본분포와 추정
  • 상관분석과 선형회귀분석
 
  • 변수의 설정
  • 연산자와 복합연산자, 주석
  • 리스트, 튜플, 딕셔너리
실기 파이썬기초
  • if문과 for문
  • 리스트 컴프리헨션
  • 사용자정의함수, 람다함수
  • 전역변수와 지역변수
데이터 분석 (Fraudit 활용)
  • CSV, Excel 데이터 입력
  • 데이터의 Sorting
  • 데이터의 Filtering
  • 데이터의 Select
  • 데이터의 Duplicate, Gap 분석
  • 데이터의 Groupby, Summarize 분석
  • 데이터 테이블의 Join 분석
  • 데이터 Outlier 분석

 

관계형 데이터 베이스의 역사

관계형 데이터베이스 모델은 1970년 E.F.Codd가 'A ralational model of data for large shared data banks'라는 논문에서 최초로 제안되었다. 해당 논문은 지금까지 데이터베이스의 역사적인 기준으로 받아들여지고 있다.

 

관계형 데이터베이스의 목적

- 높은 수준의 데이터 독립성을 허용하기 위함이다

:  데이터베이스 응용프로그램은 내부 데이터 표현, 파일조직, 엑세스 경로 등 변경으로 인한 영향을 받지 않아야 한다.

 

- 데이터 의미론, 일관성 및 중복 문제를 다루는 실질적인 토대를 제공하기 위함

: Codd의 논문은 정상화 관계(반복되는 집단이 없는 관계)의 개념을 소개하였다.

 

- 관계형 모델의 가장 중요한 연구 : SQL 쿼리 언어 개발 & 상용 관계형 DBMS 제품 생산

SQL(Structured Query Language)라는 구조화된 쿼리 언어를 개발하고 관계형 DBMS의 표준언어가 되었다.

다양한 상용 관계형 DBMS 제품 생산 : DB2, SQL/DS 및 Oracle 사의 Oracle 제품이 생산됨

 

 

관계형 데이터 베이스 모델

데이터모델(Data Model)

데이터베이스 설계자와 제작자가 데이터에 대한 이해를 명확하고 정확하게 전달할 수 있도록 기본 개념과 표기법을 제공하여 데이터베이스 설계에 사용할 수 있다.

 

데이터모델의 3가지 구성요소

  1. 구조 : 데이터베이스 구축방법을 정의하는 일련의 규칙으로 구성

  2. 조작 : 데이터에 허용되는 작업(트랜잭션)의 타입을 정의하는 것

  3. 무결성 원칙 : 데이터가 정확하다는 것을 보장하는 것.

 

관계형 데이터베이스 모델의 구성요소

  1. 관계(relation) : 행, 열로 구성된 2차원의 테이블

  2. 속성(attributes) : 관계에서 이름을 가진 하나의 열(column) 또는 필드(field)

  3. 튜플(tuple) : 관계에서 각 행(row) 또는 레코드(record)

 

relation
(table)
attributes(columns field)
tuple
(row, record)
사번 이름 주소 생일
111 존 윅 서울 3월 14일
222 아라곤 서울 6월 12일
333 해리 포터 부산 9월 2일

 

속성(attributes)

: 테이블을 구성하는 각 열(column)의 이름으로 사번, 이름, 주소, 생일이 해당된다.

 

튜플(tuple)

: 테이블을 구성하는 각 행(row)로 테이블의 attributes와 매치해, [111, 존 윅, 서울, 3월 14일]이 해당된다.

 

도메인(domain)

: 각 컬럼에 입력 가능한 값들의 범위를 말한다. 프로그래밍 언어의 DataType과 유사하다.

예를 들어 회원테이블의 도메인은 다음과 같을 수 있다.

 

√ 이름 : 개인 일므으로 구성된 문자열 집합

√ 주소 : 도시를 나타내는 문자열 집합

√ 생일 : mm월 dd일로 구성된 문자열 집합

 

널(Null)

- Null'알수없음'을 의미한다. 값이 특정 레코드에 적용되지 않았거나, 아직 제공되지 않았음을 의미한다.

- Null은 불완전하거나 예외적인 데이터를 처리하는 방법

- Null은 숫자 0이나 공백으로 채워진 텍스트 문자열과는 다르다. 0과 공백으로 채워진 텍스트 문자열은 값이지만 Null은 값이 없으므로 다르게 취급해야 한다.

 

 

차수(Degree)와 카디널리티(Cardinality)

- 차수(Degree) : 한테이블에 들어있는 열(attributes, columns)의 수를 말하며

- 카디널리티(Cardinality) : 한 테이블에 들어있는 레코드(행, row)의 수를 말한다.

 

테이블 스키마와 테이블 인스턴스

테이블 스키마(Table Schema)

테이블의 정의에 따라 만들어진 데이터 구조를 말한다. 

데이터베이스가 어떻게 구성되어 있는지 표현해줄 수 있는 설계도라고 생각하면 된다.

테이블 스키마(Table Schema)
- T : 테이블의 이름
- A1, A2, ...., An : 필드(칼럼)의 이름
예시 : 부서(부서번호, 부서명, 층수), 사원(사원번호, 사원명, 직급, 급여 등)

 

테이블 인스턴스(Table instance)

테이블 스키마에 현실세계의 데이터를 레코드로 저장한 형태를 말한다. 

태이블 스키마는 한번 정의하면 변함이 없지만 테이블 인스턴스는 수시로 바뀔 수 있다.

 

Table : 직원명부
사번 이름 주소 생일
111 존 윅 서울 3월 14일
222 아라곤 서울 6월 12일
333 해리 포터 부산 9월 2일

위 테이블에서 

- 테이블 스키마 : 직원명부(사번, 이름, 주소, 생일)

- 테이블 인스턴스 : 직원명부

 

 

관계형 테이블의 특성

- 테이블은 데이터베이스의 다른 모든 테이블과 구분되는 이름을 가진다

- 테이블의 각 셀은 정확하게 하나의 value를 가진다. (= 정규화된 데이터)

- 각 필드(칼럼)은 구분되는 이름을 가져야 한다

- 필드(칼럼)의 값은 동일한 도메인으로부터 나온다

- 테이블의 필드(칼럼)의 순서는 중요하지 않다

- 중복되는 레코드는 없어야 한다.

- 레코드의 순서는 실무적으로 레코드에 접근하는 효율성에 영향을 미칠 수 있다. 이론적으로는 중요하지 않음

반응형

댓글