본문 바로가기
728x90

분류 전체보기57

MySQL 아키텍처 1. MySQL 전체 구조 1-1. MySQL 엔진 a. 커넥션 핸들러 : 클라이언트로부터의 접속 및 쿼리 요청 처리 b. SQL 파서 및 전처리기 c. SQL 옵티마이저 : 쿼리의 최적화된 실행에 도움 d. 성능 향상을 위한 MyISAM의 키 캐시나 InnoDB 같은 보조 저장소 기능 1-2. 스토리지 엔진 실제 데이터를 디스크에 저장하거나 디스크로부터 데이터를 읽어오는 부분 1-3. 핸들러 요청 MySQL 엔진 → 스토리지 엔진에 보내는 요청 1-4. 핸들러 API 핸들러 요청에서 사용되는 API, ‘SHOW GLOBAL STATUS LIKE 'Handler%’로 확인 가능 2. 스레드 구조 MySQL 서버는 Thread 기반으로 작동 2-1. Foreground Thread 캐시 된 Foregrou.. 2022. 4. 10.
공유트랜잭션과 잠금 1. 트랜잭션이란? 작업의 완전성을 보장해주는 것 논리적인 작업 모음을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우 원 상태로 복구해서 작업의 일부만 적용되는 현상이 발생하지 않게 만들어주는 기능 MEMORY 스토리지 엔진 혹은 MyISAM 스토리지 엔진은 트랜잭션 기능이 없다. 트랜잭션은 DBMS의 커넥션과 동일하게 꼭 필요한 최소한의 코드에만 적용하는 것이 좋다. 프로그램의 코드가 DB connection을 가지고 있는 범위와 트랜잭션이 활성화되어 있는 프로그램의 범위를 최소화해야 한다는 것이다. 프로그램의 코드에서 라인 수는 한두 줄이라 하더라도 네트워크 작업이 있는 경우는 반드시 트랜잭션에서 배제해야 한다. 이런 실수로 인해 DBMS 서버가 높은 부하 상태로 빠지거나 위험한 상태에 빠지는 경.. 2022. 4. 9.
인덱스(INDEX) 1. 인덱스란? DBMS에서 인덱스는 데이터의 저장 성능을 희생하고 그 대신 데이터의 읽기 속도를 높이는 기능이다. 인덱스를 역할별로 구분하면 PK와 Secondary Key로 구분해볼 수 있다. PK : 레코드를 대표하는 컬럼의 값으로 만들어진 인덱스 Secondary Index : PK를 제외한 나머지 모든 인덱스 데이터의 중복 허용 여부로 구분하면 유니크 인덱스와 유니크하지 않은 인덱스로 구분할 수 있다. 유니크 여부는 실제 DBMS 쿼리를 실행해야 하는 옵티마이저에게는 상당히 중요한 문제이다. 유니크 인덱스에 대해 동등 조건으로 검색한다는 것은 항상 1건의 레코드만 찾으면 더 찾지 않아도 된다는 것을 옵티마이저에게 알려주기 때문이다. 2. 인덱스의 장점과 단점 장점 테이블을 조회하는 속도와 그에 .. 2022. 4. 8.
AWS(Amazon Web Services)란? AWS는 Amazon Web Services의 약자로, 아마존닷컴에서 운영하는 Cloud Computing Platform이다. 다른 웹 사이트나 클라이언트 측 응용 프로그램에 대해 온라인 서비스를 제공하고 있다. 클라우드 컴퓨팅? 클라우드 컴퓨팅은 IT 리소스를 인터넷을 통해 온디맨드(On-Demand)로 제공하고, 사용한 만큼 비용을 지불하는 것이다. 온디맨드 서비스는 우리말로 주문형 서비스라고 한다. 고객의 요구가 있을 때 언제 어디서나 고객 중심에서 니즈를 해결해 주는 것이다. 쉽게 얘기하면 "내가 있는 곳으로 상품이나 서비스가 찾아온다."라고 할 수 있다. 클라우드를 통해 서버, 스토리지, 데이터베이스, 네트워킹, 소프트웨어, 분석, 인텔리전스 등의 컴퓨팅 서비스를 제공하는 것이다. 클라우딩 컴.. 2022. 4. 7.
728x90