ResearchSoftwareInstitute / greendatatranslator

Green Team Data Translator Software Engineering and Development
BSD 3-Clause "New" or "Revised" License
2 stars 1 forks source link

Onto API /descendants call ... potential for performance boost #173

Closed colinkcurtis closed 5 years ago

colinkcurtis commented 5 years ago

Currently, this call:

$curl -X GET "https://onto.renci.org/descendants/GO%3A0005575" -H "accept: application/json"

returns an answer containing 4203 IDs in a time of ~ 7 minutes.

The major time consumption can be found here: https://github.com/NCATS-Tangerine/reasoner-tools/blob/master/greent/services/ontology.py#L79

Hard to estimate completion, hard problem. If the UberOnto API is deployed successfully, this work will be made obsolete.

colinkcurtis commented 5 years ago

Spoke with Yaphet about this problem... discussed using multiprocessing... those tools do not lend themselves to recursion on the object of a for loop in an obvious way

perhaps using a result_list and a queue_list separately, updating both simultaneously, but only operating on the queue_list could work with multiprocessing module.

colinkcurtis commented 5 years ago

Use http://stars-dw5.edc.renci.org:5007/apidocs/#/default/get_descendants__curie_