-
公开(公告)号:US20220121766A1
公开(公告)日:2022-04-21
申请号:US17562387
申请日:2021-12-27
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel , Andrew Tucker , Nathaniel Wyatt , Raghavendran Hanumantharau , Assaf Ben Gur , William Charles Mortimore, JR.
IPC: G06F21/62 , G06F16/2455 , G06F21/60 , H04L9/08
Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
-
公开(公告)号:US20210073189A1
公开(公告)日:2021-03-11
申请号:US16950086
申请日:2020-11-17
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Nathaniel Wyatt , Gary J. Baker , Thomas Fanghaenel , Terry Chong
Abstract: Systems and methods are provided for migrating a tenant of a database system from a source database instance to a destination database instance. The systems and methods include quiescing the tenant data of the tenant to be migrated from the source database instance to the destination database instance so that no new data is written to the storage of the database system associated with the tenant identifier at the source database instance, transmitting metadata of the tenant to be migrated from the source database instance to the destination database instance, and modifying, at the destination database instance, the metadata of the tenant so that the destination database instance has information to point to groupings of data in the storage for the destination database to access the tenant data.
-
公开(公告)号:US11741050B2
公开(公告)日:2023-08-29
申请号:US17162501
申请日:2021-01-29
Applicant: salesforce.com, inc.
IPC: G06F16/172 , G06F16/16 , G06F16/182 , G06F16/14
CPC classification number: G06F16/172 , G06F16/148 , G06F16/156 , G06F16/164 , G06F16/1824
Abstract: Techniques are disclosed relating to managing distributed storage of data for various entities according to classifications for these entities. A database node of a distributed storage system may receive, from a first entity of a plurality of entities, a request to store a set of data. The database node may further obtain metadata associated with the first entity, wherein the metadata specifies one of a plurality of classifications for the entities. The database node may provide the set of data to one or more of a plurality of caches for storage. The caches may be located in two or more availability zones and are configured to store the set of data based on the classification for the first entity identified in the metadata associated with the first entity. The database node may also store the set of data in a shared object storage coupled to the database node.
-
公开(公告)号:US11526474B2
公开(公告)日:2022-12-13
申请号:US16777872
申请日:2020-01-30
Applicant: salesforce.com, inc.
Inventor: Atish Agrawal , Jameison Bear Martin
IPC: G06F16/00 , G06F16/21 , G06F12/0804 , G06F16/215 , G06F16/2455
Abstract: Techniques are disclosed relating to providing and using probabilistic data structures to at least reduce requests between database nodes. In various embodiments, a first database node processes a database transaction that involves writing a set of database records to an in-memory cache of the first database node. As part of processing the database transaction, the first database node may insert, in a set of probabilistic data structures, a set of database keys that correspond to the set of database records. The first database node may send, to a second database node, the set of probabilistic data structures to enable the second database node to determine whether to request, from the first database node, a database record associated with a database key.
-
公开(公告)号:US11500836B2
公开(公告)日:2022-11-15
申请号:US15634786
申请日:2017-06-27
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Nathaniel Wyatt , Gary J. Baker , Randy Spalten
Abstract: System and methods are provided for creating a tenant of a database system, the tenant to have tenant data stored in an immutable storage of the database system associated with a tenant identifier. A request may be received at the database system to create a new tenant. A template tenant metadata of a template tenant may be selected at the database system to create the new tenant based on the received request. A new tenant identifier may be created at the database system based on the selected template tenant metadata. The new tenant may be created by associating the new tenant identifier with a snapshot of at least a portion of the template tenant metadata at a point in time when the template tenant metadata is made accessible to the new tenant. Systems and methods are also provided for removing a tenant of a database system by removing references to a tenant identifier.
-
公开(公告)号:US10592353B2
公开(公告)日:2020-03-17
申请号:US15634796
申请日:2017-06-27
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Nathaniel Wyatt , Patrick James Helland , Thomas Fanghaenel , Terry Chong , Subho Sanjay Chatterjee
Abstract: Systems and methods are provided for performing a point-in-time restore of data of a first tenant of a multitenanted database system. Metadata can be located to identify an archival version of first data of the first tenant stored in immutable storage of the database system. The archival version includes a most recently committed version of each datum prior to a first point in time. By using the metadata, a restore reference set is mapped into a target database instance of the database system. The mapping can be performed when all existing data for a tenant is to be the archival version, and where versions of data and records committed after the point in time are not available to the target database instance.
-
公开(公告)号:US11269885B2
公开(公告)日:2022-03-08
申请号:US16908006
申请日:2020-06-22
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel , Jameison Bear Martin , Nathaniel Wyatt , Diego Ongaro , Terry Chong
IPC: G06F12/0891 , G06F16/172 , G06F16/22 , G06F16/2455 , G06F16/84
Abstract: Techniques are disclosed relating to maintaining a cache usable to locate data stored in a data structure. A computer system, in various embodiments, maintains a data structure having a plurality of levels that store files for a database. The files may include one or more records that each have a key and corresponding data. The computer system may also maintain a cache for the database whose entries store, for a key, an indication of a location of a corresponding record in a file of the data structure. In some embodiments, the computer system receives a request to access a particular record stored in the data structure where the request specifies a key usable to locate the particular record. The computer system may retrieve, from the cache via the key, a particular indication of a location of the particular record and may use the particular indication to access the particular record.
-
公开(公告)号:US20210240687A1
公开(公告)日:2021-08-05
申请号:US16777870
申请日:2020-01-30
Applicant: salesforce.com, inc.
Inventor: Atish Agrawal , Jameison Bear Martin
IPC: G06F16/22 , G06F16/908 , G06F16/18 , G06F16/17 , G06F12/0802 , H04L9/32
Abstract: Techniques are disclosed relating to providing and using probabilistic data structures to at least reduce requests between database nodes. In various embodiments, a first database node processes a database transaction that involves writing a set of database records to an in-memory cache of the first database node. As part of processing the database transaction, the first database node may insert, in a set of probabilistic data structures, a set of database keys that correspond to the set of database records. The first database node may send, to a second database node, the set of probabilistic data structures to enable the second database node to determine whether to request, from the first database node, a database record associated with a database key.
-
公开(公告)号:US10769128B2
公开(公告)日:2020-09-08
申请号:US15420255
申请日:2017-01-31
Applicant: salesforce.com, inc.
Inventor: James E. Mace , Jameison Bear Martin
Abstract: This disclosure provides various techniques that may allow for key-level lock requests in a database to be managed by code that manages a memory buffer for the database. The transaction-level locks and other higher level locks may be managed by a separate lock manager. In an embodiment, the code inserts key-level lock requests in the record chain even if there is a conflict, and the key-level lock requests remain in the chain after the locks are subsequently granted. Preemption may also be supported in the record chain, in some embodiments.
-
10.
公开(公告)号:US20200250325A1
公开(公告)日:2020-08-06
申请号:US16263751
申请日:2019-01-31
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel , Andrew Tucker , Nathaniel Wyatt , Raghavendran Hanumantharau , Assaf Ben-Gur , William Charles Mortimore, JR.
IPC: G06F21/62 , G06F21/60 , H04L9/08 , G06F16/2455
Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
-
-
-
-
-
-
-
-
-