Elevated security execution mode for network-accessible devices
US-2024411878-A1 · Dec 12, 2024 · US
US8935293B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-8935293-B2 |
| Application number | US-39646409-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 2, 2009 |
| Priority date | Mar 2, 2009 |
| Publication date | Jan 13, 2015 |
| Grant date | Jan 13, 2015 |
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.
Techniques for reducing the memory used for processing events received in a data stream are provided. This may be achieved by reducing the memory required for storing tuples. A method for processing a data stream includes receiving a tuple and determining a tuple specification that defines a layout of the tuple. The layout identifies one or more data types that are included in the tuple. A tuple class corresponding to the tuple specification may be determined. A tuple object based on the tuple class is instantiated, and during runtime of the processing system. The tuple object is stored in a memory.
Opening claim text (preview).
What is claimed is: 1. A method performed by a processing system for processing a data stream comprising events, the method comprising: receiving a tuple; determining a tuple specification defining a layout of the tuple, wherein the layout identifies one or more data types included in the tuple; determining a tuple class corresponding to the tuple specification based on the layout; instantiating, based on the particular tuple class, a tuple object that includes an array for at least one of the one or more data types identified in the tuple specification; and storing the tuple object in a memory; wherein the tuple object has a structure including a particular object which includes an array for each of the one or more data types identified in the tuple specification. 2. The method of claim 1 , wherein the tuple specification is determined during creation of the data stream in response to a stream creation statement that is issued by a user of the processing system and that indicates the tuple specification; and wherein determining the tuple class corresponding to the tuple specification comprises locating, in a cache that contains tuple classes that were dynamically generated during the runtime of the processing system, a particular tuple class whose members have data types that are identical to the one or more data types identified by the layout. 3. The method of claim 1 , further comprising: generating the particular tuple class to correspond with the tuple specification; and loading, using byte code manipulation libraries, the particular tuple class to a Virtual Machine during runtime of the processing system and prior to instantiating the tuple object. 4. The method of claim 1 , wherein a memory requirement of the tuple object is less than a memory requirement of a static tuple object that is defined by the processing system; wherein the static tuple object is based on a tuple class that is generated statically within the processing system and that supports all data types including data types not identified by the layout; and wherein the particular tuple class supports only the one or more data types identified by the layout. 5. A method performed by a processing system for processing a data stream comprising events, the method comprising: receiving a tuple; determining a tuple specification defining a layout of the tuple, wherein the layout identifies one or more data types included in the tuple; dynamically, during runtime of the processing system, determining a page class corresponding to the tuple specification; instantiating a page object based on the page class; and storing a dynamic page based on the page object in a memory; wherein the page object has a structure including an array for each of the one or more data types identified in the tuple specification. 6. The method of claim 5 , wherein the page object is an array of tuples of a plurality of tuples. 7. The method of claim 5 , further comprising: determining whether a pre-existing page class corresponds to the tuple specification; and instantiating the page based on the pre-existing page class. 8. The method of claim 5 , further comprising: generating the page class to correspond with the tuple specification; and loading, using byte code manipulation libraries, the page class to a Virtual Machine during runtime of the event processing system and prior to instantiating the dynamic page. 9. A non-transitory computer-readable storage medium storing a computer program product for processing a data stream comprising events, the computer program product comprising: computer code for receiving a tuple; computer code for determining a tuple specification defining a layout of the tuple, wherein the layout identifies one or more data types included in the tuple; computer code for determining a tuple class corresponding to the tuple specification based on the layout; computer code for instantiating, based on the particular tuple class, a tuple object that includes an array for a particular data type identified in the tuple specification; and computer code for storing the tuple object in a memory; wherein the tuple object has a structure including a particular object which includes an array for each of one or more data types identified in the tuple specification. 10. The non-transitory computer-readable storage medium according to claim 9 , the computer program product further comprising: computer code for generating the particular tuple class to correspond with the tuple specification; and computer code for loading, using byte code manipulation libraries, the particular tuple class to a Virtual Machine during runtime of the processing system and prior to instantiating the tuple object. 11. The non-transitory computer-readable storage medium according to claim 9 , wherein the tuple specification is determined during creation of the data stream in response to a stream creation statement that is issued by a user of the processing system and that indicates the tuple specification; and wherein determining the tuple class corresponding to the tuple specification comprises locating, in a cache that contains tuple classes that were dynamically generated during the runtime of the processing system, a particular tuple class whose members have data types that are identical to the one or more data types identified by the layout. 12. The non-transitory computer-readable storage medium according to claim 9 , wherein the tuple object has a structure including a particular object which includes a multi-element data structure for each of one or more data types identified in the tuple specification. 13. A system for processing a data stream comprising events, the system including a processor and a memory device including instructions that, when executed by the processor, cause the processor to: receive a tuple; determine a tuple specification defining a layout that identifies a data type included in the tuple; determine a tuple class corresponding to the tuple specification; instantiate an array-including tuple object based on the tuple class; and store the tuple object in a memory; wherein the tuple object has a structure including a particular object which includes an array for each of one or more data types identified in the tuple specification. 14. The system according to claim 13 , wherein the instructions, when executed by the processor, further cause the processor to: generate the tuple class to correspond with the tuple specification; and load, using byte code manipulation libraries, the tuple class to a Virtual Machine during runtime of the processing system and prior to instantiating the tuple object. 15. The system according to claim 13 , wherein the tuple object has a structure including a particular object which includes a multi-element data structure for each of one or more data types identified in the tuple specification.
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.