Skip to end of banner
Go to start of banner

ECS mod-search: Test Reindexing full (Ramsons)

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 3 Current »

Overview

The document's purpose is to assess reindexing performance on a Ramsons release. Calculate reindex time and size of reindexing. PERF-984 - Getting issue details... STATUS

Test Summary

  • Reindex could be done in 3 hours and 4 minutes (db.r6g.8xlarge) for 13 million instances. It is a new feature and this reindex was started for the central tenant but done for all tenants in parallel.

  • Service CPU utilization was up to 60% for mod-search and 5% for mod-inventory-storage. For all other services CPU did not exceed 4%.

  • Memory utilization was stable and no memory leaks or OOM issues were observed.

  • RDS CPU utilization was about up to 28% for db.r6g.8xlarge.

Test Runs /Results

Test #

Start time

End time

Instances number

Test Conditions

reindexing on Ramsons release, consortium environment

Duration

Notes


1

2024-10-22T13:02:35

2024-10-22T16:06:18

13,777,503 *

In parallel: all tenants

3 hours 4 minutes

  • mod-search:

  1. task count = 4

  2. Mem Hard Limit = 2592

  3. Mem Soft Limit = 2480

  4. Xmx = -XX:MaxRAMPercentage=85.0

  • mod-inventory-storage task count = 4

  • open search Data nodes instance scaled up to r6g.4xlarge.search

* -Total number of instances for all of the tenants according to the database

Instances number per tenant

Tenant name

Instances number from UI

Instances number from the database

cs00000int

2,216,166

2,216,185

cs00000int_0001

8,799,538

7,015,237

cs00000int_0002

3,560,509

1,347,316

cs00000int_0003

3,187,778

1,135,806

cs00000int_0004

3,038,850

1,054,330

cs00000int_0005

2,836,270

1,004,629

Indexing size

All the data from the table below were captured after the test. Results from request for reindex monitoring GET /search/index/instance-records/reindex/status:

[
{
"entityType":"HOLDINGS",
"status":"MERGE_COMPLETED",
"totalMergeRanges":26246,
"processedMergeRanges":26246,
"totalUploadRanges":0,
"processedUploadRanges":0,
"startTimeMerge":"2024-10-22T13:02:36.049Z",
"endTimeMerge":"2024-10-22T14:12:31.965Z"
},
{
"entityType":"ITEM",
"status":"MERGE_COMPLETED",
"totalMergeRanges":31369,
"processedMergeRanges":31369,
"totalUploadRanges":0,
"processedUploadRanges":0,
"startTimeMerge":"2024-10-22T13:02:35.944Z",
"endTimeMerge":"2024-10-22T14:06:32.674Z"
},
{
"entityType":"SUBJECT",
"status":"UPLOAD_COMPLETED",
"totalMergeRanges":0,
"processedMergeRanges":0,
"totalUploadRanges":4095,
"processedUploadRanges":4095,
"startTimeUpload":"2024-10-22T14:12:33.759Z",
"endTimeUpload":"2024-10-22T15:11:58.204Z"
},
{
"entityType":"INSTANCE",
"status":"UPLOAD_COMPLETED",
"totalMergeRanges":0,
"processedMergeRanges":0,
"totalUploadRanges":12559,
"processedUploadRanges":12569,
"startTimeUpload":"2024-10-22T14:12:35.052Z",
"endTimeUpload":"2024-10-22T16:06:18.415Z"
},
{
"entityType":"CONTRIBUTOR",
"status":"UPLOAD_COMPLETED",
"totalMergeRanges":0,
"processedMergeRanges":0,
"totalUploadRanges":4095,
"processedUploadRanges":4095,
"startTimeUpload":"2024-10-22T14:12:34.509Z",
"endTimeUpload":"2024-10-22T15:12:19.081Z"
},
{
"entityType":"CLASSIFICATION",
"status":"UPLOAD_COMPLETED",
"totalMergeRanges":0,
"processedMergeRanges":0,
"totalUploadRanges":4095,
"processedUploadRanges":4095,
"startTimeUpload":"2024-10-22T14:12:35.088Z",
"endTimeUpload":"2024-10-22T15:26:05.314Z"
}
]

Resource utilization

Service CPU Utilization

chrome_i2MwKRUfkE.png

Memory Utilization

chrome_hxRtPGrfvY.png

chrome_Ll9pKJadLj.png

Instance CPU Utilization

chrome_90pLYBYa1N.png

DB CPU Utilization

chrome_yMUaQwcIdC.png

DB Connections

chrome_ogBAEz5gNB.png

Open Search metrics

Subrange of reindexing process from 13:02 - 16:06UTC. A Graph was added to see detailed behavior aggregated on the graph above.

chrome_uYUiXI7me7.png

CPU utilization percentage for all data nodes

chrome_w6FKcWgel3.png

Memory usage percentage for all data nodes

Average

chrome_5m5TGAcF2D.png

Maximum

chrome_h1NIkel3jx.png

Appendix

Infrastructure

PTF-environment rcon

  • 9 m6g.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 

  • 1 instance of db.r6g.8xlarge database, writer instance.

  • 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

  • OpenSearch ptf-reindex-test cluster

    • OpenSearch version 2.13

    • Data nodes

      • Availability Zone(s) - 2-AZ without standby

      • Instance type - r6g.4xlarge.search

      • Number of nodes - 4

      • EBS volume size (GiB) - 300

      • Provisioned IOPS - 3000IOPS

      • Provisioned Throughput (MiB/s) - 250 MiB/s

    • Dedicated master nodes
      Enabled - No

Module versions

Module

Task Def. Revision

Module Version

Task Count

Mem Hard Limit

Mem Soft limit

CPU units

Xmx

MetaspaceSize

MaxMetaspaceSize

rcon-pvt

mod-search

8

mod-search:4.0.0-SNAPSHOT.281

4

2592

2480

2048

-XX:MaxRAMPercentage=85.0

512

1024

mod-authtoken

3

mod-authtoken:2.16.0-SNAPSHOT.303

2

1440

1152

0

922

88

128

mod-inventory-storage

3

mod-inventory-storage:27.2.0-SNAPSHOT.773

4

4096

3690

0

3076

512

1024

mod-inventory

2

mod-inventory:20.3.0-SNAPSHOT.546

2

2880

2592

0

1814

384

512

mod-users

2

mod-users:19.3.3-SNAPSHOT.702

2

1024

896

0

768

88

128

nginx-okapi

2

nginx-okapi:2023.06.14

2

1024

896

0

0

0

0

okapi-b

2

okapi:5.3.0

3

1684

1440

0

922

384

512

 All modules and versions

Cluster Resources - rcon-pvt (Wed Oct 23 12:15:43 UTC 2024)

Module

Task Definition Revision

Module Version

Task Count

Mem Hard Limit

Mem Soft Limit

CPU Units

Xmx

Metaspace Size

Max Metaspace Size

mod-remote-storage

2

mod-remote-storage:3.2.1-SNAPSHOT.171

2

4920

4472

0

3960

512

512

mod-finance-storage

2

mod-finance-storage:8.7.0-SNAPSHOT.183

2

1024

896

0

700

88

128

mod-ncip

2

mod-ncip:1.14.6-SNAPSHOT.233

2

1024

896

0

768

88

128

mod-agreements

2

mod-agreements:7.1.0-SNAPSHOT.237

2

1592

1488

0

0

0

0

mod-ebsconet

2

mod-ebsconet:2.3.0-SNAPSHOT.80

2

1248

1024

0

700

128

256

mod-organizations

2

mod-organizations:2.0.0-SNAPSHOT.95

2

1024

896

0

700

88

128

mod-consortia

2

mod-consortia:1.2.0-SNAPSHOT.22

2

5136

4776

0

4416

384

512

edge-sip2

2

edge-sip2:3.3.0-SNAPSHOT.264

2

1024

896

0

768

88

128

mod-serials-management

2

mod-serials-management:1.1.0-SNAPSHOT.46

2

2480

2312

0

1792

384

512

mod-settings

2

mod-settings:1.0.4-SNAPSHOT.67

2

1024

896

0

768

88

128

mod-data-import

2

mod-data-import:3.2.0-SNAPSHOT.189

1

2048

1844

0

1292

384

512

mod-search

8

mod-search:4.0.0-SNAPSHOT.281

4

2592

2480

2048

0

512

1024

edge-dematic

2

edge-dematic:2.3.0-SNAPSHOT.143

1

1024

896

0

768

88

128

mod-inn-reach

2

mod-inn-reach:3.2.1-SNAPSHOT.102

2

3600

3240

0

2880

512

1024

mod-record-specifications

2

mod-record-specifications:1.0.0-SNAPSHOT.4

2

1024

896

0

768

88

128

mod-tags

2

mod-tags:2.2.1-SNAPSHOT.138

2

1024

896

0

768

88

128

mod-authtoken

3

mod-authtoken:2.16.0-SNAPSHOT.303

2

1440

1152

0

922

88

128

edge-courses

2

edge-courses:1.5.0-SNAPSHOT.1160

2

1024

896

0

768

88

128

mod-notify

2

mod-notify:3.2.1-SNAPSHOT.268

2

1024

896

0

768

88

128

mod-inventory-update

2

mod-inventory-update:3.4.2-SNAPSHOT.100

2

1024

896

0

768

88

128

mod-configuration

2

mod-configuration:5.11.0-SNAPSHOT.355

2

1024

896

0

768

88

128

mod-orders-storage

2

mod-orders-storage:13.8.0-SNAPSHOT.245

2

1024

896

0

700

88

128

edge-caiasoft

2

edge-caiasoft:2.3.0-SNAPSHOT.105

2

1024

896

0

768

88

128

mod-login-saml

2

mod-login-saml:2.9.0-SNAPSHOT.291

2

1024

896

0

768

88

128

mod-erm-usage-harvester

2

mod-erm-usage-harvester:5.0.0-SNAPSHOT.133

2

1024

896

0

768

88

128

mod-gobi

2

mod-gobi:2.9.0-SNAPSHOT.259

2

1024

896

0

700

88

128

mod-licenses

2

mod-licenses:6.1.0-SNAPSHOT.163

2

2480

2312

0

1792

384

512

mod-password-validator

2

mod-password-validator:3.2.2-SNAPSHOT.149

2

1440

1298

0

768

384

512

edge-dcb

3

edge-dcb:1.2.0-SNAPSHOT.39

2

1024

896

0

768

88

128

mod-bulk-operations

2

mod-bulk-operations:2.1.0-SNAPSHOT.119

2

3072

2600

0

1536

384

512

mod-fqm-manager

2

mod-fqm-manager:2.1.0-SNAPSHOT.1189

2

3000

2600

0

768

88

128

mod-graphql

2

mod-graphql:1.12.1.412

2

1024

896

0

768

88

128

mod-finance

2

mod-finance:5.0.0-SNAPSHOT.174

2

1024

896

0

700

88

128

mod-erm-usage

2

mod-erm-usage:5.0.0-SNAPSHOT.109

2

2800

2550

0

1800

384

512

mod-batch-print

2

mod-batch-print:1.2.0-SNAPSHOT.15

2

1024

896

0

768

88

128

mod-tlr

2

mod-tlr:1.0.0-SNAPSHOT.8

2

1024

896

0

768

88

128

mod-lists

2

mod-lists:2.1.0-SNAPSHOT.1303

2

3000

2600

0

2048

384

512

mod-copycat

2

mod-copycat:1.6.1-SNAPSHOT.208

2

1024

512

0

768

88

128

mod-entities-links

5

mod-entities-links:3.1.0-SNAPSHOT.113

2

2592

2480

0

1440

0

1024

mod-permissions

3

mod-permissions:6.6.0-SNAPSHOT.386

2

1684

1544

0

1024

384

512

pub-edge

2

pub-edge:2023.06.14

2

1024

896

0

768

0

0

mod-orders

2

mod-orders:12.9.0-SNAPSHOT.401

2

2048

1740

0

1024

384

512

edge-patron

2

edge-patron:5.2.0-SNAPSHOT.174

2

1024

896

0

768

88

128

mod-marc-migrations

11

mod-marc-migrations:1.0.0-SNAPSHOT.8

2

1024

896

0

768

88

128

edge-ncip

3

edge-ncip:1.10.2-SNAPSHOT.116

2

1024

896

0

768

88

128

edge-inn-reach

3

edge-inn-reach:3.3.0-SNAPSHOT.69

2

1024

896

0

768

88

128

mod-users-bl

2

mod-users-bl:7.9.0-SNAPSHOT.318

2

1440

1152

0

922

88

128

mod-oa

2

mod-oa:2.1.0-SNAPSHOT.66

2

1024

896

0

768

88

128

mod-inventory-storage

3

mod-inventory-storage:27.2.0-SNAPSHOT.773

4

4096

3690

0

3076

512

1024

mod-invoice

2

mod-invoice:5.9.0-SNAPSHOT.205

2

1440

1152

0

922

88

128

mod-user-import

2

mod-user-import:3.9.0-SNAPSHOT.197

2

1024

896

0

768

88

128

mod-sender

2

mod-sender:1.12.1-SNAPSHOT.100

2

1024

896

0

768

88

128

edge-oai-pmh

2

edge-oai-pmh:2.10.0-SNAPSHOT.174

2

1512

1360

0

1440

384

512

mod-data-export-worker

3

mod-data-export-worker:3.3.0-SNAPSHOT.233

2

3072

2048

0

2048

384

512

mod-rtac

2

mod-rtac:3.7.0-SNAPSHOT.203

2

1024

896

0

768

88

128

mod-circulation-storage

2

mod-circulation-storage:17.3.0-SNAPSHOT.412

2

2880

2592

0

1814

384

512

mod-source-record-storage

3

mod-source-record-storage:5.9.0-SNAPSHOT.405

2

5600

5000

0

3500

384

512

mod-calendar

2

mod-calendar:3.2.0-SNAPSHOT.229

2

1024

896

0

768

88

128

mod-event-config

2

mod-event-config:2.7.2-SNAPSHOT.110

2

1024

896

0

768

88

128

mod-courses

3

mod-courses:1.4.11-SNAPSHOT.155

2

1024

896

0

768

88

128

mod-circulation-item

2

mod-circulation-item:1.0.1-SNAPSHOT.26

2

1024

896

0

0

0

0

mod-inventory

2

mod-inventory:20.3.0-SNAPSHOT.546

2

2880

2592

0

1814

384

512

mod-email

2

mod-email:1.17.1-SNAPSHOT.128

2

2800

2550

0

1800

384

512

mod-requests-mediated

2

mod-requests-mediated:1.0.0-SNAPSHOT.4

2

1024

896

0

768

88

128

mod-circulation

2

mod-circulation:24.3.0-SNAPSHOT.685

2

2880

2592

0

1814

384

512

mod-pubsub

2

mod-pubsub:2.15.0-SNAPSHOT.224

2

1536

1440

0

922

384

512

mod-di-converter-storage

2

mod-di-converter-storage:2.3.0-SNAPSHOT.124

2

1024

896

0

768

88

128

edge-rtac

2

edge-rtac:2.7.3-SNAPSHOT.234

2

1024

896

0

768

88

128

edge-orders

2

edge-orders:3.1.0-SNAPSHOT.156

2

1024

896

0

768

88

128

mod-users

2

mod-users:19.3.3-SNAPSHOT.702

2

1024

896

0

768

88

128

mod-template-engine

2

mod-template-engine:1.20.1-SNAPSHOT.118

2

1024

896

0

768

88

128

mod-patron-blocks

2

mod-patron-blocks:1.11.0-SNAPSHOT.163

2

1024

896

0

768

88

128

mod-audit

2

mod-audit:2.9.1-SNAPSHOT.216

2

1024

896

0

768

88

128

edge-fqm

3

edge-fqm:2.1.0-SNAPSHOT.100

2

1024

896

0

768

88

128

mod-source-record-manager

2

mod-source-record-manager:3.9.0-SNAPSHOT.353

2

5600

5000

0

3500

384

512

nginx-edge

2

nginx-edge:2023.06.14

2

1024

896

0

0

0

0

mod-quick-marc

2

mod-quick-marc:5.2.0-SNAPSHOT.153

1

2288

2176

0

1664

384

512

nginx-okapi

2

nginx-okapi:2023.06.14

2

1024

896

0

0

0

0

okapi-b

2

okapi:5.3.0

3

1684

1440

0

922

384

512

mod-feesfines

2

mod-feesfines:19.2.0-SNAPSHOT.198

2

1024

896

0

768

88

128

mod-invoice-storage

2

mod-invoice-storage:5.9.0-SNAPSHOT.138

2

1872

1536

0

1024

384

512

mod-reading-room

2

mod-reading-room:1.0.0-SNAPSHOT.12

2

1024

896

0

768

88

128

mod-dcb

2

mod-dcb:1.1.3-SNAPSHOT.40

2

1024

896

0

768

88

128

mod-service-interaction

2

mod-service-interaction:4.1.0-SNAPSHOT.126

2

2048

1844

0

1290

384

512

mod-patron

2

mod-patron:6.2.0-SNAPSHOT.165

2

1024

896

0

768

88

128

mod-data-export

5

mod-data-export:5.1.0-SNAPSHOT.240

1

2592

2480

0

1440

88

1024

mod-oai-pmh

2

mod-oai-pmh:3.14.0-SNAPSHOT.402

2

4096

3690

0

3076

384

512

edge-connexion

2

edge-connexion:1.4.0-SNAPSHOT.88

2

1024

896

0

768

88

128

mod-notes

2

mod-notes:5.3.0-SNAPSHOT.325

2

1024

896

0

952

384

512

mod-kb-ebsco-java

3

mod-kb-ebsco-java:4.2.0-SNAPSHOT.178

2

1024

896

0

768

88

128

mod-organizations-storage

2

mod-organizations-storage:4.8.0-SNAPSHOT.133

2

1024

896

0

700

88

128

mod-data-export-spring

2

mod-data-export-spring:3.3.1-SNAPSHOT.167

1

2048

1844

0

1536

384

512

mod-login

2

mod-login:7.12.0-SNAPSHOT.326

2

1440

1298

0

768

384

512

pub-okapi

2

pub-okapi:2023.06.14

2

1024

896

0

768

0

0

mod-eusage-reports

2

mod-eusage-reports:3.0.0-SNAPSHOT.73

2

1024

896

0

768

88

128

Methodology/Approach

  • Use consortium cluster for testing (rcon in our case).

  • Configure the environment according to Infrastructure parameters and requirements that are in the ticket PERF-889 - Getting issue details... STATUS

  • Reindex process was started from the JMeter script using POST request /search/index/instance-records/reindex/full without any parameters on central tenant. For all other tenants in consortium cluster reindex will be performed automatically.

  • Reindex, get the results for indexing time and size from GET /search/index/instance-records/reindex/status

  • No labels