데이터베이스SingleStore DB

SingleStore DB

SingleStore DB는 인메모리 및 디스크 기반의 분산형 구조로 OLTP와 OLAP 워크로드를 용량과 성능 요구에 따라 높은 동시성 상황에서 선형적으로 확장이 가능한 클라우드 네이티브 관계형 데이터베이스입니다.

서브페이지 상단 탭 영역

SingleStore DB

SingleStore DB는 OLTP 및 OLAP 업무를 동시에 수용하며 확장이 자유로운 분산처리 관계형 데이터베이스입니다. Scale-Out을 통한 최상의 성능을 제공하며 높은 동시 사용성을 보장합니다. 대용량 데이터를 실시간 수집 및 처리가 가능하고 온프라미스, 클라우드, VM 환경 등 다양한 환경에서 빠른 구축을 지원합니다. 또한 관계형 데이터만이 아닌 Key-Value, JSON, 시계열 데이터를 테이블 기반으로 저장해서 SQL 기반으로 처리가 가능합니다.

SingleStore DB

아키텍처와 DB엔진 - Basic Cluster Topology

기업들의 실시간 비즈니스 환경에 적합하게 트랜잭션 처리 유형에 따라 분산처리를 위해 선형적으로 무한 확장하는 구조를 갖고 있습니다.

  • Aggregator, Leaf의 2-Tier
    SQL쿼리수신(Aggregator) ➔ 워크로드 분할(Leaf) ➔ 결과집계/Client회신(Aggregator)
    Shared Nothing의 Scale-Out 확장 구조
    On-line 노드 확장을 통한 선형적 성능/동시성 향상
    - 안정적인 업무용량 확장
    - 신속한 DB 서비스 구성
    분산 병렬 처리(Massively Parallel Processing)
    Flexible Parallelism (Scale-Up)

SingleStore DB

아키텍처와 DB엔진 - USD(Unlimited Storage Database)

Compute 와 Storage 분리를 통한 유연한 Scale out이 가능합니다.

  • S3 호환 object storage를 DB 저장소로 활용 가능
    Scale-out을 위한 DB 복제 불필요
    시점 복구 기능 사용 가능
    Data 변경은 Local Cache 기록
    주기적으로 Cache를 S3에 flush

SingleStore DB

로우스토어 & 컬럼스토어

데이터를 저장 및 처리를 인 메모리 또는 디스크에서 각각 처리할 수 있어 OLTP와 OLAP 워크로드를 모두 지원하여 HTAP이 가능합니다.

SingleStore DB

내구성(Durability) / 고성능 DML

인메모리 로우스토어는 강력한 내구성을 제공하고, 컬럼스토어는 디스크 I/O를 최소화하여 성능을 극대화합니다.

  • 로우스토어 데이터 및 인덱스 (인 메모리)
    복구를 위한 스냅샷과 로그를 디스크에 저장
    메모리에 최적화된 ‘Skiplist’ 데이터 구조

    대규모 동시 업데이트

    로우스토어 데이터 및 인덱스 (인 메모리)

  • 컬럼스토어 데이터 (캐쉬 / 디스크)
    조건에 부합하는 Column Segment를 찾기 위해 Column Index 활용
    해당 Segment만 Cache에 올려 디스크 I/O를 최소화한 Scan 수행
    Rowstore Cache 데이터는 자동으로 디스크로 저장(flush)

    연속적인 데이터 Fast Writes 탁월

    컬럼스토어 데이터 (캐쉬 / 디스크)

트랜잭션의 동시성을 높이는MVCC

  • 최신의 MVCC 기능을 통해 대량의 동접자 수용이 가능합니다.
    모든 Write은 새로운 버전의 Row를 생성함
    메모리 우선 처리로 매우 빠른 속도로 Commit
    Old 버전은 garbage-collect 됨
    Read는 절대 Block되지 않음
    Write을 위해 Row-level locking
    Online ALTER TABLE 허용

트랜잭션의 동시성을 높이는MVCC

고가용성(High Availability)

  • 리프 노드는 다른 가용 그룹(AG)의 리프 노드와 쌍으로 구성됩니다.
    Leaf 노드는 다른 가용 그룹(AG)의 leaf 노드와 Pair로 구성
    쌍으로 구성된 Leaf 노드가 Data를 다른 leaf 노드로 복제
    Leaf 노드간 복제는 동기식 or 비동기식
    데이터는 파티션 별로 관리

고가용성(High Availability)

데이터 센터 간 복제(Disaster Recovery)

  • 데이터 복제는 비동기식으로 저장
    DR 노드는 Heavy Read workload용으로 활용 가능

데이터 센터 간 복제(Disaster Recovery)

백업 및 복구

요금표
Local NFS S3, GCS, Blobs
백업/복구 각 Leaf 노드 자체 지정된 파일 시스템 경로 개체 경로

보안(Security)

  • 사용자 인증, 암호 정책, 세분화된 액세스 제어 및 인증서 기반 네트워크암호화(클라이언트 및 DB 클러스터, 클러스터의 개별 노드)
    감사 로깅(Audit Logging)

SingleStore 파이프라인

  • 외부 소스에서 실시간 데이터 수집
    - Kafka, Amazon S3, Azure Blob, Google Cloud Storage, Filesystem,과 HDFS
    - JSON, Avro, and CSV 데이터 포멧 지원
    외부 데이터를 추출, 변환 및 로드(ETL) 기능 제공
    병렬 확장을 통한 분산 워크로드 처리를 통한 빠른 성능 제공

SingleStore 파이프라인

복제(Replicate) / CDC 툴

  • 소스 : Oracle, DB2, MySQL, SQL Server, PostgreSQL, Netezza, Teradata, Vertica, Salesforce, AWS Aurora, Cassandra, SAP Hana, MongoDB

SingleStore DB Studio

  • 클러스터 관리 및 디버그를 위한 Web기반 관리자 콘솔
    SQL Editor
    쿼리/노드의 워크로드 프로필 기록 및 시각적 분석
    - Disk/Mem/NW 사용량, Disk/CPU Wait IO 등

    파이프라인 관리 및 실시간 모니터링

    파이프라인 관리 및 실시간 모니터링

    튜닝을 위한 Visual Explain기능
    - 병목 구간 파악, 스키마 최적화 및 성능 개선

    튜닝을 위한 Visual Explain기능

쿠버네티스를 위한 Operator 제공

  • 쿠버네티스 환경에서 컨테이너 기반으로 SingleStore DB 클러스터 구축/확장/축소, 장애 노드 교체 및 최신 버전으로 업그레이드 가능
    인프라 유연성
    - 쿠버네티스로 관리되는 컨테이너화된 구축은 구성 요소 또는 배포 방법을 변경하지 않고 물리적 또는 클라우드 인프라에 구현
    운영 오버헤드 감소
    - 설치 및 배포 과정 축소되어 수 분 내에 수행
    - ‘SingleStore DB-cluster.yaml’ 을 수정하여 클러스터를 탄력적으로 확장
    - 온라인 업그레이드 가능
    단순화된 라이프 사이클
    - 컨테이너 추상화를 통해 HW/SW를 독립적으로 원활하게 업그레이드 수행 가능

모니터링 시스템

  • SingleStore DB 클러스터의 상세한 현황 파악을 위해 Grafana 구축을 위한 솔루션을 제공합니다.
    컴퓨팅 자원의 안정적인 운영가능
    다양한 정보 수집 및 세분화된 항목 설정
    통계 및 그래프 활용
    사용자 맞춤형 모니터링
    모니터링 항목 및 주기 설정

    감시 항목 설정 및 이벤트 통보

    구성도

    구성도

모니터링 항목

  • Active session history: : 활동 및 활동 유형별 총 리소스 소비량
    Activity history : 특정 활동의 과거 리소스 소비량
    Detailed cluster view : 세부적인 클러스터 모니터링
    Information_schema : processlist, table, table_statistics의 메타 테이블의 데이터
    Memory usage : 호스트에 대한 세부적인 메모리 사용 분석
    SingleStore DB status and variables view : 클러스터의 각 호스트 상태 변수
    Node breakout : 클러스터 각 호스트의 시스템 메트릭

    Node drilldown: 클러스터 각 호스트의 서브 시스템 메트릭

    모니터링 항목 참고자료

SingleStore DB 활용방안

  • 1Data Lake - 하둡 가속화 : 실시간 분석 및 파이프라인 대체
    • 기존 Hadoop은 Batch영역으로 활용하고 SingleStore DB은 실시간 영역으로 활용
      완벽한 ANSI SQL 액세스를 통한 고속 쿼리 성능 제공
      Kafka, Hadoop 파이프라인을 통한 쉬운 Data Integration(ETL) 제공

      기존 투자와 툴링 유지 가능

      Data Lake - 하둡 가속화 : 실시간 분석 및 파이프라인 대체 참고자료

  • 2 Data Lake - 하둡 가속화 : 실시간 분석, NoSQL 및 파이프라인 대체
    • 기존 Hadoop은 대용량 데이터 저장 영역으로 활용하고 SingleStore DB은 분석 영역으로 활용
      용도에 따른 NoSQL(Hbase, MongoDB, Cassandra 등)을 SingleStore DB로 통합하여 단순화 된 아키텍처 제공
      간편하고 보편적이면서 다양한 표현이 가능한 SQL을 통해 데이터 고속 처리

      ETL/CDC 및 파이프라인 복잡성 제거

      Data Lake - 하둡 가속화 : 실시간 분석, NoSQL 및 파이프라인 대체 참고자료

  • 3실시간 플랫폼 : Hadoop 구성없이 구축
    • SingleStore DB를 실시간 스트리밍 및 대용량 데이터 저장하고, 실시간 분석 영역으로 활용
      실시간 대용량 데이터에 대해 하나의 플랫폼으로 모든 업무 수행
      Kafka 파이프라인을 통한 쉬운 Data Integration(ETL) 제공

      단순화된 아키텍처 및 ANSI SQL로 업무효율 극대화 가능

      실시간 플랫폼 : Hadoop 구성없이 구축 참고자료

  • 4EDW 가속화 : 파이프라인, ODS 및 DW 대체
    • 기존 파이프라인, ODS 및 DW 영역 모두에 SingleStore DB를 활용
      용도에 따른 다양한 DBMS대신 SingleStore DB로 단순화 된 아키텍처 제공
      ETL/CDC 및 파이프라인 복잡성 제거

      기존 투자와 툴링 유지 가능

      EDW 가속화 : 파이프라인, ODS 및 DW 대체

SingleStore DB 활용사례 - 실시간 및 EDW 활용 사례

SingleStore DB 활용사례 - 실시간 및 EDW 활용 사례를 나타낸 표
기업명 활용 영역 기존 솔루션 SingleStore DB 적용 이유
Verizon 통화품질 분석 시스템

* 다국적 통신 기업으로 무선 네트워크를 모니터링 및 최적화하여 높은 통화품질을 제공
Exadata
  • 성능, 동시성을 높이면서 비용절약
    기존 Oracle 쿼리 활용을 통한 프로젝트 기간 단축
    오라클 대비 구축 및 관리 용이
    +100TB, 50K 테이블, 55K 보고서, 최대 1K 동시 사용자
    Exadata 대비 80-100x 성능 개선
Akamai 재무 분석/예측 및 네트워크 보안 트래픽 실시간 모니터링

* 글로벌 최대 CDN기업
Exadata
  • 단일 플랫폼으로 통합을 통한 인프라 단순화
    Exadata 대비 비용 5x 절감
    Exadata 대비 최대 100x 성능 개선
    (Exadata 70K VS SingleStore DB 10M upsert/sec)
Citibank
Royal Bank
Morgan Stanley
은행, 투자자, 보험사 및 기타 금융사에서 이상거래 탐지, 자산 관리, 위험 관리 등의 주요 의사 결정 어플리케이션과 분석 시스템에 활용 Oracle
(Exadata)
  • 리스크 관리, 실시간 대쉬보드(씨티뱅크)
    스탁포트폴리오, 실시간 대쉬보드(로얄뱅크오브캐나다)
    자산관리시스템(모건 스탠리)
First Energy 전력 유틸리티 회사로 발전, 송배전, 에너지 관리, 기타 에너지 관련 서비스로 Fortune 500대 기업에 오른 유일한 공공기업 Teradata
  • 실시간 IoT 데이터 수용( Kafka )
    폭발적인 데이터 증가에 유연한 확장 구조
    범용 하드웨어 도입을 통한 비용 절감
BANK
OF
AMERICA
인공지능(ML)기반 실시간 이상거래 탐지 시스템(FDS) ODS/DW
(Oracle)
  • SQL을 통한 분석 및 높은 확장성 제공
    ML에 실시간 데이터 수집 제공(Kafka)
    데이터 증가에 따른 비용 효율적 스토리지 전략
    - ms의 빠른 분석 및 대응을 위한 인메모리 사용
    - 과거 데이터 분석을 위한 디스크기반 컬럼스토어 사용 (압축 기술)
SAMSUNG 전세계 Smart TV 판매량의 폭발적인 (MS 약 30%)로 인해 Log를 실시간으로 수집 및 분석하여 인공지능 기반 프로그램 추천 In-Memory DB
  • 실시간 Smart TV 시청 로그데이터 수집 파이프라인 제공
    AWS 환경에서 유연한 확장 가능
    적재 데이터의 실시간 검색
CMS ENERGY IoT device로 부터 실시간으로 전력 그리드 상태를 지속적으로 모니터링 및 예측하여 정전 및 이상사용(FDS) 최소화 In-Memory DB
(SAP HANA)
  • SQL을 통한 실시간 및 과거 데이터 고성능 분석 지원
    실시간 스트림 데이터 수집 파이프라인 지원
    운영 및 데이터 사이언스 전반에서 다양한 데이터 요구를 지원하는 분석 허브로 활용
KB국민은행
신한카드
현대카드
삼성생명
신한금융투자
신한생명
한국신용정보원
마이 데이터 거래추적 시스템 Oracle
Elasticsearch
  • 빠른 성능을 통한 시스템 관리 노드 최소화
    SQL을 통한 개발 생산성 증대
    실시간 데이터 수집/적재를 위한 Kafka 연계
    운영을 위한 백업, DR 기능 제공
    데이터 증가에 따른 비용 효율적 스토리지 전략
    - 대량 데이터 적재를 위한 압축기반 컬럼스토어 사용
퀸텟시스템즈 CRM(실시간 마케팅, 분석시스템) MySQL
  • 실시간 데이터 수집/적재/분석 제공
    Kafka을 통한 ETL 실시간 수행
    운영을 위한 백업, DR 기능 제공
    인메모리/컬럼 기반 빠른 분석
샌드스퀘어 블록체인기반 Dapp 서비스, 보상형 앱 “핸디 픽” 보상형 앱 내의 유저 실시간 순위도출 MySQL
Bunt DB
(오픈소스)
  • 폭발적으로 늘어나는 동시접속자 수용(100만이상)
    빠른 데이터 수집 및 실시간 분석
    기본 제공 파이프라인 활용을 통한 ETL 개발 단순화
    오픈소스 운영 인력 수급 불안정 해소

SingleStore DB 활용사례 - DATA LAKE 가속화 사례

SingleStore DB 활용사례 - DATA LAKE 가속화 사례를 나타낸 표
기업명 활용 영역 기존 솔루션 SingleStore DB 적용 이유
NOVUS 리스크 관리 시스템

* 포트폴리오 정보 회사로. 헤지 펀드, 연금 펀드 등 100여 명의 투자 관리자가 통찰력을 높이고 위험을 보다 잘 이해하게 하는 플랫폼 제공 (약 2조 달러 운영)
MongoDB,
In-house
파이프라인
  • 파이프라인을 통한 빠른 ETL 핸들링
    SQL을 통한 다양한 분석 및 높은 확장성 제공
    높은 동시성과 빠른 실시간 분석 기능
    운영 인력 최소화
Diwo AI 기반 데이터 플랫폼

* 비즈니스 사용자들이 실제 문제에 대응할 수 있도록 돕는 새로운 AI 기반 플랫폼, 데이터가 들어오면 해결책을 제시 (Data In, Wisdom Out), (Loven Systems)
Redis,
Cassandra
  • 복잡 다양한 쿼리 성능
    정형, 비정형 데이터의 대량 데이터의 고속 처리
    SQL을 통한 분석 및 높은 확장성 제공
SSIMWAVE 인공지능기반 스트리밍 VOD 품질 분석 시스템

* 인코더, 트랜스 코더, 전송 네트워크 및 소비자 엔드 포인트에서 스트리밍 VOD 품질을 인공지능 기반 평가
Aurora, Druid
  • 성능, 동시성 및 유연성을 높이면서 비용절약(AWS)
Fanatics e커머스 플랫폼

* Fanatics.com 보유, 모든 북미 주요 스포츠 리그, 200개 이상의 프로 및 대학 팀, 그리고 세계최대의 글로벌 축구 프랜차이즈들의 온라인 상점을 운영, 연간 매출 20억달러 매출의 e커머스기업
Flink, Redis,
Elasticsearch,
Lucene, Hive,
Spark,
파이프라인
  • 수집 및 쿼리에서 높은 성능 제공
    트랜잭션 쿼리와 분석에 범용 SQL 인터페이스 활용
    데이터 인프라의 단순화를 통해 운영인력 최소화
Tapjoy 실시간 광고 최적화 및 겹침(Overlap) 분석

* 전 세계에 12개 이상의 지사가 있는 모바일광고 및 앱을 통해 수익을 창출, 고객으로 Top 200개 퍼블리셔, 매월 +8억명, +3만 모바일 앱 및 광고
HBase
  • SQL을 통한 다양한 집계 및 조회
    빠른 수집 및 분석
    기본 제공 파이프라인 활용을 통한 ETL 개발 단순화
    다 차원 계수(Dimensionality)에 대한 사전 연산 가능
Tradelab 실시간 광고 게재 플랫폼

* 프랑스에 본사를 둔 프로그램 마케팅 플랫폼회사
MongoDB
MySQL
  • 불필요한 데이터 지연 시간(latency) 제거
    실시간 대량 관계형 및 JSON 데이터 동시 분석 기능 제공
    기존 대비 30x 성능 개선
    MySQL과 100% 호환을 통한 apps 수정이 거의 없이 변환 가능
nyris 이미지 검색 엔진

* 실시간 이미지 인식 기능과 즉각적인 시각적 검색 기능을 통해 리테일 고객의 경험을 강화
MongoDB,
Redshift
  • 높은 안정성과 일관된 응답 속도 제공
    ML을 위해 즉각적인 스CPU링 및 이미지 응답 기능(Vector 함수)
    (내장 ML로 모델 운영 간소화 및 탁월한 성능 제공)
Kellogg’s ETL 및 BI 속도 개선

* ‘15년 매출 135억 달러, 21개국에서 1,600여개 식품 생산, 180여 개국에 브랜드 판매, 시리얼 생산분야 세계 #1, 쿠키/크래커/스낵 세계#2, 냉동식품 분야 북미 #1
Oracle, In-house
파이프라인
  • 기본 제공 파이프라인을 통한 수집(ETL) 단순화 및 성능 개선
    높은 동시성 및 쿼리 성능 개선
    기존 BI(태블로)와 용이한 인터페이스 제공

시스템 요구사항

시스템 요구사항
구분 사양
CPU 최소 4 vCPU, 최적 8 vCPU 이상
Memory 최소 4GB
최적 vCPU당 최소4GB = 8 x 4GB = 32GB 이상
Storage 최소 10GB 이상
최적 Memory x 3 = 32GB x 3 = 96GB
컬럼스토어는 SSD 이상 권장
XFS 또는 EXT4 파일시스템 지원
Network 모든 인스턴스를 단일 리전에 지리적으로 배포
Enhanced Networking을 지원하는 인스턴스 유형이면 활성화 필요
OS OS는 아래와 같은 64bit 커널의 LINUX만 지원
① Kernel 버전 : 64bit 만 지원, 최소 2.6.32, 성능을 위해 3.10 이상 권장
② OS 종류
- RHEL / CentOS 6 또는 7 (버전 7 이상 권장)
- Debian 8 또는 9 (버전 9 이상 권장)