Streaming transaction notifications

US9165036B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9165036-B2
Application numberUS-201213529661-A
CountryUS
Kind codeB2
Filing dateJun 21, 2012
Priority dateJun 21, 2011
Publication dateOct 20, 2015
Grant dateOct 20, 2015

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.

Methods and systems are provided for identifying data transactions satisfying a streaming query and providing data corresponding to those data transactions to subscribed client devices. One exemplary method involves a server initiating a data transaction for a database entry in a database in response to input data received from a client device, determining whether the data transaction satisfies a streaming query, and indicating an association between the database entry and the streaming query when the data transaction satisfies the streaming query.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of identifying transactions satisfying a streaming query, the method comprising: initiating, by a first application server, a transaction for an entry in a database in response to input data from a client device; determining an identifier associated with a user of the client device matches an identifier associated with the streaming query; after determining the identifier associated with the user matches the identifier associated with the streaming query: determining the transaction is relevant to the streaming query when the transaction involves a field of the entry associated with the transaction that corresponds to a data field of a query statement associated with the streaming query; determining the transaction satisfies a notification qualifier for the streaming query; and after determining the transaction is relevant to the streaming query and satisfies the notification qualifier, determining the transaction satisfies the streaming query when a value for the field of the entry associated with the transaction satisfies the query statement associated with the streaming query; and updating, by the first application server, a notification table in the database to indicate an association between the entry and the streaming query after determining the transaction satisfies the streaming query. 2. The method of claim 1 , the identifier associated with the user comprising a tenant identifier that matches a tenant identifier associated with the streaming query, wherein the method further comprises: receiving, by a second server coupled to the database, a subscription request for the streaming query from a second client device having a second user associated with the tenant identifier; monitoring, by the second server, the notification table in the database for indication of the association between the entry and the streaming query; and in response to identifying the indication of the association between the entry and the streaming query: obtaining, by the second server, data for the entry from the database; and providing at least a portion of the obtained data to the second client device based on permissions associated with the second user. 3. The method of claim 1 , wherein updating the notification table comprises creating a new notification entry in the notification table, the new notification entry including a first identifier associated with the entry and a second identifier associated with the streaming query. 4. The method of claim 1 , wherein initiating the transaction comprises updating the entry to reflect the input data or creating the entry based on the input data. 5. The method of claim 1 , further comprising providing, by the first application server, a virtual application to the client device, wherein the input data is received via the virtual application. 6. The method of claim 1 , further comprising determining, by the first application server, metadata for the streaming query based on the query statement, wherein determining whether the transaction is relevant comprises determining whether the transaction is relevant to the streaming query based on the metadata. 7. The method of claim 6 , the metadata including the field referenced by the query statement. 8. The method of claim 1 , wherein determining the transaction satisfies the query statement comprises determining a result of the query statement would include the entry. 9. The method of claim 1 , wherein determining whether the transaction is relevant to the streaming query comprises determining the transaction is relevant to the streaming query when metadata associated with the transaction matches metadata associated with the streaming query. 10. The method of claim 1 , further comprising determining the transaction satisfies a notification qualifier for the streaming query prior to determining whether the transaction satisfies the query statement. 11. The method of claim 1 , wherein determining the identifier associated with the user of the client device matches the identifier associated with the streaming query comprises determining a tenant identifier associated with the user matches a tenant identifier associated with the streaming query. 12. The method of claim 1 , further comprising obtaining, by the first application server, definition information for a plurality of streaming queries from a definition table in the database, the plurality of streaming queries including the streaming query, wherein determining whether the transaction satisfies the streaming query comprises comparing the transaction to the definition information. 13. A server comprising a processing system and a memory, wherein the memory comprises computer-executable instructions that, when executed by the processing system, cause the server to: initiate a transaction in response to receiving input data from a client device, resulting in an entry in a database reflecting the data received from the client device; determine whether a tenant identifier associated with a user of the client device matches a tenant identifier associated with a streaming query; determine whether the transaction satisfies the streaming query when the tenant identifier associated with the user matches the tenant identifier associated with the streaming query; and update the database to indicate an association between the entry and the streaming query when the transaction satisfies the streaming query. 14. The server of claim 13 , wherein the computer-executable instructions cause the server to provide a virtual application to the client device over a network, wherein the input data is received via the virtual application. 15. The server of claim 13 , wherein the computer-executable instructions cause the server to determine whether the transaction satisfies the streaming query by determining whether the entry satisfies a query statement associated with the streaming query. 16. The server of claim 15 , wherein the computer-executable instructions cause the server to determine the transaction is relevant to the streaming query and satisfies a notification qualifier associated with the streaming query prior to determining whether the entry satisfies the query statement. 17. A system comprising: a database including a notification table and a data table; and a server coupled to the database to initiate a transaction for an entry in the data table on behalf of a user of a client device, determine whether a tenant identifier associated with the user matches a tenant identifier associated with a streaming query, determine whether the transaction satisfies a streaming query when the tenant identifier associated with the user matches the tenant identifier associated with the streaming query, and update the notification table to indicate an association between the entry and the streaming query when the transaction satisfies the streaming query. 18. The system of claim 17 , wherein: the database includes a definition table having definition information for the streaming query; and the server obtains the definition information from the definition table and determines the transaction satisfies the streaming query based on the definition information. 19. The system of claim 17 , further comprising a second server coupled to the database to receive a subscription request for the streaming query from a second client device, monitor the notification table for indication of transactions satisfying the streaming query, obtain data for the entry from the data table after the notification tabl

Assignees

Inventors

Classifications

  • between a Database Management System and a front-end application · CPC title

  • Change logging, detection, and notification (replication G06F16/27) · CPC title

  • Data stream processing; Continuous queries · CPC title

  • Physics · mapped topic

  • Physics · 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 US9165036B2 cover?
Methods and systems are provided for identifying data transactions satisfying a streaming query and providing data corresponding to those data transactions to subscribed client devices. One exemplary method involves a server initiating a data transaction for a database entry in a database in response to input data received from a client device, determining whether the data transaction satisfies…
Who is the assignee on this patent?
Mehra Vinod, Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/24568. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 20 2015 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).