MULTI-TENANCY FOR STRUCTURED QUERY LANGUAGE (SQL) AND NON STRUCTURED QUERY LANGUAGE (NOSQL) DATABASES
First Claim
1. A system comprising:
- a group of one or more server computing devices configured to provide a multitenant service environment, wherein the multitenant environment stores data for multiple client entities each identified by a tenant identifier (ID) having one of one or more users associated with the tenant ID, wherein users of each of multiple client entities can only access data identified by a tenant ID associated with the respective client entity, and wherein the multitenant environment is provided by an entity separate from the client entities, and provides on-demand service to the client entities;
at least one relational database system coupled with the one or more server computing devices, the at least one relational database system to provide data management services to tenants of the multitenant environment;
at least one non-relational database system coupled with the one or more server computing devices, the at least one non-relational database system to provide data management services to tenants of the multitenant environment;
a database search agent coupled with the at least one relational database system and with the at least one non-relational database system, the database search agent to receive a database query in a format corresponding to the relational database system, to parse the query to find one or more components of the query directed to data stored in the non-relational database system, to convert one or more components of the query directed to data stored in the non-relational database system to one or more scans of the non-relational database system, to collect results from the query of the relational database system and results from the one or more scans of the non-relational database system, to combine the results from the query and the results of the one or more scans to a combined result, and to provide the combined result to a client entity.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques and structures for providing a multitenant environment having both a relational database and a non-relational database. A database query is received with at least one server computing device providing a multitenant environment having a relational database system and a non-relational database system, the database query in a format corresponding to the relational database system. The query is parsed with the at least one server computing device to find one or more components of the query directed to data stored in the non-relational database system. One or more components of the query directed to data stored in the non-relational database system are converted to one or more scans of the non-relational database system. Results from the query of the relational database system and results from the one or more scans of the non-relational database system are collected. The results from the query and the results of the one or more scans to a combined result are combined. The combined results are provided to a client entity.
20 Citations
20 Claims
-
1. A system comprising:
-
a group of one or more server computing devices configured to provide a multitenant service environment, wherein the multitenant environment stores data for multiple client entities each identified by a tenant identifier (ID) having one of one or more users associated with the tenant ID, wherein users of each of multiple client entities can only access data identified by a tenant ID associated with the respective client entity, and wherein the multitenant environment is provided by an entity separate from the client entities, and provides on-demand service to the client entities; at least one relational database system coupled with the one or more server computing devices, the at least one relational database system to provide data management services to tenants of the multitenant environment; at least one non-relational database system coupled with the one or more server computing devices, the at least one non-relational database system to provide data management services to tenants of the multitenant environment; a database search agent coupled with the at least one relational database system and with the at least one non-relational database system, the database search agent to receive a database query in a format corresponding to the relational database system, to parse the query to find one or more components of the query directed to data stored in the non-relational database system, to convert one or more components of the query directed to data stored in the non-relational database system to one or more scans of the non-relational database system, to collect results from the query of the relational database system and results from the one or more scans of the non-relational database system, to combine the results from the query and the results of the one or more scans to a combined result, and to provide the combined result to a client entity. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
receiving a database query with at least one server computing device providing a multitenant environment having a relational database system and a non-relational database system, the database query in a format corresponding to the relational database system; parsing the query with the at least one server computing device to find one or more components of the query directed to data stored in the non-relational database system; converting with the at least one server computing device, one or more components of the query directed to data stored in the non-relational database system to one or more scans of the non-relational database system; collecting results from the query of the relational database system and results from the one or more scans of the non-relational database system; combining the results from the query and the results of the one or more scans to a combined result; and providing the combined result to a client entity. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer-readable medium having stored thereon instructions that, when executed by one or more processors, cause the one or more processors to:
-
receive a database query with at least one server computing device providing a multitenant environment having a relational database system and a non-relational database system, the database query in a format corresponding to the relational database system; parse the query with the at least one server computing device to find one or more components of the query directed to data stored in the non-relational database system; convert with the at least one server computing device, one or more components of the query directed to data stored in the non-relational database system to one or more scans of the non-relational database system; collect results from the query of the relational database system and results from the one or more scans of the non-relational database system; combine the results from the query and the results of the one or more scans to a combined result; and provide the combined result to a client entity. - View Dependent Claims (12, 13, 14, 15)
-
-
16. An apparatus comprising:
-
means for receiving a database query with at least one server computing device providing a multitenant environment having a relational database system and a non-relational database system, the database query in a format corresponding to the relational database system; means for parsing the query with the at least one server computing device to find one or more components of the query directed to data stored in the non-relational database system; means for converting with the at least one server computing device, one or more components of the query directed to data stored in the non-relational database system to one or more scans of the non-relational database system; means for collecting results from the query of the relational database system and results from the one or more scans of the non-relational database system; means for combining the results from the query and the results of the one or more scans to a combined result; and means for providing the combined result to a client entity. - View Dependent Claims (17, 18, 19, 20)
-
Specification