/ ACTIVITY

DEVOCEAN 9월 Tech 세미나 - In-Memory Data Grid 기반 Smart Factory 아키텍처링 연구 사례

대외활동 게시글 목록

In-Memory Data Grid 기반 Smart Factory 아키텍처링 연구 사례

9월 테크 세미나 주제는 In-Memory Data Grid 기반 Smart Factory 아키텍처링 연구 사례였습니다.
In-Memory Data Grid에 대한 내용과 하이닉스에서 어떤 식으로 활용되고 있는지에 대한 설명을 해주시는 세미나였습니다.

https://devocean.sk.com/vlog/view.do?id=428&vcode=A03

순서는

  1. SK 하이닉스 Data hub 시스템 소개
  2. Data hub 시스템에서의 In-Memory Data Grid 도입 필요성
  3. In-Memory Data Grid 구조 소개와 SK하이닉스 신규 메모리 적용 사례

역순으로 진행되었습니다.

In-Memory Data Grid 구조 소개와 SK하이닉스 신규 메모리 적용 사례

In-Memory Data Grid란 데이터 통합 관리를 위한 computing engine이 탑재된 In-Memory distributed caching software 기술입니다.
이종 데이터 소스로부터 통합 view를 제공하고 다수의 서버들을 연결하여 클러스터를 구축하고 대용량 메모리 풀을 형성, 데이터 로딩을 위해 대용량 메모리를 요구합니다.
이종 데이터 소스는 SQL, NoSQL, Hadoop 같은 것들이 있습니다.

Hazelcast IMDG라는 플랫폼을 사용하였는데 이는 서버마다 자바 프로세스를 생성하고 네트워크를 연결하여 클러스터를 생성합니다.
다양한 언어 클라이언트 연결을 지원하고 이기종 DB와 연동합니다.
클러스터는 임베디드 모드와 클라이언트/서버 모드로 분류됩니다.

SQL 엔진으로 Apache Calcite를 탑재하여 키/벨류 API를 지원하고 대용량 데이터 로딩에 유리합니다.
Data Partitioning은 IMap, Java Map의 분산형으로 271개의 데이터 파티션이 생성되고, 파티션 1개는 256개가 디폴트로 설정됩니다.

오픈소스와 엔터프라이즈 에디션이 있으며 JVM on-heap 메모리 설정, HDMS Off-heap 스토리지 메모리, 메모리 포맷, 라이센스 키가 주요 설정입니다.
SQL을 활용하여 IMap을 생성하고 JDBC연결을 통해 SQL 질의가 가능합니다.
Management Center을 통해 파티션 분산, 가비지 콜렉터 등을 확인할 수 있습니다.

Data hub 시스템에서의 In-Memory Data Grid 도입 필요성

CXL이란 Compute Express Link의 약자로 PCle slot을 이용하는 차세대 고성능 interface입니다.
DRAM과 같이 휘발성 메모리이며 내부에서는 DDR5 표준 DRAM을 사용합니다.

SK 하이닉스 CXL 메모리의 특징으론 Local DRAM에 추가적으로 메모리 bandwith 및 capacity를 확장하며 서버 추가 없이 메모리를 확장할 수 있습니다.
이를 통해 전사 실시간 데이터 공유 플랫폼인 Data Hub 환경에 Data Hub를 모사하여 DDR5 Dram과 CXL 메모리가 탑재된 서버에 소규모 Hazelcast IMDG Cluster을 구축하였습니다.

이는 SK TECH SUMMIT(11월 16일)에 추가로 발표하신다고 하셨습니다!

SK 하이닉스 Data hub 시스템 소개

Data Hub는 메모리 시스템 부서와 데이터 엔지니어링 팀의 니즈에 맞게 되어 PoC를 진행하게 되었다고 합니다.
전사 데이터 Interface 단일 Hub 역할을 수행하는 실시간 데이터 공유 플랫폼으로 DB CRUD, 기타 SQL 문 등 오라클을 대체할 수 있는지에 대해 검증을 진행했습니다.

다만 Sub Query와 Scalar 쿼리를 지원하지 않아 불편함이 있을 수 있다고 합니다.
검증 결과 실제 사용성에 아쉬움이 있다고 합니다.

이번 세미나는 메모리와 Data Engineering이 결합된 세미나였어서 이해하기 굉장히 힘들었던 것 같습니다. SK 하이닉스에서 자체적으로 메모리 시스템 부서와 데이터 엔지니어링 팀끼리 PoC를 진행하고 실제 객관적인 성능 테스트를 진행하여 평가했던 점이 인상깊었습니다.