Computer Sciences(237)
-
6-2. 디자인 원칙
좋은 디자인으로 여겨지는 것과 피해야하는 것FaithfulnessAvoiding redundancySimplicity countsChoosing the right relationshipsPicking the right kind of elementFaithfulness디자인은 사실에 충실해야 한다엔티티 세트와 그 속성들, 관계 세트는 실제를 반영해야 한다Example(attributes)Automobiles(number-of-cylinders)Exmaple(relationship set - obvious case)Example(relationship set - less obvious case)Avoiding Redundancy중복을 피하자아래 E/R 모델을 보면 Studios의 name을 참조하여 데이터를..
2021.05.02 -
6-1. E/R 모델
데이터베이스 설계 과정 데이터베이스에 어떤 정보를 저장할지 분석 해당 정보의 구성요소 간의 관계 분석 데이터베이스 스키마 라고 불리는 데이터베이스의 구조 명세 설계는 DBMS에 입력될 수 있는 양식(SQL)에 맞춰 커밋됨 데이터베이스가 물리적으로 생성됨 고수준 설계 모델 E/R 모델 UML 모델 ODL 모델 데이터베이스 모델링 및 시행 과정 문제 분석 E/R 모델 산출 관계 스키마 생성 관계 DBMS 생성 E/R(Entity-Relationship) 모델 Entity: 사각형 다른 객체와 구별 가능한 형태의 실세계 객체 속성의 집합으로 표현됨 Entity Sets: 같은 속성을 공유하는 같은 타입의 엔티티 집합 Attributes: 타원 Entity set의 각 멤버가 보유한 설명 속성 표준 E/R 모델..
2021.05.02 -
5. Bags and Extended Relational Algebra
Relational Operations on Bags Set: 중복된 튜플을 제거한 릴레이션 Bag(Multiset): 중복된 튜플을 포함할 수 있는 릴레이션 Bag을 사용하는 이유 효율성(속도) Set으로 합집합 연산을 하게 되면 두 릴레이션을 합한 후 일일이 중복을 찾아내 제거하는 연산을 하게 됨 Bag으로 합집합 연산을 하게 되면 두 릴레이션을 합한 후 연산이 종료되므로 속도가 훨씬 빠름 Bag 연산으로 두 릴레이션을 합집합하면 중복되는 튜플이 사라지지 않고 합해지므로 결과가 달라질 수 있음(합계, 평균, 카운트 등) 프로젝션 연산은 중복된 컬럼을 제거하지만 Bag연산으로 하면 중복을 포함함 즉 각 튜플마다 독립적으로 수행됨(셀렉션도 마찬가지) Extended Operators to Relation..
2021.05.02 -
4. Relational Algebra
데이터베이스를 사용하는 주된 이유는 쿼리를 사용하여 데이터를 효율적으로 처리하기 위해서다. Relational Algebra Relational model은 데이터에 대한 작업이 표준화되어있고, 그 작업을 수학적으로 나타낼 수 있다. Relational algebra - 가장 많이 사용됨 Relational calculus Datalog ODL은 데이터에 대한 여러 작업을 수행할 수있는 메소드를 사용하는 방법이다. 아직 수학적으로 표현할 수 없다 E/R model은 데이텅 조작에 대한 구체적인 방법을 포함하지 않는다 What is Algebra? Algebra = operators + atomic operands Arithmetic algebra Atomic operands: x나 y같은 변수 또는 37..
2021.05.02 -
3. Defining a Schema in SQL
Character StringsCHAR(n) = CHARACTER(n)크기를 지정하지 않을 시 1로 지정됨VARCHAR(n) = CHAR VARYING(n) = CHARACTER VARYING(n)문자열 입력 시에는 Single Quote 사용('') Double Quote 불가CHAR로 선언 후에 공간을 모두 사용하지 않으면 공백을 추가a char(7) = 'hello' → 'hello 'VARCHAR는 사용하지 않은 공간은 무시함b varchar(7) = 'world' → 'world'Bit StringsBIT(n), BIT VARYING(n)리터럴(아래는 PostgreSQL 한정)2진수 - B'0101'16진수 - X'FF0'BooleanBOOLEAN: { TRUE, FALSE, UNKNOWN }D..
2021.05.02 -
2. Relational Data Model
데이터 모델 데이터나 정보를 설명하는 표현 방법 일반적으로 세 부분으로 구성됨 데이터 구조 데이터 운영 데이터 제약 조건 중요한 데이터 모델 관계형 모델(The Relational Model) XML을 포함하는 부분구조화된 데이터 모델 다른 데이터 모델 객체지향 데이터 모델 객체-관계형 모델 계층(트리) 모델 네트워크 모델 관계형 모델 릴레이션(테이블) 속성(컬럼) title, year, length, genre 스키마 테이블의 구조 Movies(title, year, length, genre) 튜플(행) (Gone With the Wind, 1939, 231, drama) 도메인 Movies(title: string, year: integer, length: integer, genre: string) ..
2021.05.02