Data Import Create MARC Holdings Records [non-ECS] [Quesnelia]
Overview
The purpose of the document is getting results of testing Data Import Create MARC holdings records and to detect performance trends in Quesnelia in scope of ticket - PERF-833Getting issue details... STATUS
Compared with results in previous test report: Data Import Create MARC holdings records [non-ECS] [Poppy]
Summary
- Data import create holdings jobs perform faster in Quesnelia release about 40% in Average comparing with Poppy.
- Number of associated holdings to one instance in files used in tests do not affect duration of data import in non-ECS environments.
- Top CPU utilization: mod-inventory-b - 73%, nginx-okapi - 65%, mod-quick-marc-b - 57%, mod-source-record-storage-b - 35%
- Top Memory consumption:
- Set #1: mod-inventory-storage-b - 87%, mod-inventory-b - 72%, mod-data-import-b - 59%, Spikes for mod-inventory-storage-b were observed and after tests finished it returned into "before tests" state.
- Set #2: mod-inventory-storage-b - 24%, mod-inventory-b - 56%, mod-data-import-b - 58%, mod-users-b - 53%. During
- RDS CPU utilization was on level 95% for all DI tests except of test with 1k file.
- RDS DB connections were 860
Recommendations & Jiras
- Investigate memory growing trend for mod-inventory-storage in tests set #1 (using 1 instance HRID to create all Holdings).
Test Runs
Profile used for testing - Default - Create Holdings and SRS MARC Holdings
Set of tests № | Scenario | Test Conditions |
---|---|---|
1 | DI Holdings Create (previous* approach) | 1K, 5K, 10K, 80K sequentially |
2 | DI Holdings Create (new** approach) | 1K, 5K, 10K, 80K sequentially |
*previous approach - Data import Holdings with mrc file where 1 instance HRID is associated to all holdings (1k, 5k, 10k, 80k)
**new approach - Data import Holdings with mrc file where 1 instance HRID is associated to 1000 holdings
Test Results
Set 1 - Files used to test DI create Holdings had 1 instance HRID for all created Holdings
Set 2 - Files used to test DI create Holdings had 1 unique instance HRID for every 1000 created Holdings (new approach)
Test | Number of records in File | Duration: Quesnelia [non-ECS] Set #1 | Duration: Quesnelia [non-ECS] Set #2 | Status and Errors Quesnelia [non-ECS] Set #1, Set #2 |
---|---|---|---|---|
1 | 1k | 19 sec | 25 sec | Success |
2 | 5k | 1 min 17 sec | 1 min 24 sec | Success |
3 | 10k | 2 min 32 sec | 2 min 40 sec | Success |
4 | 80k | 19 min 54 sec | 21 min 44 sec | Success |
Comparison
Test | Number of records in File | Duration: Poppy [non-ECS] | Duration: Quesnelia [non-ECS] Set #1 | Delta, sec | %, Delta/Poppy Duration |
---|---|---|---|---|---|
1 | 1k | 32 sec | 19 sec | 13 sec | 40.63% |
2 | 5k | 2 min 14 sec | 1 min 17 sec | 57 sec | 42.54% |
3 | 10k | 4 min 35 sec | 2 min 32 sec | 2 min 3 sec | 44.73% |
4 | 80k | 36 min 25 sec | 19 min 54 sec | 16 min 31 sec | 45.35% |
Compared with results in previous test report: Data Import Create MARC holdings records [non-ECS] [Poppy]
Service CPU Utilization
Memory Utilization
MSK tenant cluster
Disk usage by broker
CPU (User) usage by broker
Open Search
CPU utilization master node
CPU utilization data node
Minimum free storage space (GiB)
Maximuim memory utilization data node
Indexing rate
RDS CPU Utilization
For all tests - 95% except of DI Holdings with 1k file - 25%.
DB Connections
DB Load
Set #1