Database

MySQL 아키텍처는 아래 사진과 같은 구조로 이루어져 있습니다. [출처] http://www.theopenforce.com/2006/11/new_mysql_stora.html MySQL 은 다수개의 Engine 이 Plug In 방식으로 등록되어 있습니다.
ORACLE 아키텍처는 아래 사진과 같은 구조로 이루어져 있습니다. 제타위키[출처] https://zetawiki.com/wiki/Oracle_%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98 오라클 프로세스 설명 Process Monitor (PMON) 이상있는 프로세스 모니터링 및 비정상 종료시 재구동 System Monitor (SMON) 장애난 시스템 재기동시 인스턴스 복구 수행 Database Writers (DBWn) 버퍼 캐시의 dirty 내용을 데이터 파일에 매핑 CheckPoint (CKPT) 버퍼 캐시와 데이터 파일의 동기화 시점 관리 Recover (RECO) 분산트랜잭션 문제 해결 Log Writer (LGWR) 로그 버퍼의 내용을 리두로그 파일에 기록 Archive..
GOLDILOCKS 는 SQL/PSM 을 지원합니다. SQL/PSM 이란1. 프로그래밍 언어 기능이 포함된 SQL 입니다.2. 트랜잭션을 단위별로 수행할 수 있는 SQL 입니다.3. 제어흐름, 예외처리, 지역변수, 커서의 절차적 이용을 위한 문법등을 표준화한 SQL 입니다.4. SQL/PSM 은 PL/SQL 혹은 PL/pgSQL 과 비슷한 언어입니다. SQL/PSM 기본구조DECLARE 변수 선언; BEGIN 코드; [EXCEPTION 예외처리;] END; /변수 선언 : GOLDILOCKS 에서 지원하는 데이터 타입을 작성할 수 있습니다.코드 : SQL/PSM 을 작성합니다.예외처리 : 코드 수행시 발생하는 예외처리를 작성합니다. 예시]gSQL> set serveroutput on; gSQL> DECL..
GOLDILOCKS 는 구동까지 아래 단계를 거쳐가며, 각 단계별로 할 수 있는 작업이 나뉘어져 있습니다. STANDALONE 에서는 INIT - NOMOUNT - MOUNT - OPENCLUSTER 에서는 INIT - NOMOUNT - MOUNT - LOCAL OPEN - GLOBAL OPEN 단계를 지원합니다. 각 단계별로 가기 위한 쿼리는 아래 사진과 같습니다. GOLDILOCKS 는 각 단계별로 다음과 같은 작업을 수행합니다. STANDALONE CLUSTER INIT NOMOUNT 데몬 gmaster 를 구동 데몬 gmaster 를 구동 MOUNT 복구를 위한 control file 을 읽음 복구를 위한 control file 을 읽음 OPEN LOCAL OPEN data file 로부터 테이블..
CYCLONE GOLDILOCKS 는 이중화를 위해 CDC 방식의 cyclone 프로그램을 지원합니다. cyclone 프로세스가 Master 데이터베이스로부터, Slave 데이터베이스로 반영까지의 단계는 다음과 같습니다.1. Master 데이터베이스에 쿼리가 수행됩니다.2. 수행된 쿼리는 리두로그 파일에 기록됩니다.3. cyclone master 는 리두로그 파일에 기록된 쿼리를 전용버퍼에 캡쳐합니다.4. cyclone slave 의 Applier 들은 버퍼에 들어있는 내용을 Slave 데이터베이스에 반영합니다. CDC 방식은 비동기 방식만을 지원하기 때문에 데이터베이스간의 동기화 시간차가 발생하게 됩니다. CYCLONE 을 사용하기 위해서는, 다음의 제약사항이 필요합니다.1. 데이터베이스는 아카이브 모..
OLTP ( On-Line Transaction Processing )여러 과정의 연산이 하나의 단위 프로세스(트랜잭션)로 실행되도록 하는 프로세스입니다. A 라는 사람이 B 에게 10,000 원을 이체하는 상황을 예로 들어보겠습니다.1. A 라는 사람의 계좌에서 10,000 원이 인출됩니다.2. B 라는 사람의 계좌에 10,000 원이 입금됩니다. 이 단계는 하나의 프로세스로 이루어져야 하며, 중간에 오류가 발생하는경우 모든 단계를 되돌려야 합니다. OLAP ( On-Line Analytical Processing )대용량 데이터를 고속으로 처리하며 쉽고 다양한 관점에서 추출, 분석할 수 있도록 지원하는 데이터 분석 기술입니다.데이터를 분석하여, 소비자 패턴, 연령대별의 선호 물품 등을 판별하여 매출에..
GOLDILOCKS 는 테이블 정책으로 4가지 Sharding 정책 중 하나를 옵션으로 선택할 수 있도록 제공합니다.Sharding 정책이란, 테이블의 데이터를 특정 클러스터 그룹으로 분배하여 저장하는 방식을 의미합니다. 4가지 Sharding 정책은 다음과 같습니다.- Cloned Strategy- Hash Sharding Strategy- Range Sharding Strategy- List Sharding Strategy 정책 설명 Cloned 테이블의 모든 데이터를 동일하게 복제 Hash Sharding Sharding Key 의 Hash 값을 기준으로 테이블의 데이터를 분배 Range Sharding Sharding Key 의 범위값을 기준으로 테이블의 데이터를 분배 List Sharding S..
root 계정을 사용하지 않고 Linux 에 MySQL 서버를 설치하는 방법입니다.나중에 MySQL 을 지우려고 하는경우, 사용자 계정만 지워주면 되기때문에 편리합니다. 1. My-SQL 사이트에 접속하여 소스를 다운로드 받습니다.https://dev.mysql.com/downloads/mysql/ 2. MySQL 을 설치 할 사용자 계정을 생성합니다.# useradd mysql # passwd mysql # su - mysql 3. MySQL 설치 시 필요한 폴더를 생성합니다.$ mkdir mysql $ ls mysql-boost-5.7.20.tar.gz $ tar xzf mysql-boost-5.7.20.tar.gz $ mkdir -r etc/rc.d/init.d $ mkdir data $ mkdir..
GOLDILOCKS 의 모든 작업들은 메모리 상에서 진행되며, INSTANCE 크기는 프로퍼티 파일에 지정된 프로퍼티에 의해 결정됩니다. INSTANCE 는 SSA 영역과 TABLESPACE 영역으로 나뉘어집니다. SSA 는 Shared Memory Static Area 의 약자이며, 프로세스간 공용으로 사용되는 정보를 담고있습니다.TABLESPACE 는 한개 이상의 데이터파일들로 구성되어 있으며, 객체들을 저장합니다. PSA 는 Private Static Area 의 약자이며, 각 세션마다 독립적으로 사용하는 힙 메모리 영역입니다.PSA 는 INSTANCE 의 크기에 영향을 미치지 않습니다.
GOLDILOCKS 는 Shared-Nothing 구조의 완벽한 Scale-Out 이 가능한 클러스터 데이터베이스 입니다. 각 Node 별 다수개의 Member 를 구성할 수 있으며,각 Node 의 Member 들 끼리는 동일한 데이터를 가지고 있습니다. GOLDILOCKS Cluster 는 cdispatcher, cserver 의 추가 프로세스를 가지고 있습니다.cdispatcher 는 멤버, 노드 간 효율적인 통신을 위한 프로세스입니다.cserver 는 멤버, 노드 간 데이터의 저장 및 관리를 위한 프로세스입니다.
꽁담
'Database' 카테고리의 글 목록 (22 Page)