Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dissect Solr Performance through New Relic #3956

Open
5 tasks
nickumia-reisys opened this issue Sep 15, 2022 · 2 comments
Open
5 tasks

Dissect Solr Performance through New Relic #3956

nickumia-reisys opened this issue Sep 15, 2022 · 2 comments
Labels
component/solr-service Related to Solr-as-a-Service, a brokered Solr offering

Comments

@nickumia-reisys
Copy link
Contributor

nickumia-reisys commented Sep 15, 2022

User Story

In order to gain insight into why Solr has stability issues, the Data.gov Solr team wants to integrate NR into our Solr deployment and investigate performance metrics to isolate problem areas.

Acceptance Criteria

[ACs should be clearly demoable/verifiable whenever possible. Try specifying them using BDD.]

  • GIVEN a Solr is provisioned
    WHEN I log into NR
    THEN I can see a dashboard of performance metrics for Solr

Background

There have been numerous issues with Solr where we could not identify the cause of the problem and were developing blindly. This issue would give us insight into what function calls or Solr operations are causing various problems and help us identify which parameters should be tuned for that particular optimization.

Historical Issues:

Security Considerations (required)

[Any security concerns that might be implicated in the change. "None" is OK, just be explicit here!]

Sketch

Reference: https://tech.olx.com/improving-solr-performance-f4202d28b72d

@hkdctol hkdctol moved this to Product Backlog in data.gov team board Sep 29, 2022
@hkdctol hkdctol moved this from 📔 Product Backlog to 📟 Sprint Backlog [7] in data.gov team board Dec 1, 2022
@hkdctol hkdctol moved this from 📟 Sprint Backlog [7] to 📔 Product Backlog in data.gov team board Dec 1, 2022
@hkdctol hkdctol moved this from 📔 Product Backlog to 📟 Sprint Backlog [7] in data.gov team board Feb 2, 2023
@hkdctol hkdctol moved this from 📟 Sprint Backlog [7] to 📔 Product Backlog in data.gov team board Feb 2, 2023
@nickumia-reisys
Copy link
Contributor Author

Through an interactive discussion with NR Support, it was determined that there are solr optimizations we can do:

  1. Speed Optimization
    image
    1. Number of Solr Calls
      • For a homepage load, there are 21 calls to Solr. This should not need to be more than 2. In other words, the CKAN core code is inefficient. If we wanted to optimize this, it would be a daring endeavor to not break a code feature of CKAN. Serious thought would be needed for this effort.
    2. Speed of Solr Calls
      • Each Solr call takes around 1s on average. This means our Solr deployment is pretty inefficient. For context, a ("similar"?) DB call is made 140 times, but takes less than 100ms for all of those call cumulatively. We probably won't be able to match the DB speed. However, the performance-to-cost ratio may or may not be worth increasing the size of the Solr instance. We are giving 4 vCPU and AWS has support for upto 16 vCPU.
        image
  2. Better Performance Monitoring
    1. See Incorporate NR into our custom Solr image #4473 for more details.

These points don't talk to why there is a (memory leak?) in Solr and what we can do to resolve that as yet. The second point will allow us to do more debugging.

@btylerburton btylerburton added the component/solr-service Related to Solr-as-a-Service, a brokered Solr offering label Dec 14, 2023
@btylerburton
Copy link
Contributor

Depends upon this ticket: #3956

@jbrown-xentity jbrown-xentity moved this from 📔 Product Backlog to 🧊 Icebox in data.gov team board Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/solr-service Related to Solr-as-a-Service, a brokered Solr offering
Projects
Status: 🧊 Icebox
Development

No branches or pull requests

2 participants