본문 바로가기

전체 글148

MPP DBMS Greenplum 컴파일 후 데모 클러스터와 psql 테스트 이 글에서는 MPP DBMS Greenplum 컴파일 후 데모 클러스터를 테스트 하고 기본적인 Greenplum Database를 실행하는 방법에 대해서 설명합니다. Table Of Contents MPP DBMS Greenplum 컴파일 후 데모 클러스터 테스트 Running tests Starting and Stopping Greenplum Database MPP DBMS Greenplum 컴파일 후 데모 클러스터 테스트 Greenplum을 컴파일 하고 난 후 아래와 같이 GPHOME을 설정해 줍니다. 기본으로 설치한 경우 아래와 같이 /usr/local/gpdb/에 설치됩니다. 아래와 같이 .bashrc 파일에 GPHOME을 넣습니다. 아래에 source /usr/local/gpdb/greenplu.. 2023. 12. 2.
MPP DBMS Greenplum Ubuntu - 그린플럼 우분투(22.04)에서 소스 컴파일 하기 이 글에서는 MPP DBMS Greenplum을 Ubuntu 22.04에 컴파일 하고 데모 DB를 생성하는 법에대해서 설명합니다. Table Of Contents Greenplum 소스 컴파일 사전준비 For Ubuntu: Common Platform Tasks: Greenplum 소스 컴파일 및 빌드 Greenplum 소스 컴파일 사전준비 기본적으로 github 페이지의 README.Linux.md 를 확인하면 다음과 같이 우분투에서 설치 및 컴파일을 위한 가이드가 나옵니다. For Ubuntu: Install Dependencies When you run the README.Ubuntu.bash script for dependencies, you will be asked to configure rea.. 2023. 12. 2.
MPP DBMS Greenplum 소스 코드 fork 및 다운로드 (3) - opensource 이 글에서는 Greenplum 소스 코드 다운로드를 하는 방법에 대해서 설명합니다. Table Of Contents Greenplum 소스 코드 github에서 오픈소스 프로젝트에 기여하는 법 Greenplum 소스 코드 다운로드 Greenplum 소스 코드 Greenplum은 오픈소스로 아래 링크에서 소스의 github 페이지와 소스 디렉토리 구조에 대해서 설명하고 있습니다. https://greenplum.org/introduction-to-greenplum-architecture/ Greenplum에 관심이 있으시다면 먼저 Greenplum 소스 코드를 다운로드하여 기여자의 첫 단계를 밟으실 수 있습니다. Greenplum은 Github에서 다운로드할 수 있습니다. 다운로드 후 먼저 소스 코드를 컴.. 2023. 12. 2.
MPP DBMS Greenplum Architecture (2) - opensource 이 글에서는 그린플럼 아키텍처에 대해서 1편에 이어서 설명합니다. Table Of Contents MPP DBMS Greenplum Architecture (2) 2 Phase Commit MPP DBMS Greenplum Architecture (2) 클라이언트가 마스터의 QD(Query Dispatcher: distributor) 프로세스에 쿼리 요청을 보내면, QD 프로세스는 원본 쿼리문을 구문 분석하고, 옵티마이저에 의해 분산 쿼리 계획을 생성한 후, libpq 프로토콜을 통해 각 세그먼트의 QE(Query Executor) 프로세스에 보내는 등 수신된 쿼리를 처리합니다. 각 세그먼트의 QD와 QE들은 상호 연결을 설정합니다. 여기서 주의해야 할 점은 Libpq는 주로 명령과 결과 반환을 제어하는.. 2023. 12. 1.
MPP DBMS Greenplum(그린플럼) Architecture (1) - opensource 이 글에서는 MPP DBMS 인 Greenplum 에 대해서 설명합니다. Table Of Contents Introduction To Greenplum Architecture Greenplum Overall Architecture Introduction To Greenplum Architecture 데이터베이스 관리 시스템의 발명은 효과적인 데이터 관리 및 쿼리에 대한 수요를 기반으로 합니다. 데이터베이스 관리 시스템이 있기 전에는 파일 기반 스토리지가 사용되었습니다. 다음 예에서 두 테이블은 바의 정보와 다른 바의 판매 정보를 나타냅니다. 이 두 가지 정보가 파일에 저장되어 있다면 두 개를 루프에 사용하여 각 매장의 맥주 판매량을 계산할 수 있습니다. 이 작업의 코드는 매우 짧지 만 알고리즘 복잡성은 .. 2023. 11. 30.
NoSQL의 처리 방식에 따른 분류, 순위 | Key-Value vs Document 전통적인 relational DBMS가 서비스 확장의 부하를 견디지 못하는 상황에서 확장성을 고려한 제품이 필요한 시대가 도래하였습니다. 이러한 요구는 스마트폰, IOT(사물인터넷)등으로 인한 빅데이터 시대가 도래하면서 서버의 데이터 저장용량 뿐 아니라 사용자 증가에 대한 확장성을 요구하고 있기 때문입니다. Table Of Contents NoSQL의 급부상 NoSQL 개념과 데이터 처리 방식에 따른 분류 1. Key-Value Database 2. Document Database 레디스 CRUD 몽고 DB CRUD Key 관련하여 NoSQL의 사용사례 NoSQL의 급부상 설명드린것처럼 사용자 증가와 빅데이터에 대한 요구사항으로 인해서 확장성을 요구하는 시스템을 찾기 시작하였습니다. 그에따라, NoSQL.. 2023. 11. 29.
NoSQL을 사용하는 이유와 Scale-out, Scale-up - 레디스(redis) vs 멤캐시드(memcached) 웹 서비스에서 client가 증가하면 WAS와 DB 서버에 많은 부하를 가져옵니다. WAS에 부하가 몰려서 시스템 한계에 다다른 경우에는 WAS를 하나 더 복제하여 client를 분산해서 처리할 수 있습니다. WAS는 데이터를 가지지 않기 때문에 분산이 쉽습니다. 그러나 DBMS가 한계에 다다르면 골치아파집니다. Table Of Contents client 증가가 backend에 미치는 영향 DBMS 서버의 처리량을 늘리는 방법 Scale-up vs Scale-out 데이터 캐시 사용 Sub-millisecond latency Developer ease of use Data partitioning Support for a broad set of programming languages Advanced da.. 2023. 11. 29.
HTAP OLAP과 OLTP 지원 DBMS의 기술 분석 2 [Parallel Replication across Formats in SAP HANA for Scaling Out Mixed OLTP/OLAP Workloads] 이 글에서는 DBMS에서 OLAP과 OLTP를 지원하기 위한 방법들 중 SAP HANA의 논문을 분석해 보겠습니다. 관련 기술을 참고하기 위해서 다음의 논문을 참고합니다. "Parallel Replication across Formats in SAP HANA for Scaling Out Mixed OLTP/OLAP Workloads" Table Of Contents Parallel Replication across Formats in SAP HANA for Scaling Out Mixed OLTP/OLAP Workloads 배경 ETL을 이용한 OLAP의 문제점 OLTP와 OLAP을 하나의 시스템에서 운영하는 문제점 문제 해결을 위한 시스템 설계 - Asynchronous Parallel Table Re.. 2023. 11. 28.
HTAP OLAP과 OLTP 지원 DBMS의 기술 분석 - 1[HTAP Databases: What is New and What is Next] 이 글에서는 DBMS벤더에서 OLAP과 OLTP를 어떻게 효율적으로 지원하는지를 연구한 논문에 대해서 설명합니다. 아래의 두 가지 논문에 대해서 정리하는데, 오늘은 첫 번째 논문 먼저 보겠습니다. 1. HTAP Databases: What is New and What is Next 2. Parallel Replication across Formats in SAP HANA for Scaling Out Mixed OLTP/OLAP Workloads : OLAP과 OLTP간의 이중화 병렬 복제 HTAP Databases: What is New and What is Next https://dl.acm.org/doi/pdf/10.1145/3514221.3522565 ACM의 다음 논문을 참고합니다. "HTAP D.. 2023. 11. 28.
Git과 SVN의 특징 및 차이점과 어떤 버전 관리 시스템을 사용할 것인가? 이 글에서는 Git과 SVN에 대해서 설명합니다. Table Of Contents 형상관리(Version Control Revision Control) 툴 이란? 형상관리툴 종류 SVN vs Git Subversion(SVN) Git SVN과 Git의 차이점 정리 개발자 입장에서 SVN과 Git의 차이점 정리 SVN과 Git 결론 형상관리(Version Control Revision Control) 툴 이란? 소프트웨어의 소스를 관리하며 버전 관리 툴이라고도 합니다. 형상관리는 소스의 변화를 끊임없이 관리하는 것을 말합니다. 소스를 버전 별로 관리할 수 있어서 개발할 때 실수로 소스를 삭제하거나, 수정하기 이전으로 돌아가야 되는 경우 유용하게 사용됩니다. 특히 유지보수 시에 고객이 사용하는 버전의 코드를.. 2023. 11. 28.
NoSQL이란 무엇인가? 데이터 저장소는 기존의 RDBMS에서 처리해왔다. RDBMS에 데이터를 넣기 위해서는 데이터를 일반화 시켜서 정해진 컬럼으로 정규화하고 관계를 정의해야한다. 그러나, 최근의 서비스들은 크기와 구조를 예측할 수 없는 비정형 데이터에대한 요구가 증가하고 있습니다. 비정형 데이터 비정형 데이터의 예를 들어보면, JSON과 같은 데이터는 구조에 따라 저장된 데이터지만 데이터 내용 안에 구조에 대한 설명이 함께 존재합니다. 그렇기 때문에 데이터 내용에 대한 설명인 구조를 파악하는 파싱 과정이 필요합니다. 웹에서 데이터를 교환하기 위해 작성하는 많은 HTML, XML, JSON 문서나 웹 로그, 센서 데이터 등은 모두 비정형 데이터에 속합니다. 이러한 데이터를 기존의 RDBMS에 적재하기 위해서는 많은 정규화 과정.. 2023. 11. 27.
알리바바 클라우드 폴라 디비 - PolarDB HTAP(Hybrid Transactional Analytical Processing) 이 글에서는 PolarDB HTAP 구조에 대해서 설명합니다. 목차 PolarDB HTAP 소개 Basic Principles of HTAP Distributed Optimizer Parallelism of Operators SQL Statement-level Scalability Transactional Consistency PolarDB HTAP 소개 PolarDB의 공유 스토리지는 스토리지 풀로 구성됩니다. 읽기/쓰기 분할이 활성화된 경우, 공유 스토리지가 지원하는 이론적인 I/O 처리량은 무한대입니다. 하지만 대용량 쿼리는 개별 컴퓨트 노드에서만 실행할 수 있으며, 단일 컴퓨트 노드의 CPU, 메모리, I/O 사양이 제한되어 있습니다. 따라서 단일 컴퓨팅 노드로는 공유 스토리지가 지원하는 높은 I.. 2023. 11. 25.