전체글690 패스트캠퍼스 SQL튜닝캠프 4일차 - 조인의 기본 원리와 활용 조인 알고리즘오라클은 아래의 3개 조인 알고리즘을 모두 지원하지만 MySQL에서는 NestedLoop조인만 지원합니다.1. Nested Loop 조인이름 그대로 중첩반복을 사용하는 조인 알고리즘입니다.(출처: SQL 레벨업)위 그림을 참고하여 Nested Loop 조인의 실행순서는 아래와 같습니다.Table A에서 row를 하나씩 반복해가며 스캔합니다. 이 테이블을 Driving Table 혹은 Outer Table이라 합니다. 반대로 Table B (반대편)는 Inner Table이라 합니다.Driving Table의 row 하나마다 내부 테이블의 레코드를 하나씩 스캔해서 Join 조건에 맞으면 리턴합니다.1~2를 Driving Table의 모든 row에 반복합니다.Nested Loop의 실행시간은 다.. 2017. 8. 25. 패스트캠퍼스 SQL튜닝캠프 3일차 - 인덱스 스캔 효율 8. (4) Index Skip Scan을 이용한 비효율 해소Index Skip Scan을 통해 인덱스를 좀 더 효율적으로 사용하는 경우와 방법을 진행해보겠습니다.고객번호, 판매월, 판매구분, 판매금액으로 이루어진 월별고객판매집계 테이블이 있다고 가정합니다. 이때 판매구분 + 판매월을 기준으로 조회해야 할때 어떻게 개선할 수 있을지 확인해보겠습니다.케이스1. 인덱스: 판매구분 + 판매월인덱스를 판매구분 + 판매월로 잡아 수행해보겠습니다.인덱스 : 판매구분 + 판매월 select count(*) from 월별고객판매집계 t where 판매구분 = 'A' and 판매월 between 200801 and 200812실행계획을 수행해보면 ConsistencyRead(LogicalRead)는 281이 나옵니다.... 2017. 8. 23. Spring OAuth + Spring Session시 HTTP URL must not be null 발생 원인 및 해결 안녕하세요? 이번 시간엔 Spring OAuth + Spring Session시 HTTP URL must not be null 발생의 원인 및 해결방안을 소개드리려 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 문제 상황Spring Session과 Spring OAuth2를 조합해서 로그인 시스템을 구축한다고 가정해보겠습니다.Spring OAuth2 적용가장 먼저 Spring OAuth2를 프로젝트에 적용시켜보겠습니다.build.gradlebuildscript { ext { springBootVersion = '1.5.6.REL.. 2017. 8. 19. Spring Security & 구글 OAuth & 테스트코드로 진행하는 계정 권한 관리 - 2 1-4. 로그인 세션 관리 OAuth2를 사용한다고해서 기존과 다른 마법같은 일이 펼쳐지는것은 아닙니다. OAuth2는 사용자 인증 및 허가된 정보를 가져오는 것외에는 사용하지 않습니다. 인증된 정보를 통해 로그인 세션을 관리하고, 사용자는 저희가 만든 서비스의 세션을 통해 서비스를 이용해야만 합니다.세션을 사용하는 방법은 크게 3가지가 있습니다.톰캣 세션을 사용한다.일반적으로 별다른 설정을 하지 않으시고 HttpSession을 사용할 경우입니다.이렇게 될 경우 톰캣(WAS)에 세션이 저장되기 때문에 2대이상의 WAS가 구동되는 환경에서는 톰캣들간의 세션 공유를 위한 추가설정이 필요합니다.Database를 세션저장소로 사용한다.여러 WAS들간의 공용 세션을 사용할 수 있는 가장 쉬운 방법입니다.많은 설정.. 2017. 8. 14. 맥북에서 오라클 사용하기 (docker + intelliJ) 보통 데이터베이스 관련 스터디나 학원의 경우 대부분이 오라클 데이터베이스를 기준으로 합니다. 하지만 저처럼 맥북을 사용하시는 분들은 오라클을 사용할 수 없어 VM머신등을 사용하는등 어려움이 많습니다. (저같은 경우 패스트캠퍼스 SQL 튜닝 캠프에서 오라클 데이터베이스를 기준으로 하여 어쩔수없이 오라클을 사용하게 되었습니다 ㅠㅠ) 그럼 이제 진행하겠습니다.0. 도커 설치도커를 기본적으로 알고 계시면 전혀 문제 될게 없지만, 모르신다 하여도 요즘은 도커 설치가 OS별로 아주 쉽게 되어있어 금방 하실수 있습니다. Docker 사이트에 접속하여 Docker For Mac 설치파일을 받아 설치하시면 됩니다. 1. 도커 컨테이너 생성 및 실행 설치가 끝나시면 터미널을 열어 컨테이너를 받아야합니다. 오라클 11g 이.. 2017. 8. 6. Spring Security & 구글 OAuth & 테스트코드로 진행하는 계정 권한 관리 - 1 안녕하세요? 이번 시간엔 Spring Security & 구글 OAuth로 진행하는 계정 권한 관리 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 1. 구글 로그인최근 많은 회사에서 사내 백오피스 시스템의 로그인을 구글 OAuth로 진행하고 있습니다. 구글 메일을 사내 메일로 사용하면 많은 백 오피스의 로그인 시스템을 구글 계정 하나로 관리할 수 있기 때문입니다. 하지만, 백 오피스가 각각 용도에 따라 구별되어있으면 괜찮지만, 보통은 하나의 백오피스를 여러 팀에서 사용할때가 많습니다. 그럴 경우 각각의 팀마다.. 2017. 8. 5. 이전 1 ··· 95 96 97 98 99 100 101 ··· 115 다음