Lock(잠금) 란? 동시성을 제어하기 위함 여러 커넥션에서 동시에 같은 레코드나 테이블에 접근해 변경하면 결과적으로 예측할 수 없는 값이 됨. 특징 레코드 기반의 잠금 제공 높은 동시성 처리 가능 안정적이고 성능이 뛰어남 4.2.1 Primary Key에 의한 클러스터링 Clustering Index 란? [ p270 참조 ] Primary Key 값이 비슷한 레크드끼리 묶어서 저장하는 것 InnoDB의 테이블 특징 Primary Key를 기준으로 클러스터링 되어 저장 Primary Key 값의 순서대로 디스크에 저장 Secondary Index는 Primary Key 값을 논리적 주소로 사용 Primary Key를 이용한 레인지 스캔은 빠른 속도로 처리 레인지 스캔 : 테이블의 일부(특정) 레코드에만..
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 탭으로 이동해서 아래와 같이 작성..
기존 influxDB를 이관해야하는 일이 생겼습니다. 차근차근 방법을 알아보도록 하겠습니다. 데이터 백업 [🔗] 먼저 기존 influxDB에 쌓인 데이터를 백업하도록 하겠습니다. influxd inspect export-lp \ --bucket-id 12ab34cd56ef \ --engine-path ~/.influxdbv2/engine \ --output-path path/to/export.gz --start 2022-01-01T00:00:00Z \ --end 2022-01-31T23:59:59Z \ --compress 각 옵션들의 의미는 다음과 같습니다. bucket id: 옮길 버킷의 ID engine path: 보통 ~/.influxdbv2/engine에 위치 (참조) output path: 데이..
4.1 MySQL 엔진 아키텍쳐 MySQL 엔진 아키텍쳐 MySQL 서버 MySQL 서버는 크게 두 가지로 이루어져있다. 이 둘을 합쳐 MySQL 또는 MySQL 서버라고 부른다. MySQL 엔진 스토리지 엔진 MySQL 엔진 커넥션 핸들러 클라이언트로부터의 접속을 처리 SQL 인터페이스, SQL 파서, SQL 옵티마이저, 캐시 & 버퍼 클라이언트로부터의 쿼리 요청을 처리 (SQL 문장을 분석하거나 최적화하는 중요한 역할을 한다) 스토리지 엔진 여러 스토리지 엔진이 존재 (대표적인 예: InnoDB, MyISAM, Memory..) 스토리지 엔진은 실제 디스크로부터 데이터를 읽어오거나 저장하는 역할을 전담한다. mysql> CREATE TABLE test (fd1 INT, fd2 INT) ENGINE=I..
CORS (Cross-Origin Resource Sharing) 이란? A라는 도메인에서 제공되는 FE에서 → B라는 도메인으로 제공되는 BE에 HTTP 요청을 했을 경우, 브라우저는 이를 서로 다른 도메인에서 리소스를 공유하는 것이라 판단하고 그것을 방지하기 위해 호출을 금지하는 것이다. Preflight Request 브라우저에서 실제 HTTP 요청을 보내기 전 브라우저 스스로 이 요청을 보내는 것이 안전한지 예비 요청을 하게 되는데 이게 바로 Preflight Request라고 합니다. 이 Preflight Request는 OPTION 메소드를 이용해 요청하는데 서버에서 보내준 응답 헤더에 Access-Controller-* 헤더들이 잘 구성되어있는지 확인합니다. GET, POST, HEAD 요청..