2021/09/10 9

구글(Google)의 PageRank 알고리즘

▣ 구글(Google)의 PageRank 알고리즘 구글의 페이지 순위 알고리즘은 기본적으로 얼마나 많은 참조(hyper link)가 있는가를 기준으로 순위를 결정함 서로 링크가 걸려있는 A, B, C 라는 3개의 페이지가 있을 경우, 특정페이지 A의 순위(Rank)는 다음과 같이 계산함 A의 Rank = (B의 Rank / B가 가진 Link수) + (C의 Rank / C가 가진 Link수) + … 즉, 특정 페이지의 Rank 를 해당 페이지에 존재하는 참조(Link)수로 나눈 것을 모두 합하면 페이지 A의 순위(Rank)가 결정된다. * 이 문제는 위의 내용은 참고만 하고 박스안의 공식만 집중해서 이해하고 풀어야함 - 핵심은 총 링크 개수, 해당 페이지 참조 개수로 전이 행렬을 구해야함 예) 페이지 1..

데이터베이스 2021.09.10

분산 데이터베이스_분할(fragmentation) 수직, 수평, 혼합, 분산데이터 베이스 크기, 세미조인, 단편화

▣ 분산 데이터베이스_분할(fragmentation) 수직, 수평, 혼합, 분산데이터 베이스 크기, 세미조인, 단편화 분산 데이터베이스 시스템에서는 성능, 가용성, 신뢰성의 이유로 일반적으로 하나의 릴레이션을 보다 작은 단편(fragment)으로 나누어 관리함 ■ 데이터 분할 또는 단편화(fragmentation) 종류 종류 설명 비고 수평적 단편화 (horizontal fragmentation) 전역 릴레이션에 대한 실렉션(selection)연산으로 정의 UNION연산으로 전역 릴레이션 재건 가능 동적 단편화 수직적 단편화 (vertical fragmentation) 전역 릴레이션에 대한 프로젝션(projection)연산으로 정의 조인(자연조인)연산으로 전역 릴레이션 재건 가능 정적 단편화 혼합 단편화..

데이터베이스 2021.09.10

의사결정 트리(decision tree), 정보 이득 (information gain), 엔트로피 (entropy)

▣ 의사결정 트리(decision tree), 정보 이득 (information gain), 엔트로피 (entropy) 2017년 71번 엔트로피(entropy)는 정보의 불확실함의 정도를 나타내는 양(정보에 대한 기대 값)을 의미함 정보 이득(information gain)은 데이터를 분할하기 전과 후의 변화를 의미함 즉, 정보의 불확실성이 얼마나 해소되었는지를 측정하는 것임 상위노드 P 의 엔트로피 E(P) = 0.7 하위노드 C1 의 엔트로피 E(C1) = 0.5 하위노드 C2 의 엔트로피 E(C2) 0.6 정보 이득 (information = 0.7 - ( 12/20 * 0.5 + 8/20*0.6 ) = 0.7 - ( 0.3 + 0.24 ) = 0.16

데이터베이스 2021.09.10

권한 부여(GRANT, REVOKE, WITH GRANT OPTION)

▣ 권한 부여(WITH GRANT OPTION) GRANT 권한 ON 데이터 객체 TO 사용자 [WITH GRANT OPTION]; REVOKE 권한 [GRANT OPTION FOR] ON 데이터 객체 FROM 사용자 [CASCADE , RESTRICT] ; ※ 권한 : {SELECT | INSERT | UPDATE | DELETE | ALL} 2017년 69번 정답 : 2번, 3번 3) U2: GRANT INSERT ON EMPLOYEE TO U4; U2 는 U1으로부터 WITH GRANT OPTION 을 받지 못했으므로 권한 부여는 불가능함 5) U5: GRANT SELECT ON EMPLOYEE TO U6; U5 는 U3 으로부터 WITH GRANT OPTION 을 받지 못했으므로 권한 부여는 불가..

데이터베이스 2021.09.10

조인 선택률(Join selectivity), 조인 선택도, 조인 카디널리티(cardinality)

▣ 조인 선택률(Join selectivity), 조인 선택도, 조인 카디널리티(cardinality) 선택도 → 카디널리티 → 비용 → 액세스 방식, 조인 순서, 조인 방법 등 결정 히스토그램이 있는 경우 히스토그램이 없거나, 있더라도 조건절에서 바인드 변수를 사용할 경우 히스토그램으로 선택도 산정 단일 컬럼에 대해서는 정확도도 비교적 높음 옵티마이저는 데이터 분포가 균일하다고 가정한 상태에서 선택도 구함 - 조인 선택도(selectivity) 전체 레코드 중에서 특정 조건에 의해 선택될 것으로 예상되는 레코드 비율 조인 선택도 = 조인 조건에 만족하는 튜플수 / 전체 튜플 수 (비동등 조건인 경우) = 1 / Distinct Value 개수 (동등 조건인 경우) = [(num_rows(R) - num..

데이터베이스 2021.09.10

트랜잭션_교착상태(deadlock), 상호배제 (mutual exclusion), 점유 대기 (hold and wait), 비선점 (non preemption), 순환대기 (circular wait)

▣ 트랜잭션_교착상태(deadlock), 상호배제 (mutual exclusion), 점유 대기 (hold and wait), 비선점 (non preemption), 순환대기 (circular wait) 교착상태 발생 조건 상호배제 (mutual exclusion), 점유 대기 (hold and wait), 비선점 (non preemption), 순환대기 (circular wait) 2017년 64번 시간 1 시점에 T1 에서 x 에 대해 락 Lock) 을 걸고, 시간 7 시점에서 y 에 대해 락을 걸려고 시도하고 있으나 이미 시간 2 시점에 T2 에서 y 에 락을 걸어둔 상태임 마찬가지로 T2 도 시간 8 시점에 x 에 대해 락을 걸려고 시도하고 있으나 이미 T1 이 락을 걸어둔 상태 특정 자원에 대해..

데이터베이스 2021.09.10

함수 기반 인덱스(Function-based indexing) 오라클

▣ 함수 기반 인덱스(Function-based indexing) 오라클 ● 함수 기반 인덱스의 장점 - 계산 값에 대한 인덱스 스캔 가능 - 인덱스 컬럼이 Where 절에서 가공 또는 변경돼도 인덱스 이용 가능 함수 기반 인덱스를 이용하면 계산 값을 도출하는 SQL도 인덱스를 이용할 수 있음 SQL의 계산 값이 중요한 업무라면 함수 기반 인덱스를 통해 성능을 향상시킬 수 있음 ● 함수 기반 인덱스의 단점 - DML시 부하 발생 - 인덱스의 유연성 저하 함수 기반 인덱스는 Where 조건에 해당하는 연산자를 그대로 사용할 경우에만 가능하므로 다른 일반 엑세스 유형을 수용하기에 적합하지 않아 유연성이 많이 떨어짐 CREATE [UNIQUE] INDEX 인덱스 명 ON 테이블 명(컬럼 명, 컬럼 명 | 함수..

데이터베이스 2021.09.10

오라클 SQL_ ANY, SOME, ALL, NOT EXISTS, NOT IN 연산, 부양가족, 사원, 평균 봉급,

▣ 오라클 SQL_ ANY, SOME, ALL, NOT EXISTS, NOT IN 연산 ANY(SOME), ALL은 주로 서브쿼리와 함께 사용하는 다중 행 연산자 ANY는 조건을 만족하는 값이 하나라도 있으면 결과를 리턴하고, ALL은 모든 값이 조건을 만족해야 결과를 리턴 SOME은 ANY와 이름만 다를뿐 동일한 기능의 연산자 GROUP BY 절이 사용되었으므로 ㉠에는 WHERE절이 아닌 HAVING 절을 사용하여 조건을 명시 평균 봉급을 비교하므로 AVG( ) 함수를 이용 “가장 높은 부서명(DeptName)”을 검색하므로 서브쿼리 모든 평균값보다 큰 값을 찾아야 하므로 some(혹은 ANY)가 아닌 all 을 ㉡ 에 위치해야 함 서브쿼리도 부서별 평균 봉급을 조회해야 하므로 GROUP BY Dept..

데이터베이스 2021.09.10