37
RED HAT KANGWUK HEO Middleware Solu6on Architect Service Team, Red Hat Korea 1 JBoss Data Grid (JDG) 무엇인가 ?

JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

Page 1: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

RED HAT

KANGWUK  HEO    Middleware  Solu6on  Architect  Service  Team,  Red  Hat  Korea  

1  

JBoss Data Grid (JDG) 란 무엇인가 ?

Page 2: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

TITLE SLIDE: HEADLINE Presenter Title Date

Agenda  

1.  인메모리 데이터 그리드란 ?    2.  Infinispan과 JDG  3.  JBoss  Data  Grid의 특징 ?    4.  JBoss  Data  Grid  적용 가능 범위는 ?  5.  왜 JDG를 사용해야 하는가 ?    6.  JDG  서브스크립션의 혜택  7.  JBoss  Data  Grid  성공사례    

Page 3: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

인메모리 데이터 그리드란 ? (In Memory Data Grid)

1

Page 4: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

2

Infinispan의 특징

데이터베이스 성능 종속성 탈피 ?

스케일 아웃형 이슈 DB 병목

DB성능과 응답시간 예측 가능한 확장

§ 데이터베이스의 스케일아웃 구조로 인한 비용 부담 § DB 라이센스 비용

§ 데이터베DB I/O 증가에 따른 성능 감소 § 불필요한 중복 쿼리 발생 § 오래 걸리는 쿼리

§ 데이터베이스의 성능에 영향없이 일정한 서비스 응답속도를 보장 가능한가 ?

§ 데이터 양의 증가나 사용자 증가에 따른 예측 가능한 확장성 확보 방안이 있는가 ?

Clients Application Tier Data Base IMDG

인메모리 시장 변화 (1/2)

Page 5: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

인메모리 데이터 그리드 + 빅데이터와의 연관성

인메모리 시장 변화 (2/2)

3

빅데이터 산업의 승자는 더 많은 데이터로 더 많은 지능을 도출하는 자

3초 이내에 정답을 찾기 위해 2억 페이지 (1천만권의 책)의 데이터를 분석  •  Waston  시티은행 취직 (12.3 개인신용평가)  •  Waston  웰포인트(민간의료보험사) 취직 (11.9 환자별 맞춤치료법 컨설팅)    

IBM Waston 사례

기업의 현재 운영상황 및 빅데이터에 대한 현황

§  새로 생성되는 방대한 양의 데이터에 대한 실시간            엑세스 능력 요구  §  데이터의 양이 계속해서 늘어나는 추세  §  가용데이터를 보다 잘 활용하여 시장의 요구에  §  신속하게 대응하느냐의 문제가 비즈니스의 관심사로 대두  

기존의 데이터베이스는 확장이 어렵다  비용이 많이 든다.  

기존 시스템의 빅데이터 처리에 대한 문제점

대용량 데이터에 대한 적시적 엑세스  확장성  업무의 중단 없는 서비스 구현 필요  

기업들의 데이터 처리에 대한 요구사항

Page 6: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

인메모리 데이터 그리드란 ?

디스크가 아닌 주 메모리에 모든 데이터를 보유하는 데이터베이스

4

In memory storage engines

Distributed across a cluster providing - Networked memory

Pacemakers to databases

Provide simple Key, Value storage

Linear scalability and elasticity due to distribued algorithms

Page 7: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

IMDG 활용 목적 기존 하드디스크 저장방식과의 차이점

IMDG의 특징 및 활용 목적

5

메인메모리의 연산 퍼포먼스 : HDD 보다 800배 빠름 최신 x86서버는 서버당 수백 GB의 메인메모리를 지원

§ 분산캐시 § 일시적이고 변화하는 데이터 저장소 § 빅데이터의 전처리 § 실시간 이벤트 처리 § 온라인 게임, 예약 시스템, 인터넷 뱅킹

Tape

Hard Disk

Main Memory

Main Memory

Hard Disk, Tape

주요 데이터 일부만 메모리에 Cache

주요 데이터 저장

백업

주요 데이터 저장

백업

Disk-based Computing

In-Memory Computing

활용 가능 범위 § 전형적인 디스크 방식 : 디스크에 저장된 데이터를 대상으로 쿼리 수행

§ 인메모리 방식 : 메모리상에 색인을 로드에 필요한 모든정보를 메모리상의 색인을 통해 빠르게 검색

IMDG 아키텍처 및 특징

MDG MDG

MDG MDG

AS

Database

READ

WRITE

§ 방대한 데이터가 분산되어 여러 서버에 저장 § 각 서버는 활성화된 상태로 운영 § 데이터 모델은 주로 (직렬화된) 객체 지향이면서 비관계형

§ 필용여부에 따라 종종 서버를 증감 가능 § 테이블과 같은 전통적인 데이터베이스 특징이 아님

Page 8: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

전통적인 HDD 방식과 In-memory 방식과의 차이점

6

전통적인 접근 방식   새로운 In-­‐Memory 접근 방식  

데이터 용량 측면  u 컬럼, 저장, 압축 (디스크 기반) u 데이터 중복 관리 (대용량 상세대이터를 기초로 성능 확보를 위해 수많은 요약 데이터 보유, 캐쉬, 데이터 압축

u 컬럼별 저장 및 압축 방식(메모리 기반) 모든 데이터를 메모리에 저장하여 실시간으로 처리  

u 데이터 중복이 전혀 없음 – 별도의 성능 확보를 위해 별도의 요약데이터파트가 전혀 없음, 필요한 비즈니스 뷰를 메모리상에서 실시간으로 집계 및 처리  

정보의 반영 속도 측면  

u 다양한 소스시스템 데이타 추출을 위해 ETL툴을 사용하므로 배치작업을 통한 정보계로의 데이터 지연 발생

u  ETL툴을 통해 적재된 1차 대용량 상세데이터를 기초로 추가적인 요약 데이터 파트를 구성 및 캐쉬 작업에 추가적인 지연 발생

u  SAP 실시간 데이터 복제(Replication Server) 기술을 통해 다양한 소스로 부터 1초이내에 단위로 실시간 데이터 복제

u  RS기술을 통해 복제된 대용량 상세 데이터를 기반으로 별도의 요약데이터파트 구성 불필요

u 캐쉬기술이 아닌 인메모리 데이터 처리엔진을 통해 다양한 비즈니스뷰를 실시간을 제공  

계산 속도 측면   u 컬럼별 데이터 저장방식과 과거 데이터의 스냅샷인 캐쉬기술로 처리  

u 컬럼별 데이터 저장방식과 함께 모든 실 데이터를 메모리에 압축 계산하는 방식  

유연성 측면  u 디스크 기반의 솔루션은 제한적인 유연성 제공 (사전에 물리적으로 구성된 틀안에 실제요약 데이터를 저장하여 데이터 모델 변경에 취약  

u 사전에 정의된 물리적인 비즈니스뷰에 실요약정보를 담고있지 않고,  메모리상에서 가상(Virtual) 비즈니스뷰에 따라 실시간으로 데이터가 저장  

어플리케이션 플랫폼 측면   u 오직 분석 용도로만 사용가능            (트랜잭션 용도로 사용 불가)   u 기간계와 정보계를 하나로 합병  

Page 9: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

인메모리 데이터 그리드 적용 가능 Use Case - 1

7

     

통신회사, 모바일 데이터에 대한 실시간 분석처리 시스템 성능 개선

통신 회사    실시간 인보이스 시스템을 사용하여  모바일 데이터 사용량을 모니터링  고객들에게 청구하는 구조.    •  모든 작업을 처리할 수 있는     데이터베이스 용량을 충분히     보유  •  모바일 인터넷 사용이 데이터베이스 솔루션으로 역부족으로 예상  

•  고객의 활동성에 따라, 데이터     사용량을 추적하고, 모바일 데이터     잔량 업데이트 필요    인메모리 데이터 그리드 도입으로  개선된 사항    •  기존 데이터베이스 문제점 보완  •  늘어나는 트랜잭션 양을 보다     효과적으로 수용  •  소비자가 모바일 데이터를 사용하는     즉시 실시간으로 사용량 추적 가능  •  고객이 잔량 업데이트를 요청시     정확한 현재잔량을 쉽게 제공 가능  

모바일 데이터 모니터링 데이터 사용량 분석 엔진

IMDG

현재잔량 정보 전달

모바일데이터 잔량 정보 요청, 업데이트 모바일데이터 잔량 정보 전달

모바일 데이터 사용, 요청

고객정보 연관정보 업데이트

고객정보 연관정보 전달

Page 10: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

8

소매업에서 실시간 분석 데이터 활용

제품들에 RFID 태그를 부착. •  고객이 매장방문시, 구매하는 패턴, 선호하는 제품의 정보를 실시간 확보

•  Changing room에서 어떤 옷들을 선택하는지 정보 습득

•  매장에서 어떤 옷들이 많이 팔리는지, 팔리지 않는지 정보.

고객의 활동성 및 제품의 판매 흐름정보를 실시간 분석엔진과 결합된 IMDG에 업데이트 판매직원이 필요시, 태블릿이나 스마트폰을 통해, 빠르게 분석한 데이터 정보를 확인 가능 Stockroom(물품보관소)에서 선호제품을 미리 준비하고, 오더하여, 매장의 실적에 큰 도움.

인메모리 데이터 그리드 적용 가능 Use Case - 2

Page 11: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

9

웹 애플리케이션 확장

전형적인 데이타베이스가 제공 못하는 기능을 -  분산 -  탄력적 확장 -  데이터 처리 -  데이터 센터간 복제

데이터 그리드는 제공 가능 애플리케이션과 분리하여 따로 관리 제거, 만료, 관리 롤링 등의 고급기능을 갖춘 JBoss Data Grid(JDG)는 요구사항 충족 가능 -  현재 애플리케이션 성능 강화 -  까다로운 고성능 -  가용성 -  안정성 -  탄력적 확장성

인메모리 데이터 그리드 적용 가능 Use Case - 3

Page 12: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Infinispan and JDG

10

Page 13: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Infinispan = JDG 의 개요

Infinispan and JDG

11

§ Apac2008년에 프로젝트 시작, Java언어와 Scala언어를 이용 § JBoss Cache 프로젝트를 대체하는 프로젝트

§  Amazon Dynamo와 유사한 개념을 개발 §  Key / Value 저장 방식

Infinispan = JDG 의 장점 및 주요 기능

- 100% 오픈소스 - 분산 인메모리 키/밸류 NoSQL 스토어 - 메모리에 올라가는 분산 데이터서버 - JSR 107기반의 jCache를 적용

§  메모리 기반의 key-value store §  내장 및 클라이언트-서버 방식의 분산형 구조 §  완벽한 트랜잭션 지원 §  File, DB, BDB, Cassandra 등의 다양한 Store 지원 §  Hibernate Search를 사용한 강력한 검색 기능 §  JBoss EAP6의 다양한 클러스터링 엔진으로 사용

메모리 기반의 스키마 없는 key-value store의 역할을

하는 캐시 솔루션 (Infinispan 기반)

오픈소스 데이타그리드 플랫폼

기 능   개 요   설 명  JTA  Transac>on   트랜잭션 지원   Full  XA  호환  

CacheStore   데이터 영속화   데이터 영속화 보장  

DistributedExecutors  

분산실행 기능  일반적인 태스크를 실행  

데이터 저장 인스턴스에서 고속 병렬처리  

MapReduce  분산실행 기능  MapReduce  처리를 실행  

데이터 저장 인스턴스에서 고속 병렬처리  

QueryAPI   풀 텍스트 검색엔진 기능   전체 서버 대상 고속 검색  

GridFileSystem   메모리 파일 시스템   고속 파일 엑세스  

Page 14: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JDG와 다른 데이터그리드와의 차이점

12

A사 제품과의 차이점

Feature   Common   Unique  to  JDG  

In-­‐memory  data  grid  

Key/value  store  

Query  capability  

Mul>-­‐language  

Transac>ons/ACID  

Replicated/Distributed  

Rolling  Upgrades  

Cross  data  center  replica>on  

Rich  asynchronous  op>ons  

Page 15: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Infinispan 과 JDG의 차이점

13

Infinispan JBoss Data Grid (JDG)

§  Community Projects §  No guaranteed Patches

§  No guaranteed features

§  No guaranteed support

§  Commercial Product the Red Hat provided §  SLA-Based support §  Certified patches and updates §  Long-term maintenance §  Rigorously tested certified §  World class support

http://infinispan.org https://www.redhat.com/en/technologies/jboss-middleware/data-grid

Page 16: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JBoss Data Grid의 특징

14

Page 17: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

15

JBoss Data Grid Highlight

데이터 그리드 필수 기능 포함

§ 투명한 수평 확장성 제공 (신축성) § 고속 데이터 엑세스 § 네트워크 상의 거대한 Heap 메모리로 사용

Data Grid로서의 필요한 기능 제공

다양한 접속 프로토콜 지원

§ 네트REST API, § Memcache API § 고속처리용 API Hot Rod

다중 엑세스 프로토콜

다양한 클라이언트 환경에서 이용 가능

다양한 클라이언트 환경에서 사용 가능

§ Java, Python나 Microsoft, .NET등으로 부터 이용 가능 § 클라이언트 증가에 의한 추가비용이 발생하지 않는 서브스크립션

Page 18: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

라이브러리 모드 클라이언트/서버 모드

JBoss Data Grid 구성 방법

16

Infinispan as Library - Clustered

Cluster

Infinispan

JVM

App

Infinispan

JVM

App

Infinispan App

JVM

Infinispan as Server - Clustered

Cluster

Infinispan

JVM

Infinispan

JVM

Infinispan JVM

App

App

App

§  애플리케이션과 같은 VM에서 동작 §  다양한 설정 및 API 로 상세한 제어 가능 §  JAVA만 지원 §  보다 다양한 API 제공 §  보다 고성능

§  DataGrid 클러스터로 접속 §  애플리케이션에서 데이터레이어를 분리 §  서로 다른언어 지원을 통한 통합 §  여러가지 프로토콜 이용 가능 - Hot Rod, Memcached, REST §  여러 애플리케이션에서 데이터그리드 공유 가능

Page 19: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

2개 모드 요약 내역

JBoss Data Grid 구성 내역

17

라이브러리 모드는 JDG 네이티브 기능을 사용할 수 있기 때문에 다양한 구현 방법 지원

클라이언트  서버모드  

라이브러리  모드  

REST  인터페이스  

Memcached  인터페이스  

Hot  Rod  클라이언트  

JBoss  Opera>ons  Network 모니터링  

CDI    

비동기 API    

커스텀 인터셉터  

리스너 모델 지원  

트랜젝션(Transac>on)  

Map/Reduce  API  

Page 20: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Local Cache

JBoss Data Grid 의 분산 Topology - Local Mode

18

Application

JVM JVM JVM

Local Cache

Cluster

Datagrid #3

§ 인스턴스 끼리 데이터 공유없이 각각 캐쉬 관리 § 다른 Cache서버로 요청하지 않음

§ 같은 JVM에서 데이터 저장 § 단순한 java Map과 달리 다양한 Jboss Datagrid 기능 지원 § Local Mode 기능

- Write-through, Write-behind 캐쉬 - OOM를 막기 위한 Eviction - Expiration - 트랜잭션 (Transaction) 지원 (JTA, XA) - Non-Blocking에 의한 고속의 읽기 (MVCC 기반의 병렬처리 - JMX나 JON에 의한 관리

Local Cache

Local Cache

Datagrid #2 Datagrid #1

Page 21: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Replication Cache

19

Application

JVM JVM JVM

Local Cache

Cluster

Datagrid #3

§ 전체 데이터를 각자의 Cache 서버들이 저장 § 다른 Cache서버로 요청하지 않음

§ Replication는 단순한 클러스터 모드로 캐쉬에 추가된 엔트리는 클러스터내의 다른 모든 캐쉬 인스턴스에 복제 § 클러스터 사이즈가 증가하는 것에 따라, Replication message가 증가하기 때문에, 비교적 작은 클러스터 (10 서버 미만) 적용

Local Cache

Local Cache

Datagrid #2 Datagrid #1

Replication Cache

Cache on Server1 K,V  

Cache on Server4 K,V  

Cache on Server3 K,V  

Cache on Server2 K,V  cache.put(K,V)

JBoss Data Grid 의 분산 Topology - Replication Cache

Page 22: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Distribution Cache

20

Application

JVM JVM JVM

Local Cache

Cluster

Datagrid #3

§ Dist Cache는 1/n로 데이터를 나누어 저장 § 데이터가 없을 경우 다른 Cache 서버로 요청

§ Distribution는 강력한 클러스터링 모드로, 선형적인 스케일아웃이 필요한 대량의 클러스터 노드 환경에 적용 § Distribution는 클러스터 엔트리가 어디에 저장 될지를 결정하기 위해 Consistent Hash 알고리즘 적용 - 설정된 백업수 만큼 클러스터에서 복제본을 저장

Local Cache

Local Cache

Datagrid #2 Datagrid #1

Replication Cache

Cache on Server1 K,V  

Cache on Server4

Cache on Server3

Cache on Server2 K,V  cache.put(K,V)

JBoss Data Grid 의 분산 Topology - Distribution Cache

1/3 2/3 3/3

Page 23: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Distribution Cache + L1 Cache

21

Application

JVM JVM JVM

Local Cache

Cluster

Datagrid #3

§ 성능을 위하여, Local Cache에 정해진 개수 만큼을 저장 § Dist Cache는 1/n로 나누어 저장

§  매호출시바다, 다른서버의 데이터를 가지고 오는것을 최소화 하기 위해, L1 캐쉬에 다른서버에서 호출한 값을 저장함.

Local Cache

Local Cache

Datagrid #2 Datagrid #1

Replication Cache

Cache on Server1 K,V  

Cache on Server4

Cache on Server3

Cache on Server2 K,V  

1/3 2/3 3/3

JBoss Data Grid 의 분산 Topology - Distribution Cache + L1 Cache

L1 Cache L1 Cache L1 Cache

L1 Cache K,V  

Page 24: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Invalidation Cache

22

§ 전체 데이터를 각자의 Cache 서버들이 저장 § 다른 Cache 서버로 요청하지 않음 § 데이터 변경시 다른 서버의 동일키를 삭제

§  Invalidation는 실제로는 데이터를 공유하지 않는 클러스터 모드로 리모트 캐쉬로부터 오래된 데이터를 삭제하는 방법 - 데이터베이스와 같은 영속적인 스토어가 있는 경우에만 적용 - Query Offloading 목적으로 읽기가 많은 데이터베이스에 매번 엑세스를 하는것을 데이터그리드에 제공 - 데이터가 변경되면, 클러스터내의 다른 캐쉬는 그 데이터가 유효성이 없기 때문에 해당 데이터 삭제

Replication Cache

Cache on Server1 K,V  

Cache on Server2 K,V  

JBoss Data Grid 의 분산 Topology - Invalidation Cache

Application

JVM JVM JVM

Local Cache

Cluster

Datagrid #3

Local Cache

Local Cache

Datagrid #2 Datagrid #1

cache.put(K,V_new) cache.remove(K,V_old)

Page 25: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JBoss Data Grid 적용 가능 범위

23

Page 26: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JBoss Data Grid (JDG) 적용 범위

JBoss Data Grid (JDG) 적용 가능 범위

24

운송 및 물류 (Transportation and logistics)

소매 (Retail)

금융 서비스 (Financial services)

미디어/엔터테이먼트 (Media and entertainment)

IT산업에 대한 솔루션 (Industry-agnostic solutions)

§ Challenges : Real-time, Global routing, tracking, logistics § 위치정보, 목적지, 출발지, 배송우선순의, 재운송계약 통지서,취급, 위험물

§ Challenges : Immediate, up-to-date catalogs for million of concurrent users

§ 재고상태, 가격, 물류창고 위치, 사용자별 개별 서비스, 판매, 할인, 프로모션

§ 옵션, 주식거래 시뮬레이션, 실시간 정확한 정보를 계산용도 시스템

§ 주문형 스트리밍 비디오의 캐시에 대한 관리, 보안, 사용자 데이터, 벡앤더 통합

§ 관계형 데이터베이스관리의 워크로드 및 라이센스 비용을 효과적으로 줄일 수 있는 캐쉬방식

§ 업무적으로 효과적인 계산을 위한, 인메모리 처리

Page 27: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Session Clustering

JDG 적용 가능 사례

Session 정보를 Clustering 환경에서, Cache에 저장하여 공유 가능

25

Data Grid Platform

In-Memory 대용량 데이타 처리를 위한 환경 구성 가능

Page 28: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

왜 JDG를 사용해야하는가 ?

26

Page 29: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Scale Out 형태로 데이터베이스의 병목 해결 ?

왜 JDG를 사용해야 하는가 ?

27

JDG를 사용해야 하는 Customer Cases

q 기존 RDB 보다 저비용의 투자로 고성능이 필요한 경우 q 데이터베이스의 병목으로 서비스 품질이 저하되는 경우 q 고가용성으로 탄력있고 유연한 확장 가능한 데이터 저장 인프라 구축 분산 캐시를 통한 애플리케이션의 성능 향상 q  I/O 속도가 느린 디스크보다는 메모리와 네트워크로 마이그레이션 q 휘발성인 메모리 저장 방법을 보완하기 위해 프로세스간 데이터 이중화를 통한 안정성 확보 q 선형적인 확장성을 보장이 필요한 경우 q 트랜잭션 증가와 데이터 볼륨이 급증하는 경우 서버 추가/제거를 통하여 선형적인 확장이 가능한 아키텍처 확보 q 여러 하드웨어에 분사되어 있은 데이터에 대한 분산 처리를 통한 일정 응답시간 보장

데이터베이스의 병목으로 인하여 애플리케이션 성능이 낮아지고, 서비스 품질에도 문제가 있으신가요? 현재의 시스템 아키텍처가 급속하게 변화하고 확대되는 서비스에 적합하신가요? 문제점 : 대부분의 시스템들이 프리젠테이션 레이어나 비즈니스 로직 레이어는 Scale Out 형 아키텍처로 확장하기 쉽게 구성된 반면 기존 RDBMS 기반의 데이터베이스 레이어는 Scale Up 형 아키텍처로 확장에 제한 JBoss Data Grid(JDG)는 데이터베이스 성능과 확장성을 보완할 수 있는 계층을 제공하여 기업이 새로운 데이터 인프라에 투자하지 않고도 이러한 과제를 해결할 수 있도록 도움을 줄 수 있음

Page 30: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JDG 서브스크립션의 혜택

28

Page 31: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JBoss Data Grid(JDG) 서브스크립션의 혜택 ?

29

서브스크립션의 Benefits

인피니스펜 데이타 그리드에 대한 상용 소프웨어트와 같이 안정성, 보안성, 확장성 보장

클라이언트/서버 모드 및 임베디드 라이브러리 모드 둘다 지원

Red Hat JBoss Operations Network, 레드헷 미들웨어 제품 관리 및 모니터링 제품과의 연동 가능

Red Hat Open Source Assurance 프로그램을 통해, 개발 및 배포하는 고객의 법적 보증

12개월 혹은 36개월 소프트웨어 업그레이드 및 업데이트 : 기능향상, 새로운 기능, 최신결함 및 보안 픽스

1년 365일 24시간 글로벌 지원 서비스를 통해, 신속하고 수준 높은 기술을 실시간으로 원격 지원

레드헷 고객 지원 포탈 액세스를 통해, 제품 업데이트 및 주요 문제 통보, 지식 기반 엑세스 및 케이스 관리

통합 및 공인 엔터프라이즈 소프트웨어 제공 및 장기적으로 애플리케이션 호환성 보장

Page 32: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

JBoss Data Grid 성공사례

30

Page 33: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

성공 사례 (1/3)

31

Business  Challenges  and  needs        

Solu>on  with  JDG

지리적으로 효과적이고, 균형잡힌 방식으로, 다수의 데이터 센터간에 데이터를 관리 처리 필요

§ 멀티시스템들에 대해, 비디오 서비스처리 부서에서 운영 필요 - Comcast and Time-Warner § 세션 관리, 리소스 분산 처리, 스트리밍 비디오에 대한 빌링 처리 필요 § 인터넷 환경에 맞는 주문형 비디오 시스템의 관리 및 많은 서비스 처리량 대응 환경 필요

CISCO 구축 성공 사례

네트워크기반 IT분야의 선도 업체 네트워크시스템, 협업, 음성 및 비디오, 보안, 데이터 센터, 이동/무선 등 관련 솔루션 및 서비스 제공

§ 세션 관리 및 리소스 분산처리 능력 향상 § 안정적인 비디오 스트리밍 서비스 환경 구성 가능

스트리밍 비디오 서비스

스트리밍 비디오 서비스 JDG DB

DB

Page 34: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

성공 사례 (2/3)

32

Business  Challenges  and  needs        

Solu>on  with  JDG

Travel – AAA, JDG as a NoSQL data store 구축 성공 사례

미국에서 유명한 자동차 서비스 업체 (American Automobile Association) 미국내에 큰서비스망을 가지고 있으며, 미국의 자동차 서비스 클럽에 소속되어 있는 회사

§ 노후되고, 신뢰성없는 레거시 시스템 업그레이드 필요 § 기존 오라클 데이터베이스에 티켓정보를 저장하는 형태 § 데이터베이스의 장애 발생시, 수작업으로 처리해야하는 불편함 해소 필요 § 장애가 발생하더라도, 회원의 서비스장애 발생이나, 클럽서비스 영향 최소화 필요 § 서버를 증설이나 업그레이드시, 충분한 공간 제공 어려움

§ Infinispan을 사용하였으며, replication mode로 JDG 환경을 구축

§ 장애에 대처하기 위해, 신뢰성 및 highly available data store로 JDG를 사용함.

자동차 클럽서비스

Oracle DB

Oracle DB

JDG JDG

자동차 클럽서비스

Page 35: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

성공 사례 (3/3)

33

Business  Challenges  and  needs        

Solu>on  with  JDG

Scholastic – Expansion of named account , 성공 구축 사례

§ 고객들의 서비스의 기대감 충족 필요 § 신학기 시즌 동안, 많은 트랙픽에 대비가 필요. – 안정된 성능 § 웹 시스템과 이리더 모바일 어플리케이션의 시스템 확장 필요 § 고객에게 안정된 서비스 제공 필요 § 웹 어플리케이션과 모바일 서비스 시스템과의 통합 필요 - 다양한 형태의 메다데이터 서로 엑세스 필요

§ 효과적인 비용절감의 아키텍처 구성 § 어플리케이션의 성능 개선, 뛰어난 확장성, 민첩성에 대한 환경 구성 § JDG를 통해서, 2배이상의 성능 개선 , 6-8초 였던 응답시간이 3초 이하로 개선

호주에서 아동출판관련 시장 리더, 40년 이상 아동출판관련 최고 업체 (아동관련 책, 매거진, 교육, 멀티미디어 자료를 출판/배급)

웹시스템

DB

이리더 모바일 어플리케이션

DB

이리더 모바일 어플리케이션

웹시스템

JDG

Page 36: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

Thank you for attending my session !

36  

QUSTIONS ?

Page 37: JBoss Data Grid (JDG) 란 무엇인가. JDG... · IMDG 아키텍처 및 특징 MDG MDG MDG MDG AS Database READ WRITE ! 방대한 데이터가 분산되어 여러 서버에 저장

TITLE SLIDE: HEADLINE Presenter Title Date