US 12,189,659 B2
Systems and methods for a multi-hierarchy physical storage architecture for managing program and outcome data
Paxton Riter, Dallas, TX (US); Ned Stone, Dallas, TX (US); Whitney Kilgore, Valley View, TX (US); Krista Galyen, Columbia, MO (US); Sam Foster, Dallas, TX (US); Andreas Buchmann, Stuttgart (DE); and Derek Howard, Columbia, MO (US)
Assigned to iDesignEDU, LLC, Dallas, TX (US)
Filed by iDesignEDU, LLC, Dallas, TX (US)
Filed on Oct. 26, 2023, as Appl. No. 18/495,639.
Application 18/495,639 is a continuation of application No. 18/175,463, filed on Feb. 27, 2023, granted, now 11,803,573.
Application 18/495,639 is a continuation of application No. 17/686,298, filed on Mar. 3, 2022, granted, now 11,593,401.
Prior Publication US 2024/0054148 A1, Feb. 15, 2024
Int. Cl. G06F 16/00 (2019.01); G06F 16/22 (2019.01); G06F 16/242 (2019.01); G06F 16/248 (2019.01); G06F 16/28 (2019.01)
CPC G06F 16/282 (2019.01) [G06F 16/2272 (2019.01); G06F 16/2282 (2019.01); G06F 16/243 (2019.01); G06F 16/248 (2019.01)] 15 Claims
OG exemplary drawing
 
1. A method for data storage and retrieval from a computer memory, comprising:
storing, by a computing device, a first hierarchical data structure comprising a first sequence of sub-data structures, the first sequence of sub-data structures comprising a first initial sub-data structure, a first at least one intermediate sub-data structure, and a first terminal sub-data structure, the first initial sub-data structure linked with the first at least one intermediate sub-data structure by an identifier of the at least one intermediate sub-data structure in the first initial sub-data structure and an identifier of the first initial sub-data structure in the first at least one intermediate sub-data structure, the first at least one intermediate sub-data structure linked with the first terminal sub-data structure by an identifier of the first terminal sub-data structure in the first at least one intermediate sub-data structure and an identifier of the first at least one intermediate sub-data structure in the first terminal sub-data structure, wherein the first initial sub-data structure comprises course data about a course and the first terminal sub-data structure comprises activity data about an activity for the course, the activity data comprising an activity time on task estimate and the course data about the course comprising a course time on task estimate comprising an aggregate of activity time on task estimates of the first terminal sub-data structure and any other terminal sub-data structures comprising the identifier of the first initial sub-data structure in the first hierarchical data structure;
storing, by the computing device, a second hierarchical data structure comprising a second sequence of sub-data structures, the second sequence of sub-data structures comprising a second initial sub-data structure, a second at least one intermediate sub-data structure, and a second terminal sub-data structure, the second initial sub-data structure linked with the second at least one intermediate sub-data structure by an identifier of the at least one intermediate sub-data structure in the second initial sub-data structure and an identifier of the second initial sub-data structure in the second at least one intermediate sub-data structure, the second at least one intermediate sub-data structure linked with the second terminal sub-data structure by an identifier of the second terminal sub-data structure in the second at least one intermediate sub-data structure and an identifier of the second at least one intermediate sub-data structure in the second terminal sub-data structure, wherein the second initial sub-data structure comprises program outcome data for a program and the second terminal sub-data structure comprises module outcome data for a module of the program, the module outcome data comprising an aggregation of activity time on task estimates of a second plurality of terminal sub-data structures in the first hierarchical data structure linked to the second terminal sub-data structure, the program outcome data comprising an aggregation of module outcome time on task estimates of a second plurality of terminal sub-data structures of the second hierarchical data structure linked to the second initial sub-data structure;
inserting, by the computing device, a terminal identifier of the second terminal sub-data structure into a first field of the first terminal sub-data structure and a terminal identifier of the first terminal sub-data structure into a second field the second terminal sub-data structure, the first and second fields each dedicated to storing identifiers of sub-data structures;
receiving, by the computing device from a client device, a request comprising an identification of the first initial sub-data structure of the first sequence;
responsive to receipt of the request, retrieving, by the computing device, data from each sub-data structure in the first sequence of sub-data structures and the second sequence of sub-data structures based on the identification of the first initial sub-data structure matching a string in the first initial sub-data structure of the first sequence and further based on each identifier linking the first sequence of sub-data structures and the second sequence of sub-data structures and the first terminal sub-data structure with the second terminal sub-data structure;
and
transmitting, by the computing device, a record generated based on the retrieved data to the client device.