-
公开(公告)号:US10901861B2
公开(公告)日:2021-01-26
申请号:US16774244
申请日:2020-01-28
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.
-
公开(公告)号:US10691693B2
公开(公告)日:2020-06-23
申请号:US15884131
申请日:2018-01-30
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.
-
公开(公告)号:US20200097581A1
公开(公告)日:2020-03-26
申请号:US16139166
申请日:2018-09-24
Applicant: salesforce.com, inc.
Inventor: Terry Chong , Jameison Bear Martin , Thomas Fanghaenel
Abstract: Systems and methods are provided for receiving, at a database system having a memory and at least one persistent storage device to store records, a query for a least one record, where the query uses a first version of a manifest, and where each version of the records that are stored in the at least one persistent storage device are represented by metadata that is part of the first version of the manifest. A first operation may be performed based on a scan operation. The database system may determine whether a purge of the memory has occurred after the first operation. When it is determined that the memory purge has occurred, the scan operation may be restarted from a last position of the scan operation prior to the memory purge using a second version of the manifest.
-
公开(公告)号:US20190236156A1
公开(公告)日:2019-08-01
申请号:US15884131
申请日:2018-01-30
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel , Jameison Bear Martin , Nathaniel Wyatt , Diego Ongaro , Terry Chong
IPC: G06F17/30 , G06F12/0891
CPC classification number: G06F16/24552 , G06F12/0891 , G06F16/172 , G06F16/2246 , G06F16/86 , G06F2212/1024 , G06F2212/163 , G06F2212/608
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.
-
公开(公告)号:US10241896B2
公开(公告)日:2019-03-26
申请号:US15345914
申请日:2016-11-08
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Subho Sanjay Chatterjee , Patrick James Helland , Nathaniel Wyatt , Thomas Fanghaenel , Terry Chong
Abstract: Systems and methods are provided for creating a sandbox for an original tenant at a point in time, the original tenant having original tenant data stored in an immutable storage associated with an original tenant identifier, the original tenant data as of the sandbox creation point in time being a virtual snapshot of the original tenant data accessible by a sandbox tenant, where the sandbox tenant data can be changed without changing the original tenant data, and the original tenant data can be changed without changing the sandbox tenant data. A sandbox tenant is created by associating a sandbox tenant identifier with the virtual snapshot of the original tenant data and with sandbox tenant data created by the sandbox tenant subsequent to the sandbox creation point in time. Original tenant data is subsequently created and associated with the original tenant identifier, and is not accessible to the sandbox tenant.
-
公开(公告)号:US20190034321A1
公开(公告)日:2019-01-31
申请号:US16133106
申请日:2018-09-17
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Subho Sanjay Chatterjee , Patrick James Helland , Nathaniel Wyatt , Thomas Fanghaenel , Terry Chong , Robert Frankus , Simon Wong
Abstract: Systems and methods are provided for creating a sandbox for an original tenant at a point in time, the original tenant having original tenant data stored in an immutable storage associated with an original tenant identifier, the original tenant data as of the sandbox creation point in time being a virtual snapshot of the original tenant data accessible by a sandbox tenant, where the sandbox tenant data can be changed without changing the original tenant data, and the original tenant data can be changed without changing the sandbox tenant data. A sandbox tenant is created by associating a sandbox tenant identifier with the virtual snapshot of the original tenant data and with sandbox tenant data created by the sandbox tenant subsequent to the sandbox creation point in time. In some implementations, the original tenant is an original sandbox tenant, and the sandbox tenant is at least one new sandbox tenant.
-
公开(公告)号:US20180373708A1
公开(公告)日:2018-12-27
申请号:US15634779
申请日:2017-06-27
Applicant: salesforce.com, inc.
Inventor: Jameison Bear Martin , Nathaniel Wyatt , Gary J. Baker , Thomas Fanghaenel , Terry Chong
IPC: G06F17/30
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.
-
公开(公告)号:US12013831B2
公开(公告)日:2024-06-18
申请号:US17162882
申请日:2021-01-29
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Aditya Shetty , Kaushal Mittal , Terry Chong , Thomas Fanghaenel , Vaibhav Arora
IPC: G06F16/22
CPC classification number: G06F16/2264
Abstract: Techniques are disclosed relating to index metadata that is usable for accessing multi-level data structures. A computer system may operate a database, including maintaining a set of records having a set of corresponding keys. The computer system may create multi-level data structures that facilitate key range lookups against those records. A given multi-level data structure may store key information indicative of a subset of the corresponding keys. The computer system may create separate index metadata that is usable for accessing the multi-level data structures. The index metadata may specify indications of key information that is stored in the multi-level data structures and locations of the multi-level data structures. The computer system may perform a key range lookup that includes using the index metadata to determine a particular set of the multi-level data structures whose key information corresponds to a key range of the key range lookup.
-
公开(公告)号:US11709814B2
公开(公告)日:2023-07-25
申请号:US17079149
申请日:2020-10-23
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Aditya Shetty , Kaushal Mittal , Terry Chong , Thomas Fanghaenel , Vaibhav Arora
IPC: G06F16/22
CPC classification number: G06F16/2264 , G06F16/2246
Abstract: Techniques are disclosed relating to building an in-memory multi-level data structure useable to determine presence or absence of key ranges in files consisting of database records. In various embodiments, a computer system operates a database, including maintaining a set of records having a set of corresponding keys that are accessible in key-sorted order and generates a multi-level data structure that facilitates key range lookups against the set of records. The generating may include accessing ones of the set of keys in key-sorted order and determining, for a particular accessed key that includes a set of characters, an intermediate level within the multi-level data structure and a subset of the characters of the particular accessed key for insertion. The computer system may insert, starting at the intermediate level, information that identifies the subset of characters, with the inserting being performed without traversing any levels before the intermediate level.
-
公开(公告)号:US20220129433A1
公开(公告)日:2022-04-28
申请号:US17079149
申请日:2020-10-23
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Aditya Shetty , Kaushal Mittal , Terry Chong , Thomas Fanghaenel , Vaibhav Arora
IPC: G06F16/22
Abstract: Techniques are disclosed relating to building an in-memory multi-level data structure useable to determine presence or absence of key ranges in files consisting of database records. In various embodiments, a computer system operates a database, including maintaining a set of records having a set of corresponding keys that are accessible in key-sorted order and generates a multi-level data structure that facilitates key range lookups against the set of records. The generating may include accessing ones of the set of keys in key-sorted order and determining, for a particular accessed key that includes a set of characters, an intermediate level within the multi-level data structure and a subset of the characters of the particular accessed key for insertion. The computer system may insert, starting at the intermediate level, information that identifies the subset of characters, with the inserting being performed without traversing any levels before the intermediate level.
-
-
-
-
-
-
-
-
-