-
公开(公告)号:US20220245113A1
公开(公告)日:2022-08-04
申请号:US17162882
申请日:2021-01-29
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 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.
-
公开(公告)号:US20220129428A1
公开(公告)日:2022-04-28
申请号:US17647570
申请日:2022-01-10
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Aditya Dharmanand Shetty , Thomas Fanghaenel
IPC: G06F16/215 , H03M7/30 , G06F16/22
Abstract: Techniques are disclosed relating to compressing database keys. A computer system may receive a request to write a database record to a storage medium. The database record may include a database key and a corresponding data value. The computer system may compress the database key by replacing a portion of the database key with particular data that identifies a location of a reference database key and an amount of similarity determined between the database key and the reference database key. The computer system may write the database record to the storage medium. The database record may include the compressed database key and the corresponding data value.
-
公开(公告)号: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.
-
公开(公告)号:US10963454B2
公开(公告)日:2021-03-30
申请号:US16140523
申请日:2018-09-24
Applicant: salesforce.com, inc.
Inventor: Thomas Fanghaenel
IPC: G06F16/23 , G06F16/21 , G06F16/22 , G06F16/2455
Abstract: A method of deleting a plurality of records in a log-structured merge (LSM) tree based storage system during a merge operation that writes data from a memory storage to an extent, includes receiving a command to delete a plurality of records, inserting a range tombstone into the memory storage component of the storage system, the range tombstone indicating the plurality of records to be deleted, selecting one or more delayed deletion processes based at least in part on whether the plurality of records is contiguous beyond a predetermined threshold amount, modifying a manifest of the storage system based on the selected delayed deletion process, and performing the merge operation, wherein the plurality of records is not written to the extent during the flush operation based at least in part on the delayed deletion process.
-
公开(公告)号: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.
-
公开(公告)号: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.
-
公开(公告)号:US11544271B2
公开(公告)日:2023-01-03
申请号:US16908097
申请日:2020-06-22
Applicant: salesforce.com, inc.
Inventor: Patrick James Helland , James E. Mace , Thomas Fanghaenel
IPC: G06F16/2455
Abstract: This disclosure provides various techniques that may allow for accessing values stored in a data structure that stores multiple values corresponding to database transactions using a skip list. A key may be used to traverse the skip list to access data associated with the key. The skip list maintains on ordering of multiple keys, each associated with a particular record in the data structure, using indirect links between data records in the data structure that reference buckets included in hash table. Each bucket includes pointers to one or more records in the skip list.
-
公开(公告)号:US11321294B2
公开(公告)日:2022-05-03
申请号:US16565401
申请日:2019-09-09
Applicant: salesforce.com, inc.
Inventor: Rohit Agrawal , Thomas Fanghaenel
IPC: G06F16/22 , G06F16/2453 , G06F16/21 , G06F16/23
Abstract: A computing system may repair a database index for a database table by placing a first structural lock on the database table to prevent modifications to the structure of the table. The computing system may scan the database table to determine a plurality of database records. The system may probe the database index for the database records to identify records with missing entries in the index. Based on the probing, the system may place a first data lock on a record of the database table corresponding to a missing index entry to prevent modification of data in the record. In response to placing the first record lock, the system adds an index entry for the locked database record to the database index. During repair of the index, one or more processes may use the database index to locate one of the plurality of database records included in the database table.
-
公开(公告)号: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.
-
-
-
-
-
-
-
-
-