postgresql / postgres plus -...

25
PostgreSQL / Postgres Plus ㈜다우기술 OSS사업팀

Upload: dinhnhu

Post on 11-Feb-2018

302 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL / Postgres Plus

㈜다우기술

OSS사업팀

Page 2: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

목 차

2

PostgreSQL 개요

PostgreSQL 아키텍처

PostgreSQL GUI Tool

Postgres Plus 개요

Page 3: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

Page 4: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

(~$400M)‏

($1B)‏

($310M)‏

PostgreSQL 진화

PostgreSQL: 1975년 Ingres 프로젝트를 시작으로 1986년 Postgres 프로젝트 착수, 1991년

Postgres 버전 3 출시, 이 후 PostgreSQL 프로젝트로 변경되어 현재까지 활발히 개발진행

Postgres Plus: 2004년부터는 PostgreSQL을 이용하여 EnterpriseDB 라는 기업에서

Enterprise 확산목적으로 Postgres Plus 제품을 개발

4

Page 5: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL 로고의 의미

PostgreSQL의 로고는 ‘Slonik’ 이라는 이름의 코끼리

로고의 근원: Pgsql-hackers 메일링리스트를 보면 다음과 같은 글로 근원 추정

if you want an animal-based logo, how about some sort of elephant? After all, as the Agatha Christie title read, elephants can remember ... David Yang

5

Page 6: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL License

PostgreSQL License는 PostgreSQL과 함께 배포되는 라이선스로서, BSD 또는MIT

라이선스와 유사한, 매우 자유로운 라이선스

관리기관은 [The PostgreSQL Global Development Group]

라이선스 계열은 BSD

복제, 배포, 수정의 권한 허용 O

배포 시 라이선스 사본 첨부

저작권고지시사항 또는 Attribution 고지사항유지 O

배포 시 소스코드 제공의무(Reciprocity)와 범위

조합저작물(Lager Work)작성 및 타 라이선스 배포 허용 O

수정 시 수정내용 고지

명시적 특허라이선스의 허용

라이선시가 특허소송 제기 시 라이선스 종료

이름, 상표, 상호에 대한 사용제한

보증의 부인 O

책임의 제한 O

6

Page 7: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL 개발 커뮤니티

Postgresql.org Postgresql.kr

7

Page 8: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL 기능 및 제한

오브젝트-관계형 DB 지원 OS: Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X,

Solaris, Tru64), Windows ACID(Atomicty, Consistency, Isolation, Durability) 지원 Foreign keys, Joins, Views, Triggers, Stored procedures

(multiple languages) SQL:2008 규격 준수(Data types, INTEGER, NUMERIC,

BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, TIMESTAMP) BLOB 지원(pictures, sounds, video) C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC 지원 Multi-Version Concurrency Control (MVCC) Point in time recovery Tablespaces Asynchronous replication Nested transactions (savepoints) Online/hot backups Query planner/optimizer Logging International character sets Multi-byte character encodings Unicode, Locale-aware for sorting, case-sensitivity, formatting 4 terabytes 이상 DB 사이즈 처리

항목 제한 사항

최대 DB 크기(Database Size) 무제한

최대 테이블 크기(Table Size) 32TB

최대 레코드 크기(Row Size) 1.6TB

최대 컬럼 크기(Field Size) 1GB

테이블당 최대 레코드 개수 무제한

테이블당 최대 컬럼 개수 250~1600개

테이블당 최대 인덱스 개수 무제한

8

Page 9: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL 제품 특장점

특장점 상세 설명

라이선스 부담 해소 라이선스 침해 등의 compliance 이슈로 비용 부담 해소

상용제품 보다 앞선 기술지원 다양한 전문 커뮤니티의 지원으로 기술지원 이슈 해소

DB 운용에 따른 비용 최소화 운영 및 튜닝 활동을 최소화 하도록 제품설계, 비용 효과적인 교육 프로그램 제공

업계 최고의 신뢰성 및 안정성 수년간 DB crash와 같은 장애 이력이 없을 만큼 안정적인 DB

확장성 소스코드 수준의 커스터마이징이 가능하므로 사용자 환경에 맞도록 확장

플랫폼 호환성 Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), Windows

대용량 데이터 처리 구조 대용량 데이터 처리를 위한 MVCC 기능 지원

GUI 기반의 DB 개발 및 관리 도구 오픈소스 또는 상용으로 고품질의 DB 개발 및 관리를 위한 도구제공

9

Page 10: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL 사용자 관점 특장점

10

1) 우수한 제품 신뢰도

2) ACID 및 트랜잭션 지원

3) 다양한 인덱싱 기법 지원

4) 유연한 Full-text search 기능

5) 동시성 성능을 높여주는 MVCC 기능

6) 다양하고 유연한 복제 방식 지원

7) 다양한 프로시져(PL/pgSQL, Perl, Python, Ruby, TCL 등) 지원

8) 다양한 인터페이스(JDBC, ODBC, C/C++, .Net, Perl, Python) 언어 지원

9) 질 좋은 커뮤니티 지원 및 Enterprise 급 지원

10) 잘 만든 문서 및 충분한 매뉴얼 제공

11) 다양한 확장 기능과 확장 기능 개발 용이성

a. GIS add-on 지원(PostGIS)

b. Key-Value 스토어 확장 기능(Hstore)

c. DBLink 기능

d. Crypto, UUID 등 다양한 함수, 타입지원

Page 11: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 개요

PostgreSQL Roadmap

9.3 2013-09

관리기능 개선 Parallel query 지원 Parallel dump/restore, copy/link MERGE/UPSERT 지원

Multi-Master replication Materialized View 기능 다중언어 지원 개선 Large object access to 4TB

9.2 2012-09

성능 최적화 Linear scalability to 64 cores CPU 전력 소비량 감소 Cascade streaming replication JSON, Range Type

Lock Management 개선 Space-partitioned GiST index Index-only scans(covering)

9.1 2011-09

기능 차별화 Synchronous replication Per-column collations Unlogged tables K-nearest-neighbor indexing

Serializable isolation level Writeable CTE SQL/MED External Data SE-Linux integration

9.0 2010-09 Streaming replication, Hot standby Microsoft Windows 64bit 지원 Per-column conditional trigger

8.0 ~ 8.4 2005 ~ 2012

Microsoft Windows Native 버전 지원 Savepoint, Point-in-time recovery Two-phase commit Table spaces, Partitioning Full text search

Common Table expressions SQL/XML, ENUM, UUID Type Window functions Per-database collation Replication, Warm standby

11

Page 12: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 아키텍처

Page 13: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 아키텍처

PostgreSQL 아키텍처 개요

13

Page 14: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL 아키텍쳐

PostgreSQL 프로세스 – 전체 프로세스

14

Page 15: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL GUI Tools

Page 16: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL GUI Tools

Postgres Studio – 관리 및 개발 콘솔

16

DB 스키마, 사용자 생성

테이블 함수, 프로시저 생성

디버깅

백업 및 복구

SQL 쿼리 윈도우

그래픽 explain

Page 17: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

PostgreSQL GUI Tools

Postgres Enterprise Manager – 관리 및 모니터링 툴

17

DBA 작업 지원

Global Dashboard

성능 모니터링

① Databases

② I/O

③ Storage

④ Objects

⑤ Memory

⑥ User/Session Activity

⑦ Database Wait Statistics

⑧ Operating System

서버 Start/Stop

파라미터 설정

Page 18: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postges Plus 개요

Page 19: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postgres Plus 개요

Postgres Plus History

2004년 PostgreSQL 기반의 Enterprise DB 전문기업인 EnterpriseDB 설립

PostgreSQL에 Oracle 호환성 기능과 관리도구를 추가한 Postgres Plus 버전 출시

PL/SQL, SQL 구문, 함수, DB Links, OCI 라이브러리 등 지원

Oracle 대비 80% 이상의 비용절감을 목표로 하고 있음

19

Page 20: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postgres Plus 개요

Postgres Plus TCO

비교 조건 사양

H/W 서버 수량 4

H/W 서버 사양 4 CPU/Server

TCO 비교 기간 3 년

83% 절감

20

Page 21: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postgres Plus 개요

Postgres Plus TCO 계산기

http://www.enterprisedb.com/products-services-training/products/postgres-plus-advanced-server/advanced-server-tco

21

Page 22: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postgres Plus 개요

Postgres Plus 제품 분류

+ 가장 안정된 오픈소스 DBMS + Full ACID compliance + 테이블 파티셔닝

+ 로-레벨 locking + MVCC + 온라인 백업 + Point-In-Time 복구 (시점복구)

+ SQL/XML Support + 커넥션 풀 (pgBouncer)

Postgres Plus Advanced Server

성능 + 64 core 까지 read 기능 확장 + Bulk Collect & Bind + Bulk INSERT with sub-query results + 쿼리 옵티마이제이션 힌트 + DynaTune® + Index only scans

툴 + Oracle® Replication Console + Postgres Enterprise Manager + DBA Management Server + DBA Monitoring Console + Migration Studio

오라클 호환성 + SQL, PL/SQL 80% 이상 호환 + 테이블, 인덱스, 함수, 프로시저, 시퀀스, 트리거, 뷰, 패키지 이관

기타 + xDB Multi-Master Replication + Cascading binary replication + Indemnification & Warranties + EDB*Wrap (코드보안)

Postgres Plus Solution Pack

인스톨러 + 통합된 바이너리 + GUI 인스톨러 + 검증된 써드 파티 모듈 탑재

+ Job Scheduler (pgAgent) + 자동 업데이트 알림 + Active-Stand by

+ Dynamic Debugger + Geo-Spatial 지원 (PostGIS) + 리플리케이션 지원

PostgreSQL

22

Page 23: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

Postgres Plus 개요

Postgres Plus Positioning

Postgres Plus는 트랜잭션 중심의 어플리케이션 환경에 적합하도록 설계되어, 상용 DBMS

사용자가 요구하는 기능 및 성능에 부합하고, 이를 저비용으로 구현할 수 있도록 제공됨

Read Intensive Applications

Transaction Intensive Applications

$$$

$

EnterpriseDB (Postgres Plus)

Cost

Oracle

IBM

Sybase

Microsoft

OLTP

DW, BI

23

Page 25: PostgreSQL / Postgres Plus - event.rockplace.co.krevent.rockplace.co.kr/wp-content/themes/renownedmint/pdf/PostgreSQ… · 대용량 데이터 처리 구조 대용량 데이터 처리를

감사합니다.