-
公开(公告)号:US12013860B2
公开(公告)日:2024-06-18
申请号:US18149440
申请日:2023-01-03
申请人: salesforce.com, inc.
IPC分类号: G06F16/2455
CPC分类号: G06F16/24562
摘要: 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.
-
公开(公告)号:US11526465B2
公开(公告)日:2022-12-13
申请号:US16719691
申请日:2019-12-18
申请人: salesforce.com, inc.
发明人: Aditya Shetty , Thomas Fanghaenel
IPC分类号: G06F16/00 , G06F16/11 , G06F16/901
摘要: Techniques are disclosed relating to determining whether a set of database schemas are different. A computer system may receive a request to create a snapshot for a set of data stored in a database having a first database schema. In response to receiving the request, the computer system may create the snapshot for the set of data. As part of the creating, the computer system may generate, based on the first database schema, a first hierarchy of hash values that includes a first root hash value for the first database schema. The first hierarchy of hash values may be usable to determine whether the first database schema is different from a second database schema. The computer system may include the first hierarchy of hash values with the snapshot.
-
公开(公告)号:US11386065B2
公开(公告)日:2022-07-12
申请号:US15420377
申请日:2017-01-31
申请人: salesforce.com, inc.
摘要: Techniques are disclosed relating to efficiently processing of concurrent database transactions. In one embodiment, a database system receives a first key-value pair for a database transaction and stores the key-value pair in a data structure for active database transactions. The storing may include indexing into a hash table of the data structure with a key of the key-value pair to identify a hash bucket of the hash table corresponding to the key, acquiring a latch associated with the identified hash bucket, and, based on a state of the acquired latch, appending, to the hash bucket, a record specifying the key-value pair. The database system may cause the key-value pair from the data structure to be committed to persistent storage in response to the database transaction being committed.
-
公开(公告)号:US20210319052A1
公开(公告)日:2021-10-14
申请号:US16845921
申请日:2020-04-10
申请人: salesforce.com, inc.
IPC分类号: G06F16/33 , G06F16/338 , G06F16/17 , G06F16/182 , G06F21/62
摘要: Techniques are disclosed relating to probabilistic data structures. A database node may maintaining a probabilistic data structure capable of encoding database keys. The probabilistic data structure may include a plurality of levels that are each capable of storing an indication of a transition between successive characters in a database key. The database node may insert a particular database key into the probabilistic data structure and the particular database key may comprise a series of characters. The inserting may include setting, for each transition between successive characters of the series of characters, an indication in a corresponding level of the plurality of levels that is indicative of that transition. The database node may further maintain lineage information specifying one or more lineages that correspond to the transition.
-
公开(公告)号:US20210073195A1
公开(公告)日:2021-03-11
申请号:US16565401
申请日:2019-09-09
申请人: salesforce.com, inc.
发明人: Rohit Agrawal , Thomas Fanghaenel
IPC分类号: G06F16/22 , G06F16/23 , G06F16/21 , G06F16/2453
摘要: 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.
-
公开(公告)号:US10691696B2
公开(公告)日:2020-06-23
申请号:US15420342
申请日:2017-01-31
申请人: salesforce.com, inc.
IPC分类号: G06F16/2455
摘要: 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.
-
公开(公告)号:US20200097583A1
公开(公告)日:2020-03-26
申请号:US16139889
申请日:2018-09-24
申请人: salesforce.com, inc.
发明人: Thomas Fanghaenel
IPC分类号: G06F17/30
摘要: Systems, devices, and techniques are disclosed for translation of tenant identifiers. A record may be received. A value of a tenant identifier for the record may be determined from a key for the record or a scan descriptor. The value of the tenant identifier in the key for the record may be replaced with a new value for the tenant identifier. A bitmap stored in a record header of the record may be used to identify columns of the record that stored an encoded value of the tenant identifier. An encoded new value of the tenant identifier may be stored in columns identified by the bitmap stored in the record header that include an attribute indicating that tenant identifier translation is enabled.
-
公开(公告)号:US10592353B2
公开(公告)日:2020-03-17
申请号:US15634796
申请日:2017-06-27
申请人: salesforce.com, inc.
发明人: Jameison Bear Martin , Nathaniel Wyatt , Patrick James Helland , Thomas Fanghaenel , Terry Chong , Subho Sanjay Chatterjee
摘要: 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.
-
公开(公告)号:US11698898B2
公开(公告)日:2023-07-11
申请号:US17089355
申请日:2020-11-04
申请人: salesforce.com, inc.
CPC分类号: G06F16/2365 , G06F16/2282
摘要: Techniques are disclosed relating to lock wait tracing. A computer system may operate a database that includes a lockable object. The computer may maintain a lock wait queue that stores an indication of processes waiting to acquire a lock on the lockable object. The computer system may store trace records for those processes that, upon releasing a respective lock on the lockable object when another process is waiting in the lock wait queue, have been in contention for the respective lock for over a threshold amount of time. The computer system may present ones of the trace records that identify a timeline that is usable to determine a set of processes that contributed to a delay in a process acquiring a lock on the lockable object.
-
公开(公告)号:US20230141205A1
公开(公告)日:2023-05-11
申请号:US18145181
申请日:2022-12-22
申请人: salesforce.com, inc.
发明人: Rohit Agrawal , Aditya Shetty , Kaushal Mittal , Terry Chong , Thomas Fanghaenel , Vaibhav Arora
CPC分类号: G06F16/214 , G06F16/2246 , G06F21/6227
摘要: Techniques are disclosed relating to merge operations for multi-level data structures, such as log-structured merge-trees (LSM trees). A computer system may store, in a database, a plurality of files as part of an LSM tree and a plurality of database key structures. A given one of the plurality of database key structures may indicate, for a corresponding one of the plurality of files, a set of key ranges derived from database records that are included in the corresponding file. The computer system may determine, using ones of the plurality of database key structures, a key range overlap that is indicative of an extent of overlap of key ranges from a set of the plurality of files with respect to a particular key range. Based on the determined key range overlap, the computer system may assign a priority level to a merge operation that involves the set of files.
-
-
-
-
-
-
-
-
-