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

rewrite riskofbias exports #921

Merged
merged 14 commits into from
Oct 12, 2023
Merged

Conversation

shapiromatron
Copy link
Owner

@shapiromatron shapiromatron commented Oct 11, 2023

Rewrite DRF serializer based riskofbias exports with exports using our new QuerySet based approach. Tested on one project, we reduced the number of queries from 750+ to ~5. Looking at just db time on the debug toolbar, from 600ms to around 50ms; this doesn't include the python runtime decrease with converting to Django models and corresponding serializer objects.

I renamed a few columns in the export just as the prior names seemed incorrect, and since this export isn't used in any downstream views in HAWC, renaming should be harmless.

@shapiromatron shapiromatron marked this pull request as ready for review October 11, 2023 02:13
Base automatically changed from epi-export-rewrite to export-rewrites October 12, 2023 13:58
Copy link
Collaborator

@rabstejnek rabstejnek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just one optional comment to address.

@shapiromatron shapiromatron merged commit ce11ca0 into export-rewrites Oct 12, 2023
@shapiromatron shapiromatron deleted the rob-export-rewrite branch October 12, 2023 22:58
rabstejnek added a commit that referenced this pull request Jul 2, 2024
* Epi export rewrite (#911)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* use vectorized timestamp conversion

* minor formatting

---------

Co-authored-by: Andy Shapiro <shapiromatron@gmail.com>

* rewrite riskofbias exports (#921)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* rewrite riskofbias exports

* update naming for domain and metric

---------

Co-authored-by: Daniel Rabstejnek <rabstejnek@gmail.com>

* Epimeta export rewrite (#922)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* epimeta export rewrite

* remove obsolete code

* changes

* merge fix

* update admin site to browse data pivot by evidence type

---------

Co-authored-by: Andy Shapiro <shapiromatron@gmail.com>

* Invitro export rewrite (#958)

* Convert invitro exports

* Fix exporter datetime converter when datetime is None

* Fix exports where there's no data

* DTXSID in export should be None instead of useless dict if missing

* add endpoint categories

* Remove bloated dsstox dict from exports in favor of dtxsid

---------

Co-authored-by: Andy Shapiro <shapiromatron@gmail.com>

* Animal export rewrite (#961)

* Made animal model exports, began configuring exporters

* first export largely done, second export mostly done

* Some cleanups, finished fourth animal exporter

* Changes after more testing

* Fix tests

* Remove remaining flat_complete_* methods

* Cleanup

* Update sql_display to accept dict

* Add TODO to comment to easily find it

* Rename exporters to match the flat file exporter class names

* Add safeguard for qs accessing and fix groupby side effects (#982)

* two updates

* move to correct place

* exports-v2 - Updates from image review (#1058)

* remove duplicate rename calls

* add ci calculation

* update treatment period calculation

* add back space; fix caused too many false positives in comparison

* properly handle a 500 response from the server in a data pivot

* fix epi logic from plot review

* fix invitro export when category id is null; remove category id from export

* add unique rob columns

* use same method for categories

* refactor into a reusable method

* remove pytest warning "Marks applied to fixtures have no effect"

* refactor; write tests

* add tests

* rewrite animal export test using same pattern

* add udf to openapi

* remove extra whitespace (will change visuals; known change)

---------

Co-authored-by: Daniel Rabstejnek <rabstejnek@gmail.com>
shapiromatron added a commit that referenced this pull request Sep 3, 2024
* Epi export rewrite (#911)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* use vectorized timestamp conversion

* minor formatting

---------

Co-authored-by: Andy Shapiro <shapiromatron@gmail.com>

* rewrite riskofbias exports (#921)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* rewrite riskofbias exports

* update naming for domain and metric

---------

Co-authored-by: Daniel Rabstejnek <rabstejnek@gmail.com>

* Epimeta export rewrite (#922)

* preliminary epi rewrite

* changes

* changes

* changes

* fix

* added back something accidentally deleted

* moved code

* fix test

* remove old stuff

* cleanup:

* epimeta export rewrite

* remove obsolete code

* changes

* merge fix

* update admin site to browse data pivot by evidence type

---------

Co-authored-by: Andy Shapiro <shapiromatron@gmail.com>

* started simple assessment value exports

* added more assessment fields

* add helper method to filter querysets in custom api viewset actions

* added assessment fields, and year filter

* added order_by and pagination fields to filterset

* changed format_time to accomodate pandas update

* fixed filtering for df with empty values

* add a few more options

---------

Co-authored-by: Daniel Rabstejnek <rabstejnek@gmail.com>
Co-authored-by: Danny Peterson <dannypeterson28@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants