
[Database] DBA급 개발자로 - #4 Database Storage 2/2
2022. 9. 3. 12:34
Database/DBA급 개발자로
이전 포스팅에서는 DBMS가 데이터를 file, page, tuple의 형태로 디스크에 저장하는 방법에 대해 살펴봤습니다. 이번 포스팅에서는 튜플에 대해 더 자세하게 알아보고 메타데이터는 어떻게 저장하는지와 칼럼형 데이터베이스에 대해 간략히 살펴보겠습니다. 튜플 속성(attribute) 데이터베이스에서 튜플은 데이터베이스의 개별 행을 나타내는 것으로, 각 튜플은 여러 개의 속성을 가질 수 있습니다. 예를 들어 고객 정보 테이블의 튜플은 "이름", "전화번호", "주소" 등의 속성을 가질 수 있습니다. 이러한 튜플 속성은 데이터베이스의 테이블 컬럼과 대응됩니다. 튜플 속성이 가질 수 있는 대표적인 데이터 형식은 다음과 같습니다. INTEGER / BIGINT / SMALLINT / TINYINT FLOAT..

[Database] DBA급 개발자로 - #1 Relational Model
2022. 8. 31. 19:01
Database/DBA급 개발자로
Relational Model 이번 포스팅에서는 다양한 데이터베이스가 탄생할 수 있었던 계기인 관계형 모델(Relational Model)에 대해 알아보겠습니다. 개발자에게 가장 큰 관심사는 역시 데이터베이스입니다. 그럼 데이터베이스가 무엇인지부터 살펴보겠습니다. 데이터베이스는 데이터를 쉽게 접근, 관리하고 업데이트할 수 있도록 구성된 데이터의 모음입니다. 따라서 우리는 데이터를 flat file에 저장을 하던, csv에 저장을 하던 상관없이 데이터를 저장하는 것을 데이터베이스라고 부를 수 있습니다. 하지만 데이터를 아무런 생각 없이 저장하게 된다면 무슨 문제가 발생할 수 있을까요? 첫 번째로는 데이터가 정확한지 확신할 수 없습니다. 만약 중복 데이터가 있다면 어떤 게 정말 내가 원하는 데이터인지 어떻게..