Sub:
스키마schema
데이터data
데이터언어,data_language
DDL,data_definition_language 데이터정의어 - CREATE TABLE, DROP TABLE, ALTER, RENAME, TRUNCATE, ...
DML,data_manipulation_language 데이터조작어 - INSERT INTO, UPDATE, DELETE FROM, ...
DCL,data_control_language 데이터_제어_언어 데이터제어어 - GRANT, REVOKE, ROLLBACK, ..
TCL,transaction_control_language 트랜잭션제어어? - COMMIT, ROLLBACK, SAVEPOINT, ...
// 위의 언어(~L) 분류들은 엄밀하지는 않은 것 같다. SQL의 SELECT를 DQL - Data Query Language 로 따로 분류한 곳도 있고
SQL,structured_query_language
데이터모델data_model
계층형
관계형데이터모델 or 관계데이터모델 - RDM, relational_data_model - 가장 중요
etc.
데이터추상화data_abstraction - curr see
데이터모델data_model맨아래
연산operation
관계데이터연산relationship_data_operation
관계대수relational_algebra - 절차식 언어(procedural)
normal set operations : union intersection set_difference Cartesian_product
pure relational operations : select project join division
관계해석relational_calculus - 비절차식 언어(non-procedural)
domain relational calculus
tuple relational calculus
DBMS,database_management_system ->
데이터베이스,database#s-3
hierarchical_database
https://foldoc.org/hierarchical database
network_database
https://foldoc.org/network database
relational_database
https://foldoc.org/relational database 관계형_데이터베이스 Relational_database
intelligent_database
https://foldoc.org/intelligent database
flat_file_database
플랫_파일_데이터베이스 Flat-file_database
뷰view
키key
무결성integrity
무결성제약조건integrity_constraint
테이블table
릴레이션relation에서,
튜플tuple은
릴레이션에서, 튜플의 유일성(uniqueness of tuple):
릴레이션은 튜플들의
집합,set이기 때문에, 모든 튜플은 서로 달라야 함.
릴레이션에서, 튜플의 무순서성(no ordering of tuple):
릴레이션의 튜플 사이에 순서는 의미가 없음. (집합은 그 원소들 사이에 순서가 없음)
다시 말해, 튜플 순서만 다른 두 릴레이션이 있다면, 같은 릴레이션임.
A set of atomic(indivisible) values.
Data type is used for domain specification.
Data_type보다 더 구체적이고 작은 범위로 축소할 수가 있다. 그래서 database에서는 data type이라고 안 하고 domain이라는 용어를 따로 쓴다.
ex.
성별 속성의 도메인은 ‘남’ 또는 ‘여’.
학년 속성의 도메인은 (4년제 학교) {1, 2, 3, 4}.
즉
차수degree와 달리 자주 변할 수 있음. 동적. (삽입 시 +1, 삭제 시 -1)
데이터독립성data_independency
{
데이터data의 논리적 or 물리적 구조가 변경되더라도, 응용프로그램이 직접 영향을 받지 않는 특성.
- 응용프로그램에 영향을 주지 않으면서 DB구조 변경을 가능하게 함.
- (반대로) DB에 영향을 주지 않으면서 응용프로그램을 수정할 수 있게 함.
각 단계
스키마schema 사이에 적절한 내부 사상을 한다면, 하위스키마가 변경되어도 상위스키마에 영향을 주지 않도록, 변경 내용을 숨길 수 있음.
외부 - 개념 사상
외부스키마를 변경해도 전체 개념적 스키마는 변경되지 않거나 변경되더라도 변경 내용이 최소화.
논리적 데이터 독립성 logical data independence 제공
개념 - 내부 사상
물리적 구조의 변경에 따른 내부 스키마가 수정되더라도 연관된 개념-내부 사상 정보만 수정하면 상위 스키마에 대한 영향을 최소화.
물리적 데이터 독립성 physical data independence 제공
}
E-R * , ER_model , ER_diagram , ...
{
개체-관계 모델링(Entity-Relationship Modelling E-R model
개체-관계 다이어그램(Entity-Relationship Diagram)이라 한다. 줄여서 ERD E-R diagram
개체-관계_모델
개체-관계 모델(E-R model) : 현실 세계를
개체entity와 개체 간의
관계relationship를 이용해 개념적 구조로 표현하는 방법.
개체-관계 다이어그램(E-R diagram, Entity-Relationship diagram, E-R 다이어그램) : 현실 세계를 개체-관계 모델을 이용해 개념적으로 모델링하여 그림으로 표현한 것
}
R.A operation에서 complete set이란:
{σ, π, ∪, -, ×}
대충, 이 연산(자) 집합만으로 모든 연산을 나타낼 수 있다는?? 기본연산집합 같은? - chk
tmp; to mv ¶
여러 DB 분류 - from
http://kocw.net/home/search/kemView.do?kemId=1335378 김정준 1. 33m
{
메인 메모리 DB
DB의 일부 또는 전부를 main memory에 상주시켜 운용
분산 DB
물리적으로 여러 개의 DB 시스템을 네트워크로 연결하여,
논리적으로 하나의 DB 시스템처럼 사용자가 사용할 수 있는 DB
멀티미디어 DB
슷자, 문자 같은 일반
데이터data뿐만 아니라 영상 음향 등을 효과적으로 저장 및 처리하는 DB
공간 DB
공간에 존재하는 점, 선, polygon 등을 포함하는 객체의 data를 저장 및 검색하는데 최적화된 DB
비정형 DB
빅데이터big_data 처리를 위해 전통적인 관계형데이터베이스(RDB)와는 다르게 설계된, NoSQL
빅데이터의 세 특징(3V) : 양(volume) 속도(velocity) 다양성(variety)
대표적 NoSQL 데이터 모델:
- column
- document
- key-value
- graph
ex.
MongoDB, Cassandra, HBase, ...
}
ER_diagram
{
ER 다이어그램을 그리는 설계도구로는 ER win, ER studio, Power Builder, DA# 등이 있다 (김정준)
ER 모델의 구성 요소는
}
RDB 외 ¶
NoSQL
{
// tmp; chk; from
NoSQL
단어 뜻은 Not only SQL
대충,
한 개 장비의 성능을 향상시키는(scale up: 수직적 확장) 비용 때문에,
일관성consistency을 약간 포기하고, 여러 컴퓨터에 데이터를 분산하는(scale out: 수평적 확장) // distributed_system distribution
스키마schema없이 동작.
따라서 비형식적인 데이터를 다루는 것이 용이함.
하지만 DB가 스키마를 직접 관리하지 않는다는 것이지, 암묵적인 schema는 있음. - type 불일치 발생 가능.