Week 3 - Introduction to Relation Model

2023. 10. 20. 14:34CS Life/Database

단어 정리

릴레이션 relation

관계형 데이터베이스는 행렬 형태를 갖는 테이블들의 모임으로 구성된다. 이러한 형태의 테이블을 릴레이션이라 부른다.

속성 attribute

릴레이션에서 각 필드(열)를 속성이라고 하고 한 릴레이션이 갖는 속성의 수를 arity라 부른다.

속성 도메인

속성이 가질 수 있는 값의 범위를 도메인(attribute domail)이라 부른다.

튜플 Tuple

릴레이션을 이루는 속성의 순서에따라 부여된 값으로 이루어진 하나의 행을 튜플 이라 부른다.

Cardinality

한 릴레이션에 속한 튜플의 수를 그 릴레이션의 Cardinality라 부른다.

Relation Model

Pasted image 20231014214417.png

  • Approach to managing data using a structure and language
  • Data - Terms of tuples & Grouped into relations
  • Purpose : provide a declarative method for specifying data and queriesPasted image 20231014212617.png

Tables

  • Relations are saved in the format of tables
  • Row = Record
  • Column = attribute

Tuple

  • Single row of a table : 관계에 대한 단일 레코드가 포함된 테이블의 단일 행

Column

  • set of data values of a particular type, one value for each row of the database
  • Called An Attribure

Primary Key

Week 5 - Introduction to SQL (1)#Primary Key

  • Key in a relational model that is unique for each record

Domain

  • Set of acceptable values that a column os allowed to contain
    (Column 에 포함할 수 있는 허용 가능한 값의 집합)
  • Based on various properties and the data type for the column
    (Column 의 다양한 속성과 데이터 유형을 기반)

Operations in Relational Model

Insert Operation

  • the insert operation gives values of the attribute for a new tuple which should be inserted into a relation
    Pasted image 20231014214107.png

Update Operation

  • You can see that in the below-given relation table CustomerName=‘Apple’ is updated from Inactive to Active
    Pasted image 20231014214116.png

Deletion Operation

  • To specify deletion, a condition on the attributes of the relation selects the tuple to be deleted
    Pasted image 20231014214215.png
    In the above-given example, CustomerName=‘Apple’ is deleted from the table

Select Operation

Pasted image 20231014214317.png


In the above-given example, CustomerName-‘Amazon’ is selected

Database Schema

  • Logical Structure of the Database
  • 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것

Database Instance

  • snapshot of the data in the DB at a given instant in time
  • Snapshot : 특정 시간의 저장 장치의 상태
  • 정의된 스키마에 따라 데이터베이스에 실제로 저장된 값
    Pasted image 20231014215757.png

Keys

Primary keys

  • Unique for each record (Unique Identifier)
  • Always have one and only one primary key

Schema Diagram for University Database

Relational Algebra

  • procedural language consisting of a set of operations that take one or two relations as input and produce a new relation as their result (하나 또는 두 개의 관계를 입력으로 받아 그 결과로 새로운 관계를 생성하는 일련의 연산으로 구성된 절차적 언어)
  • Six Basic Operators
    • Select :
    • Project :
    • Union :
    • Set difference : –
    • Catesian product : x

Select Operations

  • Selects tuples that satisfy a given predicate (주어진 술어를 만족하는 튜플을 선택)

  • Comparison 가능 (=, ≠, >, ≥ , < ≤ ) + 논리 연산자 (⌃and, ⌄or, ⌝not)
  • = dept_name 이 Physics 이다. 그리고 salary 가 90000 이상이다.

Projection Operation

  • 특정 속성을 생략하고 관계를 반환하는 단항 연산
  • 쿼리에 포함되지 않은 dept_name 이 포함되지 않은 DB 출력

Composition of Relational Operations

  • 관계연산자를 이용해서 식으로 나타낼 수 있음 Pasted image 20231016030202.png

Cartesian-Product Operation : X

  • 발생 가능한 모든 경우의 수의 행이 출력되는 것 : N x M
  • 조인 조건을 생략하거나 부적합할 경우 발생하는 것 = 발생했다는 것은 내 조인 조건의 문제가 있다는 것
  • X 로 표시, 두 관계의 정보를 결합할 수 있음
  • 각각의 테이블에서 모든 관계의 연산을 출력

Join Operation : ⋈

  • 각 테이블의 모든 튜플을 곱
  • 테이블에서 각 행에서 있는 조건들끼리만 곱
  • 선택 연산과 카르테시안-제품 연산을 단일 연산으로 결합
  • ""를 스키마 R " " S의 속성에 대한 Predicate 로 설정Pasted image 20231016030927.png

Union Operation :

  • allow us to combine two relations
  • Union 이 가능하게 하는 조건
    • r, s must have the same number of attributes : 속성의 수가 같아야 한다
    • attribute domains must be compatible : 속성 도메인은 호환이 가능해야 한다
      • 예: r의 두 번째 열은 s의 두 번째 열과 동일한 유형의 값을 처리함)

Set-Intersection Operation :

  • Find Tuples that are in both the input relations
  • r, s have the same number of domain
  • Attributes of r and s are compatiblePasted image 20231016203920.png

Set-Difference Operation : -

  • 차집합이라고 생각하면 될 듯
  • Set difference must be taken between compatible relations
    • r and s must have the same arity (릴레이션이 갖는 속성의 수)
      Pasted image 20231016204727.png

References
relation 관련 용어 설명
Cartesian 곱 + 기본 연산


“이 글은 Obsidian 에서 작성되어 업로드 되었습니다”

'CS Life > Database' 카테고리의 다른 글

Week 5 - Introduction to SQL (1)  (0) 2023.10.24
[프로그래머스] SELECT 문제풀이  (0) 2023.10.23
Week 7 - Intermediate SQL  (1) 2023.10.21
Week 6 - Introduction to SQL (2)  (0) 2023.10.21
Week 2 - Introduction  (1) 2023.10.20