데이터 베이스에 대해 알아보자.
그 전에 데이터, 정보, 지식에 대해 알아보자
데이터: 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값.
정보: 데이터에 의미를 부여한 것.
지식: 사물이나 현상에 대한 이홰.
예를 들어보면
데이터: 국내 스마트폰 점유율
정보: 삼성 1위, 애플 2위
지식: 국내 스마트폰 점유율 : 분기별 데이터를 정리한 기사
라고 예시를 들어볼 수 있다.
• 다양한 카테고리의 정보를 저장할 수 있는 구조
• 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되
는 데이터의 집합
• 쉽게 말하면, 데이터를 저장하는 구조/자료의 모음
• 데이터를 통합하는 개념으로, 각자 사용하던 데이터의 중복을 최소화
하여 중복으로 인한 데이터 불일치 현상을 제거
• 문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치
에 저장된 데이터를 의미
• 조직의 목적을 위해 사용되는 데이터를 의미한다. 즉 업무를 위한 검색
을 할 목적으로 저장된 데이터
• 한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 사용되는 데이터를 의미
데이터베이스는 각 조직에서 사용하는
데이터를 통합하고 공유할 목적으로 구축
• 사용자가 데이터를 요청하면 수 초 내에 결과를 서비스한다.
• 데이터베이스에 저장된 내용은 어느 한 순간의 상태지만, 데이터 값은 삽입(insert), 삭제(delete), 수정(update) 등의 작업을 통하여 바뀐다.
• 데이터베이스는 서로 다른 업무/여러 사용자에게 동시에 공유된다.
• 데이터베이스에 저장된 데이터는 데이터의 물리적인 위치가 아니라 데이터 값에 따라 참조된다.
• 병원 데이터 -> 건강보험 데이터베이스
• 사람인 데이터 -> 사람인의 데이터베이스에 저장
• 교육생 데이터 -> 코딩온 데이터베이스
• 신용카드 데이터 -> 은행 데이터베이스
파일에 데이터를 저장하면 되는데 데이터베이스를 사용해야하는 이유가 뭘까?
• 데이터를 기록하고 여러 사람이 공유하여 사용 가능
• ex. Microsoft Excel 프로그램으로 데이터 관리
• 데이터를 기록하고 여러 사람이 공유하여 사용 가능
• 단점1. 데이터 중복이 생길 수 있다.
• 단점2. 데이터 공유에 있어서 제한이 존재한다.
• 단점3. 구현과 유지보수에 시간이 오래 걸린다
• 파일 시스템의 단점을 개선하기 위해 등장
• 데이터를 기록하고 여러 사람이 공유하여 사용 가능
• 단점1. 데이터 중복이 생길 수 있다.
• 단점2. 데이터 공유에 있어서 제한이 존재한다.
• 단점3. 구현과 유지보수에 시간이 오래 걸린다
• SQL (Structured Query Language) 사용
• 관계형 데이터베이스에 정보를 저장, 처리하기 위한 프로그래밍 언어
• 데이터 정의어 (DDL)
• 데이터 조작어 (DML)
• 데이터 제어어 (DCL)
• 응용 프로그래머가 작성한 프로그램을 이용하는 사람
• ex. 은행 창구 직원은 고객의 데이터를 다루는 업무를 함
• 데이터베이스로 문제를 해결하는 프로그램을 만드는 사람
• SQL 질의문을 작성하여 업무를 처리
• 응용 프로그램으로 구현되어 있지 않은 업무를 SQL을 사용해 처리
• 조직의 데이터베이스 운영 총괄자
• 데이터 설계, 구현, 유지보수의 전 과정 담당
• 사용자와 데이터베이스를 연결시켜주는 소프트웨어
• 데이터베이스 사용자가 데이터베이스를 생성, 공유, 관리할 수있도록 하는 역할
• 데이터 정의 (Definition)
• 데이터 조작 (Manipulation)
• 데이터 추출 (Retrieval)
• 데이터 제어 (Control)
• Software Development Life Cycle
• 제품의 요구사항부터 개발, 검증, 향후 유지보수 및 폐기까지의 전 과정을 프로세스화해 소프트웨어 개발에 적용한 것
• 소프트웨어 개발 중에 데이터베이스 개발과정도 포함되어 있다.