Skip to end of banner
Go to start of banner

Data Import on Aurora Serverless retest

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

Overview

This page is created to investigate Aurora serverless performance by comparing DB xlarge, 8xlarge and Aurora serverless instance types under load running Data Import (DI) with Check-in Check-out (CICO) running as background. 

Ticket: PERF-611 - Getting issue details... STATUS

Summary


Tests

Job profiles - PTF - Create 2, PTF - Updates Success - 1

ScenarioData quantity
DI Create, DI Update (coherently)25K
DI Create, DI Update (coherently) with CICO  in parallel

DI - 25K

CICO - 20 users

CICO20 users

Each scenario was tested on next configurations:

DB typeDB configuration
RDS

db.r6g.xlarge

db.r6g.8xlarge

Serverless

Serverless v2 (0.5 - 128 ACUs)

Serverless v2 (32 - 128 ACUs)

Results

At the table below next results are compared: RDS xlarge agains 0.5-128 ACU Serverless and RDS 8xlarge agains 32-128 ACU Serverless (marked by color).

Process/requestRDSServerless
xlarge8xlarge0.5-128 ACU32-128 ACU
DI Create18 min9 min11 min (-7 min)​14 min (+5 min)​
DI Update17 min10 min16 min (-1 min)​11 min  (+1 min)​
DI Create (with CICO in parallel)22 min9 min20 min (-2 min)​11 min   (+2 min)​
DI Update (with CICO in parallel)22 min, error*12 min25 min, error** (+3 min)​12 min (0 min)​
CI, 95%0.680.7180.806 (+0.126 sec)0.794 (+0.076 sec)​
CO, 95%1.2471.2511.393 (+0.146 sec)​1.312 (+0.061 sec)​
CI (with DI Update in parallel), 95%1.361.1931.277 (-0.083 sec)​1.11 (-0.083 sec)​
CO (with DI Update in parallel), 95%2.3352.0622.321 (-0.014 sec)​1.963 (-0.099 sec)​

*some records were discarded

**Error - io.vertx.core.impl.NoStackTraceThrowable

Response time

db.r6g.xlarge DI with CICO

There are more response time spikes during the test with xlarge configuration comparing to the tests with 8xlarge.

db.r6g.8xlarge DI with CICO

Serverless v2 (0.5 - 128 ACUs) DI with CICO

There is a spike at the begining of DI Update job. This can be connected ot mod-audit CPU increase at this moment.

Serverless v2 (32 - 128 ACUs) DI with CICO

Service CPU Utilization

db.r6g.xlarge DI without CICO

Maximum CPU utilization - 80% DI Create, 120% DI Update

db.r6g.xlarge DI with CICO

Maximum CPU utilization - 75% DI Create, 100% DI Update

db.r6g.8xlarge DI without CICO

Maximum CPU utilization - 135% DI Create, 160% DI Update

db.r6g.8xlarge DI with CICO

Maximum CPU utilization - 150% DI Create, 200% DI Update

Serverless v2 (0.5 - 128 ACUs) DI without CICO

Maximum CPU utilization - 110% DI Create, 125% DI Update

Serverless v2 (0.5 - 128 ACUs) DB configuration consumes more CPU resources than RDS db.r6g.xlarge configuration (110%-125% compared to 80%-120%).

Serverless v2 (0.5 - 128 ACUs) DI with CICO

Maximum CPU utilization - 100% DI Create, 105% DI Update

Serverless v2 (32 - 128 ACUs) DI without CICO

Maximum CPU utilization - 100% DI Create, 150% DI Update

Serverless v2 (32 - 128 ACUs) DB configuration consumes less CPU resources than RDS db.r6g.8xlarge configuration (100%-150% compared to 135%-160%).

Serverless v2 (32 - 128 ACUs) DI with CICO

Maximum CPU utilization - 100% DI Create, 160% DI Update

Memory Utilization

db.r6g.xlarge without DI CICO

db.r6g.xlarge DI with CICO

db.r6g.8xlarge DI without CICO

db.r6g.8xlarge DI with CICO

Serverless v2 (0.5 - 128 ACUs) DI without CICO

Serverless v2 (0.5 - 128 ACUs) DI with CICO

Serverless v2 (32 - 128 ACUs) DI without CICO

Serverless v2 (32 - 128 ACUs) DI with CICO

DB CPU Utilization

db.r6g.xlarge DI without CICO

db.r6g.xlarge DI with CICO

db.r6g.8xlarge DI without CICO

db.r6g.8xlarge DI with CICO

Serverless v2 (0.5 - 128 ACUs) DI without CICO

Serverless v2 (0.5 - 128 ACUs) DI with CICO

Serverless v2 (32 - 128 ACUs) DI without CICO

Serverless v2 (32 - 128 ACUs) DI with CICO

DB Connections

db.r6g.xlarge DI without CICO

db.r6g.xlarge DI with CICO

db.r6g.8xlarge DI without CICO

db.r6g.8xlarge DI with CICO


Serverless v2 (0.5 - 128 ACUs) DI without CICO

Serverless v2 (0.5 - 128 ACUs) DI with CICO

Serverless v2 (32 - 128 ACUs) DI without CICO

Serverless v2 (32 - 128 ACUs) DI with CICO

Database load

db.r6g.8xlarge DI without CICO

db.r6g.8xlarge DI with CICO

Serverless v2 (32 - 128 ACUs) DI without CICO

Serverless v2 (32 - 128 ACUs) DI with CICO

Appendix

Grafana dashboard

db.r6g.xlarge DI with CICO

http://carrier-io.int.folio.ebsco.com/grafana/d/SqzWB26nk/jmeter-performance-check-in-check-out?orgId=1&from=1690186885745&to=1690192449004&var-percentile=95&var-test_type=baseline&var-test=circulation_checkInCheckOut_Orchid_cptf2_4&var-env=int&var-grouping=1s&var-low_limit=250&var-high_limit=750&var-db_name=jmeter&var-sampler_type=All

db.r6g.8xlarge DI with CICO

http://carrier-io.int.folio.ebsco.com/grafana/d/SqzWB26nk/jmeter-performance-check-in-check-out?orgId=1&from=1690206826647&to=1690209403208&var-percentile=95&var-test_type=baseline&var-test=circulation_checkInCheckOut_Orchid_cptf2_4&var-env=int&var-grouping=1s&var-low_limit=250&var-high_limit=750&var-db_name=jmeter&var-sampler_type=All

Serverless v2 (0.5 - 128 ACUs) DI with CICO

http://carrier-io.int.folio.ebsco.com/grafana/d/SqzWB26nk/jmeter-performance-check-in-check-out?orgId=1&from=1689860038636&to=1689864442762&var-percentile=95&var-test_type=baseline&var-test=circulation_checkInCheckOut_Orchid_cptf2_4&var-env=int&var-grouping=1s&var-low_limit=250&var-high_limit=750&var-db_name=jmeter&var-sampler_type=All

Serverless v2 (32 - 128 ACUs) DI with CICO

http://carrier-io.int.folio.ebsco.com/grafana/d/SqzWB26nk/jmeter-performance-check-in-check-out?orgId=1&from=1689934923312&to=1689937778313&var-percentile=95&var-test_type=baseline&var-test=circulation_checkInCheckOut_Orchid_cptf2_4&var-env=int&var-grouping=1s&var-low_limit=250&var-high_limit=750&var-db_name=jmeter&var-sampler_type=All

Configuration

DI

Version of modules:

Source Record Manager Module (mod-source-record-manager-3.5.6)
Source Record Storage Module (mod-source-record-storage-5.5.2)
Inventory Module (mod-inventory-19.0.2)
Inventory Storage Module (mod-inventory-storage-25.0.3)
Inventory Update Module (mod-inventory-update-2.3.1)
Data Import Module (mod-data-import-2.6.2)
quickMARC (mod-quick-marc-2.5.0)

CICO

Version of modules:

Okapi (okapi-4.14.10)

users (mod-users-19.0.0)

Remote storage API module (mod-remote-storage-1.7.2)

Pubsub (mod-pubsub-2.7.0)

Patron Blocks Module (mod-patron-blocks-1.7.1)

Inventory Storage Module (mod-inventory-storage-25.0.3)

Inventory Module (mod-inventory-19.0.2)

feesfines (mod-feesfines-18.1.1)

Configuration (mod-configuration-5.9.0)

Circulation Storage Module (mod-circulation-storage-15.0.2)

Circulation Module (mod-circulation-23.3.4)

authtoken (mod-authtoken-2.12.0)

Environment

Created in INT account us-east-1 region, cluster name cptf2, created with snapshot of Cornell Test environment.

Task count: HA – okapi x3, mod-data-import, mod-data-export, mod-quick-marc, mod-data-export-spring x1, all other modules x2
OpenSearch: fse - shared domain (6 r6g.large.search datanodes)
MSK: dedicated cluster - total 4 brokers (kafka.m5.large)

  • RDS Configuration 1: db.r6g.8xlarge instance, Aurora PostgreSQL 13.9
  • RDS Configuration 2: db.r6g.xlarge instance, Aurora PostgreSQL 13.9
  • RDS Configuration 3: Aurora Serverless, min ACU: 0.5, max ACU: 128 
  • RDS Configuration 4: Aurora Serverless, min ACU: 32, max ACU: 128



  • No labels