이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다.InnoDB 의 기본 잠금 방식SELECTREPEATABLE-READ 이하의 트랜잭션 격리 수준에서 InnoDB 테이블에 대한 SELECT 쿼리는 기본적으로 아무런 잠금을 사용하지 않는다.(http://idea-sketch.tistory.com/45) REPEATABLE-READ보다 더 높은 격리 수준인 SERIALIZABLE 격리 수준에서는 모든 SELECT 쿼리에 ..
이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다. 넥스트 키 락(갭 락)에 대해서 조금더 알아보자. 이전 포스팅(http://idea-sketch.tistory.com/45)을 준비하면서 잘 이해가 안갔던 부분이 넥스트 키 락(특히 갭 락)인데 다른 포스팅들을 봐도 다들 똑같은 글만 있을뿐 자세한 설명에 대해서 찾기가 어려웠다... 그래서 직접 테스트를 해보면서 어떻게 넥스트 키 락(갭 락)이 동작하는지에 대해 조금..
이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다.트랜잭션트랜잭션은 논리적인 작업셋을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우에는 원 상태로 복구해서 작업의 일부만 적용되는 현상(Partial update)이 발생하지 않게 만들어서 작업의 완전성을 보장해주기 위한 기능이다. 잠금(Lock) 과 트랜잭션은 서로 비슷한 개념 같지만 사실 잠금은 동시성(https://ko.wikipedia.org/wiki/ACID..
이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다.해시 인덱스해시 인덱스는 동등 비교 검색에는 최적화돼 있지만 범위를 검색한다거나 정렬된 결과를 가져오는 목적으로는 사용 할 수 없다. 해시 인덱스는 주로 메모리 기반의 테이블에서 사용되고 InnoDB 스토리지 엔진에서는 해시 인덱스를 지원하지 않지만 기본적인 특성은 알아보자. 구조 및 특성해시 인덱스의 장점으로는 실제 키값과는 관계없이 인덱스 크기가 작고 검색이 빠르고..
이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다. 인덱스 인덱스는 데이터의 저장(INSERT, UPDATE, DELETE) 의 성능을 희생하고 그 대신에 데이터의 읽기 속도를 높이는 기능이다. 인덱스를 알고리즘 별로 구분하면 아래와 같다. B-Tree 알고리즘가장 일반적으로 사용되는 알고리즘으로 컬럼을 변형하지 않고, 원래의 값을 이용해 인덱싱하는 알고리즘이다. Hash 알고리즘컬럼의 값으로 해시 값을 계산해서 인덱..
오랜만에 DB 포스팅이다. 이번 포스팅은 사내에서 MySQL 관련 내용 발표를 위해 Real MySQL(http://wikibook.co.kr/real-mysql/) 서적을 기반으로 학습하고 이해한 내용을 정리하는 포스팅이다. 포스팅에서는 주로 InnoDB 스토리지 엔진을 기준으로 설명할 예정이다. MySQL 역시 내용이 많기 때문에 시리즈로 나눠서 정리할 예정이다. MySQL 의 전체 구조MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진으로 구분해서 볼 수 있다. MySQL 엔진MySQL 엔진은 클라이언트로부터 접속 및 쿼리 요청을 처리하는 커넥션 핸들러와 SQL 파서 및 전처리기 그리고 쿼리의 최적화를 위한 옵티마이저가 중심을 이루며 DBMS의 두뇌에 해당하는 처리를 수행한다. 스토리지 엔진스토..
- Total
- Today
- Yesterday
- Pair-programming
- innoDB lock
- MySQL 족보
- gap lock
- mysql lock
- 페어프로그래밍
- MySQL
- 루비
- 되추적
- db
- lock
- metaprogramming
- MySQL 인덱스
- autoload_paths
- 루비 메타프로그래밍
- Autoloading
- 엘라스틱서치 기초
- ruby meta programming
- next key lock
- 넥스트 키 락
- ruby
- 루비 상수
- 트랜잭션
- 갭 락
- 페어 프로그래밍
- Elasticsearch Cluster
- 메타프로그래밍
- InnoDB
- dead lock
- 인덱스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |