Abstract:
Methods, systems, and devices for data access and processing are described. To set up secure environments for data processing (e.g., including machine learning), an access control system may first receive approval from an authorized user (e.g., an approver) granting access to data objects in a multi-tenant data store. The system may determine tenant-specific paths for retrieving the data objects from the data store, and may initialize a number of virtual computing engines for accessing the data. Each computing engine may be tenant-specific based on the path(s) used by that computing engine, and each may include an access role defining the data objects or data object types accessible by that computing engine. By accessing the requested data objects according to the tenant-specific path prefixes and access roles, the virtual computing engines may securely maintain separate environments for different tenants and may only allow user access to approved tenant data.
Abstract:
Techniques and systems for completing a database query. A time to complete a synchronous query in response to receiving an original database query is estimated by a database management system provided by one or more computing devices. A synchronous database query corresponding to the original database query is performed with the database management system if the estimated time to complete the synchronous query is less than a pre-selected threshold time. One or more asynchronous queries corresponding to the original database query are performed with the database management system if the estimated time to complete the synchronous query is greater than the pre-selected threshold time. A result, whether from a synchronous query or one or more asynchronous queries, is stored in an object within a non-relational database system.
Abstract:
Disclosed are examples of systems, apparatus, methods and computer program products for providing application programming interface representation for multi-tenant non-relational database objects. A database system maintains a multi-tenant non-relational database associated with a number of enterprises, a number of records, and a number of data objects for each of the enterprises. A request is received from a user to retrieve a description of a data object from the number of data objects, and in response, the system determines that the data object is defined to be used in associated with a non-relational database, then retrieves a metadata model representing the data object. The system determines that at least one field of the data object is part of a composite key for the data object, then provides data object information to the user, including information about the composite key.
Abstract:
Disclosed are examples of systems, apparatus, methods and computer program products for dynamically provisioning a subset of a shared table or schema via access controls. A database system maintains a multi-tenant non-relational database associated with multiple enterprises, each with a number of records. The system also maintains a shared table in the multi-tenant non-relational database with a number of records. Permissions are identified for one or more of the enterprises with respect to columns of the shared table. A request is received to provision one or more columns of the shared table to an enterprise, with the request identifying a unique enterprise ID associated with the enterprise. The request is then processed, and the system modifies the permissions for the one or more provisioned columns of the shared table with respect to the unique enterprise ID associated with the enterprise. Rows of the shared table are updated to include the one or more provisioned columns, with the rows corresponding to the unique enterprise ID.
Abstract:
Techniques and mechanisms to manage data. A relational database environment having at least a relational database storage device is coupled with a server entity. Data stored in the relational database is stored in a custom object, which is one or more custom database tables that allow a customer/tenant/organization to store information unique to the customer/tenant/organization. A non-relational database environment having at least a non-relational database storage device is also coupled with the server entity. Data stored in the non-relational database is immutable. A single user interface and search language is utilized by the server entity to provide access to both the relational database environment and the non-relational database environment.
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.
Abstract:
Systems and techniques for managing data in a relational database environment and a non-relational database environment. Data in the relational database environment that is static and to be maintained beyond a preselected threshold length of time is identified. The data is copied from the relational database and stored in the data the non-relational database. Access to the data is provided from the non-relational database via a user interface that accesses both the relational database and the non-relational database.