저는 사내에서 데이터베이스를 다루는 업무를 하고 있다보니 데이터베이스에 대한 검색을 자주하는 편입니다

과거에 데이터베이스 과목을 수강했지만 다시 기초를 다지기 위해 기록하게 되었습니다

데이터베이스에서는 여러 종류의 데이터를 다루고 이를 가공하여 원햐는 결과물을 얻을 수 있습니다

흔히 배우는 데이터베이스는 데이터를 저장하는 Database System과 관리하는 매개체인 DBMS, 그리고 이를 다룰 프로그램으로 나뉘어져 있습니다.

다른 것을 알아보기에 앞서 데이터의 특성 및 데이터베이스의 장점에 대해 알아보고자 합니다


데이터베이스에 들어갈 정보는 크게 몇가지 분류로 나눌 수 있습니다.

  • 캡처된 데이터

    • 장비 등을 통해 실생활에서 측정된 정보입니다.
    • ex.공기질
  • 합성된 데이터 : 실측 데이터를 컴퓨터를 통해 가공한 정보입니다.

    • ex. 공기질의 변화 그래프
  • 이산적인 데이터 : 공간을 기반으로 하는 데이터입니다.

    • ex. 각 지역별 아침 9시의 공기질
  • 연속적인 데이터 : 시간을 기반으로 하는 데이터입니다.

    • ex. 특정 지역의 1월1일 공기질 변화

DBMS를 운용함으로써 갖는 장점으로는 몇가지가 있습니다.

  • 자기 기술성(self-describing)

    • Database 별로 테이블 구조 및 사용자 정보 등 메타 데이터를 저장하는 카탈로그를 통해 하나의 DBMS로 다수의 데이터베이스를 제어할 수 있습니다.
  • 프로그램과 데이터의 분리

    • 데이터베이스 내의 특성이 변경되어도, DBMS에서는 변경된 메타 데이터를 이용하면 되기 때문에 새로 만들 필요가 없습니다.
  • 데이터 추상화

    • 데이터 모델을 사용함으로써 테이블 내 저장된 정보를 모든 사용자에게 보여주지 않고 각자의 요구에 맞는 개념적 뷰만 제공합니다.
    • 이를 통해 권한 별 자료 권한을 다르게 하여, 저장된 데이터에 대한 보안을 높일 수 있습니다.
    • 사용자의 요구에 따라 다른 뷰를 제공하여, 전체 데이터베이스가 아닌 사용자가 보고자하는 정보만 볼 수 있습니다.
  • 표준화된 데이터 관리

    • 조직 내 모든 부서에서 단일 데이터 저장공간을 사용하여 업무효율성을 증가시킬 수 있습니다.
    • 데이터베이스 내의 자료 구조가 어떠한 이유로 변경되어도 사용자에게 영향은 적거나 거의 없습니다.
  • 응용 프로그램의 개발 시간 단축

    • 응용 프로그램의 상당한 부분을 DBMS가 처리하여 간단한 코드 몇줄로 데이터베이스를 활용할 수 있습니다.
  • 항상 최신의 정보를 제공

    • 단일 정보를 업데이트하여도 데이터베이스 전체 정보를 업데이트할 수 있어 정보의 불일치를 방지할 수 있습니다.
  • 규모의 경제성 (economics of scale)

    • 부서마다 다른 방식으로 자료를 관리하는 것보다 통합 DB로 저장하는 방법이 효율성과 비용면에서 절약이 가능합니다.

About the author

대학교에서 소프트웨어를 전공하는 백엔드와 데이터베이스에 관심이 많은 주니어 개발자입니다.
제가 진행중인 프로젝트에 관심이 많으시다면, 제 깃허브에 방문해주세요.