Database
데이터베이스란
정보를 관리하는 전문 애플리케이션이다.
웹에서 데이터베이스가 담당하는 것은 정보이며 서버에서 정보를 저장하는 역할을 한다.
정보를 저장한다는 면에서 DB는 파일과 비교될 수 있는데
파일은 어느 시스템에서나 사용가능하다, 그러나 DB는 프로그램이 설치되야하며 사용법을 알고있어야한다.
그럼에도 불구하고 DB가 쓰이는 이유는 파일과는 비교할 수 없을정도로 많은 장점을 가지고 있기 때문이다.
첫번째, DB는 안전하다.
백업이나 보안기능을 가지고 있으므로 임의로 열람이 가능한 파일과 다르게 안전하다는 장점이 있다.
두번째, DB는 빠르다.
인덱스 기능을 가지고 있으므로 프로그래밍적으로 제어가 가능하다.
이외에도 다양한 장점이 많으나 크게 나누자면 이 두가지가 될수 있겠다.
현재 자주 사용되는 것은 관계형 DB이며 MySQL, MSSQL, Oracle등이 대표 주자이다.
이중 MySQL은 오픈소스로 제공되며 상당한 점유율을 가지고 있다.
또한 MySQL 개발진이 회사에서 나와 개별적으로 제작한 Maria DB는
MySQL과 완벽한 호환성을 보이며 현재 공격적으로 발전중이라고 할수 있다.
데이터베이스의 이해
DB를 한단어로 표현하자면
Structed - 구조화된, 이라고 할수 있다.
이는 정보가 구조화된 형식으로 표현가능 하다는 것인데
실제로 DB는 table(표) system을 이용하여 정보를 나타낸다.
쉽게 말하자면 우리가 자주쓰는 Excel의 방식으로 표현한다고 생각하면 된다.
그러나 DB가 Excel과의 큰 차이점은 컴퓨터에게 질의를 한다는 것이다.
SQL의 약자 그대로 정규화된 질의를 가지고
DB에 정보를 수정하거나 삽입/삭제하는 연산이 가능하다.
데이터베이스의 응답 과정
DB도 웹과 마친가지로 클라이언트와 서버로 나뉜다.
그러나 요청하고 받는쪽으로 역할은 정해지며,
즉, 클라이언트와 서버의 역할은 가변적이라고 할수 있다.
데이터베이스가 웹에 서버를 주는 과정은 다음과 같다.
먼저, 웹에서 서버로 요청을 하면 웹 서버에서 PHP로,
PHP에서 다시 데이터베이스로 자료를 요청한다.
응답의 과정은 반대로 일어나게 된다.
'개발' 카테고리의 다른 글
[ReactJS] 작업 환경 구축 - create react app (0) | 2017.04.18 |
---|---|
[Web] Database - 2 (0) | 2017.04.18 |
[Web] JavaScript&PHP (0) | 2017.04.18 |
[Web] CSS(Cascade Style Sheet) - 2 (0) | 2017.04.18 |
[Web] CSS(Cascade Style Sheet) - 1 (0) | 2017.04.18 |
댓글