데이터베이스란 무엇인가? 정의 및 유형
⚡ 스마트 요약
데이터베이스란 무엇일까요? 데이터베이스는 전자적인 저장, 검색 및 관리를 지원하는 체계적이고 구조화된 데이터 모음입니다. 전화번호부부터 소셜 네트워크에 이르기까지 우리가 일상적으로 사용하는 시스템의 핵심 동력이며, 데이터베이스 관리 시스템(DBMS)이라는 소프트웨어를 통해 운영됩니다.

데이터 란?
간단히 말해서, 데이터 데이터는 관심 대상에 대한 사실입니다. 이름, 나이, 키, 몸무게는 모두 당신에 대한 데이터입니다. 사진, 이미지, 파일, PDF 파일 또한 저장 및 처리가 가능한 정보를 담고 있으므로 데이터로 간주될 수 있습니다.
데이터베이스 란?
A 데이터베이스 데이터베이스는 체계적인 데이터 모음입니다. 데이터베이스는 데이터의 전자적 저장, 검색 및 조작을 지원하여 대규모 데이터 관리를 용이하게 합니다.
몇 가지 친숙한 예를 들어보겠습니다. 온라인 전화번호부는 데이터베이스를 사용하여 사람, 전화번호, 연락처 정보를 저장합니다. 전력 공급업체는 데이터베이스를 통해 요금 청구, 고객 문제, 고장 이력을 관리합니다. 페이스북은 회원, 친구, 게시물, 메시지, 광고 등 훨씬 더 많은 정보를 저장하는데, 이 모든 것이 데이터베이스 안에 있습니다. 이러한 패턴은 모든 산업 분야에서 동일하게 적용됩니다. 애플리케이션과 사용자가 정보를 안정적으로 검색할 수 있도록 정보를 체계적으로 정리하는 것입니다.
데이터베이스 유형
가장 일반적인 데이터베이스 유형은 다음과 같습니다. 각 유형은 특정 데이터 형태와 작업 부하에 적합합니다.
분산 데이터베이스
분산 데이터베이스는 데이터를 여러 사이트 또는 위치에 분산시킵니다. 각 사이트는 자체적인 데이터 조각을 유지하며, 클라이언트는 하나의 논리적 데이터베이스에만 접근합니다. 이 모델은 낮은 지연 시간과 로컬 가용성이 요구되는 글로벌 애플리케이션에서 흔히 사용됩니다.
관계형 데이터베이스
관계형 데이터베이스는 데이터를 행과 열로 구성된 테이블에 저장하고, 키를 사용하여 테이블 간의 관계를 설정합니다. 흔히 RDBMS라고도 불리는 관계형 데이터베이스는 여전히 가장 널리 사용되는 데이터베이스 유형입니다. DBMS 시장에 있는 가족. 예를 들면 다음과 같습니다. MySQL, Oracle Database, PostgreSQL예산 및 Microsoft SQL Server.
객체 지향 데이터베이스
객체 지향 데이터베이스는 데이터를 객체 형태로 저장하며, 각 객체는 데이터에 대해 허용되는 연산을 정의하는 속성과 메서드를 가지고 있습니다. 이러한 데이터베이스는 객체 지향 프로그래밍 언어와 깔끔하게 연동되며, ORM(객체 관계 매핑) 계층이 필요하지 않습니다.
중앙 집중식 데이터베이스
중앙 집중식 데이터베이스는 모든 기록을 단일 중앙 서버에 저장합니다. 사용자는 여러 위치에서 동일한 매장에 접속할 수 있으므로 관리가 간편해지지만, 서버가 단일 장애 지점이 될 수 있습니다.
오픈 소스 데이터베이스
오픈 소스 데이터베이스는 누구나 사용, 수정 및 재배포할 수 있도록 관대한 라이선스 하에 소스 코드를 공개합니다. MySQL, PostgreSQL, SQLite, MariaDB예산 및 MongoDB 널리 사용되는 사례들입니다.
클라우드 데이터베이스
클라우드 데이터베이스는 가상화된 온디맨드 인프라에 최적화되어 있습니다. 관리형 서비스로 제공되며, 스토리지와 컴퓨팅 자원을 탄력적으로 확장하고, 내장된 복제 기능을 통해 높은 가용성을 제공합니다. 예를 들면 다음과 같습니다. Amazon RDS, Azure SQL 데이터베이스, 그리고 Google Cloud 스패너.
데이터웨어 하우스
A 데이터웨어 하우스 다양한 소스 시스템의 과거 및 누적 데이터를 중앙 집중화하여 의사 결정, 보고 및 예측을 지원합니다. 조직에 단일하고 신뢰할 수 있는 데이터 소스를 제공함으로써 분석을 간소화합니다.
NoSQL 데이터베이스
NoSQL 데이터베이스는 행과 열로 깔끔하게 정리되지 않는 매우 크고 종종 비정형적인 데이터 세트를 처리합니다. 문서, 키-값, 컬럼 패밀리 및 그래프 저장소는 각각 다른 액세스 패턴을 처리하며 기존 관계형 데이터베이스가 따라잡기 어려운 수평적 확장성을 제공합니다.
그래프 데이터베이스
그래프 데이터베이스는 그래프 이론(노드와 엣지)을 사용하여 관계를 직접 저장하고 조회합니다. 이는 사기 탐지, 추천 시스템, 소셜 네트워크 분석과 같이 개체 간의 연결이 개체 자체만큼 중요한 분야에 이상적입니다.
OLTP 데이터베이스
OLTP(온라인 트랜잭션 처리) 데이터베이스는 다중 사용자 환경에서 높은 처리량과 낮은 지연 시간을 갖는 트랜잭션에 중점을 둡니다. 이러한 데이터베이스는 ACID 속성을 보장하며, POS(판매 시점 관리) 및 뱅킹 애플리케이션과 같은 운영 체제를 구동하는 데 필요한 많은 소규모 읽기 및 쓰기 작업에 최적화되어 있습니다.
개인 데이터베이스
개인 데이터베이스는 단일 사용자 또는 소규모 팀을 위해 단일 컴퓨터에 데이터를 저장합니다. Microsoft 액세스 SQLite 전형적인 예입니다.
다중 모드 데이터베이스
멀티모달 데이터베이스는 단일 엔진 내에서 문서, 그래프, 키-값 등 여러 데이터 모델을 지원합니다. ArangoDB와 Microsoft Azure Cosmos DB는 인기 있는 멀티모달 옵션입니다.
문서/JSON 데이터베이스
문서 지향 데이터베이스에서 각 레코드는 일반적으로 JSON, BSON 또는 XML 형식의 독립적인 문서입니다. 단일 문서에 다양한 중첩 데이터와 여러 필드를 담을 수 있어 빠르게 변화하는 애플리케이션에 적합한 유연한 모델입니다. MongoDB 그리고 Couchbase는 잘 알려진 예입니다.
계층형 데이터베이스
계층형 데이터베이스는 부모-자식 관계를 갖는 트리 구조를 사용합니다. 노드는 레코드를 나타내고 가지는 필드를 나타냅니다. Windows 레지스트리 Windows XP 및 IBM IMS는 계층형 데이터베이스의 대표적인 예입니다.
네트워크 데이터베이스
네트워크 DBMS는 레코드 간의 다대다 관계를 지원하여 계층형 모델보다 더 복잡한 구조를 생성할 수 있습니다. RDM 서버는 네트워크 모델을 구현한 데이터베이스 관리 시스템의 한 예입니다.
데이터베이스 구성 요소
데이터베이스 구성 요소.
모든 데이터베이스는 서로 협력하는 다섯 가지 구성 요소로 구축됩니다.
하드웨어
하드웨어는 물리적 계층으로, 컴퓨터, 입출력 장치, 저장 매체 및 네트워크를 포함합니다. 이는 데이터베이스와 외부 세계를 연결하는 인터페이스 역할을 합니다.
소프트웨어
소프트웨어는 데이터베이스를 관리하고 제어하는 모든 것을 포괄합니다. 여기에는 DBMS 자체, 운영 체제, 여러 사용자가 데이터를 공유할 수 있도록 하는 네트워크 소프트웨어, 그리고 DBMS를 통해 읽고 쓰는 애플리케이션이 포함됩니다.
Data
데이터는 데이터베이스에 저장되는 가공되지 않은 사실, 관찰 내용, 숫자, 기호 및 이미지입니다. 가공되지 않은 데이터 자체는 의미가 없으며, 데이터베이스는 이를 정리하고 처리하여 유용한 정보로 변환합니다.
안내
절차는 데이터베이스의 설계, 운영 및 유지 관리 방법을 규정하는 문서화된 지침 및 규칙입니다. 이는 관리자와 사용자에게 시스템을 안정적으로 운영하는 방법을 알려줍니다.
데이터베이스 접근 언어
데이터베이스 접근 언어(대부분 SQL)는 사용자와 애플리케이션이 데이터를 삽입, 업데이트, 삭제 및 조회할 수 있도록 해줍니다. 사용자는 특정 명령어를 입력하고, DBMS는 이 명령어를 구문 분석하고 실행 계획을 수립하여 기본 저장소에 대해 실행합니다.
데이터베이스 관리 시스템(DBMS)이란 무엇입니까?
A 데이터베이스 관리 시스템(DBMS) 소프트웨어 계층은 사용자가 데이터를 정의, 저장, 검색, 업데이트 및 보호할 수 있도록 해줍니다. DBMS 여러 사용자와 애플리케이션 간의 액세스를 조정하고, 무결성을 보장하며, 누가 무엇을 보고 변경할 수 있는지를 제어합니다.
DBMS 기술은 새로운 것이 아닙니다. - 찰스 바흐만의 말 통합 데이터 저장소(IDS)1960년대 초 제너럴 일렉트릭(GE)에서 개발된 SQL Server는 최초의 데이터베이스 관리 시스템(DBMS)으로 널리 알려져 있습니다. 이후 DBMS 분야는 계층형, 네트워크형, 관계형, 객체 지향형, NoSQL 모델 등으로 발전해 왔으며, 각 모델은 차세대 데이터 워크로드에 대응해 왔습니다.
데이터베이스 관리 시스템의 역사
아래는 주요 성과입니다. trac데이터베이스 기술의 진화.
- 1960s — 찰스 바흐만은 제너럴 일렉트릭에서 최초의 DBMS(통합 데이터 저장소)를 설계했습니다.
- 1968 - IBM 선박 정보 관리 시스템(IMS)은 초기 계층형 DBMS 중 하나입니다.
- 1970 — 에드거 F. 코드(Edgar F. Codd)는 관계형 모델을 소개하는 논문 "대규모 공유 데이터 뱅크를 위한 관계형 데이터 모델(A Relational Model of Data for Large Shared Data Banks)"을 발표했습니다.
- 1976 피터 첸은 개체-관계(ER) 모델을 공식화했습니다.
- 1980s - 관계형 모델 지배적인 데이터베이스 패러다임이 되고 SQL이 표준화됩니다.
- 1985 객체지향 DBMS는 OOP 언어의 부상과 잘 어울리는 것으로 보인다.
- 1990s — 객체 관계형 기능이 주류 RDBMS에 도입되다.
- 1992 - Microsoft 첫 번째 버전을 출시합니다 Microsoft 개인 데이터베이스 접근 권한.
- 1995 — 웹 애플리케이션이 인터넷 규모의 데이터베이스 사용을 주도하기 시작했습니다.
- 1997 XML은 데이터베이스에서 형식으로도, 쿼리 대상으로도 사용됩니다.
- 2009 — NoSQL이라는 용어가 주목받고 있습니다. trac문서, 키-값 및 그래프 저장소가 빠르게 증가함에 따라.
- 2010 이상 — 클라우드 네이티브 및 분산 SQL 데이터베이스(Aurora, Spanner, CockroachDB) 알려지다.
DBMS의 장점
잘 구현된 DBMS는 조직에 다음과 같은 여러 가지 실질적인 이점을 제공합니다.
- 데이터를 효율적으로 저장하고 검색하는 다양한 기술을 제공합니다.
- 동일한 데이터를 공유하는 여러 애플리케이션의 요구 사항 균형을 유지합니다.
- 통일된 관리 절차를 제공합니다.
- 애플리케이션 프로그래머가 저장소 세부 정보를 알 수 없도록 보호합니다.
- 제약 조건 및 접근 제어를 통해 데이터 무결성과 보안을 제공합니다.
- 동시 접속을 스케줄링하여 유효한 작업만 성공하도록 합니다.
- 재사용 가능한 서비스를 통해 애플리케이션 개발 시간을 단축합니다.
DBMS의 단점
DBMS 모델에도 장단점이 있습니다.
- 하드웨어 및 소프트웨어 비용은 상당할 수 있습니다.
- 대부분의 시스템은 복잡하기 때문에 사용자와 관리자 모두 교육이 필요합니다.
- 데이터를 단일 데이터베이스에 집중시키면 장애, 데이터 손상 또는 공격의 주요 표적이 될 수 있습니다.
- 동시 접근 시에는 업데이트 손실 및 교착 상태를 방지하기 위해 신중한 설계가 필요합니다.
- DBMS는 복잡한 수치 계산을 위해 설계된 것이 아닙니다. 그러한 작업 부하는 특수 도구가 더 잘 처리합니다.

