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, the non-relational database system to manage scan ranges for the non-relational database to limit access for each tenant to data in the non-relational database corresponding to that tenant, wherein a primary key constraint of a base table cannot be changed and indexes in separate shared tables can be added to a view;
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 wherein table metadata is utilized to provide use of correct schema in responding to the one or more scans, 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.
-
Citations
15 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, the non-relational database system to manage scan ranges for the non-relational database to limit access for each tenant to data in the non-relational database corresponding to that tenant, wherein a primary key constraint of a base table cannot be changed and indexes in separate shared tables can be added to a view; 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 wherein table metadata is utilized to provide use of correct schema in responding to the one or more scans, 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 wherein table metadata is utilized to provide use of correct schema in responding to the one or more scans; managing scan ranges for the non-relational database to limit access for each tenant to data in the non-relational database corresponding to that tenant, wherein a primary key constraint of a base table cannot be changed and indexes in separate shared tables can be added to a view; 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 wherein table metadata is utilized to provide use of correct schema in responding to the one or more scans; manage scan ranges for the non-relational database to limit access for each tenant to data in the non-relational database corresponding to that tenant, wherein a primary key constraint of a base table cannot be changed and indexes in separate shared tables can be added to a view; 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)
-
Specification