Data Import MARC Authorities [Orchid]

Overview

This document contains the results of testing Data Import MARC Authorities in Orchid release to detect performance trends.

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

Previous test report: Data Import MARC Authorities (Nolana)

Summary

  • All the tests were done successfully without errors or issues. 
  • There is no specific trend for DI performance and resources utilization for Orchid release compared to Nonala. There is degradation for smaller file jobs, while for bigger file jobs processing time improved (up to 19%). See the details...
  • Max CPU utilization was observed for mod-inventory module, it reached 43% during 50K DI import. See the details...
  • Max DB CPU reached 86% during 50K DI import. No memory leaks found. See the details...

It should be noted that trigger process_marc_records_lb_insert_update_trigger was enabled for mod_source_record_storage.marc_records_lb table to make the environment production-like. It could influence the results in current release.

Test Results

Profile used for testing - "Default - Create SRS MARC Authority"

TestFile

Duration

Diff absoluteDiff percentage
Morning gloryNolanaOrchid
11K 24 s27 s41s +14s+51%
25K 1 min 21 s1 min 15 s1min 21s+6s+8%
310K 2 min 32 s2 min 31 s2min 53s+22s+14%
425K 11 min 14 s7 min 7 s5 min 42s-1min 25s-19%
550K 22 min11 min 24 s11 min 11s-13s-1%

Instance CPU Utilization

Service CPU Utilization

Max CPU utilization was observed for mod-inventory module, it reached 43% during 50K DI import.

Max CPU utilization for non-DI modules was observed for mod-quick-marc module, it reached 53% during 50K DI import.

Memory Utilization

DB CPU Utilization

Max DB CPU reached 86% during 50K DI import.

DB Connections


Infrastructure

Records count :

  • mod_source_record_storage.marc_records_lb = 25015778
  • mod_source_record_storage.raw_records_lb = 25048647
  • mod_source_record_storage.records_lb = 25048897
  • mod_source_record_storage.marc_indexers =  283585109 (all records)
  • mod_source_record_storage.marc_indexers with field_no 010 = 219260
  • mod_source_record_storage.marc_indexers with field_no 035 = 10165466
  • mod_inventory_storage.authority = 7493975
  • mod_inventory_storage.holdings_record = 23900853
  • mod_inventory_storage.instance = 22617024
  • mod_inventory_storage.item = 23801604

PTF -environment ncp5 

  • 11 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1  
  • 2 database  instances, one reader, and one writer

    NameAPI NameMemory GIBvCPUsmax_connections
    R6G Extra Largedb.r6g.xlarge32 GiB4 vCPUs2731
  • Number of connections for mod-source-record-manager and mod-source-record-storage: 30 connections.
  • Profile used: Default - Create SRS MARC Authority
  • MSK ptf-kakfa-3
    • 4 m5.2xlarge brokers in 2 zones
    • Apache Kafka version 2.8.0

    • EBS storage volume per broker 300 GiB

    • auto.create.topics.enable=true
    • log.retention.minutes=480
    • default.replication.factor=3
  • Kafka topics partitioning: - 2 partitions for DI topics


Modules memory and CPU parameters

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

mod-inventory-storage26.0.0122204840963690
512
3076
mod-inventory20.0.61221024288025925121814
mod-source-record-storage5.6.72722048560050005123500
mod-quick-marc3.0.061128228821765121664
mod-source-record-manager3.6.41822048560050005123500
mod-di-converter-storage2.0.5621281024896128768
mod-data-import2.7.1101256204818445121292
okapi5.0.183102416841440512922
nginx-okapi2022.06.14721281024896--
pub-okapi2022.06.14721281024896-768