본문 바로가기

Database

[DBMS] 선택도와 밀도의 차이점 안녕하세요 마푸입니다. DB를 처음 공부하다보면 여러가지 단어들이 눈에 들어오는데요 그중에서 자주 언급되는 단어인 선택도 와 밀도에 대해서 알아보겠습니다. 선택도(Selectivity)는 cardinality와 밀접하게 연관이 있습니다. (* 자세한건 카디넬리티편에서 알아보도록 할께요) 밀도는 Density를 뜻합니다. ---- 선택도와 밀도-- 1. 선택도 select 전화번호 from 학급 where 이름 = '홍길동' --> 선택도가 높다select 전화번호 from 학급 where 이름 between '홍길동' and '임꺽정' --> 선택도가 낮다 데이터를 조회 할때 선택도란 테이블의 전체 행 중에 조회되는 행의 비율을 말하는 것으로 조회되는 행의 비율이 적으면 적을수록 선택도가 높고,조회 되는.. 더보기
[쿼리튜닝] 쿼리의 실행 횟수를 줄이자 안녕하세요 마푸입니다. 너무 게임만 올려서 디비 쪽 정리한거 좀 풀어보려합니다. 첫번째 이슈는 stored procedure(DB SP)를 작성할때 팁입니다. 대부분의 절차적 프로그램에서는 보통 쿼리를 실행하고 결과에 따라서 확인한다음에 업데이트를 하게 됩니다. 허나 디비에서는 그런식으로 처리하게되면 쿼리가 두번 날아가게 되는것이지요 만약, 정말 100% 확실한 데이터로 업데이터가 진행되는 거라고 가정을 한다면 먼저 업데이터를 하고 업데이트의 결과유무를 체크한다음 업데이트가 안되었다면 입력하는 식으로 만들 수 있는 것이지요 자세한 내용은 아래를 참고합시다 ^^ [정리]1. Type AIF(SELECT * FROM ~~) update ~~ELSE INSERT ~~ --> 테이블을 무조껀 두번 읽는다 Upd.. 더보기
[MySQL] 복제 (Replication)에 대해서 안녕하세요 마푸입니다. 바로 이전 포스트에서 Binary Log(Binlog)를 봤었는데요 이 binlog의 목적 중 하나인 고가용성(High Availability)을 사용할 수 있게 해주는 것입니다. 물런 최신 빌드의 MySQL 버전에서는 아래의 세팅법이 아닌 DATBASE의 식별키값으로 대처하는 방식등으로 변경되는데(정확한 기술이름은 모르겠네요 ㅋㅋ;) 어쨋든 binlog는 필요합니다. +_+v 개인적 의견으로는 Mysql의 복제는 상당히 쉽습니다. 또, 매우 강력하지요.... 그래서 Mysql을 쓰는 거의 모든 회사에서는 복제를 사용한다고 봐도 무방합니다. 즉, DBA를 업으로 사실려면 Mysql의 복제는 알아두셔야합니다. 글쓰면서 생각해봤는데 회사에서 사용하는 업무관리툴(레드마인)이 있는데 이건.. 더보기
[MySQL] Binary Log 안녕하세요 마푸입니다. 음.. 포트스트를 열심히 옮기고 있는데 네이버에서 RSS 등록을 안해주네요 ㅠ.ㅠ 그래도 굴하지 않고 열심히 옮겨보겠습니다. 아마도 이번 포스트는 MySQL을 처음 담당했을때 이것저것 조사해보고 다닐때 쯤 자료 같네요 MySQL은 데이터를 조작하는 모든 DML(data manipulation language)을 저장 할 수 있습니다. 음.. 어렵네요 먼가 줄임말이 나왔습니다. ㅋ;; 사실 전 한국말 줄이는걸 싫어하는데 영어도 그딴게 엄청 많지요 ;;;하지만 DML은 전혀 어렵지 않습니다. 쉽게 생각하면 데이터를 조작 할 수 있는 모든 QUERY Type이라고 생각하시면 됩니다. 조회, 수정, 삭제 등이 되겠네요 ^^; DML, DDL, DCL 이라고 구분되어 있지만, 사실 업무에서.. 더보기
[MySQL] Tirgger를 사용해 보자 마푸입니다. 네이버의 블로그에서 활동할때 쯤 작성한 글을 옮기기 위해서 작성해봅니다. ㅋ 무려 2010년 1월 22일날 작성한 글이네요 ㅋ;(헐.. 7년이나 지났는데 왜 난 아직 그대로지... 역시 배움엔 끝이 없나봐요 ㅋ;;) 부끄럽지만 복습할 겸해서 작성합니다. 안녕하세요 박성원입입니다. Mysql에서 최근에 도입된 기능 중 (최근이아니죠 ;; 최신버전입니다. ㅋ) Trigger에 대해서는 사실 저는 잘 모릅니다. 대게 실무에서 다루는 mysql의 버전이 낮기 때문에 적용을 못하기 때문이죠 ^^;; 그래서 부족한 부분을 좀 매워볼까해서 이번에 trigger에 대해 정리 해보았습니다. 꽤 많은 시간을 들여서 정리해봤는데요 ;;; 막상 쓰고나니 얼마 안되는군요 내용도 많이 부족한거 같아서 부끄럽습니다. .. 더보기
[MSSQL] Try Catch의 고찰 아주 예전에 그라비티에서 근무했을 때당시 승연형님이 팀 블로그를 운영하자고 제안하셔서 이것저것 만들었던 적이 있습니다. 지금 생각해보면 손발이 오그라들지만... 이제 다시 블로그 활동을 하니 이쪽으로 옮겨 적습니다. ( Gravity Team Blog : http://gdbt.tistory.com/ ) 그러나...당시에 작성했던 계정이 먼지 모르겟네요 ㅠ.ㅠ 그냥 옮겨오면 될것을 다시 작성해야되는 불상사가... 그럼 아래는 당시 작성한 "Try Catch"의 내용입니다. 사실 이번 포스팅은 두근두근하네요 ^^; MSSQL의 파트에 첫글입니다. (사실은 쥐뿔도 모르지만서도..^^) 이리저래 하다가 Try-Catch문을 하게되었는데 보니.. 인터넷을 찾아서 여러가지 예문을 보다보니 "머야~ 예외처리잖아!!".. 더보기

반응형