본문 바로가기
DB 인사이드 | MySQL Architecture - 6. InnoDB : In-Memory Structure 본 문서에서는 주요 스토리지 엔진인 InnoDB Architecture 중 In-Memory Structure에 대해 다루도록 하겠습니다.In-Memory Structure의 주요 구성 요소는 다음과 같으며, 각각 순서대로 알아보도록 하겠습니다.Buffer PoolChange BufferAdaptive Hash IndexLog Buffer Buffer PoolInnoDB Buffer Pool은 테이블 및 인덱스 Data의 캐싱을 목적으로 하는 메인 메모리 영역입니다. Buffer Pool에는 테이블 및 인덱스 Data 뿐만 아니라 아래 그림과 같이 다양한 유형의 Data 역시 캐싱되며 Buffer Pool List를 이용하여 목록을 관리합니다.Buffer Pool을 사용하면 자주 사용하는 Data는 메모.. 2022. 7. 27.
엑셈, 메가존클라우드와 클라우드 사업 협력 추진을 위한 업무협약 체결 엑셈, 메가존클라우드와 클라우드 사업 협력 추진을 위한 업무협약 체결 클라우드 네이티브의 핵심 요소 ‘컨테이너’와 ‘쿠버네티스’ 전문성 기반 클라우드 운영·관리 비즈니스 강화 아시아 최대 MSP 전문 기업 메가존클라우드의 다양한 고객 기반 엑셈 클라우드 관제 및 SaaS 사업 성장 기대 IT 성능 관리 전문 기업 엑셈(대표: 조종암)이 클라우드 선도 기업 메가존클라우드(대표: 이주완)와클라우드 운영·관리 공동 사업 추진과 마케팅 강화를 위한 업무 협약을 체결했다고 5일 밝혔다. 이에 양사는 엑셈의 클라우드 통합 모니터링 전문성을 메가존클라우드의 클라우드 인프라 구축·운영 서비스에 접목한다. 이를 통해 클라우드 전환 고객사들의 대규모 클라우드 환경과 관련된 모든 상황을 한눈에 파악하고 체계적으로 관리가 가.. 2022. 7. 5.
DB 인사이드 | MySQL Architecture - 5. SQL 처리과정 본 문서에서는 Client가 Query를 전달한 후 내부적인 처리 과정에 대해 알아보도록 하겠습니다. Query Cache먼저 Query를 분석하기 전에 MySQL Server는 Query Cache를 확인합니다. Query Cache는 Select문에 대한 전체 결과 집합을 저장하고 있습니다.Client가 Query 수행 시 제일 먼저 거치는 단계로, Query를 분석하기 전에 MySQL Server는 Query Cache를 참조합니다. Client가 이미 캐시에 있는 것과 동일한 Query를 실행하면 Server는 SQL Parser, Optimizer 단계를 건너뛰고 결과를 직접 반환합니다.📢 테이블의 Data가 변경되면 Query Cache의 내용 역시 달라지므로 변경된 테이블과 관련된 정보를 .. 2022. 6. 30.
DB 인사이드 | MySQL Architecture - 4. Memory MySQL은 Database 작업 성능을 향상하기 위한 다양한 메모리 영역을 갖고 있으며, 각 영역의 값을 변경하여 MySQL 성능을 향상할 수 있습니다. 이러한 메모리 영역은 스토리지 엔진 또는 사용 중인 기능에 따라 다르지만, 일반적으로 공유 가능 여부를 기준으로 Global Memory와 Local Memory 영역으로 구분할 수 있습니다. Global MemoryGlobal Memory 영역이란 Client Thread 수와 무관하게 공통으로 사용되는 하나의 메모리 공간을 의미합니다. 단, 필요에 따라 2개 이상의 공간을 할당받을 수도 있지만 생성된 영역이 2개 이상이어도 모든 Thread에서 공유 가능합니다.Global Memory 영역은 MySQL Server가 시작될 때 운영체제로부터 할당되.. 2022. 6. 30.
DB 인사이드 | MySQL Architecture - 3. Thread MySQL은 Process가 아닌 Thread 기반으로 동작합니다. Thread는 역할에 따라 2가지로 분류할 수 있는데, User Session에 해당하는 Foreground Thread와 내부적인 처리를 목적으로 하는 Background Thread가 여기에 해당합니다.Background Thread의 수는 MySQL Server 버전과 설정에 따라 다를 수 있으며, 병렬 작업을 수행하는 경우 동일한 이름의 Thread가 2개 이상 표시될 수 있습니다.mysql> select thread_id, name, type from performance_schema.threads;+-----------+----------------------------------------+------------+| thre.. 2022. 6. 30.
DB 인사이드 | MySQL Architecture - 2. 스토리지 엔진 본 문서에서는 MySQL의 스토리지 엔진에 대해 알아보도록 하겠습니다.스토리지 엔진스토리지 엔진이란 MySQL에서 실제 Data를 디스크 스토리지에 저장하거나 읽어오는 부분을 담당합니다.위 그림과 같이 MySQL은 스토리지 엔진을 플러그인 방식으로 사용할 수 있는 구조를 가지고 있기 때문에 필요에 따라 원하는 스토리지 엔진을 구성하여 사용할 수 있습니다.사용자는 show [storage] engines 명령을 통해 스토리지 엔진 목록을 확인 가능하며, Support 값이 나타내는 의미는 다음과 같습니다.mysql> show engines;+--------------------+---------+--------------------------------------------------------------.. 2022. 6. 30.
DB 인사이드 | MySQL Architecture - 1. MySQL 엔진 MySQL Server의 구성MySQL Architecture는 기본적으로 Server-Client 구조로 이루어져 있습니다.MySQL Database가 Server의 역할을 수행하며, MySQL Server에 연결하는 Application을 Client라고 부릅니다. 이러한 MySQL Server는 크게 MySQL 엔진과 스토리지 엔진으로 구분할 수 있습니다.이 중 MySQL 엔진의 경우 요청된 SQL 문장을 분석하거나 최적화하는 등 DBMS의 두뇌에 해당하는 역할을 수행하며, 스토리지 엔진은 실제 Data를 디스크 스토리지에 저장하거나 읽어오는 부분을 담당합니다.이처럼 각각의 엔진의 역할이 극명하게 나뉘다 보니, 사용자의 요청을 처리하기 위한 엔진 간의 Data 요청 및 전송 과정은 필수 불가결합니다.. 2022. 6. 30.
왕푸짐 | 칭찬하고 치킨 받아가세요! 달라진 사이트를 구경해보고 칭찬을 해주세요~~ 1️⃣ 엑셈 홈페이지 🆕 2️⃣ 엑셈 뉴스레터 🆕 3️⃣ 엑셈 씽클립 🆕 기획 | 사업관리팀 왕준용 이미지 | 디자인그룹 송유림 2022. 6. 30.
우리가 일하는 방식 | 우리 친구해요, 엑셈 동호회 엑셈에서는 ‘조언을 구하고, 조언을 해주며, 친구를 만들자’라는 포스터를 곳곳에서 볼 수 있습니다. 이 질문들은 각자 다른 부서에서 일을 하고 있을 지라도, 엑세머들이 홀로 단절되어 있는 것이 아닌 항상 직간접적으로 연결되어 있음을 인식하고, 서로의 성장과 성공을 위해 탈 권위적으로 선한 영향력을 주고 받자는 사내 문화 활성화를 위한 캠페인입니다. 엑셈 경영시스템의 ‘일 원칙 (3P, 3 Principles)’과 그 중에서도 ‘관계 원칙 (Relationship)’의 가치를 전사적으로 이해시키기 위함입니다. 우리는 서로를 성장시키고, 시너지를 창출하는 관계를 형성하며 상호 성장해 나갑니다. 엑셈의 모든 일하는 방식과 문화는 엑셈의 경영시스템에서 강조하는 개인과 조직의 핵심 가치에 근거를 두고 있습니다. .. 2022. 6. 30.