Skip to end of banner
Go to start of banner

PTF - Data Export Test Report (Quesnelia - Eureka)

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 25 Next »

Overview

  • This document contains the results of testing Data Export (MARC BIB) on the Eureka release of Quesnelia FOLIO.  The goal is to compare the performances of Data Export on Eureka and non-Eureka environments and to highlight any observable differences in the KPIs.

PERF-866 - Getting issue details... STATUS  

Summary

  • Data Export tests finished successfully on the Eureka environment using the "Default instances export job profile" and "srs - holdings and items job profile." Data Export tests were run on Central tenants.
  • During Test â„–1-2, we noticed some background processes, so we deactivated mod-fqm-manager
  • Data Export jobs were getting stuck and returned a [401 Unauthorized] error with the message: "errors [{"type":"UnauthorizedException","code":"authorization_error","message":"Unauthorized"}]. To resolve this, we increased the token lifespan by modifying the KC_CONFIG_TTL parameter for mod-login-keycloak from 360s to 3600s and KC_ADMIN_TOKEN_TTL from 410s to 4100s:
      • {"name": "KC_CONFIG_TTL","value": "3600s"}
      • {"name": "KC_ADMIN_TOKEN_TTL", "value": "4100s"}
  • When comparing QECP1 Eureka with Quesnelia ECS, NON-ECS environments:
      • Data Export duration for the "Default instances export job profile" was almost the same across environments.
      • Data Export duration for the "srs - holdings and items job profile" showed a significant degradation: around 2.5 times longer for the 1k and 100k files, and around 5 times longer for the 500k file.


Test Results

This table contains durations for Data Export with 2 job profiles. 

Profile

CSV  FileCentral Tenant (fs09000000)
Result
Test Set 1
Result
Test Set 2
Status
DE MARC Bib (Default instances export job profile)

1k.csv0:00:070:00:03COMPLETED
100k.csv0:06:030:02:17COMPLETED
500k.csv0:09:030:04:25COMPLETED
DE MARC Bib (srs - holdings and items)

1k.csv0:00:130:00:10COMPLETED
100k.csv0:20:250:12:41COMPLETED
500k.csv0:38:210:38:53COMPLETED

Comparison

This table contains durations comparison between Quesnelia ECS, NON-ECS and Eureka environments.

ProfileNumber of recordsQuesnelia NON-ECS QCP1Quesnelia ECS
QCON
Quesnelia Eureka
QECP1
DE Duration, DELTA QCP1/QECP1
hh:mm:sshh:mm:sshh:mm:sshh:mm:ss / percent
DE MARC Bib (Default instances export job profile)1k00:00:0200:00:050:00:03

+00:00:01
+50%

100k00:02:1700:04:240:02:17

0:00:00
0%

500k00:05:1000:06:170:04:25

-00:00:45
-14.5%

DE MARC Bib (srs - holdings and items)1k00:00:0400:00:050:00:10

+00:00:06
+150%

100k00:05:1300:05:580:12:41

+00:07:28
+143.2%

500k00:08:5800:08:280:38:53

+00:29:55
+333.7%


Test â„–1 - â„–2

Introduction: The Baseline QECP1 Environment configuration was applied, and CPU=0 was set for all modules.

Objective: The objective of these tests was to collect performance measurements for the data-export process across central tenant.

Results: During the test, we observed that the database was running a background process

Service CPU Utilization

Here we can see that mod-data-export used 28% CPU Instance Power in spike.

Service Memory Utilization

Here we can see that all modules show a stable trend.

DB CPU Utilization

DB CPU spike was 68%.

DB Connections

DB connections was 830.

Kafka metrics

OpenSearch Data Nodes metrics

DB load

                                                                                                                     

Top SQL-queries



Test â„–3 - â„–4

Introduction: The Baseline QECP1 Environment configuration was applied, and CPU=0 was set for all modules.

Objective: The objective of these tests has to repeat previous tests after deactivated mod-fqm-manager.

Results: Results were collect for central tenant without any background processes for Database. 

Instance CPU Utilization

Service CPU Utilization

Here we can see that mod-data-export used 28% CPU Instance Power in spike.

Service Memory Utilization

Here we can see that all modules show a stable trend.

DB CPU Utilization

DB CPU spike was 22%.

DB Connections

DB connections was 850.

Kafka metrics


OpenSearch Data Nodes metrics

DB load

                                                                                                                     

Top SQL-queries



Appendix

Infrastructure

PTF - environment Quesnelia [Eureka] (qecp1)

  • 11 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 [Number of ECS instances, instance type, location region]

  • 1 instance of db.r6.xlarge database instance: Writer instance

  • OpenSearch

    • domain: ptf-test

    • Number of nodes: 7

    • Version: OpenSearch_2_13_R20240520-P5

  • MSK - fse-tenant

    • 4 kafka.m7g.xlarge brokers in 2 zones

    • Apache Kafka version 3.7.x

    • EBS storage volume per broker 300 GiB

    • auto.create.topics.enable=true

    • log.retention.minutes=480

    • default.replication.factor=3


 qecp1 modules memory and CPU parameters
ModuleTask Definition RevisionModule VersionTask CountMem Hard LimitMem Soft LimitCPU UnitsXmxMetaspace SizeMax Metaspace Size
mod-remote-storage3mod-remote-storage:3.2.024920447203960512512
mod-remote-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-ncip3mod-ncip:1.14.521024896076888128
mod-ncip - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-finance-storage3mod-finance-storage:8.6.121024896070088128
mod-finance-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-agreements3mod-agreements:7.0.62159214880000
mod-agreements - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-ebsconet3mod-ebsconet:2.2.02124810240700128256
mod-ebsconet - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-organizations3mod-organizations:1.9.221024896076888128
mod-organizations - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-sip22edge-sip2:3.2.521024896076888128
mod-settings3mod-settings:1.0.321024896076888128
mod-settings - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-serials-management3mod-serials-management:1.0.322480231201792384512
mod-serials-management - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-search3mod-search:3.2.6225922480014405121024
mod-search - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-data-import3mod-data-import:3.1.112048184401292384512
mod-data-import - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-dematic2edge-dematic:2.2.311024896076888128
mod-tags3mod-tags:2.2.021024896076888128
mod-tags - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-courses2edge-courses:1.4.321024896076888128
mod-notify3mod-notify:3.2.021024896076888128
mod-notify - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-inventory-update3mod-inventory-update:3.3.121024896076888128
mod-inventory-update - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-configuration3mod-configuration:5.10.021024896076888128
mod-configuration - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-orders-storage3mod-orders-storage:13.7.421024896070088128
mod-orders-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
folio-keycloak3folio-keycloak:25.0.31240020480204800
edge-caiasoft2edge-caiasoft:2.2.421024896076888128
mod-licenses3mod-licenses:6.0.322480231201792384512
mod-licenses - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-gobi3mod-gobi:2.8.121024896076888128
mod-gobi - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-password-validator3mod-password-validator:3.2.12144012980768384512
mod-password-validator - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-fqm-manager3mod-fqm-manager:2.0.501024896076888128
mod-fqm-manager - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-bulk-operations3mod-bulk-operations:2.0.223072260001536384512
mod-bulk-operations - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-graphql3mod-graphql:1.12.121024896076888128
mod-graphql - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-finance3mod-finance:4.9.021024896076888128
mod-finance - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-roles-keycloak3mod-roles-keycloak:1.4.521024896051288256
mod-roles-keycloak - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-batch-print3mod-batch-print:1.1.021024896076888128
mod-batch-print - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-copycat3mod-copycat:1.6.021024896076888128
mod-copycat - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-lists4mod-lists:2.0.621024896076888128
mod-lists - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-entities-links3mod-entities-links:3.0.22259224800144001024
mod-entities-links - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-permissions6mod-permissions:6.5.02168415445121024384512
mod-permissions - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
pub-edge1pub-edge:2023.06.1421024896076800
mod-orders3mod-orders:12.8.822048174001024384512
mod-orders - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
kong9kong:3.7.1161446144204876888128
edge-patron2edge-patron:5.1.22102489625676888128
mod-users-keycloak3mod-users-keycloak:1.5.321024896051288256
mod-users-keycloak - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-ncip2edge-ncip:1.10.121024896076888128
mgr-applications2mgr-applications:1.3.31102489651251288256
mod-users-bl3mod-users-bl:7.8.0214401152092288128
mod-users-bl - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mgr-tenants2mgr-tenants:1.3.31102489651251288256
mod-invoice3mod-invoice:5.8.2214401152092288128
mod-invoice - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-inventory-storage4mod-inventory-storage:27.1.424096369003076384512
mod-inventory-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512025600
mod-user-import3mod-user-import:3.8.021024896076888128
mod-user-import - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-sender3mod-sender:1.12.021024896076888128
mod-sender - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-oai-pmh2edge-oai-pmh:2.9.221512136010241440384512
mod-login-keycloak8mod-login-keycloak:1.4.421024896051288256
mod-login-keycloak - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mgr-tenant-entitlements2mgr-tenant-entitlements:1.2.41102489651251288256
mod-data-export-worker3mod-data-export-worker:3.2.423072280002048384512
mod-data-export-worker - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-rtac4mod-rtac:3.6.021024896076888128
mod-rtac - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512025600
mod-circulation-storage4mod-circulation-storage:17.2.322880259201814384512
mod-circulation-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512025600
mod-source-record-storage4mod-source-record-storage:5.8.625600500003500384512
mod-source-record-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-scheduler3mod-scheduler:1.2.321024896051288256
mod-scheduler - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-calendar4mod-calendar:3.1.0220481536076888128
mod-calendar - Sidecar 1N/Afolio-module-sidecar:1.0.0.317N/A665512012800
mod-event-config3mod-event-config:2.7.121024896076888128
mod-event-config - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-courses3mod-courses:1.4.1021024896076888128
mod-courses - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-inventory5mod-inventory:20.2.8-SNAPSHOT.58022881259201814384512
mod-inventory - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-email3mod-email:1.17.022800255001800384512
mod-email - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-di-converter-storage3mod-di-converter-storage:2.2.221024896076888128
mod-di-converter-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-pubsub3mod-pubsub:2.14.02153614400922384512
mod-pubsub - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-circulation4mod-circulation:24.2.522880259201814384512
mod-circulation - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512025600
edge-orders2edge-orders:3.0.321024896076888128
edge-rtac2edge-rtac:2.7.321024896076888128
mod-template-engine3mod-template-engine:1.20.021024896076888128
mod-template-engine - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-users3mod-users:19.3.121024896076888128
mod-users - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-patron-blocks3mod-patron-blocks:1.10.021024896076888128
mod-patron-blocks - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-audit3mod-audit:2.9.021024896076888128
mod-audit - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-fqm2edge-fqm:2.0.221024896076888128
mod-source-record-manager3mod-source-record-manager:3.8.625600500003500384512
mod-source-record-manager - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
nginx-edge1nginx-edge:2023.06.14110248960000
mod-quick-marc3mod-quick-marc:5.1.112288217601664384512
mod-quick-marc - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-feesfines3mod-feesfines:19.1.021024896076888128
mod-feesfines - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-invoice-storage3mod-invoice-storage:5.8.221872153601024384512
mod-invoice-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-service-interaction3mod-service-interaction:4.0.222048184401290384512
mod-service-interaction - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-data-export11mod-data-export:5.0.412592248001440881024
mod-data-export - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-patron3mod-patron:6.1.021024896076888128
mod-patron - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-oai-pmh3mod-oai-pmh:3.13.224096369003076384512
mod-oai-pmh - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-connexion2edge-connexion:1.3.121024896076888128
mod-kb-ebsco-java3mod-kb-ebsco-java:4.0.021024896076888128
mod-kb-ebsco-java - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-notes3mod-notes:5.2.0210248960952384512
mod-notes - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-organizations-storage3mod-organizations-storage:4.7.021024896076888128
mod-organizations-storage - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
mod-data-export-spring3mod-data-export-spring:3.2.212048184401536384512
mod-data-export-spring - Sidecar 1N/Afolio-module-sidecar:1.0.0.312N/A665512012800
edge-erm2edge-erm:1.2.121024896076888128


Methodology/Approach

Data Export tests scenario using the profiles Default instances export job profile and srs - holdings and items were started from UI on Quesnelia (qecp1) Eureka environment.

Test set:

  • Test 1: Manually tested 1k, 100k and 500k records files Data Export started on Main tenant(fs09000000) using Default instances export job profile.
  • Test 2: Manually tested 1k, 100k and 500k records files Data Export started on Main tenant(fs09000000) using srs - holdings and items job profile.
  • Test 3: Set Instance Count=0 for mod-fqm-manager. Manually tested 1k, 100k and 500k records files Data Export started on Main tenant(fs09000000) using Default instances export job profile.
  • Test 4: Set Instance Count=0 for mod-fqm-manager. Manually tested 1k, 100k and 500k records files Data Export started on Main  tenant(fs09000000) using srs - holdings and items job profile.

To get status and time range for export jobs the query used: 

SQL Query
select jsonb->'exportedFiles'->0->>'fileName' as fileName, job_profile_name,exported, started_date,completed_date, completed_date - started_date as duration ,status
from fs09000000_mod_data_export.job_executions where started_date > '2024-10-22' order by started_date desc limit 10;


  • No labels