Applied Artificial Intelligence Technology for Natural Language Generation Using a Graph Data Structure and Different Choosers
US-2024134848-A1 · Apr 25, 2024 · US
US10162851B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10162851-B2 |
| Application number | US-97366810-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 20, 2010 |
| Priority date | Apr 19, 2010 |
| Publication date | Dec 25, 2018 |
| Grant date | Dec 25, 2018 |
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 and systems for performing cross store joins in a multi-tenant store are described. In one embodiment, such a method includes retrieving data from a multi-tenant database system having a relational data store and a non-relational data store, receiving a request specifying data to be retrieved from the multi-tenant database system, retrieving, based on the request, one or more locations of the data to be retrieved, generating a database query based on the request, in which the database query specifies a plurality of data elements to be retrieved, the plurality of data elements including one or more data elements residing within the non-relational data store and one or more other data elements residing within the relational data store, and executing the database query against the multi-tenant database system to retrieve the data.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: a memory to store instructions; a processor to execute the instructions stored in the memory; a communications interface to a database system, wherein the database system operates both a relational data store and a non-relational data store; a request processor to receive a database transaction at the system for the database system, the database transaction including new data for persistent storage within the database system; an optimizer agent to analyze the database transaction and determine the new data is designated for persistent storage within the non-relational data store of the database system and wherein the optimizer agent is to write the new data to an append log of the relational data store without writing the new data to the non-relational data store despite an indication the new data is designated for persistent storage within the non-relational data store; the request processor to receive a request for data retrieval from the database system, including retrieval of data stored within the non-relational data store and at least a portion of the new data written to the append log of the relational data store; the request processor to retrieve the data stored within the non-relational data store from the non-relational data store and to further retrieve the portion of the new data from the append log of the relational data store; and the request processor to send a response to an originator of the request in fulfillment of the request. 2. The system of claim 1 : wherein the database system is to flush the new data previously written to the append log of the relational data store to the non-relational data store via a write transaction of the new data to the non-relational data store in fulfillment of the designation of the new data for persistent storage within the non-relational data store of the database system. 3. The system of claim 2 : wherein the request processor is to receive a second request for at least a portion of the new data; and wherein the request processor is to retrieve the portion of the new data from the non-relational data store of the database system. 4. The system of claim 1 : wherein the request processor is to further perform a join operation to combine the data retrieved from the non-relational data store and the portion of the new data retrieved from the append log of the relational data store into a joined dataset; and wherein the request processor to send the response to the originator of the request comprises the request processor to return the joined dataset to the originator of the request in fulfillment of the request. 5. The system of claim 1 , further comprising: a customer schema processor to determine one or more locations of the data and the new data requested for retrieval based on the request received by the request processor. 6. The system of claim 5 : a sub-query generator to generate multiple database sub-queries based on the one or more locations determined, wherein the generated multiple database sub-queries specify a plurality of data elements for retrieval, the plurality of data elements including at least the portion of the new data residing within the append log of the relational data store prior to a flush of the append log having the new data stored therein and at least the data residing within the non-relational data store. 7. The system of claim 1 : a sub-query generator to generate multiple database sub-queries, including each of: a first sub-query to the append log of the relational data store having the new data written thereto; a second sub-query to the non-relational data store having the data stored therein; a third sub-query to join the portion of the new data retrieved from the append log of the relational data store with the data retrieved from the non-relational data store into a joined data set; and a query executor to execute the multiple database sub-queries against the database system to retrieve the data requested. 8. The system of claim 1 , further comprising: a global caching layer communicably interfaced with the memory to provide caching services for the system; and wherein the request processor is to further perform an in-memory join operation to combine the data retrieved from the non-relational data store and the portion of the new data retrieved from the append log of the relational data store into a joined dataset within the global caching layer; and wherein the request processor to send the response to the originator of the request comprises the request processor to return the joined dataset to the originator of the request from the global caching layer. 9. The system of claim 1 : wherein the optimizer agent to write the new data to the append log of the relational data store comprises the optimizer agent to temporarily write the new data to the append log of the relational data store without writing the new data to the non-relational data store to realize lower computational costs or lower operational costs associated with writing the new data to the relational data store; and wherein the database system is to subsequently flush the new data temporarily written to the append log of the relational data store to the non-relational data store for long term storage via a write transaction of the new data to the non-relational data store. 10. The system of claim 1 : wherein the optimizer agent to write the new data to the append log of the relational data store comprises the optimizer agent to temporarily write the new data to the append log of the relational data store without writing the new data to the non-relational data store to improve a write response time associated with the database transaction; and wherein the database system is to subsequently flush the new data temporarily written to the append log of the relational data store to the non-relational data store for long term storage via a write transaction of the new data to the non-relational data store. 11. The system of claim 10 , wherein the subsequent database flush of the new data to the non-relational data store upon the append log of the relational database reaching a flush threshold. 12. The system of claim 10 , wherein the subsequent database flush of the new data to the non-relational data store is triggered by the system causing the database system to flush the new data to the non-relational data store. 13. The system of claim 1 : wherein system operates within a host organization which provides cloud computing services; and wherein the database system comprises a multi-tenant database system operating within the host organization, the multi-tenant database system having embodied therein elements of hardware and software that are shared by a plurality of separate and distinct customer organizations, each of the separate and distinct customer organizations being remotely located from the host organization having the multi-tenant database system executing therein. 14. The system of claim 1 , wherein the optimizer agent determines the new data is designated for persistent storage within the non-relational data store of the database system based on a target attribute specified by the database transaction requesting persistent storage of the new data within the non-relational data store. 15. The system of claim 1 , wherein the optimizer agent determines the new data is designated for persistent storage within the non-relational data store of the database system based on a flag or a stored preference associated with an OrgID corresponding to the database transaction including the new d
Query formulation · CPC title
Query execution · CPC title
Physics · mapped topic
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.