Deriving component statistics for a stream enabled application

US10445210B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10445210-B2
Application numberUS-201615133730-A
CountryUS
Kind codeB2
Filing dateApr 20, 2016
Priority dateNov 7, 2007
Publication dateOct 15, 2019
Grant dateOct 15, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A technique for generating component usage statistics involves associating components with blocks of a stream-enabled application. When the streaming application is executed, block requests may be logged by Block ID in a log. The frequency of component use may be estimated by analyzing the block request log with the block associations.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: intercepting, by a virtual environment for a client, a request for a resource of a virtualized application at the client by the virtual environment; translating the request for the resource into a list of one or more blocks for use in execution of the virtualized application at the virtual environment for the client; adding block IDs of the one or more blocks to a raw log at the virtual environment for the client, the raw log used to determine if the one or more blocks are stored locally at the virtual environment for the client for satisfying a future request for the resource of the virtualized application; submitting the list to a streaming system remote from the virtual environment at the client; receiving the one or more blocks from the streaming system; using the one or more blocks to execute the virtualized application at the virtual environment for the client; generating a formatted session log from the raw log, the formatted session log including a logical representation of component statistics of the one or more blocks used in execution of the virtualized application as a block-session grid. 2. The method of claim 1 , further comprising: predicting additional blocks that will be needed for continued execution of the virtualized application; adding an identification of the additional blocks to the list; receiving from the streaming system the additional blocks. 3. The method of claim 1 , further comprising: predicting, using the raw log, additional blocks that will be needed for continued execution of the virtualized application; adding an identification of the additional blocks to the list; receiving from the streaming system the additional blocks. 4. The method of claim 1 , wherein the block IDs are added with a session identifier to the raw log, the session identifier indicating a session in which the virtualized application is being executed at the virtual environment for the client. 5. The method of claim 1 , further comprising: aggregating, using the raw log, a plurality of block IDs included in the raw log with session IDs to generate component statistics of blocks of the virtualized application. 6. The method of claim 1 , wherein the formatted session log is encoded as a bit map with one bit specifically associated with a specific block of the virtualized application. 7. The method of claim 6 , wherein an association of the specific block with the one bit indicates that the specific block was used in executing the virtualized application. 8. The method of claim 1 , further comprising aggregating the raw log according to aggregation preferences to generate a formatted log. 9. The method of claim 1 , further comprising aggregating the raw log according to aggregation preferences to generate a formatted log, wherein the aggregation preferences are specific to a user of the client. 10. A system, comprising: a virtual environment for a client configured to: intercept a request for a resource of a virtualized application; translate the request for the resource into a list of one or more blocks for use in execution of the virtualized application at the virtual environment for the client; add block IDs of the one or more blocks to a raw log at the virtual environment for the client, the raw log used to determine if the one or more blocks are stored locally at the virtual environment for satisfying a future request for the resource of the virtualized application; a streaming system remote from the virtual environment for the client configured to: receive the list from the virtual environment for the client; provide the one or more blocks to the virtual environment for the client; the virtual environment further configured to: use the one or more blocks to execute the virtualized application; generate a formatted session log from the raw log, the formatted session log including a logical representation of component statistics of the one or more blocks used in execution of the virtualized application as a block-session grid. 11. The system of claim 10 , wherein the virtual environment is further configured to: predict additional blocks that will be needed for continued execution of the virtualized application; add an identification of the additional blocks to the list; receive from the streaming system the additional blocks. 12. The system of claim 10 , wherein the virtual environment is further configured to: predict, using the raw log, additional blocks that will be needed for continued execution of the virtualized application; add an identification of the additional blocks to the list; receive from the streaming system the additional blocks. 13. The system of claim 10 , wherein the virtual environment is further configured to add the block IDs to the raw log with a session identifier, the session identifier indicating a session in which the virtualized application is being executed at the virtual environment for the client. 14. The system of claim 10 , further comprising: an aggregator configured to aggregate, using the raw log, a plurality of block IDs included in the raw log with session IDs to generate component statistics of blocks of the virtualized application. 15. The system of claim 10 , further comprising: an aggregator configured to generate a formatted session log from the raw log, the formatted session log encoded as a bit map with one bit specifically associated with a specific block of the virtualized application. 16. The system of claim 10 , further comprising an aggregator configured to aggregate the raw log according to aggregation preferences to generate a formatted log. 17. The system of claim 10 , further comprising an aggregator configured to aggregate the raw log according to aggregation preferences to generate a formatted log, wherein the aggregation preferences are specific to a user of the client. 18. A system, comprising: means for intercepting, by a virtual environment for a client, a request for a resource of a virtualized application at the client by the virtual environment; means for translating the request for the resource into a list of one or more blocks for use in execution of the virtualized application at the virtual environment for the client; means for adding block IDs of the one or more blocks to a raw log at the virtual environment for the client, the raw log used to determine if the one or more blocks are stored locally by the virtual environment for the client for satisfying a future request for the resource of the virtualized application; means for submitting the list to a streaming system remote from the virtual environment for the client; means for receiving the one or more blocks from the streaming system; means for using the one or more blocks to execute the virtualized application at the virtual environment for the client; means for generating a formatted session log from the raw log, the formatted session log including a logical representation of component statistics of the one or more blocks used in execution of the virtualized application as a block-session grid.

Assignees

Inventors

Classifications

  • Program control block organisation · CPC title

  • Data logging (G06F11/14, G06F11/2205 take precedence) · CPC title

  • for evaluating statistical data {, e.g. average values, frequency distributions, probability functions, regression analysis (forecasting specially adapted for a specific administrative, business or logistic context G06Q10/04)} · CPC title

  • Monitoring of software · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10445210B2 cover?
A technique for generating component usage statistics involves associating components with blocks of a stream-enabled application. When the streaming application is executed, block requests may be logged by Block ID in a log. The frequency of component use may be estimated by analyzing the block request log with the block associations.
Who is the assignee on this patent?
Numecent Holdings Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/3476. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 15 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).