E D R , A S I H C RSS

Relational Database Management System



1. Definition

A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by Edgar F. Codd.
from wikipedia.org

2. Relational Model

The fundamental assumption of the relational model is that all data are represented as mathematical relations, i.e., a subset of the Cartesian product of n sets. In the mathematical model, reasoning about such data is done in two-valued predicate logic (that is, without NULLs), meaning there are two possible evaluations for each proposition: either true or false. Data are operated upon by means of a relational calculus and algebra.

The relational data model permits the designer to create a consistent logical model of information, to be refined through database normalization. The access plans and other implementation and operation details are handled by the DBMS engine, and should not be reflected in the logical model. This contrasts with common practice for SQL DBMSs in which performance tuning often requires changes to the logical model.

The basic relational building block is the domain, or data type. A tuple is an ordered multiset of attributes, which are ordered pairs of domain and value. A relvar (relation variable) is a set of ordered pairs of domain and name, which serves as the header for a relation. A relation is a set of tuples. Although these relational concepts are mathematically defined, they map loosely to traditional database concepts. A table is an accepted visual representation of a relation; a tuple is similar to the concept of row.

The basic principle of the relational model is the Information Principle: all information is represented by data values in relations. Thus, the relvars are not related to each other at design time: rather, designers use the same domain in several relvars, and if one attribute is dependent on another, this dependency is enforced through referential integrity.
from wikipedia.org

3. RDBMS

Relational_key.png
에드가 코드는 IBM에서 일할 당시 하드 디스크 시스템의 개발을 하였다. 이 사람은 기존의 codasyl approach 의 navigational 모델에 상당히 불만을 많이 가지고 있었다. 왜냐하면 navigational 모델에서는 테이프 대신에 디스크에 데이터베이스가 저장되면서 급속하게 필요하게된 검색 기능에 대한 고려가 전혀되어있지 않았기 때문이다. 1970년에 들어서면서 이 사람은 데이터베이스 구축에 관한 많은 논문을 썻다. 그 논문은 결국에는 A Relational Model of Data for Large Shared Data Banks 라는 데이터 베이스 이론에 근복적인 접근을 바꾸는 논문으로 집대성되었다.

이 논문에서 이 사람은 대용량 데이터베이스의 저장과 작업에 잇어서 새로운 시스템을 기술한다. 기존의 정렬된 링크드 리스트의 자유로운 형태의 레코드가 아니라, 고정 길이의 레코드를 가진 표를 데이터의 저장에 이용하자는 생각이었다. 링크드 리스트 시스템은 희소한 데이터베이스를 저장하는데 있어서 대단히 비효율적이었다. 관계형 모델에서 이것은 테이블에다 데이터를 나누어서 저장하면서 이를 해결한다.

4. thread

음 해석하기 귀찮네 ㅡ.ㅡ;; 궁금하면 여기서 읽어보면 될듯... 테이블 기반의 저장 방식에 도대체 왜 관계형 DB라는 말이 도대체 왜 붙은건지를 모르겠어서 찾아보았음. 원문보기
최근 신형 DB의 개발은 모두 RDBMS기반이며 차세대 DBMS 시스템으로 OODBMS 모델과 경쟁중이라고 함.
에디가 코드의 논문은 ACM 논문 에서 확인할 수 잇음 - eternalbleu
----
DBMS
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:27:53
Processing time 0.0207 sec