Page 9 -
P. 9
아직까지는 어렵지 않죠? 그런데 좀 깊이 생각해 보면 데이터를 저장하는 것과
원하는 데이터를 조회해 골라내는 것은 이해관계가 서로 상충될 수 있습니다.
간단한 예를 들어보죠. 책이 데이터이고 책장이 데이터베이스, 책을 책장에 넣
는 행위가 데이터를 저장하는 것이라고 해 봅시다. 저장 측면에서 보면 가장 가
까운 책장에 무작위로 책을 꽂는 것이 속도도 빠르고 효율적입니다. 반면 어떤
책을 찾으려 할 때는 책 제목이나 주제 등으로 분류해 넣는 것이 현명한 선택이
죠. 하지만 이렇게 하면 무작위로 꽂아 둘 때에 비해 시간이 오래 걸립니다. 따
라서 책을 꽂아 두고 보관하는 것과 나중에 책을 찾는 두 가지 행위를 되도록
효율적으로 처리할 수 있으면 좋겠죠. 데이터 저장과 조회도 마찬가지입니다.
이 같은 문제 외에도 넘어야 할 난관이 많습니다. RDBMS는 처음 소개되었을
때부터 지금까지 이에 대한 해결책을 제시해 왔습니다. 하지만 첫술에 배부를
수 없듯이 처음부터 문제를 모두 해결한 것도 아니고, 현재 시점에서 완벽히 해
결했다고 볼 수도 없습니다. 또한, 제시한 해결책에는 단점도 있습니다. 그렇다
고 RDBMS의 공로를 가벼이 여길 수는 없습니다. 최상은 아니어도 최선의 해
결책을 제시하며 DBMS를 발전시켜 왔고, 또 꽤 잘 처리했기 때문이죠.
그럼 RDBMS의 특징을 살펴보도록 하죠.
2.1.1 데이터 저장소인 테이블
RDBMS는 2차원 형태의 테이블이라는 구조에 데이터를 저장하는데, 이는 개
인적으로 봐도 최선의 선택이라고 생각합니다. 우리는 3차원의 세계(실제는
4차원이지만)에 살고 있기 때문에 사물을 보고 판단할 때 3차원이 익숙합니다.
따라서 그보다 한 단계 아래인 2차원은 말할 것도 없이 더욱 쉽게 파악할 수
있겠죠.
2장 관계형 데이터베이스란? 21
누구나 쉽게 SQL(본문)최종.indd 21 2019-05-28 오후 5:08:44