Database 시작하기!

새니·2023년 4월 19일

database

목록 보기
1/8
post-thumbnail

😶 데이터베이스란?

데이터베이스 정의

데이터베이스는 구조화된 정보 또는 데이터의 조직화된 모음으로서 일반적으로 컴퓨터 시스템에 전자적으로 저장됩니다. 데이터베이시는 일반적으로 데이터베이스 관리 시스템 (DBMS) 에 의해 제어됩니다.
오늘날 운영되고 있는 가장 일반적인 유형의 데이터베이스에서 데이터는 일반적으로 처리 및 데이터 쿼리를 효율적으로 수행하기 위해서 일련의 테이블에서 행과 열로 모델링됩니다.
그러면 데이터에 쉽게 액세스하고 관리, 수정, 업데이트, 제어 및 구성 을 할 수 있습니다.
대부분의 데이터베이스는 데이터 작성 및 쿼리에 SQL(Structured Query Language) 을 사용합니다.
참고) oracle.com



😶 데이터베이스의 특징


1. 공유해서 사용되는 공용 데이터

공용데이터는 여러 사용자들이 서로 다른 목적으로 공유해서 사용되는 데이터를 의미한다.

2. 통합 데이터

여러 곳에 분산된 데이터는 중복된 데이터가 발생될 가능성이 매우 높으며 데이터 관리도 어려워짐. 하지만 데이터를 통합하면 중복도 제거할 수 있고 효율적으로 데이터 관리도 가능하게 된다.

3. 저장된 영속성 데이터

중요하게 관리되어야 하는 데이터는 정전과 같은 상황에서도 데이터가 삭제되지 않고 보존되도록 관리되어야 한다. 따라서 디스크나 테이프와 같은 저장소(storage)에 저장되어 휘발성이 아닌 영속성을 갖는다.

4. 운영/관리 데이터

불필요하게 데이터만 저장하고 끝나는 것이 아니고 실제로 유용하게 사용할 수 있는 관리목적이 명확한 데이터를 의미한다.


😶 데이터베이스의 분류

1. 관계형 데이터 베이스(RDBMS)

행(column)과 열 (row)를 가지는 표 형식 데이터를 저 장하는 형태의 데이터베이스

-oracle, my sql, mssql, mariadb...

위의 DB는 동일한 SQL언어를 사용한다. 관리방법과 함수만 다름

장점)

  • 다양한 용도로 사용가능 (범용성), 높은 성능

  • 데이터의 무결성 보장 , 높은 신뢰성

  • 정규화에 따른 갱신 비용 최소화

  • 데이터의 분류, 정렬, 탐색 속도가 빠름

  • 관계를 통해 각 데이터를 중복없이 한번만 저장


    단점)

  • 대량의 데이터 입력 처리

  • 컬럼 확장 어려움 -> 유연성 부족

  • 데이터베이스 부하 분석이 어려움

  • 수평 확장의 어려움 -> 데이터베이스 저장 방식으로 인해 수직 확장만 지원

    2. NOSQL(Not Only SQL) 형식의 DATABASE

    -키(KEY) - 값(VALUE)의 형태로 저장되는 데이터베이스, 키를 사용해 데이터 관리 및 접근

  • 정확한 데이터 요구 사항을 알 수 없거나 관계를 맺는 데이터가 자주 변경될 때 사용

  • 읽기를 자주 하지만 데이터를 자주 변경하지 않는 경우 사용

    -mongodb, 카사드라..

    3. 객체지향 데이터베이스(ODBMS)

    객체 그대로를 데이터베이스의 데이터에 저장하는 것
    -멀티미디어 데이터의 원활한 처리
    -RDBMS의 비지니스형 데이터 타입만 처리되는 제한적 극복

    4. 네트워크형 데이터베이스(NDBMS)

    데이터 구조를 네트워크상의 노드 형태로 논리적이게 표현한 데이터 모델, 각각의 노드를 서로 대등한 관계로 구성한 시스템.

    5. 계층형 데이터베이스(HDBMS)

    폴더와 파일 등의 계층 구조로 데이터를 저장하는 방식
    데이터의 관계를 트리 구조로 정의
    부모-자식 형태를 가진다.

SQL(Structured Query Language)이란?

SQL은 데이터를 쿼리, 조작 및 정의하고 액세스를 제공하기 위해 거의 모든 관계형 데이터베이스 에서 사용 되는 언어. '에스큐엘' 또는 '시퀄'로 읽는다.


😶 데이터베이스의 종류

SQL은 특정 회사에서 만드는 것이 아니라 국제표준화기구에서 SQL에 대한 표준을 정해서 바료하고 있습니다. 이를 표준 SQL이라고 한다. 하지만 SQL을 사용하는 DBMS를 만드는 회사가 여러곳이 있기 때문에 표준 SQL이 각 회사 제품의 특성을 포용하지 못한다.
그래서 DBMS를 만드는 회사에서는 되도록 표준 SQL을 준수하되, 각 제품의 특성을 반영한 SQL을 사용한다.

DBMS 제품은 (오라클, SQL서버, MySQL) 이 표준 SQL을 포함하고 있다.

제품별 특징

    1. ORACLE
      ORACLE사에서 개발되었으며, 현재 가장 널리 사용되는 RDBMS
      운영체제 관계없이 설치가 용이함.
      보안성이 높아 제조업, 금융권 등의 대기업에서 널리 사용된다(글로벌 DB시장 점유율 1위).
      오픈소스가 아니라는 단점이 있지만 그로 인해 보안성이 높다!
    1. MySQL
      MySQL AB사에서 개발, 썬 마이크로 시스템즈 -> 오라클 인수합병
      운영체제 관계없이 설치가 용이함.
      오픈소스로 이루어진 무료프로그램 ( 단, 상업적으로 이용시 비용 발생)
      오라클에 비해 비용적 장점이 있어 중소기업에서 많이 사용한다.
    1. MS-SQL
      Microsoft 에서 개발한 상업용 DB
      운영체제에 관계없지만 WINDOWS에 특장점을 보이고 있다.
      WINDOWS버전은 소스 비공개, LINUX버전 오픈소스
      금융권에서도 많이 사용하지만 중소기업 위주로 사용되고 있다.
    1. Maria DB
      MySQL이 오라클에 합병된 후 MySQL에서 나온 일부 진영이 개발
      운영체제 상관없이 설치 용이
      기존 MySQL 드라이버 호환이 완벽하며 , 그 외의 기능도 제공
      중소기업 및 개인 프로젝트에서의 활용도가 탁월함.
profile
새니의 뒤죽박죽 개발 일기📝

0개의 댓글