Skip to content

Performance Issue with over 800k registers, suggesting using sqlite to store and dynamically query the RDL database. #45

@isuckatdrifting

Description

@isuckatdrifting

Hi @amykyta3,

I am using the PeakRDL-html 2.10.1 and find performance issue on a website for around 800k registers (and more fields obviously) similar to #34.

There are two major issues I would like to propose:

  1. webpage performance -- As shown below in a history build of the website, the synchronous data.js is occupying much of the time of the page loading, and significantly draws back the overall performance.
Snipaste_2023-09-21_14-08-27

I found this issue on older releases of this tool (maybe two years ago), but I am not sure if it is resolved in the latest build due to the issue 2 below.

  1. build performance -- our 800k register RDL build takes around 30 minutes on a decent server CPU (latest xeon-platinum), and it is an acceptable period of time actually, for manual build or CI. However, the webpage exporter takes even longer (roughly 4-5 hours). Currently the process is gonna run for hours and generates the same number of html files under the content folder (which is also a burden for the hard-drive actually).

In our local frontend environment, we see sqlite significantly improves the overall query performance of such large scale of register information. So I would like to suggest using sqlite to store the generated RDL database, and dynamically query and generate the detail pages and hierarchy trees, instead of statically generate them in the content folder.

I wonder if it is planned in the future release of this tool. Thank you.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions