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

Dump old WebSOC data into sqlite db #67

Open
ramanxg opened this issue Apr 19, 2021 · 2 comments
Open

Dump old WebSOC data into sqlite db #67

ramanxg opened this issue Apr 19, 2021 · 2 comments
Assignees
Labels
blocked blocked Story Point 5 New big feature to the project that can affect design of app. New tests likely needed.
Milestone

Comments

@ramanxg
Copy link
Member

ramanxg commented Apr 19, 2021

In reference to this comment, we could put old websoc data into the sqlite so that the query time is faster. This should prevent us from having to make a new request to websoc for data that will not change.

We can start by doing this with the course offerings from 2019-20 and earlier. It might be helpful to also keep track of query times so we know how much our api is improving for speed. These requests might not occur very often, but in the case that they do, we won't have to make more requests to websoc.

Todo

  • Request and dump the old data into a csv file. We can do this with our own api.
  • Create a table in our sqlite with appropriate fields and put csv file data into it.
  • Restructure both rest endpoints and graphql so that for any requests for older years, the sqlite file is queried instead of the websoc-api.
  • Test and compare speeds
@ramanxg ramanxg added the Story Point 3 Change to an endpoint or response. Unit Testing required. label May 24, 2021
@ramanxg ramanxg added Story Point 5 New big feature to the project that can affect design of app. New tests likely needed. and removed Story Point 3 Change to an endpoint or response. Unit Testing required. labels Jun 1, 2021
@ramanxg
Copy link
Member Author

ramanxg commented Oct 13, 2021

Blocked for now. Need to do more research on what is the best method.

@ramanxg
Copy link
Member Author

ramanxg commented Oct 19, 2021

Rather than dumping old websoc data into our SQLite database, due to the large size we should create a cloud instance of a databse, RDS or MongoDB, to store this old WebSoc Data.

Each websoc query, requires a year, and if the year is not the current year, then we can instead query the database. To prevent requiring secrets and being more open to Open-source, we can check if the key is provided in our secrets, and if not we can query regular websoc as we did before.

TODO:

  • Determine the size of the last ~10 years of websoc data, and find the size of cluseter we need.

@ramanxg ramanxg added the blocked blocked label Jan 6, 2022
@ecxyzzy ecxyzzy added this to the v1 milestone Jul 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked blocked Story Point 5 New big feature to the project that can affect design of app. New tests likely needed.
Projects
Status: Backlog
Development

No branches or pull requests

3 participants