BDA 빅데이터 분석 학회/8기 SQL 문법 기초반

[BDA SQL 문법 기초반 2회차] 데이터 베이스 관리 시스템 (DBMS)에 대해 알아보자

_jinyj 2024. 5. 3. 23:32

이번 학기부터 새롭게 ..!!

빅데이터 분석 학회에 들어가게 되었습니다

그래서 복습노트를 올려볼 것입니다

1회차는 오티라 2회차부터 올리겠어요


데이터 베이스 시스템 VS 데이터 베이스 관리 시스템

데이터 베이스 시스템과 데이터 베이스 관리 시스템은 한 끗차이지만 아주 다르답니다

데이터 베이스 시스템은 데이터가 쌓이게 되는 곳이고 ( 더 넓은 범위)

데이터 베이스 관리 시스템은 권한이 없는 사람들이 데이터를 수정하거나 관리할 수 없게 보호하는 시스템이에요

그래서 데이터 베이스 시스템 안에 데이터 베이스 관리 시스템이 있는 것입니다

데이터 베이스 -> 데이터 베이스 관리 시스템을 통해 -> 다른 프로그램들을 통해 데이터를 볼 수 있게 됨

그래서 데이터 베이스 관리 시스템을 통해 여러 사람들이 데이터를 보고 있음에도 불구하고 데이터를 조작할 수 없게 만들어 둔 것입니다. 이것이 데이터의 무결성을 위한 것이라고 할 수 있습니다

그치만 데이터 관리자는 권한이 있으니까 바로 접근을 할 수 있습니다


데이터 베이스 관리 시스템의 기능

  1. 정의기능

데이터 베이스의 구조를 정의하고 수정하고 설계하는 기능이 있습니다

2. 조작기능

데이터 베이스 내용을 수정하고 추가하고 삭제, 검색, 삽입 등을 합니다. 이때 SQL을 사용합니다!

3. 제어기능

데이터를 볼 수 있는 권한을 다른 사람들에게 부여하고 책임을 부여하여 데이터의 무결성을 유지할 수 있도록 합니다.

장애가 발생해도 회복이 가능하게 하고 보안, 유지하는 기능이 있으며 동시에 여러 사람들이 접근할 수 있는 기능이 있습니다.


데이터 베이스 관리 시스템의 장단점

먼저 장점부터

  1. 데이터 중복 통제

중복은 데이터 베이스 설계의 문제이지만 데이터 베이스 관리 시스템을 통해 데이터가 중복되는 것을 막아줍니다.

데이터는 절대로 중복이 되면 안 됩니다. 중복이 된다면 고객이 중복되는 문제가 발생하고 매출, 손익에도 영향을 주고 이것이 조직, 전사의 문제로 이어져서 조직 전체가 잘못된 정보를 가지고 의사결정을 하게 되기 때문입니다.

2. 데이터 독립성 확보

여러 사람들이 데이터를 추가하고 삭제하고 변경하다보면 문제가 발생하기 때문에 데이터 베이스 관리 시스템을 통해 그런 일들을 막아줍니다.

3. 데이터 동시 공유

각 팀마다 보는 지표가 다르기 때문에 하나의 데이터를 여러 응용프로그램으로 동시 공유를 해야 합니다. 모든 직원들이 데이터를 보고 의사결정을 하는데 동시 공유가 되어 있지 않으면 큰 문제가 발생할 수 있습니다.

4. 데이터 보안 향상

관리 시스템에서 데이터를 관리하기 때문에 데이터 베이스를 직접적으로 수정 작업을 하기는 어렵습니다. SQL을 사용해야 하므로 보안이 향상될 수 있습니다. 또한 권한을 설정해 놓기 때문에 여러 사람들이 수정하는 것을 막아주고 보안을 높일 수 있습니다.

5. 데이터 무결성 유지

무결성이라는 것은 데이터 값이 정확한지에 따라 달려있습니다. 데이터를 추출하고 분석시에도 항상 검증하여 정확성이 높아질 수 있도록 합니다.

6. 표준화

데이터는 타입도 다르고 스키마 구조도 다르고 여러 가지로 다른 것이 많습니다. 공통적으로 데이터 정리, 기준이나 지표 설정 및 관리 등 하나의 공통된 데이터로 전사를 바라볼 수 있도록 합니다.

7. 장애 발생시 회복

시스템이 문제가 발생해도 데이터 베이스 장애가 발생하기 전에 그 전 상태로 바로 복구가 가능합니다.

8. 응용 프로그램 개발 비용이 줄어든다.

클라우드 환경으로 다양한 서비스를 같이 사용하고 있으므로 개발 비용이 줄어듭니다.

단점은

  1. 고비용

데이터 양, 쿼리 질의하는 시간 (데이터를 추출하는 로직), 쿼리 응답하는 시간, 동시에 사용하는 사람, 함께 사용하는 다른 프로그램 등등 다양한 것들을 비용으로 고려하기 때문에 고비용으로 볼 수 있습니다.

2. 백업과 회복 방법 복잡하다

3. 중앙 집중화 관리로 인한 취약점

단 하나의 부서만 데이터 베이스를 관리하고 모든 부서의 권한을 하나의 부서가 관리해야 하기 때문에 취약점이 발생합니다.


데이터 베이스 관리 시스템의 발전 과정

1세대 : 네트워크 계층 DBMS

2세대 : 관계 DBMS -> 기업에서 가장 많이 사용

3세대 : 객체 지향, 객체 관계 DBMS

4세대 이후 : NoSQL, New SQL DBMS -> 비정형 데이터(사진, 음성 등등)를 적재하기 위한 관리 시스템


이번 학기도 파이팅 ^^..