DB 소개

DB란?

데이터베이스의 특징은 다음과 같다.

  • 실시간 접근성
  • 지속적인 변화
  • 동시 공유
  • 내용에 대한 참조
  • 데이터 논리적 독립성

위의 특징은 위키백과에서 가져왔다. 개발자도 다음 5가지를 보고 한 번에 이해가 되지 않는다.

부가 설명을 하면 옛날 옛적 DB가 없던 시절에는 .txt파일에 저장하듯 파일에 데이터를 보관하고 수정했다고 한다. 그런 시절에는 일부 데이터 수정을 위해 일일이 파일을 뒤지고 공유도 힘들고 여러명이서 동시에 접근하는 문제도 있고 데이터로 하는 모든 일에 엄청난 노력이 필요한 시절이 있었다고 한다.

그런데 DB가 생긴 후에는 이전에 비해 복잡한 노력 없이 데이터를 저장하고 관리할 수 있게 되었다.

그 특징들은 위의 5가지이다.

관계형

현재 DB는 RDB라고 많이 부르는 관계형 데이터베이스와 NOSQL 이라고 많이 하는 데이터베이스로 나뉜다.

관계형의 대표적인 것으로는 너무나 유명한 Oracle, Mysql, Microsoft SQL Server, Maria, Postgres 등이 있다.

DB는 데이터를 어떻게 분류하고 저장하는지로 종류를 구분하는데 이들의 공통점은 colummn, row 즉 행, 렬로 이루어진 테이블(관계)를 가진다.

대체로 DB마다 기능이나 성능이 달라도 비슷한 SQL 문법을 가지고 있다.

NOSQL

비교적 최근 주목 받는 DB로 key-value, document 방식의 DB를 NOSQL이라고 많이 부른다. key-value 방식 중 대표격인 Reids document 방식 중 대표격인 MongoDB 외에도 Cassandra, DynamoDB 등이 NOSQL에 속한다.

최근 NOSQL이 개발자들 사이에 트렌드이다. 그렇다고 관계형이든 NOSQL이든 각자 용도의 차이가 있지 어떤게 더 좋다는 절대적인 것은 거의 없다.

예를 들면 NOSQL은 연속되고 많은 데이터를 저장하기 좋지만 복잡하고 제대로 쓰기는 어려울 때가 있다. 그럴 때는 쿼리가 쉽고 사람이 이하기 좋은 테이블 형태로 저장하는 관계형 DB가 더 좋은 선택이 된다.


출처 자료들

  • https://ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4