본 글은 스스로 내용을 정리하기 위한 글이며, 정정할 내용이 있다면 댓글 부탁드립니다.🙏
현대사회에서 빅데이터
라는 단어가 떠오르면서 데이터베이스에 대한 관심이 높아지고 있다. 여기서 말하는 관심의 포커스를 좀 더 명확히 해보자면, 데이터베이스에 저장되는 데이터 그 자체
또는 데이터 이용방법
을 의미한다. 그러므로 사람들의 관심속에서의 데이터베이스는 수단
이라는 위치에 지나지 않다고 볼 수 있다.
이러한 데이터베이스는 우리의 주변의 생활서비스에서 발견할 수 있는데, 예를들면 배달 주문내역 맞춤광고서비스등이 있다. 이런 서비스들은 모두 서비스 제공을 위해 필요한 데이터
들이 데이터베이스에 등록되고 관리된다는 공통점이 있다.
그렇다면 데이터베이스의 기본기능은 무엇이 있을까?
원하는 데이터를 찾는행위를 검색
이라 칭한다. 만약 데이터베이스에서 원하는 데이터를 검색
하여 재빨리 꺼낼 수 없다면 데이터를 정리하여 데이터베이스에 보관하는 의미도 없다.
갱신
이란 좁은 의미에서Update
라는 인상을 줄수도 있지만 넓은 의미에서는 등록
, 수정
, 제거
를 의미하기도 한다.
위 내용들을 그림으로 축약해보면 아래 이미지처럼 표현할 수 있다.
데이터베이스는 늘 개인만 사용할 수도 있지만 유저에게 서비스를 제공하는 기업의 경우 복수의 사용자로부터
위에서 말한 갱신이나 검색 접근이 동시에 발생할 수도 있다. 이때 동일한 데이터를 갱신하려는 상황에 대한 제어가 필요하게 된다.
2번에서는 개인이 사용할때는 동시성 제어가 크게 필요치 않다. 라고 언급을 했었지만 이번 장애 대응 기능의 경우는 개인이 사용하게되어도 데이터베이스 내의 데이터가 장애로 인해 사라지게 된다면 큰 타격을 입게 될것이다. 그러므로 데이터베이스는 견고하면서, 부서지더라도 복원할 수 있는
장애 대응 기능을 가진다.
데이터베이스는 사용자의 편의와 데이터의 안전성을 보장하기 위해 보안이라는 기능이 필수적이다. 만약 일반 사용자가 데이터베이스에 접근하여 서비스를 사용해야한다면, 서버의 구조까지 의식해야할 필요성이 추가될 수 있다. 그렇게된다면 서비스 이용자에 대한 제약이 타이트해질것이고 접근이 쉬워진다면 앞서 말한 데이터가 유실되거나 정보들이 악용될 가능성이 매우 높아진다. 그러므로 데이터베이스는 되도록 사용자가 존재조차 의식하지 못하도록 보안성을 높여 기밀해야한다.
앞서 데이터베이스의 기본기능을 알아보았고, 이제 종류에 대해 알아보자
데이터베이스는 데이터를 보존하는 방식에 따라 몇가지로 구분되며 다음과 같은 특징을 갖는다.
데이터를 계층 구조로 관리하는 데이터베이스이다. 해당 타입의 데이터베이스는 현대적인 데이터베이스 역사상 최초로 등록된것이다. 우리가 사용하는 개인 컴퓨터의 저장 장치에서 주로 사용하는 방식이다.
표(table) 형식으로 데이터를 관리하는 데이터베이스이다. 행과 열이 서로 관계되어 있거나 열끼리 관계를 형성시킬수도 있다. 현재 가장 주류를 이루고 있다.
이름에서 알 수 있듯이 객체
와 XML
이라는 형식으로 데이터를 관리하는 데이터베이스이다. 관계형 데이터베이스를 대체할 수 있다는 기대감을 가졌지만 현재는 틈새시장에서 기반을 쌓고 있는 정도이다.
최근 주목받기 시작한 데이터베이스로 Not only SQL
을 뜻한다. 해당 타입의 데이터베이스는 관계형 데이터베이스에 있는 기능 일부를 버려서 성능(처리속도)를 높이고 있다. 대량의 데이터를 빠르게 처리해야하는 웹 서비스에서 자주 이용된다.
ref.
데이터베이스 첫걸음 1장
데이터베이스 종류와 특징
정리가 잘되어있네요! 재미있게 보고 갑니다 VANS