본문 바로가기

Tech/Database32

SQL 파싱과 최적화 친절한 SQL 튜닝 Study - 조시형 저(DBian) SQL을 실행 전, 아래와 같은 최적화 과정을 수행한다.1) SQL 파싱SQL Parser가 파싱을 진행하는 단계로, SQL문을 이루는 개별 구성요소를 분석해서 파싱 트리를 생성하고, 문법적 오류가 없는지 확인한다. 그 다음 의미상 오류가 없는지 확인한다.2) SQL 최적화옵티마이저가 활약하는 단계다. 미리 수집한 통계정보를 바탕으로 다양한 실행경로를 생성 및 비교한 후 가장 효율적인 경로를 선택한다.3) 로우 소스 생성옵티마이저가 선택한 실행경로를 실행 가능한 코드 형태로 포맷팅 하는 단계로, 로우 소스 생성기가 그 역할을 맡는다. 옵티마이저의 최적화 단계1) 사용자로부터 전달 받은 쿼리를 실제로 실행할 실행계획들을 찾아낸다.2) Data Dic.. 2018. 7. 21.
PostgreSQL - 주식 월평균 전년대비 쿼리 앞서, 유니슨 주식의 일별 가격을 토대로 이평선을 구현한 쿼리를 구현해봤다.(http://augustines.tistory.com/78)주식의 월봉을 전년도와 비교해보는 쿼리를 만들어보자. 생각해보니, 월봉은 아니다. 봉이라는 개념이 월 시초가와 월 시종가로 이루어지니... 어쨌든 월평균의 이동을 전년도와 비교해보는 것도 의미는 있을듯 하다. 일단 데이터는 아래와 같은 데이터가 있다. 이전 이평선을 구할 때 사용했던 stock_price 테이블에 2015년도 데이터만 가공해서 추가하였다. INSERT INTO stock_price VALUES ('2015-01-01', 'unison', 3200) , ('2015-01-02', 'unison', 3310) , ('2015-01-03', 'unison', .. 2018. 7. 19.
SQL Server 비대칭 키 암호화 SQL Server에서 비대칭 키를 이용한 암호화를 지원한다. 비대칭 키의 핵심은 개인키와 공개키로 구성된다는 것이다. 비대칭 키의 대한 내용은 구글링해서 찾아보자. 쉽게 설명된 자료가 아주 많다.SQL Server에서 비대칭 키를 이용하는데 사용하는 구문은 아래와 같다.항목설명CREATE ASYMMETRIC KEY (Transact-SQL)비대칭 키를 만들기 위한 명령에 대해 설명합니다.SIGNBYASYMKEY(Transact-SQL)개체를 서명하는 옵션을 표시합니다. 먼저 AdventureWorks2012(AdventureWorks2012설치) Database를 선택한 다음, 아래와 같이 테스트 테이블을 만든다.Use AdventureWorks2012 go if OBJECT_ID('dbo.EmpTes.. 2018. 7. 15.
SQL Server 권한 부여 SQL Server 사용시, 보통 GUI를 통해서 권한을 부여한다. GUI를 통해서 하면 Grant 옵션 따위 몰라도 상관 없다. 너무 편하다. 그러나, 간혹 해외 출장시 SQL Server가 영문으로 되어 있으면... 아마도 GUI가 익숙한 DB인에게는 매우 당황스러울 것이다. 이 때는 오히려 Command 에서 처리하는 것보다 GUI로 처리하는 것이 더욱 더 답답할 수가 있다. 뿐만 아니라, 다수의 계정에게 동일한 계정을 부여할 때, GUI 방식은 한계가 뚜렷하다. 따라서, DB를 다루는 사람이라면 GUI보다 Command 방식을 사용해야 한다. ★ 사용자 계정에게 특정 권한 부여하기계정에게 특정 권한을 부여하는 GRANT 문장이다. 권한 부여 대상인 데이터베이스에 오른쪽 마우스 클릭 후, 속성 ->.. 2018. 7. 14.
반응형