목록전체 글 (901)
정미나닷컴
드디어 달팽이 크림의 계절이 돌아왔습니다. 후후- 지난 봄까지 저의 수면템이었던 달팽이 크림과 여름동안 잠시 이별을 했었는데 (사실 더울땐 끈적한 모든 것이 기피 대상이죠!!) 날씨도 서서히 서늘해지고 피부도 점점 건조해질 이 시기가 딱 우리의 재결합 시기인 듯 하여 엘렌실라 달팽이 크림을 야무지게 재구매 해보았습니다. 마침 신세계TV쇼핑에서 타임 쿠폰 이벤트를 진행하고 있어서 (오후2시, 오후8시 선착순임) 이벤트 가기 ▶ http://m.shinsegaetvshopping.com/plan/planMain?viewType 판매가 79,000원인 상품을 타임 쿠폰+적립금+SSG카드 결제 쿠폰까지 더해서 5만원대에 구입하게 되었어요. (SSG카드 발급 시 스벅, 위드미, 신세계TV쇼핑에서 사용 가능한 20..
9월에 20% 청구할인 해주던게 끝나버려 서운했었는데 드뎌 10월 청구할인도 시작되네요~ 야호! 쓱닷컴 매주 수,목,금 20% 청구할인 이제 7만원씩 야무지게 또 채워봐야겠어요~ㅋ 오프라인에서도 이마트 주말 10% 청구할인 ☑ SSG 카드 혜택 보러 가기
IOT (Index-Organized Table)- Table Random Access가 발생하지 않도록 처음부터 인덱스 구조로 생성된 테이블- Index leaf block = data block (모든 행 데이터를 리프 블록에 저장)- 정렬상태를 유지하며 데이터를 삽입(PK 컬럼 순)CREATE TABLE INDEX_ORG_T ( A NUMBER PRIMARY KEY, B VARCHAR(10) )ORGANIZATION INDEX; -- 일반적으로 사용되는 테이블은 '힙 구조 테이블'로 ORGANIZATION HEAP; 이 생략되어 있는 것 장점- 클러스터링 팩터가 좋음- Random이 아닌 Sequential Access 방식이므로 넓은 범위 access 시 유리- PK 인덱스를 위한 별도의 세그먼트..
기본 메커니즘 - 둘 중 작은 집합(Build Input)을 읽어 Hash Area에 해시 테이블을 생성하고, 반대쪽 큰 집합(Probe Input)을 읽어 해시 테이블을 탐색하면서 JOIN하는 방식 - 해시 테이블을 생성할 때나 탐색할 때 모두 해시 함수 사용- JOIN 과정에서 발생하는 Random 액세스 부하가 없음 (각각의 집합을 읽는 과정에서는 Random 액세스 발생 가능)- 해시 테이블을 생성하는 비용이 수반되므로 Build Input이 충분히 작아야 효율적* Hash Area는 PGA 메모리에 할당되는데 Build Input이 hash_area_size를 초과하게 되면 디스크 I/O가 추가로 발생하게되므로 성능이 많이 저하됨 declare l_bucket number;beginfor out..
오랜만에 서울 도심 나들이 광화문 라그릴리아 간만에 아재 음식 탈출ㅋ 오렌지 에이드 굿굿!! 서양 음식 배불리 먹고 청계천을 건너 명동으로 ㄱㄱ 스파오에서 '핀과 제이크의 어드벤처 타임' 콜라보 한다길래 구경갔는데 정작 쟤네가 그려진 티셔츠는 없더라는..(알고보니 23일부터 시작;) 내 사랑 구찌 디오니소스와 기념 촬영 라인 프렌즈 샵 명동 뉴에라 매장 1층에서 악세사리 전품목 50% 세일 중 맘에 드는 선그라스를 발견했지만 써보기만 하고 사진 않았음 그뤠잇!! 자라에서 안두리씨가 골라준 그린 레이스 원피스 득템 상품명은 플리츠 스커트 기퓌르 원피스 음.. 근데 내가 입었을 땐 이런 느낌이 아니었..;; 어쨌든 이뿌다! ㅋㅋㅋ 오랜만에 간 명동은 여전히 활기찼지만 확실히 중국인들이 안보이긴 하더라. 전쟁..
기본 메커니즘 - Sort (양쪽 집합을 JOIN 컬럼 기준으로 정렬) → Merge (정렬된 양쪽 집합을 서로 Merge) SELECT /* ordered use_merge(d) */ E.EMP_NO, E.ENAME, D.DNAME FROM EMP E, DEPT D WHERE D.DEPT_NO = E.DEPT_NO; ▼begin for outer in (SELECT DEPT_NO, EMP_NO, RPAD(ENAME, 10) ENAME FROM SORTED_EMP) loop -- outer loop for inner in (SELECT DNAME FROM SORTED_DEPT WHERE DEPT_NO = outer.DEPT_NO) loop -- inner loop dbms_output.put_line(o..
기본 메커니즘 for(i=0; i= 1500 --- ④ORDER BY SAL DESC; Answer :: ② -> ③ -> ① -> ④ * pk_dept : dept.dept_no* dept_loc_idx : dept.loc* pk_emp : emp.emp_no* emp_deptno_idx : emp.dept_no* emp_sal_idx : emp.sal Execution Plan ------------------------------------------------------------------------------0 SELECT STATEMENT1 0 SORT ORDER BY2 1 NESTED LOOPS3 2 TABLE ACCESS BY INDEX ROWID DEPT4 3 IND..
Index Range Scan - B*Tree 인덱스의 가장 일반적이고 정상적인 형태의 액세스 방식(수직적 탐색 후 필요한 범위만 수평적 탐색) - 항상 빠른 속도를 보장하진 않음 - 인덱스 스캔 범위를 얼만큼 줄일 수 있느냐, 테이블 액세스 횟수를 얼만큼 줄일 수 있느냐가 관건 => 인덱스 설계와 SQL 튜닝의 핵심 원리 - 인덱스를 구성하는 선두 컬럼이 조건절에 사용되어야 함 Index Full Scan - 수직적 탐색없이 인덱스 리프 블록을 처음부터 끝까지 수평적으로 탐색하는 방식 - 최적의 인덱스가 없을 때 차선책(인덱스 선두 컬럼이 조건절에 없을 경우) - 최종 결과값이 적을때 Table Full Scan보다 Index Full Scan이 훨씬 효율적 Index Unique Scan - 수직적 ..