DBMS와 SQL
DBMS (Data Base Management System)
DBMS란
- 데이터 베이스를 관리하여 응용 프로그램들이 데이터 베이스를 공유하며 사용할 수 있는 환경을 제공하는 소프트웨어
- 데이터 베이스를 구축하는 틀을 제공하며, 효율적인 데이터 검색 / 저장 기능 등을 제공
DBMS 종류
관계형 DBMS
- 데이터를 컬럼과 로우를 이루는 하나 이상의 테이블로 정리하며, Primary Key가 각 로우를 식별
- 로우는 그 엔티티 종류의 인스턴스를 대표
- 칼럼은 그 인스턴스의 속성이 되는 값들을 대표
객체 지향 DBMS
- 정보를 객체 형태로 표현하는 데이터 베이스 모델
-
네트워크 DBMS
- 레코드들이 노드로, 레코드들 사이의 관계가 간선으로 표현되는 그래프를 기반으로 하는 데이터 베이스 모델
-
계층형 DBMS
- 트리 구조를 기반으로 하는 계층 데이터 베이스 모델
SQL (Structured Query Language)
SQL란
- 데이터 베이스를 사용할 때 데이터 베이스에 접근할 수 있는 데이터 베이스의 하부 언어
간단한 SQL 문장 해석
SELECT NAME, GENDER, SALARY FROM CUSTOMERS WHERE AGE BETWEEN 20 AND 39
- SELECT : 하나 또는 그 이상의 테이블에서 데이터를 추출하는 명령어
- FROM : 테이블을 지정해주는 명령어
- WHERE : 데이터를 추출하는 선택 조건식을 지정하는 명령어
Data에 관련한 기술
개인정보 비식별 기술
데이터 마스킹
- 데이터의 길이, 유형, 형식과 같은 속성을 유지한 채, 새롭고 일기 쉬운 데이터를 익명으로 생성
- 권남우, 26세, 서울 광진구 거주 -> 권**, 26세, 서울 **구 거주
가명처리
- 개인정보 주체의 이름을 다른 이름으로 변경하는 기술
- 권남우, 26세, 서울 광진구 거주 -> 홍길동, 20대, 서울 시내 거주
총계처리
- 데이터 총합 값을 보임으로서 개별 데이터의 값을 보이지 않도록 함
- 임하나 160cm, 한이 165cm, 문셋 170cm -> 여성 키 495cm, 평균 키 : 165cm
데이터 값 삭제
- 데이터 공유ㅡ 개방 목적에 따라 데이터 셋에 구성된 값 중에 필요 없는 값 또는 개인식별에 중요한 값을 삭제
- 권남우, 26세, 서울 광진구 거주 -> 26세, 서울 거주
데이터 범주화
- 데이터의 값을 범주의 값으로 변환
- 권남우, 26세 -> 권씨, 20대
무결성과 레이크
Data Integrity
Data Lake
- 수 많은 정보 속에서 의미있는 내용을 찾기 위해 방식에 상관없이 데이터를 저장하는 시스템
- 대용량의 정형 및 비정형 데이터를 저장할 뿐만 아니라 접근도 쉽게 할 수 있는 대규모의 저장소
빅데이터 분석 기술
Hadoop
- 여러 개의 컴퓨터를 하나인 것처럼 묶어 대용량 데이터를 처리하는 기술
- HDFS을 통해 수 천대의 장비에 대용량 파일을 정할 수 있는 기능을 제공
- Map Reduce로 HDFS에 저장된 대용량의 데이터들을 대상으로 SQL을 이용해 사용자의 질의를 실시간으로 처리
- Hadoop의 부족한 기능을 서로 보완하기 위해 하둡 에코시스템이 등장
Apache Spark
- 실시간 분산형 컴퓨팅 플랫품으로써 스칼라로 작성이 되어 있지만 스칼라, 자바, 파이썬, API를 지원
- In-Memory 방식으로 처리하기 때문에 하둡보다 속도가 빠름
Smart Factory
- 공장 내 설비와 기계에 사물 인터넷이 설치
- 고정 데이터가 실시간으로 수집되고 데이터에 기반한 의사결정이 이뤄짐
Machine Learning & Deep Learning
-
Machine Learning
- 인간의 학습 능력과 같은 기능을 컴퓨터에서 설현하고자 하는 기술
-
Deep Learning
- 컴퓨터가 많은 데이터를 이용해 사람처럼 스스로 학습할 수 있게 하기 위하여 인공신경망 등의 기술을 기반하여 구축한 기계 학습 기술
기타
데이터 양의 단위
데이터 유형
정형 데이터
- 형태가 있으며, 연산이 가능함
- 주로 관계형 데이터 베이스에 저장됨
- 데이터 수집 난이도가 낮고 형식이 정해져 있어 처리가 쉬운 편
- 관계형 데이터 베이스 / 스프레드 시트 / CSV
반정형 데이터
- 형태 (스키마, 메타 데이터)가 있으며, 연산이 불가능
- 보통 API 형태로 제공되기 때문에 데이터 처리 기술 (파싱)이 요구
- XML / HTML / JSON / 로그 형태 (웹로그, 센서 데이터)
비정형 데이터
- 형태가 없으며, 연산이 불가능
- 주로 NoSQL에 저장됨
- 소셜 데이터 / 영상 / 이미지 / 음성 / 텍스트