Agenda
● MariaDB Xpand Quick Overview
○ 기능과 장점
○ SkySQL 에서 MariaDB Xpand 사용하기
● MariaDB Xpand 고객 사례
○ 삼성 S-클라우드 업무
○ 미국 최대 소비자 금융 기업
○ 미국 금융/회계 소프트웨어 기업
MariaDB Xpand
풍부한 기능과 강력한 성능
■ 표준 SQL 호환성
○ SQL 호환성을 지원하면서도 강력한 확장성을 제공함
○ Joins, ordering, aggregates, stored
procedures/functions, JSON functions
■ 거의 무제한의 확장성
○ 3개 노드로 작게 운영용 DB 를 시작할 수 있음
○ 단일 클러스터에 수백개 노드를 배치할 수 있음
○ 노드 개수가 늘어날수록 선형적으로 성능이 증가함
■ 실시간 분석을 위한 컬럼 인덱스 지원
○ Xpand 는 컬럼 인덱스를 지원하는 유일한 분산 SQL 임.
■ 향상된 데이터 정합성
○ Xpand 는 복수개 데이터를 실시간으로 sync 하므로
데이터 정합성을 지키면서 확장함
○ 데이터 정합성 특성 (ACID) 를 보장함
■ 강력한 가용성
○ 복수개 가용성 존 (AZ) 에 데이터를 동시 저장할 수
있음
○ 병렬 스트리밍 복제기능을 이용하여 원격지
데이터센터 및 리젼에 레플리카 클러스터를
배치하여 active/active 및 active/passive 구성 가능
■ Self Managing Capabilities
○ 자동으로 zone 의 상태를 감지하고 데이터를 타
zone 으로 이동하여 이상적인 데이터 분배 구조를
유지
■ MariaDB SkySQL 및 온프레미스에서 사용가능
MariaDB Xpand
MariaDB SkySQL 로 클라우드 분산 SQL 활용
■ 전세계 모든 클라우드 zone 이용
○ 병렬 데이터 스크리밍 기능을 이용하여 서로 다른
클라우드에 복수개 클러스터 구성
○ Active/Active 및 Active/Passive 을 지원하는 구성 가능
(원격지 Zone 에 복제 클러스터)
■ 클라우드 중립성
○ AWS 의 리젼 사용
○ GCP 의 리젼 사용
○ 2023년도에 클라우드 벤더 추가 예정
■ 완전 관리형 및 자동화
○ 완전 관리형으로 자동화되서 클라우드 환경에
Xpand 를 구성함
○ 쿠버네티스 기반이며 MariaDB 직원들에 의해
유지보수 및 모니터링 됨
■ 보안 우선
○ 엔드-투-엔드 암호화
○ 싱글 테넌트 아키텍쳐 지원
○ IP 화이트리스팅 및 Private Networking Solutions
삼성전자 S 클라우드 업무
레거시 환경 및 도전 과제들
● MySQL 을 사용하던 레거시 시스템에서 발견된 여러 문제점들
○ 서비스 성장에 따른 확장성 이슈
○ 복잡한 수동 샤딩 구조
● 샤딩이 야기한 여러 문제점들
○ 복잡한 백업 과정과 서비스 안정성 저하
○ 샤딩 구조 유지를 위한 추가적인 개발 작업들
삼성전자 S 클라우드 업무
Xpand 테스트 및 검증 과정
● 대규모 POC 진행
○ 수동 샤딩 제거를 지상 목표로 삼음
○ 위 목표 이외에도 초고성능을 유지해야 했음
● 1년 가량 POC 를 진행하고 운영환경으로 이행함
○ 신속히 Xpand 를 운영 환경으로 전환함
● 대규모 확장성 역시 중요한 고려사항 이었음
○ 운영 전환 직후부터 서비스는 성장하였으며 현재 50개 이상의 DB 노드를
유지중임
삼성전자 S 클라우드 업무
MariaDB 와의 파트너십과 추가적인 장점들
● 삼성전자 / MariaDB 간 긴밀한 협력
○ Xpand 기능 로드맵에 고객사 의견 반영
○ 고객사 요구 사항을 지원하여 커스텀 기능 추가
○ 고객사 내부 테스트와 QA 작업을 MariaDB 가 후방 지원
● 일일 100억 건에 달하는 콜 수
○ 중규모 클러스터에서 116,000 TPS 처리
● 향상된 안정성과 가용성이 요구사항이었음
● 레거시 시스템 대비 50% 비용절감
미국 최대 소비자 금융 기업 사례
레거시 환경 및 도전 과제들
● 레거시 시스템 - 개인 주식 트레이딩
○ IBM DB2 사용
○ 인-하우스 개발된 레거시 App 사용 중이었음 (인프라는 AWS 사용)
○ 복수개 데이터 소스가 얽혀있었음
● 수많은 문제점이 산재해있었음
○ 메인프레임 및 유지보수 비용
○ 마이크로서비스 적용 불가
○ 사용자 경험 품질이 좋지 않음 (긴 대기 기간)
○ 벤더 락인
○ 민첩성이 요구되는 경쟁 환경 (애자일한 경쟁자들)
미국 최대 소비자 금융 기업 사례
Xpand 테스트 및 검증 과정
● 기술 스택을 새로 개발함
○ 마이크로서비스 기반 아키텍쳐
○ 클라우드를 사용하면서도 중립성 유지
■ 개방성 기준 (오픈 스탠다드) 을 기반으로 함
○ MariaDB Xpand 를 포함하여 데이터 티어를 단순화함
○ 클라우드 퍼스트를 지키면서도 필요할 때 온 프레미스로 돌아갈 수 있도록 준비함
● 광범위한 성능 및 호환성 테스트
○ 고객사 / MariaDB 공동 테스트 진행
○ 기존 워크로드에서 기록한 성능을 한참 뛰어넘는 규모의 시뮬레이션 환경들에서 성능
테스트 수행
○ 3개 노드 클러스터에서 점차 규모를 늘려감
■ 주식 매입/매수 매칭 시스템에서 16,000 TPS 를 기록함
■ 워커 pod 를 늘려가며 선형적으로 성능이 올라감을 확인함
미국 최대 소비자 금융 기업 사례
MariaDB 와의 파트너십과 추가적인 장점들
● 커스텀 통합 (Integrations) 작업
○ DataDog 통합
○ 체인지 데이터 캡쳐 (CDC) 통합
● 강력한 파트너십 확립
○ MariaDB 엔터프라이즈 아키텍쳐 서비스 이용
○ 공동으로 플랫폼 개발 작업
● 제품 기능 로드맵에 고객 의견 반영
○ 고객사의 환경과 의견을 반영하여 기능 개선과 코드 작업
미국 최대 소비자 금융 기업 사례
최종 마이그레이션 및 실 서비스 시작 (Go-Live)
● 운영 데이터 마이그레이션
○ 복수개 데이터 소스를 병합
○ Xpand 데이터 아키텍쳐로 단순화
● 일부 기능을 대상으로 실제 서비스 시작
○ 내부 직원만을 대상으로 서비스를 시작해봄
○ 현재는 전세계 고객을 대상으로 서비스 중
미국 금융/회계 소프트웨어 기업
레거시 환경 및 도전 과제들
● 오라클 엔터프라이즈 및 골든게이트 (OGG) 사용중이었음
○ 복수개 AWS 존에서 복수개의 DB 클러스터를 연결하여 사용중이었음
○ 기술 지원 용이성 및 복잡성 이슈
○ 서로 다른 여러 개 서비스를 시스템에 추가 중 성능이슈가 발생함
○ 데이터 조작 (Manipulation) 및 변환 (Transformation) 규칙들이 이슈화 됨
● 전사 차원에서 오라클의 대체대를 찾게 됨
미국 금융/회계 소프트웨어 기업
Xpand 테스트 및 검증 과정
● 기술 스택을 완전히 새롭게 개발함
○ 마이크로서비스 아키텍쳐 적용
○ 데이터 조작 (manipulation) 의 복잡성에 대한 해결책으로 Xpand 가 제시됨
● 초기 테스트에서 모든 쓰루풋 요구 사항을 만족함
○ 초기 워크로드에서 6,000 TPS 가 기준이었으며, 3개 노드 최소 구성 클러스터에서
15,000 TPS 이상을 기록함
○ 서로 다른 AWS region 에서의 Active/Active 구성을 위해 양방향 복제 구조를 테스트함
● 복잡한 요구사항과 테스트 사항이 반영된 6개 페이즈로 테스트를 진행함
미국 금융/회계 소프트웨어 기업
MariaDB 와의 파트너십과 추가적인 장점들
● 강력한 파트너십 확립
○ MariaDB 엔터프라이즈 아키텍쳐 서비스 사용
○ MariaDB Xpand 제품 로드맵에 의견 반영
● 제품 기능 로드맵에 고객 의견 반영
○ 고객사의 환경과 의견을 반영하여 기능 개선과 코드 작업