일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바
- Collection
- 이스티오
- 스프링
- thread
- list
- jvm
- 자바 ORM 표준 JPA 프로그래밍
- Java
- Kotlin
- JPA
- 스트림
- gradle
- 토비의 스프링 정리
- 쿠버네티스
- IntellJ
- OS
- Stack
- 보조스트림
- spring
- K8s
- 토비의 스프링
- GC
- MSA
- Stream
- 백준
- mysql
- redis
- Real MySQL
- SpringBoot
- Today
- Total
목록Real MySQL (3)
인생을 코딩하다.
5장, 인덱스5.1 디스크 읽기 방식5.1.1 저장 매체서버에 사용되는 데이터를 저장할 수 있는 매체는 크게 3가지로 나뉜다.내장 디스크(Internal Disk)DAS(Direct Attached Storage)NAS(Network Attached Storage)SAN(Storage Area Nework)5.2 인덱스란?DBMS에서 인덱스는 데이터의 저장(INSERT, UPDATE, DELETE) 성능을 희생하고 그 대신 데이터의 읽기 속도를 높이는 기능이다. 인덱스를 역할로 구분해본다면 PK와 보조 키로 구분할 수 있다.PK : 레코드를 대표하는 칼럼의 값으로 만들어진 인덱스보조키 : PK를 제외한 나머지 모든 인덱스PK를 제외한 나머지 모든인덱스는 보조 인덱스라고 분류한다, 유니크 인덱스는 PK와 ..
트랜잭션과 잠금트랜잭션MySQL에서의 트랜잭션트랜잭션은 작업의 완전성을 보장해주는 것이다. 즉 논리적인 작업 셋을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우에는 원 상태로 복구해서 작업의 일부만 적용 되는 현상이 발생하지 않게 만들어주는 기능이다. 트랜잭션은 꼭 여러 개의 변경 작업을 수행하는 쿼리가 조합됐을 떄만 의미있는 개념은 아니다. 트랜잭션은 하나의 논리적인 작업 셋에 하나의 쿼리가 있든 두 개 이상의 쿼리가 있든 관계없이 논리적인 작업 셋 자체가 100% 적용되거나(COMMIT을 실행했을 때) 또는 아무것도 적용되지 않아야(ROLLBACK 또는 트랜잭션을 ROLLBACK 시키는 오류가 발생했을 때)함을 보장해 주는 것이다.주의사항일반적으로 데이터베이스 커넥션은 개수가 제한적이라서 각 단위..
MySQL 아키텍처 MySQL의 전체 구조 MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진으로 구분해서 볼 수 있다. MySQL 엔진 클라이언트로부터 접속 및 쿼리 요청을 처리하는 커넥션 핸들러와 SQL파서 및 전처리기, 쿼리의 최적화된 실행을 위한 옵티마이저가 중심을 이룬다. 요청된 SQL 문장을 분석하거나 최적화하는 등 DBMS 두뇌에 해당하는 처리를 수행한다. 스토리지 엔진 실제 데이터를 디스크 스토리지에 저장하거나 디스크 스토리지로부터 데이터를 읽어오는 부분은 스토리지 엔진이 전담한다. MYSQL 서버에서 MySQL 엔진은 하나지만 스토리지 엔진은 여러개를 동시에 사용할 수 있다. 다음 예제와 같이 테이블이 사용할 스토리지 엔진을 지정하면 이후 테이블의 모든 읽기 작업이나 변경 작업은 정의..