본문 바로가기
반응형

DB25

MyISAM 스토리지 엔진 아키텍처 MyISAM 스토리지 엔진 아키텍처 MyISAM 스토리지 엔진의 성능에 영향을 미치는 요소인 키 캐시와 운영체제의 캐시/버퍼에 대해 살펴보자. 키 캐시 InnoDB 버퍼 풀과 비슷한 역할을 하는 것이 MyISAM의 키 캐시다. 하지만 이름 그대로 키 캐시는 인덱스만을 대상으로 작동하며, 또한 인덱스의 디스크 쓰기 작업에 대해서만 부분적으로 버퍼링 역할을 한다. 키 캐시가 얼마나 효율적으로 작동하는지는 다음 수식으로 확인할 수 있다. 키 캐시 히트율 (Hit rate) = 100 - (Key_reads / Key_read_requests * 100) Key_reads는 인덱스를 디스크에서 읽어 들인 횟수를 저장하는 상태 변수이며, Key_read_requests는 키 캐시로부터 인덱스를 읽은 횟수를 저장하.. 2022. 11. 27.
InnoDB 스토리지 아키텍처 2023.10.10 복습 리팩토링 시작 InnoDB 스토리지 아키텍처 InnoDB는 MySQL에서 사용할 수 있는 스토리지 엔진 중 거의 유일하게 레코드 기반의 잠금을 제공하며, 그 때문에 높은 동시성 처리가 가능하고 안정적이며 성능이 뛰어나다. 이제 InnoDB 스토리지 엔진의 주요 특징들과 함께 아키텍처를 살펴보자. 프라이머리 키에 의한 클러스터링 InnoDB의 모든 테이블은 기본적으로 프라이머리 키를 기준으로 클러스터링 되어 저장된다. 즉 프라이머리 키 값의 순서대로 디스크에 저장된다는 뜻이며, 모든 세컨더리 인덱스는 레코드의 주소 대신 프라이머리 키의 값을 논리적인 주소로 사용한다. 프라이머리 키가 클러스터링 인덱스이기 때문에 프라이머리 키를 이용한 레인지 스캔은 상당히 빨리 처리될 수 있다. 결.. 2022. 11. 26.
MySQL 엔진 아키텍처 2023.10.9 복습 리팩토링 시작 Real MySQL을 읽기 시작했는데, 이에 관한 공부 기록을 남겨보려고 합니다. 4장 아키텍처파트의 MySQL 엔진 아키텍처부터 시작하겠습니다. MySQL 엔진 아키텍처 MySQL 전체 구조 이미지 MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진으로 구분할 수 있다. 이 둘을 모두 합쳐서 MySQL 또는 MySQL 서버라고 부른다. MySQL 엔진 MySQL엔진은 커넥션 핸들러, SQL 인터페이스, SQL 파서, SQL 옵티마이저, 캐시와 버퍼로 이루어진다. 표준 SQL인 ANSI SQL 문법을 지원하므로 타 DBMS에서 사용할 수 있다. 커넥션 핸들러를 사용해 접속 및 쿼리 요청을 처리하고 옵티마이저로 쿼리를 최적화한다. 스토리지 엔진 MySQL 엔진은 요.. 2022. 11. 25.
데이터 과학과 빅데이터 2022. 12. 14. 01:30 수정 및 복습 시작 데이터 과학 데이터 과학은 필수적이다. 4차 산업혁명 시대로 진입하며 빅데이터, 사물 인터넷, 인공지능 등 핵심 기술의 중심에 데이터가 있다. 21세기의 원유는 즉 데이터다. 전통적인 방식으로 데이터를 수집하고 저장하는데 한계가 있다. 현대 데이터는 방대한 규모와 다양한 형태가 존재한다. 단순히 데이터를 분류하고 검색하는 것을 넘어, 방대한 양의 데이터 속에 숨겨진 규칙과 패턴을 찾아내 문제 해결에 활용하고 미래의 일을 예측하여 미리 준비하기를 우리는 원하고 있다. 이 말은 다양해진 데이터 활용에 대한 요구가 늘어난다는 것이다. 데이터 과학의 개념은 데이터를 수집한 후 분석을 통해 데이터를 정확히 이해함으로써 그 속에 숨겨진 새로운 지식을 발견하고,.. 2021. 11. 29.
데이터베이스 응용 기술 2022. 12. 14. 01:00 수정 및 복습 시작 객체지향 데이터 베이스 객체지향 데이터 모델 객체지향 개념에 기반을 둔 데이터 모델이다 객체와 객체 식별자, 속성과 메서드, 클래스, 클래스 계층 및 상속, 복합 객체 등을 지원한다. 다양한 응용 분야의 데이터 모델링을 위한 새로운 요구 사항을 지원한다. 의미적으로 관계가 있는 데이터베이스 구조를 표현하기 위한 강력한 설계 기능을 제공한다. 특수한 몇몇 분야에서 사용된다. 객체와 객체 식별자 객체 지향 데이터 모델에서 객체(Object)는 현실 세계에 존재하는 개체를 추상적으로 표현한 것이다. 객체 지향 데이터 모델을 구성하는 기본 요소다. 각 객체는 시스템 전체에서 유일하게 식별될 수 있는 객체 식별자를 가지고 있다. 객체 간의 관계는 객체 식별자.. 2021. 11. 22.
보안과 권한 관리 2022. 12. 14. 00:30 수정 및 복습 시작 데이터베이스 보안 데이터베이스 보안의 목표는 조직에서 허가한 사용자만 데이터베이스에 접근할 수 있도록 통제하여 보안을 유지하는 것이다. 물리적 환경에 대한 보안, 권한 관리를 통한 보안, 운영 관리를 통한 보안이 필요하다. 물리적 환경에 대한 보안은 말 그대로 자연재해 같은 데이터베이스에 물리적 손실을 발생시키는 위험으로부터 데이터베이스를 보호하는 것이다. 딱히 중요한 내용은 아니다. 권한 관리를 통한 보안은 접근이 허락된 사용자만 권한 내에서 데이터베이스를 사용하도록 보호한다. 계정이 발급된 사용자만 데이터베이스에 접근할 수 있도록 통제하고, 사용자별로 사용 범위와 수행 가능한 작업 내용을 제한한다. 운영 관리를 통한 보안은 접근이 허락된 사용자가.. 2021. 11. 15.
반응형