Oracle Cloud Infrastructure에서 DataSynapse GridServer로 금융 서비스 산업 분석 지원
은행 및 금융 서비스 조직은 신속하게 클라우드로 전환하여 미션 크리티컬 재무 분석을 배포하고 있으며, 종종 내부적으로 사용할 수 없는 고성능 컴퓨팅(HPC) 리소스가 필요합니다. 경쟁 및 규정이 증가함에 따라 점점 늘어나는 재무 분석 워크로드에 대해 클라우드를 고려해야 하는 기업들이 늘어나고 있습니다.
Oracle Cloud Infrastructure(OCI)는 은행 및 금융 서비스 조직이 재무 분석을 위해 클라우드를 신속하게 배포할 수 있는 종합적인 2세대 클라우드 인프라를 제공합니다. Oracle은 깊이 있고 광범위한 고객 데이터 관리 및 분석 경험을 통해 클라우드 인프라 내에서 이러한 리소스를 제공할 수 있습니다.
DataSynapse GridServer는 TIBCO의 소프트웨어 제품으로, 특정 하드웨어 리소스에 이러한 서비스를 연결하지 않고도 애플리케이션 서비스가 가상화된 방식으로 작동할 수 있도록 해주는 확장성이 뛰어난 소프트웨어 기반구조입니다. GridServer 여러 요청을 쉽게 처리할 수 있는 기능을 통해 확장성이 뛰어난 방식으로 사용 가능한 하드웨어 리소스에 대한 서비스 요청을 동적으로 프로비저닝합니다.
구조
GridServer 베어메탈(BM) 및 가상 머신(VM)을 포함한 다양한 컴퓨트 인스턴스 구성으로 구성된 OCI의 다양한 HPC 클러스터에서 테스트되었습니다. 이러한 클러스터는 OCI 리소스 관리자의 HPC 스택을 사용하여 인스턴스화되었으며, 인스턴스 모음을 기능적 HPC 클러스터로 바꾸는 부분이 포함된 Terraform 템플리트를 사용합니다. 스택은 NFS(네트워크 파일 공유) 볼륨, 추가 블록 볼륨 또는 다른 파일 시스템(예: OCI 파일 스토리지 서비스)을 추가할 수 있습니다. 테스트 HPC 클러스터가 구축된 후 소프트웨어 설치 지침에 따라 GridServer이 설치되었습니다.
테스트된 클러스터는 다음 구조를 기반으로 합니다.
datasynapse-gridserver-oci-architecture.zip
아키텍처에는 다음과 같은 구성 요소가 있습니다.
- 지역
Oracle Cloud Infrastructure 리전은 가용성 도메인이라는 하나 이상의 데이터 센터를 포함하는 지역화된 지리적 영역입니다. 지역은 다른 지역과 독립적이며 방대한 거리로 구분할 수 있습니다(국가 또는 대륙).
- 가용성 도메인
가용성 도메인은 한 지역 내의 독립형 데이터 센터입니다. 각 가용성 도메인의 물리적 리소스는 다른 가용성 도메인의 리소스와 격리되어 내결함성을 제공합니다. 가용성 도메인은 전원, 냉각 또는 내부 가용성 도메인 네트워크와 같은 인프라를 공유하지 않습니다. 따라서 특정 가용성 도메인에서 실패할 경우 해당 지역의 다른 가용성 도메인에 영향을 주지 않습니다.
- VCN(가상 클라우드 네트워크) 및 서브넷
VCN은 Oracle Cloud Infrastructure 지역에서 설정한 커스터마이징 가능한 소프트웨어 정의 네트워크입니다. 기존 데이터 센터 네트워크와 마찬가지로 VCN은 사용자가 네트워크 환경을 완전히 제어할 수 있도록 합니다. VCN에는 VCN을 생성한 후 변경할 수 있는 겹치지 않는 여러 CIDR 블록이 있을 수 있습니다. VCN을 서브넷으로 분할할 수 있습니다. 서브넷은 지역 또는 가용성 도메인으로 범위가 지정될 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속된 주소 범위로 구성됩니다. 서브넷 생성 후 서브넷의 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.
- DRG(동적 경로 지정 게이트웨이)
DRG는 동일한 지역의 VCN과 지역 외부의 네트워크(예: 다른 Oracle Cloud Infrastructure 지역의 VCN, 온프레미스 네트워크 또는 다른 클라우드 공급자의 네트워크) 간에 전용 네트워크 트래픽 경로를 제공하는 가상 라우터입니다.
- 사이트 간 VPN
사이트 간 VPN은 온프레미스 네트워크와 Oracle Cloud Infrastructure의 VCN 간에 IPSec VPN 연결을 제공합니다. IPSec 프로토콜 제품군은 패킷이 소스에서 대상으로 전송되기 전에 IP 트래픽을 암호화하고 트래픽이 도착하면 트래픽을 해독합니다.
- 온프레미스 네트워크
이 네트워크는 조직에서 사용하는 로컬 네트워크입니다. 이것은 토폴로지의 스포크 중 하나입니다.
- Bastion 호스트
배스천 호스트는 클라우드 외부의 토폴로지에 대한 안전하고 제어된 시작점 역할을 하는 컴퓨팅 인스턴스입니다. 배스천 호스트는 일반적으로 DMZ(Demilitarized Zone)에 프로비저닝됩니다. 클라우드 외부에서 직접 액세스할 수 없는 전용(private) 네트워크에 중요한 리소스를 배치하여 보호할 수 있습니다. 토폴로지에는 알려진 단일 시작점이 있으며, 주기적으로 모니터링하고 감사(audit)할 수 있습니다. 따라서 액세스를 방해하지 않으면서 토폴로지의 더 중요한 구성요소가 노출되지 않도록 할 수 있습니다.
- 경로 테이블
가상 경로 테이블에는 일반적으로 게이트웨이를 통해 서브넷에서 VCN 외부의 대상으로 트래픽을 라우팅하는 규칙이 포함됩니다.
- 보안 목록
각 서브넷에 대해 서브넷에 들어오고 나가야 하는 트래픽의 소스, 대상 및 유형을 지정하는 보안 규칙을 생성할 수 있습니다.
- 블록 볼륨
블록 스토리지 볼륨을 사용하면 스토리지 볼륨을 생성, 연결, 연결 및 이동하고 스토리지, 성능 및 애플리케이션 요구 사항에 맞게 볼륨 성능을 변경할 수 있습니다. 볼륨을 인스턴스에 연결하고 연결한 후 볼륨을 일반 하드 드라이브처럼 사용할 수 있습니다. 볼륨 연결을 끊고 데이터 손실 없이 다른 인스턴스에 연결할 수도 있습니다.
- IAM(ID 및 액세스) 관리
Oracle Cloud Infrastructure Identity and Access Management(IAM)는 Oracle Cloud Infrastructure(OCI) 및 Oracle Cloud Applications의 액세스 제어 플레인입니다. IAM API 및 사용자 인터페이스를 통해 ID 도메인 및 ID 도메인 내의 리소스를 관리할 수 있습니다. 각 OCI IAM ID 도메인은 독립형 ID 및 액세스 관리 솔루션 또는 다른 사용자 모집단을 나타냅니다.
- 객체 스토리지
객체 스토리지를 사용하면 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 리치 콘텐츠 등 모든 콘텐츠 유형의 대량의 구조적 및 비구조적 데이터에 빠르게 액세스할 수 있습니다. 인터넷 또는 클라우드 플랫폼 내에서 직접 안전하고 안전하게 데이터를 저장하고 검색할 수 있습니다. 성능 또는 서비스 안정성의 저하 없이 스토리지를 원활하게 확장할 수 있습니다. 빠르고 즉각적이며 자주 액세스하는 데 필요한 "핫" 스토리지에 표준 스토리지를 사용합니다. 장기간 보존하고 거의 액세스하지 않는 "콜드" 스토리지에 아카이브 스토리지를 사용합니다.
GridServer 클러스터가 생성된 후 OpenGamma 라이브러리의 Stata-Examples에서 사례를 사용하여 벤치마크가 수행되었습니다. 초기 테스트에 따르면 성능과 가격 대비 성능 면에서 가장 우수한 조합으로 GridServer Director, Broker(s) 및 Client(s)를 단일 공용 인스턴스에 배치하고 별도의 컴퓨트 인스턴스에 엔진을 배치했습니다. BM 및 VM 구성은 GridServer Director, Broker, Client 인스턴스에 대해 테스트되었으며 성능 차이가 관찰되지 않습니다. 아래 표는 테스트된 클러스터에 대한 설명을 제공합니다.
| 엔진 구성 | 노드당 엔진 | 엔진 노드 | 총 엔진 |
|---|---|---|---|
| BM.Optimized3.36 | 36,72* | 4-64 | 4608 |
| BM.Standard.E4.128 | 256* | 4-8 | 2048 |
| BM.Standard2.52 | 52* | 4-8 | 416 |
| VM.Standard.E4.Flex | 128* | 4-8 | 1024 |
테스트 중 일부 시스템에서 하이퍼스레딩이 사용 또는 사용 안함으로 설정되었습니다. 하이퍼스레딩이 사용으로 설정된 상태로 얻은 결과는 별표(*)로 표시됩니다. OCI에서는 물리적 코어가 OCPU로 표시됩니다. 기본적으로 GridServer는 코어당 단일 엔진을 구성합니다. 하이퍼스레딩이 사용으로 설정된 경우 GridServer는 두 개의 코어 스레드 각각에 엔진을 지정하여 노드당 사용 가능한 엔진 수를 두 배로 늘립니다. VM 구성 VM.Standard.E4.Flex은 가변 개수의 OCPU로 구성할 수 있습니다. 테스트를 위해 64개의 OCPU(Hyperthreading이 사용으로 설정된 총 128개의 엔진)로 각 구성을 구성했습니다.
우리의 테스트는 GridServer를 사용하여 25,000개의 고유한 OpenGamma 분석을 수행하고 일반적인 Monte Carlo 벤치마크 테스트를 시뮬레이션했습니다. 작업 요약에서 각 테스트의 경과 시간을 GridServer 콘솔에서 얻었습니다. 시뮬레이션을 위해 4개의 엔진을 사용하여 각 클러스터에 대한 테스트를 수행한 다음 클러스터에서 엔진을 실행하는 모든 노드가 사용될 때까지 테스트당 엔진 수를 두 배로 늘렸습니다. 아래 그림은 다양한 구성 인스턴스를 기반으로 클러스터에 대한 테스트 결과를 보여줍니다.
여기서 결과는 클러스터가 Monte Carlo 시뮬레이션 평가를 수행할 수 있는 속도인 초당 평가로 표시됩니다. 각 벤치마크에서 이 값은 단순히 총 시뮬레이션 수(25,000)를 시뮬레이션 경과 시간(초)으로 나눈 것입니다. 전반적으로 테스트된 각 클러스터에 대해 성능은 사용된 엔진 수에 거의 선형적으로 조정되었습니다. 다양한 인스턴스 셰이프에 대해 관찰된 상대적 성능 측면에서 노드 성능과 셰이프당 코어 수 사이에 강력한 상관관계가 있었으며 이는 코어당 엔진 성능이 셰이프와 약간 다르다는 것을 나타냅니다. BM.Optmized3.36 구성의 클러스터는 하이퍼스레딩이 사용으로 설정되고 사용 안함으로 설정된 상태에서 테스트되었습니다. 다른 쉐이프를 사용한 테스트는 하이퍼스레딩이 선호되는 것과 동일한 효과를 표시했으며 이 데이터는 명확성을 위해 차트에서 벗어났습니다.
성능은 대규모 몬테카를로 분석에서 중요한 요소이지만 비용도 중요합니다. 아래 차트(Oracle 웹 사이트에 게시된 가격 사용)에 총 OCI 비용을 표시하여 위의 테스트에 대해 검토했습니다.
이상적으로 총 시뮬레이션 비용은 클러스터 크기에 따라 달라지지 않아야 하지만 병렬 비효율성은 클러스터 크기에 따라 증가하여 시뮬레이션 비용이 증가합니다. 모든 업무 수행 방식에서 성능이 향상됨에 따라 가격 장단점이 있다는 일반적인 가정이 있으며 이는 전혀 다릅니다. OpenGamma 테스트는 AMD EPYC(BM.Standard.E4.128, VM.Standard.E4.Flex)를 기반으로 한 형태가 최고의 노드 성능과 가격 대비 성능을 모두 제공했습니다. 다양한 모델이 다른 HPC 구성에 더 적합할 수 있으므로 고객은 30일 무료 체험판으로 OCI에서 재무 모델을 테스트하는 것이 좋습니다.


