Database 33

[Real MySQL] 16-1. 복제

"Real MySQL" 책을 정리한 포스팅 입니다 1. 복제한 서버에서 다른 서버로 동기화되는 것 Source Server원본 데이터를 가진 서버변경이 최초로 이루어짐 (데이터 및 스키마) Replica Server복제된 데이터를 가진 서버소스 서버 동기화:소스 서버로부터 데이터를 전달받아 자신의 리포지토리에 반영 목적scale-out트래픽 대응 목적scale-up보다 훨씬 더 유연한 구조 backup데이터 정합성이 깨질 경우 (개발자 실수 or 공격 등)백업 서버의 데이터로 사용함메인 서버가 터질 경우지리적으로 분산된 백업 서버가 메인 서버의 역할을 대신함 데이터 분석용백업 서버에서 대신 담당하여 최적화데이터 분석은 리소스 소모가 큰 연산메인 서버로 데이터를 분석할 경우 클라이언트 요청 처리에 영향을 ..

Database/Mysql 2024.09.07

[Real MySQL] 8-0. 인덱스: Disk

"Real MySQL" 책을 정리한 포스팅 입니다 HDD (Hard Disk Drive)기계식 (플래터)데이터 보관플래터 위를 헤드가 이동하면서 데이터 읽고 씀 인터페이스SATA(소비자용)SAS(고성능) SSD (Solid State Drive)반도체기계식 플래터에 비해 훨씬 빠릅니다. (기계식으로 플래터를 회전시킬 필요 없음)소음 X 플래시 메모리 (NAND)비휘발성: 전원이 공급되지 않아도 데이터 보관 가능 O

Database/Mysql 2024.09.07

[Redis] 2. Understanding Data Types

cachingqueuingevent processing 1. Stringbyte sequence 저장문자열 매핑에 주로 사용됩니다. (key, value 모두 문자열) Data StructureTextSerialized objectBinary array(image, video, audio) Usagecachecountersbitwise operation 더보기SET bike:1 Deimos # key(namespace:id) - valueGET bike:1 # Deimos 2. JSONSyntax: JSONPath UsageAPI Response (cached) 더보기JSON.SET user:1001 $ '{"name": "John Doe", "email": "john.doe@example.com", ..

Database/Redis 2024.09.05

[NoSQL] NoSQL

1. NoSQL이란?Not Only SQL (SQL 지원)RDBMS보다 덜 제한적인 일관성 모델을 사용하는 데이터 매커니즘 유연한 데이터 모델스키마가 고정되어 있지 않음 대규모 분산 데이터클라우드 컴퓨팅 등장에 맞춰 생긴 기술데이터 공유 및 시스템 운용의 효율성 좋음 2. 장점성능latency: 빠르게 데이터 읽고 쓸 수 있음throughput: 다수의 요청을 효율적으로 처리할 수 있음 (수평적 확장) 단순성설계: 논리적, 물리적 설계 스킵clustering: 분산환경에서 사용하기 용이하도록 지원partitioning (horizontal): 분산환경에서 사용하기 용이하도록 지원 3. 종류key-value데이터: key-value 쌍빠른 데이터 접근 가능Redis, DynamoDB, Riak wide c..

Database 2024.09.05

[Real MySQL] 5-2. 트랜잭션과 잠금

"Real MySQL" 책을 정리한 포스팅 입니다. 4. 격리 수준특정 트랜잭션이 얼마나 독립적으로 실행될 수 있는지 정의 (여러 트랜잭션이 동시에 처리될 때)다른 트랜잭션의 중간 결과에 얼마나 영향을 안받을 지다른 트랜잭션에서 변경한 데이터를 얼마나 볼 수 있게 허용할지뒤로갈수록 고립도는 높아지고, 동시성과 성능이 떨어집니다. READ UNCOMMITTEDDirty Read 허용동시성 & 성능 높음데이터 일관성  & 정합성 보장 X (일반적인 DBMS에서 사용 X) Dirty Read다른 트랜잭션에서 커밋되지 않은 트랜잭션 내용 읽기 O READ COMMITTED다른 트랜잭션에서 커밋된 트랜잭션 내용만 읽기 O균형 좋음 (동시성 & 성능 - 데이터 일관성 & 정합성)데이터 일관성 문제 (NON-REPE..

Database/Mysql 2024.08.10

[Real MySQL] 15-3. 데이터 타입: 날짜와 시간

"Real MySQL" 책을 정리한 포스팅 입니다. 3. 날짜와 시간 날짜, 시간만 저장하거나 날짜와 시간 같이 저장할 수 있습니다. 설명 크기 YEAR 날짜(년도만) 1 byte DATE 날짜 3 byte TIME 시간(밀리초단위까지) 3 byte + (밀리초단위 저장공간) TIMESTAMP 시간(밀리초단위까지) 4 byte + (밀리초단위 저장공간) DATETIME 날짜 + 시간(밀리초단위까지) 5 byte + (밀리초단위 저장공간) 밀리초단위 저장공간 최대 6자리까지 표현할 수 있습니다. 2자리당 1바이트씩 공간이 필요합니다. 타입의 괄호에 몇 바이트를 사용할지 정할 수 있습니다. 타임존 날짜 타입 타임존 정보가 포함되지 않습니다. 클라이언트로부터 입력된 값을 그대로 저장하고 조회합니다. 시간 타입..

Database/Mysql 2023.11.26

[Real MySQL] 15-2. 데이터 타입: 숫자

"Real MySQL" 책을 정리한 포스팅 입니다. 2. 숫자 정확도 참값 정확히 그 값을 그대로 유지하는 것 (소수점 이하 값의 유무와 관계 X) INTEGER, DECIMAL 근삿값 (부동소수점) 정확하게 일치하지 않고 최대한 비슷하게 관리되는 값 (처음 컬럼에 저장한 값과 조회된 값이) FLOAT, DOUBLE 포맷 이진 표기법 (INTEGER) 프로그래밍 언어에서 사용하는 정수나 실수 타입 십진 표기법 (DECIMAL) 디스크의 십진 표기법을 의미합니다. 숫자 값의 각 자릿값을 표현하기 위해 4비트나 한 바이트를 사용해서 표기하는 방법 정수 저장공간 최솟값 최댓값 TINYINT 1 -128 127 SMALLINT 2 -32768 32767 MEDIUMINT 3 -8388608 8388607 INT..

Database/Mysql 2023.11.26