본문 바로가기
반응형

IT 지식/데이터베이스8

릴레이션(Relation) 서로간의 관계를 뜻하는 릴레이션(Relation)이 데이터베이스에서 어떤 의미로 사용되고, 무엇을 뜻하는지 알아보겠습니다. 릴레이션의 정의 - 관계형 데이터베이스에서 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장하는 기본 단위 입니다. 릴레이션 용어들 알아보기 쉽게 생각해서 하나의 RDBMS에서 하나의 테이블을 릴레이션이라 생각하면 될 것 같습니다. 위 테이블은 학생이라는 테이블을 만들었다고 했을 때의 모습입니다. 학생이 바로 릴레이션(Relation)명이 됩니다. 속성(Attribute)은 학번, 이름, 성별, 핸드폰, 이메일등 릴레이션의 열에 있는 것 입니다. 속성의 개수가 총 5개인데 이것을 Degree 우리말로는 차수라고 합니다. 여기서는 5가지의 속성을 가지고 있기 때문에 Degree.. 2023. 12. 19.
PACELC 이론 PACELC 이론은 앞서 설명했던 NoSQL과 CAP 이론을 이해한 뒤 읽어주시기 바랍니다. PACELC 이론은 CAP 이론을 보완하기 위해 등장한 이론 입니다. CA의 경우 네트워크 장애가 전혀 없다는 전제가 깔려 있습니다. 하지만 이것은 분산 환경에는 존재할 수 없습니다. 따라서 무조건 P는 전제로 깔고 가야 합니다. 그러다보니 CP, AP 중 하나를 선택해야 하는데 이것은 장애 상황만 고려한 것입니다. 정상적인 상황도 고려한 이론이 필요했습니다. PACELC 이론이란? PACELC 이론은 PAC + ELC 라고 생각하면 됩니다. 그럼 먼저 PAC에 대해 알아보겠습니다. PAC 는 CAP 이론의 약자와 같습니다. 약자들의 순서를 바꾼 이유는 Partition Tolerance(분할 허용성) 상황에서 .. 2023. 12. 15.
CAP 이론 앞서 NoSQL은 비정형 데이터를 효율적으로 처리하기 위해 분산 DBMS를 사용한다고 하였습니다. 이렇게 분산 DB를 사용하다보면 선택과 집중이 필요한 순간이 오게 됩니다. 성능과 효율의 Trade-Off가 필요한 CAP 이론에 대해 알아보겠습니다. CAP 이론이란? Brewer 이론이라고도 알려진 CAP 이론에 대해 알아보겠습니다. CAP은 세가지 속성의 약자로 각각 일관성(Consistency), 가용성(Availability), 분할 허용성(Partition Tolerance)이라 불립니다. CAP 이론은 적절한 응답 시간 내에서 이 세가지를 모두 만족하는 분산 시스템을 구성할 수 없다는 이론 입니다. 그럼 먼저 일관성, 가용성, 분할 허용성이 무엇인지부터 알아보겠습니다. 일관성(Consistenc.. 2023. 12. 14.
NoSQL(Not Only SQL) 오라클, MySQL로 대표되는 RDBMS의 언어인 SQL을 사용하지 않는 데이터베이스 관리 시스템인 NoSQL에 대해 알아보겠습니다. NoSQL의 정의 Not Only SQL의 약자인 NoSQL은 RDBMS의 한계를 벗어나, 고용량의 비정형 데이터를 효율적으로 처리할 수 있는 구조와 유연성을 가진 분산 DBMS 입니다. NoSQL의 정확한 정의는 없지만 NoSQL이라 불리는 데이터베이스들은 공통적인 특징이 있습니다. NoSQL의 특징 첫 번째로 일관성(Consistency)은 DB의 절대적인 요소가 아니라는 것입니다. 즉 일관성을 조금은 포기하고 확장성에 주의를 기울이는 것입니다. 일관성을 유지하기 위해 DB가 멈추는 것보다, 서비스 하던것은 계속 서비스를 진행하도록 하는 것입니다. 두 번째로 분산 저.. 2023. 12. 13.
LOD(Linked Open Data) LOD 란? 개방형 연결 데이터라 불리는 LOD에 대해 알아보겠습니다. LOD는 웹(World Wide Web)의 창시자 팀 버너스 리(Tim Berners-Lee)가 2006년 제안하였습니다. 이름에서 알 수 있듯이 Linked Open Data는 Linked Data 와 Open Data를 더한 것으로 연결과 개방이 핵심입니다. 지금까지의 웹은 문서의 웹(Web of Document)였습니다. 이것을 기계가 이해할 수 있도록 데이터의 웹(Web of Data)를 만드는 것이 목표입니다. 이렇게 한다면 수많은 문서들을 사람들이 하나하나 모두 확인해서 원하는 정보를 찾는 것이 아니라 Query를 작성하면 원하는 데이터를 얻을 수 있게 됩니다. Five Star Open Data LOD를 만들기 위해서는 .. 2023. 12. 12.
데이터베이스 정규화 앞서 이상현상(Anomaly)에 대해 알아보았습니다. 2023.12.07 - [정보관리기술사준비/데이터베이스] - 데이터 베이스 이상현상(Anomaly) 데이터 베이스 이상현상(Anomaly) 데이터 베이스에서 데이터의 중복으로 인해 릴레이션에 대한 삽입, 갱신, 삭제시 발생하는 비합리적인 현상인 Anomaly 즉 이상현상에 대해 알아보겠습니다. Anomaly는 정규화가 제대로 구현된 DB에 davincicoding.co.kr 이상현상을 제거하는 무손실 분해 과정인 정규화(Nomalization)에 대해 알아보도록 하겠습니다. 예제로 컴퓨터 시스템 응용 기술사 111회 3교시 6번 문제로 진행하도록 하겠습니다. 다음은 컴퓨터에서 사용되는 제품에 대해 여러 개의 주문서가 접수된 내용을 보여주는 "주문목록".. 2023. 12. 10.
데이터 베이스 이상현상(Anomaly) 데이터 베이스에서 데이터의 중복으로 인해 릴레이션에 대한 삽입, 갱신, 삭제시 발생하는 비합리적인 현상인 Anomaly 즉 이상현상에 대해 알아보겠습니다. Anomaly는 정규화가 제대로 구현된 DB에서는 발생하지 않습니다. 가장 흔하게 발생하는 이유는 여러 종류의 릴레이션을 하나의 DB에 표현하려다 발생합니다. 이런 Anomaly 현상이 발생하면 정규화를 실행해야 합니다. 그럼 예시를 통해 알아보도록 하겠습니다. 사번 부서코드 부서명 100 A10 기획부 200 A20 인사부 300 A30 영업부 400 A10 기획부 다음과 같은 부서 DB가 있습니다. 각각의 사원에 대해서 사번과 해당 사원의 부서에 대한 정보가 DB에 저장되어 있습니다. 그럼 이 데이터베이스에 삽입, 갱신, 삭제시 발생하는 Anoma.. 2023. 12. 7.
데이터 베이스의 고립화 단계(Isolation Level) 데이터베이스 트랜잭션의 ACID 속성을 보장하기 위한 Isolation Level에 대해 알아보겠습니다. 데이터베이스를 혼자 사용한다면 아무 문제가 없겠지만 수많은 사람이 같이 사용하다보니 수많은 문제가 발생합니다. 어떤 트랜잭션에서 수정중인 중간 결과를 다른 트랜잭션이 접근하게 되면 Dirty Read, Non-Repeatable Read, Phantom Read등의 문제가 발생할 수 있습니다. 각각 어떤 상황에서 그런 문제가 발생하는지, 위에서 언급한 문제들은 무엇을 뜻하는지 알아보도록 하겠습니다. Read Uncommitted(Level 0) Read uncommitted 상태는 커밋을 하지 않은 데이터에 접근하는 것입니다. 예를 들어 위와 같이 DB에 좋아하는 음식을 저장해 놓았습니다. 홍길동은 .. 2023. 12. 6.
반응형