전체 글

꾸준하게 열심히..
📚 Databases/RealMySQL 8.0

5.3 InnoDB 스토리지 엔진 잠금

5.3 InnoDB 스토리지 엔진 잠금 InnoDB 스토리지 엔진은 MySQL과 별개로 잠금을 제공한다. 💡 스토리지 엔진 내부에서 레코드 기반의 잠금 방식을 탑재하고 있다. 5.3.1 InnoDB 스토리지 엔진의 잠금 InnoDB 스토리지 엔진은 레코드 기반의 잠금 을 제공하며, 잠금 정보가 상당히 작은 공간으로 관리되기 때문에 *락 에스컬레이션(레코드 락이 페이지 락으로, 또는 테이블 락으로 레벨업되는 경우)되는 경우는 없다. 또한 InnoDB에서는 특징인 레코드와 레코드 사이의 간격을 잠그는 갭(GAP) 락이라는 것이 존재한다. 점선으로 표시된 것은 존재하지 않는 레코드를 뜻한다. 5.3.1.1 레코드 락 레코드 자체만을 잠그는 것을 *레코드 락이라고 한다. 레코드 ? 레코드란 테이블의 한 데이터의..

💬 ETC..

Forward Proxy와 Reverse Proxy의 개념과 차이점

Forward Proxy와 Reverse Proxy의 개념과 차이점 Forward Proxy와 Reverse Proxy라는 단어를 많이 들어봤는데 개념을 정확히 이해하고 둘의 차이점을 알아보도록 하겠습니다. Proxy란? 먼저 둘을 알기 위해서는 Proxy라는 개념을 이해해야 합니다. 프록시란 그 뜻을 해석하면 대리 라는 뜻입니다. 서버와 서버 사이에서 중계기 역할을 합니다. 클라이언트와 서버 사이에 프록시 서버를 두게 되면 얻는 이점들이 많습니다. 보안상으로 얻을 수 있는 이점도 있고, 중복된 데이터들을 캐싱하여 서버까지 가지 않고 캐싱된 데이터를 빠르게 응답받을 수 있는 이점이 있습니다. 결론적으로 프록시 서버를 사용하는 이유는 다음과 같습니다. 클라이언트에게는 빠른 처리 속도 서버에게는 불필요한 부..

📚 Databases/RealMySQL 8.0

5.2 MySQL 엔진의 잠금

잠금의 레벨 MySQL 레벨의 잠금 모든 스토리지 엔진에 영향을 미침 테이블 락 외에도 메타데이터 락(테이블 구조 잠금), 네임드 락 등 기능 제공 스토리지 엔진 레벨의 잠금 스토리지 엔진 간 상호 영향 없음 5.2.1 Global Lock(글로벌 락) DML(Data Manipulation Language, 데이터 조작어)란? 정의된 데이터베이스에 입력된 레코드를 조회, 수정, 삭제 등의 역할을 하는 언어 SELECT INSERT UPDATE DELETE DDL(Data Definition Language, 데이터 정의어)란? 데이터베이스를 정의하는 언어 (데이터 전체의 골격을 결정) CREATE ALTER DROP TRUNCATE FLUSH TABLES WITH READ LOCK 명령으로 획득 MyS..

📚 Databases/RealMySQL 8.0

5.1 트랜잭션

트랜잭션의 성질 Transaction(트랜잭션)의 4가지 성질 (ACID) Atomicity(원자성) all or nothing 트랜잭션의 모든 연산들이 정상 완료되거나 어떠한 연산도 수행되지 않은 상태를 보장 Consistency(일관성) 공적으로 수행된 트랜잭션은 정당한 데이터들이 데이터베이스에 반영되었음을 의미 DB에서 데이터 변경 시 사전에 설정되어 있는 룰에 맞지 않는 데이터가 들어가는 것을 방지 Isolation(독립성/고립성) 여러 트랜잭션이 동시에 수행 되더라도 각각의 트랜잭션은 다른 트랜잭션의 수행에 영향을 받지 않고 독립적으로 수행되어야 함 다수의 세션 또는 유저가 같은 시간에 같은 데이터에 접근하고 처리 중일 때 수행 중인 트랜잭션이 완료 될 때 까지 다른 트랜잭션이 끼어 들지 못하게..

📚 Databases/RealMySQL 8.0

4.2 InnoDB 스토리지 엔진 아키텍쳐

Lock(잠금) 란? 동시성을 제어하기 위함 여러 커넥션에서 동시에 같은 레코드나 테이블에 접근해 변경하면 결과적으로 예측할 수 없는 값이 됨. 특징 레코드 기반의 잠금 제공 높은 동시성 처리 가능 안정적이고 성능이 뛰어남 4.2.1 Primary Key에 의한 클러스터링 Clustering Index 란? [ p270 참조 ] Primary Key 값이 비슷한 레크드끼리 묶어서 저장하는 것 InnoDB의 테이블 특징 Primary Key를 기준으로 클러스터링 되어 저장 Primary Key 값의 순서대로 디스크에 저장 Secondary Index는 Primary Key 값을 논리적 주소로 사용 Primary Key를 이용한 레인지 스캔은 빠른 속도로 처리 레인지 스캔 : 테이블의 일부(특정) 레코드에만..

💬 ETC..

Postman API Response 값으로 이미지 출력하기

Postman Visualize 목표는 Postman API 요청을 통해 얻은 이미지의 바이트 값을 가지고 정상적으로 데이터를 가져왔는지 실제 이미지를 띄워보고 싶습니다. Postman Visualize를 이용해서 이미지를 띄울 수 있습니다. Postman Visualize란? Postman Visualize API와 HTML, CSS, JS 등을 이용해 API response 값을 시각화를 할 수 있는 API입니다. 자세한 내용은 아래 공식문서를 참조 해주세요. https://www.postman.com/api-visualizer/ API 응답 예시 { "data": "/9j/4AAQSkZJRgABAgAAAQABAAD..." ... } Visualize 작성 Tests 탭으로 이동해서 아래와 같이 작성..

iseunghan
iseunghan