HeatWave는 Oracle MySQL Database Service용으로 개발된 인메모리 쿼리 가속기로, OCI에서만 사용할 수 있고 HeatWave를 사용하는 Oracle MySQL Database Service를 통해 MySQL 데이터베이스에서 애플리케이션 변경 없이 온라인 트랜잭션 처리 (OLTP) 및 온라인 분석 처리 (OLAP) 워크로드를 직접 실행 가능하며 이를 통해 별도의 분석 데이터베이스가 필요하지 않고 Oracle Analytics Cloud를 사용하면 데이터를 분석하고 실시간으로 보고서를 작성할 수 있음.
인스턴스 정보 요약
----------------------------------------
Public Instance SG (bastion) - Instance-GWHWSG
Public Instance US (bastion) - Instance-GWHWUS
MySQL EndPoint SG : MDS + HeatWave(1 OCPU + 32GB Memory) 10.0.1.101
MySQL EndPoint US : MDS + HeatWave(16 OCPU + 512GB Memory) 10.0.1.201
MySQL EndPoint US FQDN : HEATWAVE-US.sub02030214391.heatwavevcnjk.oraclevcn.com
----------------------------------------
사전 준비
-------------------------------------------------------
-- Compartment, VCN, Private Security List(3306, 33060)
-------------------------------------------------------
진행 요약
- 두 개의 리전을 활용하여 MDS (MySQL Database Service) 생성
- (+ 분석 OAC 생성 + OAC에 Private Access Channel 연결)
- MySQL Shell 설치 및 MDS에 샘플 데이터 로드
- HeatWave 클러스터를 생성 (SG HeatWave.32GB / US HeatWave.512GB)
- HeatWave에 MDS 데이터 로드
- use_secondary_engine=ON/OFF 를 통해서 쿼리 성능 확인
- OAC에 MySQL 연결하여 대시보드 생성 확인
두 개의 리전을 활용하여 MDS (MySQL Database Service) 생성
-- MDS Region SG
Development or testing
HEATWAVE-SG
Standalone
Configure MySQL HeatWave
admin
16 OCPU
512 GB
HEATWAVE-SG
10.0.1.102
-- MDS Region US
Development or testing
HEATWAVE-US
Standalone
Configure MySQL HeatWave
admin
16 OCPU
512 GB
HEATWAVE-US
10.0.1.201
(+ 분석 OAC 생성 + OAC에 Private Access Channel 연결)
-- OAC Region US
HWOACUS
Oracle Analytics Cloud HeatWave Test
Capacity Type : Users
User Count : 10
License Included
Enterprise Edition
-- Connection
HeatWaveUS
HeatWaveUS
HEATWAVE-US.sub02030214391.heatwavevcnjk.oraclevcn.com
3306
airportdb
MySQL Shell 설치 및 MDS에 샘플 데이터 로드
wget https://objectstorage.us-ashburn-1.oraclecloud.com/p/MdFkX2s2_x9Miktl08UoorNTIyE-bIULjDXcbYuU1ukSfw1g48AEUkmH0-UcN5bQ/n/idazzjlcjqzj/b/irportdb-bucket-20230123-2124/o/airportdb_ysqlsh_331.zip
unzip airportdb_ysqlsh_331.zip
sudo dnf install -y mysql-shell
mysqlsh --version
mysqlsh -uadmin -p -h 10.0.1.102
(mysqlsh -uadmin -p -h 10.0.1.201)
\js
util.loadDump("airportdb", {threads: 16, deferTableIndexes: "all", ignoreVersion: true, loadIndexes:false})
\sql
SELECT table_name, table_rows FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'airportdb';
\q
HeatWave 클러스터를 생성 (SG HeatWave.32GB / US HeatWave.512GB)
HEATWAVE-SG
HEATWAVE-US
HeatWave에 MDS 데이터 로드
※ 아래 이미지 우측이 더 큰 shape HeatWave.512GB 을 사용하고 있고 데이터 로드하는 속도도 빠름
mysqlsh -uadmin -p -h 10.0.1.102 --sql
(mysqlsh -uadmin -p -h 10.0.1.201 --sql)
CALL sys.heatwave_load(JSON_ARRAY('airportdb'), NULL); -- first SG then US
USE performance_schema;
SELECT NAME, LOAD_STATUS FROM rpd_tables,rpd_table_id WHERE rpd_tables.ID = rpd_table_id.ID;
\q
use_secondary_engine=ON/OFF 를 통해서 쿼리 성능 확인
↑ 상단 인스턴스 : SG 리전 MDS + HeatWave(1 OCPU + 32GB Memory)
↓ 하단 인스턴스 : US 리전 MDS + HeatWave(16 OCPU + 512GB Memory)
← 좌측 인스턴스 : use_secondary_engine=OFF
→ 우측 인스턴스 : use_secondary_engine=ON
종류 | 결과 시간 | |
쿼리 1 | 80.2 sec | 1.5 sec |
79.9 sec | 0.2 sec | |
쿼리 2 | 47.8 sec | 5.9 sec |
47.8 sec | 0.3 sec |
참고
'3. 데이터관리' 카테고리의 다른 글
Select AI 쿼리 생성 기능 소개(ADB) (0) | 2024.02.20 |
---|---|
OCI DMS (Database Migration Service) 사용하여 데이터 이관하기 (0) | 2024.02.19 |
데이터 펌프로 자율운영 데이터베이스에 데이터 임포트 (0) | 2023.10.12 |
DBCS License Upgrade하기 (0) | 2023.02.26 |
OCI VM에 PostgreSQL 데이터베이스 클러스터 설치 (0) | 2023.01.12 |
댓글