/ EXITEM, ADSP

데이터베이스

데이터베이스(Database)

데이터베이스는 정보를 구조화하여 저장하고 조작할 수 있는 시스템입니다.
데이터를 효율적으로 저장, 검색, 수정 및 삭제할 수 있도록 설계되어 있습니다.
다양한 종류의 애플리케이션에서 사용됩니다.

일반적으로 구조화된 데이터를 테이블 형식으로 저장하며, 이러한 테이블은 행과 열의 집합으로 이루어져 있습니다.

데이터의 일관성, 무결성, 보안 등을 유지하기 위해 다양한 기능을 제공합니다.

데이터베이스는 다양한 분야에서 활용되며, 데이터 분석가로서 데이터베이스에 대한 이해는 중요한 기술입니다.
데이터를 추출하고 변환하여 분석할 때 데이터베이스에서 쿼리를 작성하고 데이터를 가져오는 작업을 수행하게 됩니다.
따라서 SQL 등의 데이터베이스 관련 기술을 학습하고 실습하여 데이터베이스에서 데이터를 효과적으로 관리하고 분석하는 능력을 키우는 것이 데이터 분석가로서 중요합니다.

관계형 데이터 베이스(Realational Database)

데이터여러 테이블로 나누어 저장하고, 테이블 간의 관계를 설정하여 데이터를 구성합니다.
SQL(Structured Query Language)을 사용하여 데이터베이스에 대한 질의(Query)를 수행하고, 데이터를 조작할 수 있습니다.

용어 개념

테이블(Table)

데이터가 저장되는 가장 기본적인 단위로, 로 구성됩니다.
행은 레코드(Record)를 나타내며, 각 열은 특정 유형의 데이터를 저장합니다.

스키마(Schema)

데이터베이스의 구조제약 조건을 정의하는 개체입니다.
테이블, 열, 관계, 제약 조건 등의 정보를 포함합니다.

관계(Relationship)

테이블 간의 연결을 나타내는 개념입니다.
일대일(One-to-One), 일대다(One-to-Many), 다대다(Many-to-Many) 등 다양한 형태로 정의될 수 있습니다.

쿼리(Query)

데이터를 검색하거나 조작하기 위해 사용되는 명령어 집합입니다.
SQL을 사용하여 쿼리를 작성하고 실행할 수 있습니다.

인덱스(Index)

검색 속도를 향상시키기 위해 사용되는 구조입니다.
인덱스는 특정 열 또는 열의 조합에 대한 정렬된 데이터로 구성되며, 데이터 검색 시 인덱스를 활용하여 빠른 결과를 얻을 수 있습니다.

무결성 제약 조건(Intergity Constraint)

데이터의 일관성정확성유지하기 위해 설정되는 규칙입니다.
무결성 제약 조건은 데이터의 유효성을 검증하고, 잘못된 데이터의 삽입 또는 수정 방지하여 데이터의 일관성을 유지합니다.

예를 들면, 기본키 제약 조건은 테이블의 특정 열의 기준으로 고유한 값을 가져야 함을 나타냅니다.
외래키 제약 조건은 한 테이블의 열이 다른 테이블의 기본 키와 관련되어야 함을 의미합니다.

트랜잭션(Transaction)

데이터베이스에서 수행되는 작업의 논리적 단위입니다.
일련의 작업을 하나의 단위로 묶어서 ACID; 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation), 지속성(Durability)을 보장합니다.
트랜잭션은 모두 수행되거나 모두 롤백되어야 하며, 데이터베이스의 일관성을 유지하기 위해 중요한 개념입니다.

  • 원자성(Atomicity)
    • 하나의 원자 트랜잭션은 모두 성공하거나 또는 실패하는 데이터베이스 운용의 집합입니다. 원자성의 보증은 데이터베이스의 부분적인 갱신으로 더 큰 문제가 야기되는 것을 방지합니다.
    • 예) 항공 티켓 주문
      • 반드시 지불과 예약이 동시에 되거나 아니면 모두 되지 않아야 합니다. 성공적으로 지불은 되었으나 좌석 예약은 되지 않은 경우는 허용되지 않는다. 하나의 트랜잭션은 항공 티켓 예약뿐 아니라 호텔, 운송, 현재 환율로 정확히 환전되는 데에도 적용됩니다.
  • ACID
    • 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질을 가리키는 약어입니다.

데이터베이스 관리 시스템(DBMS)

데이터베이스를 관리하고 조작하기 위한 소프트웨어입니다.
DBMS는 데이터의 생성, 수정, 삭제, 검색 등을 지원합니다.
다양한 기능과 도구를 제공하여 데이터베이스를 관리합니다.
대표적인 관계형 DBMS로는 Oracle, MySQL, Microsoft SQL Server, PostgreSQL 등이 있습니다.