메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

가 크게 작게 위로 아래로 댓글로 가기 첨부
Extra Form
출처 https://bitnine.tistory.com/516

PostgreSQL / 오픈소스 vs 상용, 벌어지는 인기 트렌드 격차

postgresSQL.png

지난 해부터 소프트웨어 업계에서는 오픈소스 생태계가 대세가 되면서 상용 DBMS 사용 입지가 줄어들고 있습니다. 모바일 운영체제를 포함하여, 클라우드, 데이터베이스, 웹서버, 빅데이터 등의 주류를 이루는 소프트웨어 분야에서 오픈소스 기술이 사용되지 않는 곳을 찾아보기 어려울 정도이기 때문이죠. 

2.png

상업 라이선스와 오픈소스 라이선스의 인기 트렌드 (출처:DB Engines.com)

대표적인 상용 DBMS로는 외산 DB인 오라클(Oracle)이 있는데, 이는 높은 라이선스 비용 때문에 말이 많으며 불평등한 계약 조건과 데이터 마이그레이션이 복잡하다는 점 때문에 오라클로부터 종속 탈피하려는 국내 기업이 증가하고 있습니다. 지나치게 높은 유지보수 비용은 고스란히 제조 원가의 상승으로 이어지고, 그 영향이 최종 소비자에까지 전가되기 때문입니다.  
이와 같은 현상에 대한 반발로 현재 DB 시장은 오픈소스 제품에 관한 관심이 높아졌습니다. 
특히 국내 DB 시장에서는 PostgreSQL을 기반으로 한 데이터베이스들이 늘어나고 있습니다.   
본 글을 통해 어떠한 이유로 기업이 다양한 DB 중에 PostgreSQL과 같은 오픈소스를 선택해야 하는지에 대해 알리고자 합니다.

포스트그레스큐엘(PostgreSQL), 오픈소스 DBMS의 다크호스

3.png
오픈소스 RDBMS 관심도 순위 (2022년 5월 기준) (출처:DB Engines.com)

PostgreSQL은 세계에서 가장 많이 쓰이는 관계형 DBMS 중 하나로, DB엔진 기준으로 오라클과 MySQL, MS SQL 다음 4위를 차지하고 있으나, 수 년 간 압도적인 성장 속도를 보여주며 3위와의 격차를 좁혀나가고 있습니다. 다양한 프로그래밍 언어 및 어플리케이션을 지원하여 여러 DBMS 중에서도 특히 개발자들이 선호해 충성도가 높은 편이고, 오픈소스 커뮤니티 또한 상당히 활성화되어 있습니다. 전 세계에서 개최되는 컨퍼런스나 세미나도 꾸준한 편입니다. 
많은 DB 사용자들이 PostgreSQL 같은 오픈소스 소프트웨어를 사용하는 데에는 아래와 같은 이유가 큽니다. 


기업이 오픈소스 소프트웨어를 선택하는 이유

4.jpg

1) 비용 절감
비용 절감은 기업에 있어서 가장 중요하고 큰 장점입니다. 오픈소스 소프트웨어는 프리웨어 소프트웨어와 마찬가지로 무료 이용이 가능합니다. 여기서 더 나아가 소스 코드가 공개되어 직접 소프트웨어의 개선 또는 수정할 수 있으며, 이에 따라 개발 비용이 적게 드는 것입니다. 실제로 오픈소스는 무료 다운로드와 수정 및 재배포가 가능하여 초기 개발 비용이 새 소프트웨어를 개발하는 것의 절반 정도 되는 것으로 알려져 있습니다. 

2) 빠르고 유연한 개발
오픈소스 커뮤니티는 다양한 이용자들에게서 최신 기술 정보와 문제점의 해결책을 공유하여 운영되기 때문에 독점 프로그램에 비해 기술의 발전 속도가 빠른 편에 속합니다. 특히 개발자와 사용자가 일치하는 경우 클로즈드 소스 프로그램(closed source program)보다 뛰어난 고품질 오픈소스 소프트웨어가 개발되기도 합니다.

3) 호환성/유연성
오픈소스는 주로 오픈 포맷 또는 오픈 프로토콜을 사용하기 때문에 서로 다른 소프트웨어 간의 연동이 쉽습니다. 서로 다른 플랫폼끼리의 상호 연동도 가능합니다. 또한 특정 기기, 운영체제, 애플리케이션에 종속되지 않고 자유로운 변경이 가능합니다. 여러 기기가 네트워크를 통해 하나로 연결되는 유비쿼터스 시대에 아주 적합한 장점이라고 할 수 있습니다.

4) 신뢰성/안정성
전 세계의 수많은 개발자들과 전문가들이 오픈소스의 개발에 참여하기 때문에 폐쇄적으로 개발되는 독점 프로그램에 비해 안정적입니다. 단, 이는 많은 개발자가 적극적으로 참여하는 프로그램의 경우에만 가능하므로 해당 오픈소스의 평판과 개발 과정을 주의 깊게 볼 필요가 있습니다. 


Why PostgreSQL?

5.jpg

PostgreSQL을 사용하는 사람들은 대부분 제품에 대한 애정도와 충성도가 높은 편으로 알려져 있습니다. 다른 제품과 비교하면 부족하지 않은 기능과 성능을 갖추고 있고, 새로운 개발자들이 입문하기 좋은 조건들을 가지고 있기 때문입니다. PostgreSQL과 관련된 매뉴얼, 문서와 관련 서적, 그리고 각국에서 개최되는 다양한 세미나와 콘퍼런스 등도 PostgreSQL의 꾸준한 존재를 뒷받침하고 있을 정도입니다. 이는 한마디 로 왕성한 커뮤니티 활동의 산물이라고 볼 수 있습니다. 

하지만 커뮤니티가 왕성하다고 다가 아니죠. 실제 PostgreSQL 사용자가 꼽는 대표적인 특징은 다음과 같습니다.  

1) 최다 SQL 기능 지원


6.png

가장 오랜 기간 개발을 거친 PostgreSQL은 관계형 DB 중에서 최다 SQL을 지원합니다. 

2) 최다 SQL 표준 지원
SQL : 2016 또는 ISO/IEC 9075:2016은 SQL 데이터베이스 쿼리 언어에 대한 ISO 및 ANSI 표준의 8번째 개정판으로 2016년 12월에 공식적으로 채택된 바 있습니다. PostgreSQL은 전체 179 항목 중 170 항목인 약 95%의 SQL 표준을 지원합니다.

3) 풍부한 데이터 유형 지원
PostgreSQL이 지원하는 데이터 유형은 일부 NoSQL도 포함하고 있는데요, 이는 차별화된 확장 기능(extension)으로 제공됩니다. 

- Key-Value, XML
- JSON, JSONB
- Columnar Store
- Graph (예: Apache AGE)

4) 프로그래밍 언어 지원
PostgreSQL이 지원하는 언어는 다음과 같습니다. 
- Server-side language, c/c++, PL/pgSql, PL/Tcl, PL/Perl, PL/Python, PL/Ruby
- External language
- PL/Java, PL/Lua, PL/R, PL/sh, PL/v8

5) 대량 데이터 처리
PostgreSQL은 다음과 같은 기능덕에 대량 데이터 처리가 가능합니다.
- Table Partitioning
- Parallel query & multiple processes
- Analytic & aggregate functions
- Indexing & JOIN

PostgreSQL에는 OpenGIS 규격 (https://www.ogc.org/standards/sfs)을 준수하며 geographic object를 지원하는 미들웨어 형태의 확장 기능인 PostGIS가 오픈소스로는 가장 많은 사용자를 확보하고 있습니다. 오라클과 MS SQL에도 GIS 상용 제품이 있으나 비용 대 성능 측면에서 그다지 환영을 받지 못하고 있다는데요, 게다가 PostGIS의 성능은 Oracle과 비견할만하다는 벤치마크 자료도 온라인상에서 찾아볼 수 있습니다.

또한, PostgreSQL은 클라우드 분야에서도 많이 회자되고 있습니다. DbaaS(DB as a Service)를 제공하는 기업이 늘어나면서 비용과 라이선스 측면에서 유리한 PostgreSQL에 대한 수요가 증가했습니다. 다양한 데이터를 수집 및 저장하고 다양한 관계자들이 언제든 분석과 현황을 확인 할 수 있는 데이터 환경이 중요한데, 이럴 때 클라우드 DBMS를 적용하면 다양한 데이터 유형, 대용량으로 증가하는 데이터, 다른 곳의 데이터를 수집 및 연계하는 환경을 쉽게 구축 할 수 있습니다. 

PostgreSQL 도입 시 기업이 살펴볼 사항

위 장점에도 불구하고 오픈소스 데이터베이스를 도입할 때 기업이 살펴봐야 할 사항들이 몇 가지 있습니다. 우선 PostgreSQL은 외산 DBMS이기에 그대로 업무에 활용하기에는 국내 데이터 환경 맞지 않는다거나, 업무에 필요한 기능 부재로 인한 어려움을 겪을 수 있습니다. 그렇다면 이런 외산 DBMS를 활용하고자 하는 목적과 환경에 맞게 개발해야 할 것입니다. 또한, 긴급상황 시 지원이 가능한지, 보안은 완고한지, 그리고 지속적인 기술지원을 받을 수 있는지에 대해 고려하는 경우가 대부분일 것입니다. 

기업에 PostgreSQL을 다룰 줄 아는 전문가가 있다면 직접 PostgreSQL을 무료로 받아서 사용해도 상관없겠지만, 위 오픈소스 소프트웨어를 선택하는 이유에 언급한 장점들을 챙기려면 해당 오픈소스 DB에 대한 경험이 있어야 하고, 유지보수 및 기술지원을 제공할 수 있는 DB 제조사를 찾아야 할 것입니다.

7.png
PostgreSQL 도입 시 고려해야하는 사항

 


  1. 데이터 모델링 개념 & ERD 다이어그램 작성

    목차 데이터 모델링 이란? 데이터 모델링 순서 절차 1. 업무 파악 (요구사항 수집 및 분석) 2. 개념적 데이터 모델링 3. 논리적 데이터 모델링 4. 물리적 데이터 모델링 데이터 모델링 절차 정리 ERD (Entity Relationship Diagram) 그리기 ERD 엔티티 표기법 ...
    Date2024.12.07 Reply0 Views408
    Read More
  2. No Image

    MariaDB, INFORMATION_SCHEMA INNODB_TRX 테이블

    INFORMATION_SCHEMA INNODB_TRX 테이블INNODB_TRX 테이블에 트랜잭션이 잠금을 대기하고 있는지 트랜잭션이 시작되었을 때 트랜잭션이 실행하는 SQL 문 (존재하는 경우) 등 InnoDB 내부에서 현재 실행중인 (읽기 전용 트랜잭션을 제외 ) 모든 트랜잭션에 대한 ...
    Date2024.11.26 Reply0 Views503
    Read More
  3. No Image

    MariaDB 용량조회

    mariadb를 운영하다보면 filesystem 경로에 데이터가 족족 쌓이는걸 확인할 수 있다. 오라클과 구조가 달라 테이블스페이스라는 개념이 없기때문이다. postgresql도 또한 filesystem에 족족 데이터가 쌓인다. db를 운영하는 입장에서는 filesystem의 용량도 봐...
    Date2024.11.17 Reply0 Views422
    Read More
  4. No Image

    Entity(엔터티)의 개념

    1. Entity 의 개념 Entity : 실체, 객체라는 의미로 실무적으론는 앤터티라고 부른다. 즉 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것으로 설명할 수 있다. 예) 학생이라는 엔터티는 학번, 이름, 학점, 등록일자, 생일, 전공 등의 속성...
    Date2024.11.07 Reply0 Views537
    Read More
  5. NCP - Cloud DB for MySQL

    MySQL 데이터베이스를 쉽고 간편하게 구축하고 관리Cloud DB for MySQL 상품을 통해 MySQL 데이터베이스를 손쉽게 구축하고 운영할 수 있습니다. Cloud DB는 네이버 서비스에서 검증된 최적화 설정을 통해 안정적으로 운영되며, 장애가 발생하면 자동으로 복구...
    Date2024.10.19 Reply0 Views530 file
    Read More
  6. NCP - MariaDB Enterprise Server

    MariaDB Enterprise Server는 엔터프라이즈 신뢰성, 안정성 및 장기적인 지원은 물론, 비즈니스 크리티컬 및 미션 크리티컬 애플리케이션을 위한 대용량 데이터베이스 구축을 관리해야 할 경우 더욱 뛰어난 운영 효율성을 제공합니다. MariaDB Enterprise Serv...
    Date2024.10.19 Reply0 Views589 file
    Read More
  7. MySQL, MariaDB 차이점

    서론데이터베이스에는 RDBMS와 NoSQL이 있다. RDBMS의 대표적인 예로는 MySQL이 있고, NoSQL의 대표적인 예로는 MongoDB가 있다. 그런데 나는 처음 데이터베이스를 다룰 때 mariaDB를 사용했다. MySQL과 유사하다는 것만 알고 있었기에 MySQL과 MariaDB의 차이...
    Date2024.10.19 Reply0 Views569 file
    Read More
  8. DB 모델링 - ERD(Entity Relationship Diagram)

    ERD(Entity Relationship Diagram) 개체 또는 데이터 간의 관계를 표현한 도식화된 그림을 말합니다. 글로 표현되어 있는 관계를 그림으로 나타낸 것입니다. Entity 데이터의 집합을 의미하는 추상적인 의미를 뜻합니다. Entity는 여러 속성(Attribute)를 가집...
    Date2024.09.24 Reply0 Views556 file
    Read More
  9. No Image

    MongoDB의 특징과 이점

    MongoDB란? MongoDB(IBM 외부 링크)는 오픈소스 비관계형 데이터베이스 관리 시스템(DMBS)으로, 테이블과 행 대신 유연한 문서를 활용해 다양한 데이터 형식을 처리하고 저장합니다. NoSQL 데이터베이스 솔루션인 MongoDB는 관계형 데이터베이스 관리 시스템(R...
    Date2024.09.15 Reply0 Views492
    Read More
  10. CUBRID, 국내 유일의 오픈소스 DBMS

    CUBRID, 국내 유일의 오픈소스 DBMS다. 다양하게 쓰인다.겁나 잘나간다 와! 이 모든 기능이 무료! 엔진의 소스 코드가 수정되면 소스를 까야하지만, 큐브리드 DBMS를 사용하도록 개발된 것들은 소스 코드를 공개하지 않아도 판매할 수 있다. 큐브리드 = 응용프...
    Date2024.09.15 Reply0 Views547 file
    Read More
  11. 2023년 데이터베이스 관리 시스템(DBMS) 순위

    2023년 데이터베이스 관리 시스템(DBMS) 순위 Database/INFO / aruru / 2023. 3. 17. 19:52 DB-Engines 에서는 자체 산정 기준에 따라 매월 DBMS 순위를 산정합니다. 산정 기준은 검색 엔진(Google, Bing) 검색횟수, Google 트렌드 검색빈도, SNS(LinkedIn, 트...
    Date2024.09.15 Reply0 Views812 file
    Read More
  12. MySQL 메이저 버전 업그레이드(MySQL 5 → MySQL 8) — 네이버 클...

    네이버클라우드에서 주요 고객 기술 지원을 담당하는 TAM (Technical Account Manager) 강철곤입니다. 업무 특성상 다양한 고객・파트너와 소통하며 업무를 진행합니다. 이런 제게 소프트웨어 업그레이드는 반가운 소식이면서도 어려움을 가져다 주기도 하는데...
    Date2024.09.15 Reply0 Views525 file
    Read More
  13. MySQL, EOS 및 EOL

    MySQL, EOS 및 EOL
    Date2024.09.15 Reply0 Views599 file
    Read More
  14. No Image

    MariaDB, LTS 및 EOS

    development and production https://mariadb.com/downloads/connectors/ MariaDB Community Version은 Free이며 해당 제품을 기반으로 작성하였습니다. Stable Date는 해당버전의 안정화된 버전의 출시날짜이고, 유지보수 지원기간은 일반적으로 5년입니다. L...
    Date2024.09.09 Reply0 Views681
    Read More
  15. PostgreSQL 설치 및 세팅 & pgAdmin 사용법 - Windows

    PostgreSQL 설치 및 세팅 & pgAdmin 사용법 - Windows 이번 글에서는 PostgreSQL 설치 방법과 초기 세팅, pgAdmin을 사용해 Database 생성 및 User 생성에 대해 정리할 것입니다. 우선 pgAdmin이란 PostgreSQL을 설치했을 때 기본적으로 설치되는 것이고, ...
    Date2024.02.19 Reply0 Views708
    Read More
  16. [PostgresSQL 이야기 1화] PostgresSQL 특징 및 장단점 소개

    오픈소스 DB 전성시대, 기업들이 PostgreSQL을 선택하는 이유“클라우드 전환에서의 오픈소스 DB, 선택 아닌 필수” 클라우드 도입 확대로 다가온 오픈소스 DBMS 전성시대, 그 중에서 개발자들이 가장 선호하는 포스트그레SQL은 대량의 데이터를 다루는 기업 및 ...
    Date2024.02.19 Reply0 Views593 file
    Read More
  17. PostgreSQL / 오픈소스 vs 상용, 벌어지는 인기 트렌드 격차

    PostgreSQL / 오픈소스 vs 상용, 벌어지는 인기 트렌드 격차 지난 해부터 소프트웨어 업계에서는 오픈소스 생태계가 대세가 되면서 상용 DBMS 사용 입지가 줄어들고 있습니다. 모바일 운영체제를 포함하여, 클라우드, 데이터베이스, 웹서버, 빅데이터 등의 주...
    Date2024.02.19 Reply0 Views508 file
    Read More
  18. No Image

    데이터 통합 도구 BTL Data Integrator(BTL DI) 소개

    https://www.youtube.com/watch?v=wT6ng96G6XU 데이터 통합 도구 BTL Data Integrator(BTL DI) 소개 BTL Data Integrator(BTL DI) 는 데이터 통합 및 마이그레이션을 위한 “ETL (Extract, Transformation, Load) Solution” 입니다. 다수의 원천 시스템으로 부...
    Date2023.06.22 Reply0 Views740
    Read More
  19. No Image

    [proc,ec,esql] 가장 기본적인 ec, 프로씨(proc) insert 프로그램

    [proc,ec,esql] 가장 기본적인 ec, 프로씨(proc) insert 프로그램 프로씨(proc) 강좌나 한국어 자료가 검색해보면 없다. 그래서 프로씨에 관해 궁금한 사람들을 위해 기초부터 전개해본다. 시중에 프로씨에 관한 책이 없기 때문에 충분한 내용이 전달안될 수도...
    Date2023.06.16 Reply0 Views564
    Read More
  20. No Image

    DB 암호화 - Echelon V2.5

    DB 암호화 - Echelon V2.5 - 데이터보안소프트(DataBoanSoft Inc.) Echelon V2.5는 국내 1300여개 고객사에서 검증된 컬럼단위 DB암호화 솔루션으로 국내최초 CC인증을 획득한 제품입니다. echelon_box.gifechelon_cc인증.pngCC인증echelon_암호화모들검증.jpg...
    Date2023.03.06 Reply0 Views552
    Read More
목록
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7