Attempting to retrieve DICOM data file-by-file doesn't scale for large instance counts

Issue #6 closed
Charlie Moore created an issue

Clone of issue previously here: https://github.com/JamesAPetts/ohif-viewer-XNAT-plugin/issues/13

TL;DR: I don’t have a good solution, but with large instance counts in a series, the time to load that series is very, very, painful.

The viewer seems to request each individual DICOM file as far as I can tell. For series where there are around 100 instances, this is perfect. It allows the viewer to start displaying several frames while loading in the following frames quickly behind it. However, once the instance count grows significantly, the approach doesn’t scale. The viewer can load the beginning of the series well, but it will be making thousands, or even tens of thousands of file requests to the server. Each of those requests has a delay from making the round-trip to a remote server and back, creating the HTTP request, etc. It’s not bad for 100 files, but at 10000 or 20000, transferring a series takes an inordinate amount of time. In these cases it would be much faster to grab the whole series as a zip since that only requires a single HTTP call. Whether that justifies the tradeoffs? Unclear.

Note: this is not much of an edge case at all, as we're getting increasing amounts of data on CNDA with enormous instance counts (e.g. 80000 files/instances in one series). I’m not very familiar with this data, so maybe it’s not intended to be viewed in this type of viewer, but at the very least, the trend seems to be heading towards enormous instance counts.

Comments (1)

  1. Log in to comment