-
Notifications
You must be signed in to change notification settings - Fork 53
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
Overall DRS scaling concerns [EPIC] #342
Comments
The key here is the question of whether logical structures should be handled with DRS as raised in #337. So dealing with that first. This is explored in some detail in the SRA_IDs_and_bundling notebook. That does not take away the need for handling lists of objects (#286, #334) and of pagination (#325) but suggest those should work simply as low-level/fundamental operations for lists. The conclusion from the notebook above that domain level meaning should not be placed on DRS as a base level protocol applies to other use cases and models. File/Object type is required (see #319) both for bundles and simple objects. Note that pagination into complex structures should involve proper consideration of the use cases. The idea that linear navigation through an image, or a genomic data structure reflects user need should be thought through. Random access into complex nested structures, determined by some user/application need will be common. Further discussion: #323 may become moot. That a bundle is "like a directory" seems reasonable, but only as analogy. Expecting that bundles literally would be directories is too limiting. What is most important that meaningful structure exists for any aggregation of objects. Directory structures may or may not provide that depending on how the directories are used or maintained (usually fickle). The separation of the concern of physical level structure from that of domain meaning is one that has proven to be useful. |
(edited 10-april to incorporate @ianfore's feedback from 31-march) 1) Bulk Data RequestsI believe this is the most semantically straightforward PR, and should be defined to be purely optional optimization for clients that want to retrieve large amounts of info via DRS. It should provide more efficient ways to access existing functionality, not provide net new functionality. This PR should include:
2) Logical collections of objectsI believe, per the WS meeting discussion, we can resolve this one with documentation changes only along the lines of:
As part of this PR, we may want to also:
3) Bundle clarificationI believe this one will take more discussion, since I'm not sure I understand all the use cases for bundles. I suggest we get the other two PRs rolling before trying to nail this one down, since many of the current bundle use cases will no longer be needed. |
These sound like good buckets. Would add a couple of suggestions. The first would be to shift the focus of the first PR to "support for requesting info on multiple objects at once". Pagination then becomes a need that derives from that. Second, is a clarification of or changes to type (#319) as discussed above. This fits within the scope of the second PR - collections of objects. Suggest any work towards a PR on this one should include thorough familiarization with Research Objects RO-Crate. RO-Crate is used within the Elixir Driver Project. |
Thanks @ianfore -- I incorporated both of your suggestions into my proposal above. |
This is a parent epic for gathering multiple conversations/threads/tickets about how to scale DRS and what dependencies this has on things like Passport and token expiration.
Related tickets:
Ian suggested having a deep dive on this topic in the coming weeks. He's agreed to act as champion for this ticket and conversation.
The text was updated successfully, but these errors were encountered: