DBMS(Data Base Management System)
대표적인 DBMS
Oracle
SQL Server
DB2
MySQL
PostgreSQL
Firebird
관계형 데이터베이스란
RDB(Relation DataBase)
데이터를 2차원 표(*테이블)를 사용해 관리하는 데이터베이스
관계형데이터베이스는 프로그래밍언어를 습득하지 않아도 데이터를 조작할 수 있게해준다.
*테이블: 테이블은 RDB에서 데이터를 관리하기 위한 유일한 단위. 테이블 설계는 시스템 기능을 좌우함
CSV파일로 데이터베이스에서 수행할 수 있는 데이터 조작인 검색, 갱신(등록, 수정, 제거)을 수행하기 위해서는
1. 주소록 파일을 연다
2. 다른 과정을 전체 행에 대해 반복한다
2-1 주소 항목에 서울시가 포함되엉 있는지를 체크한다
2-2 포한되어있다면 이름을 화면에 출력한다
3. 주소록 파일을 닫는다.
이러한 과정들을 직접 프로그래밍해야한다.
*CSV : 쉼표를 기준으로 항목을 구분하여 저장한 데이터를 말한다
SQL(Structure Query Language) : 구조화 질의어
관계형데이터베이스가 데이터를 조작하기 위해 준비한 언어
RDB에는 여러가지 소프트웨어 제품이 있지만 그 전체에서 공통으로 SQL을 사용할 수 있다.
SELECT 이름
FROM 주소록
WHERE 주소 LIKE '%서울시%'
데이터베이스의 4가지 기본 조작에 대응하는 SQL 명령어
1. SELECT
2. INSERT
3. UPDATE
4. DELETE
소프트웨어와 데이터베이스의 관계
시스템은 단순히 데이터베이스만으로 구축할 수 있는 것이 아니라 다른 여러가지 소프트웨어를 조합해서 만들어야한다.
(이러한 작업을 SI(System Integration)이라고 한다.)
1. 운영체제
2. 미들웨어
3. 어플리케이션
DBMS는 2. 미들웨어에 해당한다.
1. OS
시스템을 동작하게 하기 위한 일종의 토대가 되는 기능 제공하는 소프트웨어.
PC 라면 Windows, Mac에 탑재된 OS X, 스마트폰이라면 iOS나 Android가 유명
상용시스템 개발시 자주 사용되는 OS
Windows : Windows Server 시리즈
Linux : Read Hat, CentOS
UNIX : HP-UX, AIX, Solaris
2. 미들웨어(Middleware, 중간소프트웨어)
OS와 DBMS조합 선택 시 고려할 사항
- 예산 : 유료 서비스를 받지 않으면 상용으로 운영하기 어려움
- 제품 기능 : OS나 DBMS 모두 제품에 따라 조작 방법이 달라 개발자와 운용자의 기술 조합이 중요
- 개발자와 운용자의 기술 조합 :
OS와 DBMS는 기능에 대한 표준 규칙을 따르고 있고 어느정도의 이식성이 있기때문에 조합의 자유도가 높다.
그래서 (주로 비용면에서)다른 조합으로 시스템을 변경하는 일도 드물지 않은데 이를 마이그레이션(Migration)이라고 한다.
(DBMS를 변경하는 일은 적다.)
3. 애플리케이션
업무용 기능을 가지도 프로그래밍된 소프트웨어
비즈니스 로직(비즈니스 룰)을 프로그램으로 자동화하여 효율성을 높이고 비용을 줄임
사용자는 애플리케이션을 매개로해서 데이터베이스에 접근
애플리케이션 실현 수단 : 스크래치(Scratch) vs 패키지(Package) 구입
- 스크래치 : 처음부터 끝까지 직접 프로그램 작성, 꼼꼼한 서비스 가능
- 패키지 : 기존 애플리케이션 소프트웨어 제품, 일반적으로 개발 비용 줄일 수 있으나 추가 개발로 개발 비용이 더 들 수 있다.
'DB' 카테고리의 다른 글
트랜잭션과 동시성 제어 (0) | 2019.05.09 |
---|---|
sql 기초 (0) | 2019.05.01 |
데이터베이스와 아키텍쳐 구성 (0) | 2019.04.30 |
데이터베이스 초기비용와 운영비용 (0) | 2019.04.30 |
데이터베이스의 용도와 역할 (0) | 2019.04.25 |