본문 바로가기

이론

[데이터베이스] Indexing - (3) page 13) clustered index s_num으로 클러스터링되어있다 -> s_num 순으로 정렬되어있는 것이다. 한테이블에는 클러스터인덱스가 단 하나 존재한다. page 19) primary key 지정하면 클러스터 인덱스가 만들어진다. 녹색 포인트는 튜플들을 가리키고 있는 포인트다. 포인트는 순차적이다. range search : 나이가 30살 이상 40살 미만을 찾아라. 범위를 줬을때, search 가 range search이다. range search 할때 clustered index 와 unclustered index의 성능이 많이 차이난다. clustered Index 인덱스를 찾고 튜플들을 읽어가면된다. 그래서 튜플 각각의 포인터를 따라가면 된다. 딱 두페이지만 읽으면 된다. uncl.. 더보기
[데이터베이스] Indexing - (2) *다른 필기* 0607 -p6 recovery - dbms 100만 라인중 20만 라인 할당 되있음 Query Optimization - 어떻게 sql문을 빠르게 실행시킬 것이가 intelligent가 포함 되 있다 ex) select sno, sname, dept from student where sname = 'Kim' 인텍스 따로 안한 경우 student테이블을 table scan하고 select해서 필터후 project table에 index를 해놓았다 - 100만개 3초 걸림 sname을 찾는데 sname이 index가 되있으면 sname으로 scan 인덱스가 되있는 경우 index search -> 바로 project -p7 튜플들을 디스크에 파일 형태로 저장할 때 3가지로 저장함 heap -.. 더보기
[DB] 8-2 ER to RDB - (3) & indexing - intersection table - association table multivalued : 그것을 새로운 weak entity로 뽑아서 id dependent하게 만든다. solid line , id dependent 한거다. 추가적인 속성 section number을 붙여서 section을 만들었다. 이런경우 테이블을 만들게 되면 그대로 옮기고 다만 className을 외래키 속성으로 추가하면된다. 만약 non id-dependent이면, 추가적인 외래키가 더 들어가줘야한다. 오늘은 recursive한 relationship을 볼거다. 객실과 기차에서 객실 하나를 boxcar라고 한다. 내 앞에 있는 것이 어떤것인가 boxcar ahead이다. 1:1관계이다. 1:1이기 때문에, 자기자신으로 가.. 더보기
[데이터베이스] 8-2 ER to RDB - (2) *다른 필기* 0531 -p1 er모델링에 나타난 여러가지 패턴들을 관계형 데이터베이스로 바꾸는 것 -p2 기본키 정하고 데이터타입 정하고, 프로퍼티 정하면 테이블 완성 er다이어그램상에 나타난 각 엔티티가 테이블로 변환한다 변동 상황이 없다면 엔티티 식별자가 기본키가 된다 기본키가 너무 길고 가변적인 경우 대체키를 사용할 수 있다//int추가 삽입 후보키 - 유니크라고 달아줘야 됨 각 칼럼에 대한 데이터 타입을 잘 정해야된다 varchar() - 많이 씀//가변 길이 char() - 길이 고정 integer float,double,decimal datetime -p3 그림자가 er다이어그램의 엔티티 ******** 시험문제에서 그림자를 따로 그릴 필요는 없다 ******** er -> 데이터베이스 갈때.. 더보기
[데이터베이스] ER 다이어그램 - (3) & 8-2 ER to RDB *다른필기* -p63 데이터모델에 쏘스 다큐먼트가 될수 있는 보고서들을 수집했다. 이것을 보고 설계할 것들 추론한다. -p64 ex)경영대 성별,학과장에 따른 학생수,전화번호,과 -p65 컬리지하고 디파트먼트 사이에 관계를 정할 수 있다 비식별 관계라 점선 모든 단과대는 하나 이상의 디파트먼트가 있어야 된다 보고서를 통해서 이것들을 만들 수 있다. 질문 약한개체와 강한개체를 어떻게 구분하냐? 학생개체에 전화번호가 멀티벨류면 약한개체로 만들어야하고 식별관계가 되야겠죠? 약한개체가 멀티벨류에선 명확함. 근데 아까 또다른 예로 디파트먼트를 약한개체로 봤어요 여기선. -65쪽 다만그게 칼리지와 1:n의 관계를 가진다. 반드시 강하거나 약하다는 정답은 없다 디자인 초이스로 가져오면 된다. 여기서 비식별관계의 약한.. 더보기
[DB] 데이터베이스 ER 다이어그램 - (3) m:n에 의한 association 패턴을 디자인한다. mixed pattern 식별관계, 비식별 관계 구분하기 order_line_item & sale_order : 식별관계 order_line_item & item : 비식별관계 order line item이 item이 종속되지 않은 strong item이다. 거래 관점에서 DB를 설계할때는 이러한 뷰가 필요하다. Recursive relationship : 한개체가 자기 자신을 참조하는 경우 본인 엔티티가 자기 엔티티와 relationship을 가지는 것이다. 계층 구조를 표현할때 유용하다. 1) 1:1 Recursive relationship 기차 엔진 한칸이 있고, 일반 객실 한칸이 있다. 엔진부분은 engine이라는 개체로 인식하고, 엔진이 아.. 더보기
[DB] 데이터베이스 ER 다이어그램 - (2) 두 개체간의 맥시멈 카디널리티를 먼저 보자. 1:1인지 1:N인지 M:N인지 보는 것이 중요하다. department 는 해쉬마크와 오벌만 있고, employee쪽에는 크로스핏으로 여러개가 그어져있다. department에서 봤을때 employee가 여러개 있을 수 있다. maximum cardinality는 M:N이다. minimum cardinality는 employee는 department가 있거나 없을 수 있다. 점선은 비식별관계를 맺는 것이다. 한쪽 엔티티를 빌려다가 일부로 사용할때 , 비식별 관계라고 한다. 그것을 점선으로 표현한다. 1:N의 관계를 금방 알수가 있다. 미니멈, 맥시멈 카디널리티, 식별관계를 알 수가 있다. 검진은 반드시 환자가 있어야한다. 다 해석할 수 있어야한다. weak .. 더보기
[DB] 데이터베이스 ER 다이어그램 - (1) *다른 필기* 0517 -p5 커스터머라는 앤티티가 모든 쇼핑몰에 있을 것이다. 안에 있는건 앤티티의 속성들 속성 설명 중.. -p6 애트리뷰트는 같은데 값이 다른거임 er모델에서는 애트리뷰트가 타원으로 표시됬었음 요즘애는 사각형으로 표현 -p7 학번이 앤티티인지 애트리뷰트인지 철학적 문제 정확한 답은 없다 주소정보를 어떻게 이용할 것인지 용도에 따라서 앤티티 vs 애트리뷰트 주의해야할 점 - 애트리뷰트는 다중 값을 가질 수 없다(set-valued = multi-valued) 구조가 중요하다//주소를 여러가지 형태(구조화된 검색)로 써야한다면 -p8 오리지널 er다이어그램 개체하나 그리는데 화면이 꽉 찼다 er모델링에서는 기본키 대신에 식별자라는 말을 많이 쓴다 -p10 Composite identif.. 더보기