Scalable bucket merging for a data intake and query system
US-11334543-B1 · May 17, 2022 · US
US11550693B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11550693-B2 |
| Application number | US-202117373024-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 12, 2021 |
| Priority date | Dec 23, 2019 |
| Publication date | Jan 10, 2023 |
| Grant date | Jan 10, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for logging real-time data of a robot control system. One of the systems comprises a real-time robotic control system comprising one or more computers, programmed to perform operations comprising i) software module loops and ii) real-time data logging, wherein each software module loop comprises a plurality of software modules executed repeatedly in a predetermined sequence, each software module executes within a predetermined time window, and the real-time data logging comprises copying segments of real-time data used by a particular software module to a buffer accessible by a non-real-time downstream system, wherein each segment of real-time data is copied at a respective predetermined time relative to execution of the software modules in the software module loop; and the non-real-time downstream system comprising one or more computers, the non-real-time downstream system programmed to perform operations that consume the real-time messages.
Opening claim text (preview).
What is claimed is: 1. A system comprising: a real-time robotic control system comprising one or more computers, the real-time robotic control system programmed to perform operations comprising i) repeatedly executing a software module loop and ii) performing real-time data logging, wherein: the software module loop comprises a plurality of software modules executed in a predetermined sequence, each software module in the software module loop executes within a predetermined time window, and performing the real-time data logging comprises copying one or more segments of real-time data processed by a particular software module of the software module loop to a buffer accessible by a non-real-time downstream system, wherein each of the one or more segments of real-time data is copied at a respective predetermined time relative to execution of the software modules in the software module loop; and the non-real-time downstream system comprising one or more computers, the non-real-time downstream system programmed to perform operations that consume the one or more segments of real-time data. 2. The system of claim 1 , wherein: at least one software module of the software module loop executes according to respective predefined data interfaces, the at least one software module of the software module loop exchanges real-time messages with one or more other software modules of the software module loop according to the respective predefined data interfaces, and the one or more segments of real-time data comprise one or more real-time messages exchanged between respective software modules of the software module loop. 3. The system of claim 1 , wherein copying each segment of the one or more segments of real-time data takes a respective predetermined amount of time. 4. The system of claim 1 , wherein copying the one or more segments of real-time data comprises accessing a configuration file that specifies the one or more segments of real-time data. 5. The system of claim 1 , wherein performing the real-time logging further comprises: processing the one or more segments of real-time data, and inserting the one or more segments of processed real-time data into the buffer accessible by the non-real-time downstream system. 6. The system of claim 1 , wherein copying the one or more segments of real-time data to a buffer comprises serializing the segments of real-time data in the buffer. 7. The system of claim 1 , wherein performing the real-time data logging further comprises configuring a size of the buffer accessible by the non-real-time downstream system. 8. The system of claim 1 , wherein copying the one or more segments of real-time data to a buffer comprises selecting a respective location in the buffer for each segment of real-time data to be copied. 9. The system of claim 1 , wherein the non-real-time downstream system comprises one or more of: a visualizer system, a debugging system, an analytics system, an auditing system, a preventative maintenance system, or a machine learning system. 10. The system of claim 1 , wherein each of the one or more segments of real-time data is overwritten at each execution of the software module loop, and wherein the respective predetermined time for copying each segment of real-time data precedes the overwriting of the segment of real-time data in the software module loop. 11. A method comprising: receiving data representing a software module loop to be repeatedly executed by a real-time robotic control system, wherein the software module loop comprises a plurality of software modules to be executed in a predetermined sequence; generating a schedule that specifies a respective time at which to execute each software module in the software module loop according to one or more real-time constraints of the real-time robotic control system; selecting, within the schedule and relative to the execution of the software modules in the software module loop, respective times to copy one or more segments of real-time data processed by a particular software module of the software module loop; and generating a modified schedule that when executed by the real-time robotic control system causes the real-time robotic control system to perform operations comprising copying the one or more segments of real-time data to a buffer accessible by a non-real-time downstream system. 12. The method of claim 11 , wherein: receiving data representing a software module loop comprises receiving data representing a respective data interface for at least one of the software modules in the software module loop, wherein each data interface specifies real-time messages exchanged between the respective software module and other software modules in the software module loop; and the one or more segments of real-time data comprise one or more real-time messages exchanged between respective software modules. 13. The method of claim 11 , wherein copying each segment of real-time data takes a respective predetermined amount of time. 14. The method of claim 11 , wherein copying the one or more segments of real-time data comprises accessing a configuration file that specifies the one or more segments of real-time data. 15. The method of claim 11 , wherein copying the one or more segments of real-time data to a buffer accessible by a non-real-time downstream system comprises: processing the one or more segments of real-time data, and inserting the one or more segments of processed real-time data into the buffer accessible by the non-real-time downstream system. 16. The method of claim 11 , wherein copying the one or more segments of real-time data to a buffer comprises serializing the segments of real-time data in the buffer. 17. The method of claim 11 , further comprising configuring a size of the buffer accessible by the non-real-time downstream system. 18. The method of claim 11 , wherein copying the one or more segments of real-time data to a buffer comprises selecting a respective location in the buffer for each segment of real-time data to be copied. 19. The method of claim 11 , wherein: each of the one or more segments of real-time data is overwritten at each execution of the software module loop, and selecting, within the schedule and relative to the execution of the software modules in the software module loop, respective times to copy the one or more segments of real-time data comprises, for each segment of real-time data, selecting a time within the schedule that precedes the overwriting of the segment of real-time data. 20. One or more non-transitory computer storage media encoded with computer program instructions that when executed by a plurality of computers cause the plurality of computers to perform operations comprising: receiving data representing a software module loop to be repeatedly executed by a real-time robotic control system, wherein the software module loop comprises a plurality of software modules to be executed in a predetermined sequence; generating a schedule that specifies a respective time at which to execute each software module in the software module loop according to one or more real-time constraints of the real-time robotic control system; selecting, within the schedule and relative to the execution of the software modules in the software module loop, respective times to copy one or more segments of real-time data processed by a particular software module of the software module loop; and generating a modified schedule that when executed by the real-time robotic co
characterised by the control loop · CPC title
Real-time · CPC title
by assessing time · CPC title
Record history, log, journal, audit of machine operation · CPC title
Monitoring of software · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.