나만 알 수 없어서 만든 블로그
1-2. DATABASE (표준 SQL 이해) 본문
표준 SQL 이해(ORACLE, PostgreSQL, MS-SQL, MySql, Maria 등 공통점 및 차이점)
참고: https://blog.siner.io/2021/10/11/rdbms-comparison/
주요 RDBMS의 종류
이전 게시물인 RDBMS의 특징을 보고 오면 좋습니다. RDBMS DB 엔진 중 유명한 것들을 비교해보고, 특징을 알아보자. 이 게시글을 보는 모두가 데이터베이스를 고르는 과정에 도움이 되었으면 한다. i
blog.siner.io
Oracle
온프레미스, 클라우드, 하이브리드 클라우등의 환경을 제공
신뢰성을 요구되는 경우엔 오라클을 거의 사용
** 카카오뱅크가 오라클과 MySQL을 사용하고 있으며, 공고한 시장장악력을 알 수 있다
** WOW도 오라클로 구성되어 있다
Oracle 특징
flashback
- 커밋 이전 상태로 되돌리는 기능
- 과거 시점의 데이터 조회도 가능
- ex) SELECT * FORM 고객 AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '1' HOUR)
- 특정 시점에 존재했던 레코드를 조회해 새로운 테이블을 생성-추가 할 수 있음
CREATE TABLE 고객_BACKUP AS SELECT * FROM 고객 AS OF TIMESTAMP TO_DATE(‘201501101020’, ‘YYYYMMDDHH24MI’)
GATHER_PLAN_STATISTICS
SQL Trace를 수행하지 않고도 쿼리 plan을 단계별로 get block을 알수있다. 쿼리 성능을 확인-비교 할 수 있기 때문에 튜닝할때 아주 빈번하게 쓰인다고 한다.

| 장점 | 단점 |
| 고성능 트랜잭션 처리 제공하여 처리하여 속도가 빠르다 | 구동에 고사양의 장비가 필요 (메모리 많이 소요) |
| 대규모 데이터베이스 지원 | 비용이 많이 듦 |
| SQL문을 실행하는 가장 효율적인 방법을 선택 쿼리비용 최소화를 위한 테이블 인덱싱 분석 |
MySQL
특징
- top n개의 레코드를 가지고 오는 케이스에 특화됨
- PHP의 인기도와 MySQL의 인기도는 맞물림
- 복잡한 알고리즘은 가급적 지원하지 않음
- 간단한 처리속도를 향상시키는 것을 추구
- 정확함
| 장점 | 단점 |
| 오픈소스로 무료 이용 가능 | 문자열 비교에서 대소문자를 구분하지 않음 |
| nested loop join만 지원 - 바깥 테이블의 처리 범위를 하나씩 접근하면서 추출된 값으로 안쪽 테이블을 조인하는 방식 - 중첩 루프문과 동일한 원리 - 좁은 범위에 유리 - 순차적으로 처리 |
MSSQL
특징 : 관대함
| 장점 | 단점 |
| 엔터프라이즈 급 관리 가능한 소프트웨어 | 상당한 비용이 들어감 |
| 우수한 데이터 복구 지원 | windows 기반 서버에서만 실행되도록 설계되어 있음 |
'개발 기본 지식' 카테고리의 다른 글
| 1.6 DATABASE (PL/SQL) (0) | 2022.03.24 |
|---|---|
| 1-4. DATABASE (WHERE SELECT, EXISTS, BETWEEN, GROUP BY, HAVING, GROUPING, ROLLUP, RANK) (0) | 2022.03.24 |
| 1-3. DATABASE (JOIN 내부/외부, 연산자) (0) | 2022.03.24 |
| 1-1. DATABASE (RDBMS/Non-RDBMS) (0) | 2022.03.23 |
| 00.교육커리큘럼 (0) | 2022.03.23 |