Data Analysis/Database (SQL)
=> “공동으로 사용하는” , “통합”, “저장”, “운영”. 데이터베이스란 결국 데이터의 집합이다. => 통합된 데이터 : 서로 다른 부서에서 사용되는 운영프로그램이 실행될때 정보를 통합시켜야 한다. 이렇지 않으면 “일관성”의 문제가 생긴다. 예를들어 학생처와 교무처에서 데이터를 통합하지 않으면 둘의 데이터가 서로 다를 수 있다. 이럴 경우 결과를 신뢰할 수 없다. => 통합되지 않은 데이터의 경우 데이터의 일관성 문제가 발생한다. => 상황에 따라서 중복을 허용하게되는데, 최소한으로 해야하고 통제하에 중복을 허용해서 데이터 수정시 중복된 데이터를 고려한 상태에서 해야한다. => 프로그래밍상에선 주소를 외워놓긴 힘드니 변수로 대체해서 사용한다. => 내용에 의한 참조라는 것은, 예를들어 학번이 100번인것을 이용해서 학생의 이름을 파악한다.
무결성 : 결점이 없도록. 예를들어 학생 데이터에 학년이 있다. 만약 어떤 학생이 1~4학년이 아니라 5학년이라면 현실세계의 값에서 가질 수 없는 값이기 때문에 결점이 생기게 된다. 인증과 보안 : 인증된 사람만이 db에 접근할 수 있도록 한다.
1세대 DBMS - IDS, IMS - 네트워크 데이터 모델 : 데이터의 구조가 네트워크식으로 가지치기하며 이뤄짐. - 계층적 데이터 모델 : 트리형태
2세대 DBMS - Relational Data Model, Commercial DBMS Relational (관계형 데이터 모델) : 2차원의 테이블 형태. 오늘날의 대부분의 dbms의 형태. SQL : 관계형 데이터 모델을 사용하기위한 표준 언어
3세대 DBMS - 객체지향 데이터베이스가 나왔지만 실제로 성공하진 못했다. 특수목적 dbms에서만 사용되고 있다. 객체지향이 좋지만 데이터베이스관리에선 처리 성능이 중요하다. 객체지향이 관계형보단 속도가 느려서.
기반은 관계형 모델로, 그 안에 객체지향 개념을 일부 수용해서 다양한 데이터 베이스의 형태를 처리할 수 있게 한것을 ORDBMS(객체관계형 데이터베이스 관리 시스템)이라고 한다.